:root{--brand-primary: #45aace;--brand-accent: #715da8;--text-main: #22314a;--text-soft: #5d6980;--surface: #ffffff;--border: #d6e3f2}*{box-sizing:border-box}html{overflow-y:auto;overscroll-behavior-y:none;scrollbar-gutter:stable;background:radial-gradient(circle at 20% 20%,rgba(69,170,206,.15),transparent 45%),radial-gradient(circle at 80% 15%,rgba(113,93,168,.2),transparent 35%),linear-gradient(140deg,#f4fbfe,#fbf9ff)}body{margin:0;min-height:100vh;overscroll-behavior-y:none;font-family:Segoe UI,Tahoma,sans-serif;color:var(--text-main);background:radial-gradient(circle at 20% 20%,rgba(69,170,206,.15),transparent 45%),radial-gradient(circle at 80% 15%,rgba(113,93,168,.2),transparent 35%),linear-gradient(140deg,#f4fbfe,#fbf9ff)}.authenticated-shell{padding:0 24px 24px;display:flex;flex-direction:column;min-height:100vh}#root{min-height:100vh}.app-shell{width:100%;min-height:100vh}.login-shell{display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:28px;box-shadow:0 18px 48px #2f4a7426;text-align:center}.company-logo{width:80px;height:80px;border-radius:18px;object-fit:cover;margin-bottom:12px}h1{margin:0;color:var(--brand-accent);font-size:1.8rem}h2{margin-top:0;margin-bottom:8px}.subtitle{color:var(--text-soft);margin-top:8px;margin-bottom:20px}form{text-align:left}label{display:block;margin-top:12px;font-weight:600;color:var(--text-main)}input,textarea,select{width:100%;margin-top:6px;border:1px solid #c8d6e7;border-radius:10px;padding:.65rem .75rem;font-size:16px}input:focus{outline:2px solid rgba(69,170,206,.35);border-color:var(--brand-primary)}.checkbox-row{display:flex;align-items:center;gap:8px;margin-top:14px;font-weight:500}.checkbox-row input{width:auto;margin:0}button{border:0;border-radius:10px;background:linear-gradient(135deg,var(--brand-primary),var(--brand-accent));color:#fff;font-weight:700;padding:.68rem 1rem;cursor:pointer}button:disabled{opacity:.72;cursor:not-allowed}form button{margin-top:16px;width:100%}.login-status{margin-top:14px;color:var(--text-soft);text-align:left}.home-dashboard{display:grid;gap:16px;align-items:start}.home-dashboard>.panel{min-height:0}.home-dashboard h2{margin:0 0 12px;font-size:1.1rem}.home-summary-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-summary-group+.home-summary-group{border-left:1px solid var(--border);padding-left:24px}.home-summary-item{display:flex;align-items:center;gap:10px;min-height:52px;padding:4px 0;color:var(--text-main);font-size:.875rem}.home-summary-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:48px;height:40px;padding:0 6px;border-radius:12px;font-size:1rem;font-weight:750;font-variant-numeric:tabular-nums}.home-summary-number.neutral{background:#edf3f9;color:#344d6b}.home-summary-number.success{background:#e5f5eb;color:#21643b}.home-summary-number.danger{background:#fde9e7;color:#a72d25}.home-summary-number.warning{background:#fff2c2;color:#750}button.home-summary-action{width:100%;border:0;border-radius:10px;background:transparent;box-shadow:none;font-family:inherit;font-weight:500;text-align:left;cursor:pointer}button.home-summary-action:hover{background:#f4f7fb}button.home-summary-action:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}button.home-summary-action:disabled{cursor:default;opacity:.65}.home-summary-chevron{margin-left:auto;padding-right:6px;color:var(--text-soft)}.home-dashboard-error{display:flex;align-items:center;gap:12px}.home-summary-modal{width:min(680px,100%)}.home-summary-modal-body{overflow-y:auto;max-height:65dvh;padding:0 4px 12px}@media (max-width: 440px){.home-summary-columns{gap:12px}.home-summary-group+.home-summary-group{padding-left:12px}.home-summary-item{gap:7px;font-size:.8rem}.home-summary-number{min-width:40px;font-size:.9rem}.home-summary-chevron{display:none}}@media (max-width: 340px){.home-summary-columns{grid-template-columns:1fr}.home-summary-group+.home-summary-group{padding-left:0;border-left:0}}.home-hours-list{display:grid;gap:10px}.home-hours-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #d8e5f3;border-radius:14px;background:linear-gradient(180deg,#f8fbff,#f3f8fd)}.home-hours-label,.home-hours-value{margin:0}.home-hours-label{color:var(--text-soft);font-weight:600}.home-hours-value{min-width:6.5rem;text-align:right;font-variant-numeric:tabular-nums;color:var(--text-main);font-size:1.15rem;font-weight:700}.home-hours-value span{font-size:.8rem;font-weight:600;color:var(--text-soft)}.home-announcement-list{display:grid;gap:10px}.support-pagination+.home-announcement-list,.support-pagination+.timeline-list,.support-pagination+.support-section-list,.support-pagination+.support-section-entries{margin-top:10px}.home-announcement-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;text-decoration:none;color:inherit;padding:10px 0}button.home-announcement-item{width:100%;font:inherit;text-align:left;cursor:pointer}.home-announcement-item+.home-announcement-item{border-top:1px solid #e1ebf5}.home-announcement-item.support-person-row{grid-template-columns:minmax(0,1fr);align-items:stretch;padding:12px 14px}.home-announcement-item.support-person-row+.home-announcement-item.support-person-row{border-top:0}.home-note-row.good{border-color:#1b836147;background:#ddf7edeb}.home-note-row.bad{border-color:#ba2a2a57;background:#ffe4e4f0}.home-credential-row.good{border-color:#1b836147;background:#ddf7edeb}.home-credential-row.warning{border-color:#d8a82f57;background:#fff5ccf0}.home-credential-row.bad{border-color:#ba2a2a57;background:#ffe4e4f0}.home-announcement-list a.timeline-item,.home-announcement-list button.timeline-item{text-decoration:none;color:inherit}.home-announcement-list button.timeline-item{width:100%;text-align:left;cursor:pointer}.home-detail-modal{width:min(560px,calc(100vw - 32px))}.home-detail-modal-body{display:grid;gap:14px}.home-detail-list{display:grid;gap:10px;margin:0}.home-detail-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;border-bottom:1px solid #e4edf7;padding-bottom:10px}.home-detail-row dt{color:var(--text-soft);font-size:.82rem;font-weight:700}.home-detail-row dd{margin:0;color:var(--text-main);overflow-wrap:anywhere}.home-detail-description h3{margin:0 0 8px;color:var(--text-main);font-size:.98rem}.home-detail-description p{margin:0;color:var(--text-soft);white-space:pre-line}.home-announcement-avatar{width:44px;height:44px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#eef6fc,#dfebf8);border:2px solid #fff;box-shadow:0 0 0 1px #d6e4f3;overflow:hidden}.home-announcement-avatar-image{width:100%;height:100%;object-fit:cover;object-position:center 35%;background:linear-gradient(145deg,#eef6fc,#dfebf8)}.home-announcement-avatar svg{width:20px;height:20px;fill:none;stroke:#6f7f97;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.home-announcement-body{min-width:0}.home-announcement-title,.home-announcement-meta{margin:0}.home-announcement-title{color:var(--text-main);font-weight:600}.home-announcement-meta{margin-top:4px;color:var(--text-soft);font-size:.88rem}.content-width{width:min(980px,100%);margin:0 auto}.app-header{position:sticky;top:0;z-index:30;margin-bottom:18px;padding-top:24px;padding-bottom:12px;isolation:isolate}.app-header:before{content:"";position:absolute;top:0;bottom:8px;left:50%;width:100vw;transform:translate(-50%);z-index:-1;background:#f8fcffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.brand-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.profile-menu{display:flex;align-items:center;gap:10px}.connectivity-indicator{width:12px;height:12px;border-radius:999px;border:2px solid #fff;box-shadow:0 0 0 1px #d6e3f2}.connectivity-indicator.online{background:#22b36d}.connectivity-indicator.offline{background:#dd4c4c}.profile-button{width:48px;height:48px;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:2px solid rgba(255,255,255,.8);box-shadow:0 8px 16px #22314a40}.avatar-image{width:100%;height:100%;object-fit:cover;object-position:center 35%;background:linear-gradient(145deg,#eef6fc,#dfebf8)}.avatar-fallback{width:100%;height:100%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#eef6fc,#dfebf8)}.avatar-fallback svg{width:24px;height:24px;fill:none;stroke:#6f7f97;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.schedule-shell{display:grid;gap:16px}.schedule-toolbar{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end}.schedule-actions{display:grid;grid-template-columns:repeat(2,minmax(104px,1fr));gap:8px;align-items:end}.schedule-filter-summary{grid-column:1 / -1;margin:0;font-size:.76rem;line-height:1.25;color:var(--text-soft);text-align:right}.schedule-search label,.schedule-filters label{display:block;margin-top:0;margin-bottom:6px;font-weight:600}.schedule-search-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.schedule-toolbar-toggle-icon{display:none;width:32px;height:32px;min-width:32px;padding:0;border-radius:999px;align-items:center;justify-content:center}.schedule-toolbar-toggle-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.schedule-filters{display:grid;grid-template-columns:35% 65%;gap:12px;grid-column:1 / -1}.schedule-filters select{width:100%;border:1px solid #c8d6e7;border-radius:10px;padding:.65rem .75rem;font-size:16px;color:var(--text-main);background:#fff}.schedule-combobox,.schedule-combobox-input-wrap{position:relative}.schedule-combobox input{margin-top:0;padding-right:2.5rem}.schedule-combobox-clear{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);width:28px;height:28px;min-width:28px;padding:0;border-radius:999px;border:0;background:transparent;color:var(--text-soft);box-shadow:none}.schedule-combobox-clear svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.schedule-combobox-clear:hover{background:#eef4fb;color:var(--text-main)}.schedule-combobox-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:25;border:1px solid #c8d6e7;border-radius:12px;background:#fff;box-shadow:0 12px 24px #22314a24;max-height:280px;overflow-y:auto;padding:6px}.schedule-combobox-group+.schedule-combobox-group{margin-top:4px}.schedule-combobox-group-label{margin:6px 8px;color:var(--text-soft);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.schedule-combobox-option{width:100%;text-align:left;border:0;background:transparent;color:var(--text-main);border-radius:8px;padding:.65rem .75rem;box-shadow:none;font-weight:500}.schedule-combobox-option.highlighted,.schedule-combobox-option:hover,.schedule-combobox-option[aria-selected=true]{background:#eef4fb}.schedule-combobox-empty{margin:8px;color:var(--text-soft)}.schedule-period-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.schedule-period-buttons .quick-filter{width:100%;white-space:nowrap;line-height:1.1}.quick-filter-row{display:flex;flex-wrap:wrap;gap:8px}.filter-groups-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}.filter-group{border:1px solid #d2e0ef;background:#f6faff;border-radius:12px;padding:8px;display:grid;gap:8px}.time-filter-group{grid-template-columns:repeat(4,minmax(0,1fr))}.status-filter-group{grid-template-columns:1fr;justify-items:center}.filter-group .quick-filter{width:100%;white-space:nowrap;line-height:1.1}.filter-group.status-filter-group .quick-filter{width:fit-content;min-width:0;max-width:220px;justify-self:center;padding-left:.85rem;padding-right:.85rem}.quick-filter{background:#eef4fb;color:#4f5f79;border:1px solid #d2e0ef;box-shadow:none;font-weight:600;padding:.45rem .7rem}.quick-filter.active{background:linear-gradient(135deg,var(--brand-primary),var(--brand-accent));color:#fff;border-color:transparent}.schedule-filter-trigger{min-width:96px}.schedule-filter-modal{max-width:680px}.schedule-filter-modal .filter-groups-row{margin-top:8px;grid-template-columns:1fr;gap:12px}.filter-group-block{display:grid;gap:6px}.filter-group-label{margin:0;font-size:.78rem;font-weight:700;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em}.type-filter-group{grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-layout{display:grid;grid-template-columns:minmax(320px,1fr);gap:16px;align-items:start}.schedule-list{min-height:420px}.schedule-list h2{margin-top:0}.timeline-list,.tile-list{display:grid;gap:10px}.schedule-loading-indicator{display:grid;gap:6px;margin-bottom:4px}.schedule-loading-track{display:block;width:100%;height:8px;border-radius:999px;background:linear-gradient(90deg,#d7e5f5 15%,#f0f6fc,#d7e5f5 85%);background-size:220% 100%;animation:scheduleShimmer 1.05s linear infinite}.schedule-loading-text,.schedule-detail-loading{margin:0;font-size:.8rem;color:var(--text-soft)}@keyframes scheduleShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.timeline-day-group{display:grid;gap:10px;margin-top:6px}.timeline-day-heading{margin:6px 0 2px;font-size:.95rem;color:var(--text-soft)}.timeline-row{display:grid;gap:8px}.timeline-item{width:100%;text-align:left;background:linear-gradient(90deg,#f9fcff,#f9fcff 75%,#eaf2fc);border:1px solid #dde8f5;border-radius:12px;padding:10px;display:grid;grid-template-columns:1fr;gap:0;box-shadow:none}.timeline-item.timeline-type-session{background:linear-gradient(90deg,#f9fcff,#f9fcff 16%,#4acc6785)}.timeline-item.timeline-type-meeting{background:linear-gradient(90deg,#f9fcff,#f9fcff 16%,#558bbd85)}.timeline-item.timeline-type-call{background:linear-gradient(90deg,#f9fcff,#f9fcff 16%,#cf605d85)}.timeline-item.timeline-type-task{background:linear-gradient(90deg,#f9fcff,#f9fcff 16%,#e383ed85)}.timeline-item:hover{border-color:#bcd2eb}.timeline-item.active{border-color:#79b5d9;box-shadow:0 6px 16px #45aace29}.timeline-dot{display:none}.timeline-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.timeline-card-content{display:grid;gap:8px}.timeline-mainline{min-width:0}.timeline-event-name{margin:0;color:var(--text-main);font-weight:700;font-size:1.02rem;line-height:1.2}.timeline-event-time{margin:6px 0 0;color:var(--text-soft);font-size:.88rem;font-weight:400}.timeline-event-description{margin:5px 0 0;color:#46546b;font-size:.84rem;font-weight:400;white-space:pre-line}.timeline-side-meta{display:flex;flex-direction:column;gap:6px;align-items:flex-end;align-self:start;min-height:100%;padding-top:0}.timeline-countdown-badge{display:inline-block}.timeline-countdown-row{margin:0;text-align:right;color:#4f6078;font-size:.76rem;font-weight:400;letter-spacing:.02em;line-height:1.2}.session-status{font-size:.75rem;font-weight:400;border-radius:999px;padding:.22rem .5rem;background:#e8f2fb;color:#3f6589;margin-top:3px}.session-status.warning{background:#ffe7d1;color:#a45517}.session-status.completed,.session-status.held{background:#d9f7e1;color:#116f3a;border:1px solid #67c58b;font-weight:800}.timeline-empty{margin:8px 0 0;color:var(--text-soft)}.timeline-inline-detail{display:block;border:1px solid #dce7f5;border-radius:12px;background:#f8fbff;padding:12px 6px;margin-bottom:15px}.timeline-inline-detail h2{margin-top:0}.event-detail-stack{display:grid;gap:10px}.event-detail-row{display:grid;gap:4px}.event-detail-label{margin:0;font-size:.78rem;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em}.event-detail-value{margin:0;color:var(--text-main);font-weight:600}.event-detail-description{white-space:pre-line;font-weight:500}.session-time-grid{display:grid;grid-template-columns:minmax(72px,auto) repeat(2,minmax(0,1fr));gap:8px 10px;align-items:center;margin-bottom:12px}.session-time-header,.session-time-label,.session-time-value{margin:0}.session-time-header,.session-time-label{font-size:.78rem;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em}.session-time-header{text-align:center;font-weight:700}.session-time-label{font-weight:700}.session-time-value{color:var(--text-main);font-weight:400;text-align:center}.detail-actions{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(106px,1fr));gap:8px}.detail-actions:has(>:nth-child(4)):not(:has(>:nth-child(5))){grid-template-columns:repeat(2,minmax(106px,1fr))}.detail-action-button{width:100%;min-width:0;justify-content:center}.stream-modal{width:min(760px,calc(100vw - 32px))}.stream-modal-subtitle{margin:6px 0 0;color:var(--text-soft);font-size:.9rem}.schedule-action-modal{width:min(560px,calc(100vw - 32px))}.schedule-detail-modal{width:min(680px,calc(100vw - 32px))}.schedule-action-body{display:grid;gap:14px}.schedule-action-loading{min-height:180px;display:grid;justify-items:center;align-content:center;gap:12px;padding:18px;border:1px solid #d8e5f3;border-radius:14px;background:#f8fbff;text-align:center}.schedule-action-spinner{width:28px;height:28px;border-radius:999px;border:3px solid rgba(80,115,160,.16);border-top-color:var(--brand-accent);animation:refresh-spin .8s linear infinite}.schedule-action-field{display:grid;gap:6px}.schedule-action-field span,.schedule-distance-label{font-size:.78rem;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em}.schedule-action-field input,.schedule-action-field textarea{width:100%;border:1px solid #c8d6e7;border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;color:var(--text-main);background:#fff}.schedule-action-field textarea{resize:vertical}.schedule-action-checkbox{margin:0}.schedule-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.schedule-status-button{width:100%;min-width:0}.schedule-comment-compose{display:grid;gap:10px;padding:14px;border:1px solid #d8e5f3;border-radius:14px;background:#f8fbff}.schedule-comment-actions{display:flex;justify-content:center}.schedule-action-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.schedule-distance-card{position:relative;display:grid;justify-items:center;align-content:center;text-align:center;border-radius:14px;padding:14px;border:1px solid #dbe6f2;background:#f7fbff;min-height:96px}.schedule-distance-card.good{border-color:#1b836147;background:#ddf7edeb;color:#1b8361}.schedule-distance-card.bad{border-color:#b03a3a47;background:#ffececeb;color:#b03a3a}.schedule-distance-timer{position:absolute;top:50%;right:14px;transform:translateY(-50%);width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;border:2px solid currentColor;background:#ffffffb8}.schedule-distance-value{margin:6px 0 0;font-size:1.8rem;font-weight:700;line-height:1}.schedule-action-note,.schedule-action-message{margin:0;color:var(--text-soft)}.schedule-action-message.error{color:#b03a3a}.schedule-action-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.schedule-action-footer .detail-action-button{width:auto;min-width:160px}.schedule-session-reminder{flex-basis:100%;margin:0;padding:14px 16px;border:1px solid #e5bd54;border-left:4px solid #b77900;border-radius:12px;background:#fff2c2;color:#750;font-weight:700;line-height:1.5}.release-notes-list{display:grid;gap:12px;margin:0;padding-left:24px;line-height:1.5}.profile-view.release-notes-modal{overflow:hidden;max-height:calc(100dvh - 112px)}.release-notes-modal .profile-modal-header{flex-shrink:0}.release-notes-modal .schedule-action-body{min-height:0;grid-template-rows:auto minmax(0,1fr) auto}.release-notes-history{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 8px 2px 2px}.release-notes-entry+.release-notes-entry{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.release-notes-entry-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin-bottom:12px}.release-notes-entry-header time{color:var(--text-soft);font-size:.875rem}.release-notes-entry h3{margin:0;font-size:1rem}.stream-compose{display:grid;gap:8px;margin-bottom:14px;padding:14px;border:1px solid #d8e5f3;border-radius:14px;background:#f8fbff}.stream-compose label{margin:0}.stream-compose textarea{width:100%;min-height:84px;border:1px solid #c8d6e7;border-radius:10px;padding:.75rem;font:inherit;font-size:16px;color:var(--text-main);resize:vertical;background:#fff}.stream-compose-actions{display:flex;justify-content:flex-end}.stream-compose-note{margin:0;font-size:.82rem;color:var(--text-soft)}.stream-compose-error{color:#b03a3a}.stream-list{display:grid;gap:12px}.stream-status{margin:0;color:var(--text-soft)}.stream-comment-card{border:1px solid #cfdff0;border-radius:14px;background:#fff;overflow:hidden;display:grid;gap:0;box-shadow:inset 0 0 0 1px #fff9}.stream-comment-header-shell{background:linear-gradient(180deg,#f5f9fd,#edf4fb);border-bottom:1px solid #d8e5f3;padding:12px 14px}.stream-comment-avatar{width:36px;height:36px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#eef6fc,#dfebf8);border:2px solid #fff;box-shadow:0 0 0 1px #d6e4f3;overflow:hidden}.stream-comment-avatar-image{width:100%;height:100%;object-fit:cover;object-position:center 35%;background:linear-gradient(145deg,#eef6fc,#dfebf8)}.stream-comment-avatar svg{width:18px;height:18px;fill:none;stroke:#6f7f97;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.stream-comment-header{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}.stream-comment-header-text{min-width:0;padding-top:1px;display:grid;gap:4px}.stream-comment-author,.stream-comment-time,.stream-comment-status-line,.stream-comment-empty,.stream-post-body{margin:0}.stream-comment-meta-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.stream-comment-author{font-weight:700;color:var(--text-main)}.stream-comment-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .5rem;font-size:.72rem;font-weight:700;line-height:1.2}.stream-comment-badge.yellow{background:#fff4d8;color:#9a6b00}.stream-comment-badge.violet{background:#f1e7ff;color:#6d43a6}.stream-comment-badge.green{background:#dbf6e6;color:#177446}.stream-comment-badge.blue{background:#deeeff;color:#336ca8}.stream-comment-badge.gray{background:#eef3f8;color:#56667f}.stream-comment-status-value{display:inline-flex;align-items:center;border-radius:999px;padding:.18rem .5rem;background:#e8f1fb;border:1px solid #c8daee;color:#35597d;font-size:.7rem;font-weight:800;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.stream-comment-time{color:var(--text-soft);font-size:.82rem}.stream-comment-status-line{margin-top:2px}.stream-comment-body{display:grid;gap:8px;padding:14px;background:#fff}.stream-post-body{font-size:.92rem;color:var(--text-main);white-space:pre-wrap}.stream-comment-rows{display:grid;gap:6px}.stream-comment-inline-row{display:grid;gap:4px;border:1px solid #e0eaf5;border-radius:12px;background:#fbfdff;padding:10px 12px}.stream-comment-inline-label,.stream-comment-detail-label{font-size:.74rem;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em;margin:0}.stream-comment-inline-values{display:grid;gap:4px;min-width:0}.stream-comment-inline-line{margin:0;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;font-size:.85rem}.stream-comment-inline-prefix{color:var(--text-soft);font-weight:700}.stream-comment-inline-value{color:var(--text-main);white-space:pre-wrap;word-break:break-word}.stream-comment-inline-value.muted{color:var(--text-soft)}.stream-comment-details{display:flex;flex-wrap:wrap;gap:8px}.stream-comment-detail-chip{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;border-radius:999px;padding:.26rem .58rem;background:#eef4fb;border:1px solid #d6e4f3}.stream-comment-detail-value,.stream-comment-empty{color:var(--text-main);white-space:pre-wrap;word-break:break-word}.stream-comment-empty{margin-top:0}.content-shell{position:relative;padding-bottom:12px;flex:1;overscroll-behavior-y:contain}.pull-refresh-indicator{--pull-distance: 0px;position:absolute;top:0;left:50%;z-index:3;width:42px;height:42px;border:1px solid #ccd9ea;border-radius:999px;background:#fffffff5;box-shadow:0 10px 24px #22314a29;color:var(--brand-accent);display:inline-flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transform:translate(-50%,calc(-48px + min(var(--pull-distance),56px)));transition:opacity .14s ease,border-color .14s ease,background .14s ease,color .14s ease}.pull-refresh-indicator.visible{opacity:1}.pull-refresh-indicator.ready{background:#ddf7edf5;border-color:#1b836147;color:#1b8361}.pull-refresh-indicator .refresh-icon{width:18px;height:18px}.panel{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px;min-height:160px;box-shadow:0 8px 20px #364f701a}.panel p{margin-top:8px;color:var(--text-soft)}.support-card p{margin-bottom:4px}.dashboard-grid .support-card{min-height:430px}.support-page,.support-tab-panel{display:grid;gap:14px}.support-search-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.32fr);gap:12px;align-items:end;border:1px solid var(--border);border-radius:14px;background:#fff;padding:14px;box-shadow:0 8px 20px #364f701a}.support-search-field,.support-filter-field{min-width:0}.support-search-field label,.support-filter-field label{margin-top:0;color:var(--text-soft);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.support-search-field input,.support-filter-field select{margin-top:6px}.support-results-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.support-results-header p{margin:0;color:var(--text-soft);font-weight:700}.support-result-list{display:grid;gap:8px}.support-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid #d8e5f3;border-radius:10px;background:#fff;color:inherit;text-align:left;text-decoration:none;box-shadow:none}.support-result-row:hover{border-color:#bcd2eb;background:#f8fbff}.support-result-row.disabled{pointer-events:none}.support-result-row.support-directory-summary{grid-template-columns:auto minmax(0,1fr) auto}.support-result-row.support-resource-summary{cursor:pointer}.support-result-copy{min-width:0}.support-result-title,.support-result-meta{margin:0}.support-result-title{color:var(--text-main);font-size:1rem;font-weight:800}.support-result-meta{margin-top:3px;color:var(--text-soft);font-size:.9rem}.support-result-category{border:1px solid #d6e4f3;border-radius:999px;background:#eef4fb;color:#51627d;padding:.28rem .55rem;font-size:.78rem;font-weight:800;white-space:nowrap}.support-empty-state{margin:0;color:var(--text-soft)}.support-about-list{display:grid;gap:14px}.support-about-section{margin-top:0}.support-about-section ul{margin:0;padding-left:18px}.support-about-subsections{display:grid;gap:10px}.support-about-subsections.nested{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.support-about-subsection,.support-about-leaf{border:1px solid #dce7f5;border-radius:10px;background:#fff;padding:10px}.support-about-subsection h4{margin:0 0 8px;color:var(--text-main);font-size:.98rem}.support-map-link{display:inline-flex;width:fit-content;margin-top:12px;text-decoration:none}.support-person-avatar{width:65px;height:65px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#eef6fc,#dfebf8);border:2px solid #fff;box-shadow:0 0 0 1px #d6e4f3;overflow:hidden;flex:0 0 auto}.support-person-avatar-image{width:100%;height:100%;object-fit:cover;object-position:center 35%;background:linear-gradient(145deg,#eef6fc,#dfebf8)}.support-person-avatar svg{width:24px;height:24px;fill:none;stroke:#6f7f97;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.support-person-row{display:grid;gap:12px;padding:12px 14px;border:1px solid #d8e5f3;border-radius:14px;background:linear-gradient(180deg,#f8fbff,#f3f8fd);box-shadow:inset 0 0 0 1px #ffffffb3}.support-directory-summary{width:100%;text-align:left;cursor:pointer}.support-directory-summary:hover{border-color:#c8d9ec;background:linear-gradient(180deg,#fbfdff,#eef5fc)}.support-link-card{text-decoration:none}.support-link-card:hover{border-color:#c8d9ec;background:linear-gradient(180deg,#fbfdff,#eef5fc)}.support-person-row+.support-person-row{margin-top:12px}.support-person-content{min-width:0}.support-person-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}.support-person-name{margin:0;color:var(--text-main);font-weight:700;font-size:1.05rem}.support-flat-value{margin:0;color:var(--text-soft)}.support-link-description{margin:4px 0 0;color:var(--text-soft);font-size:.92rem}.support-person-content ul{margin:0;padding-left:18px}.support-person-name+ul{margin-top:0;margin-bottom:10px}.support-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:12px;margin-bottom:10px}.support-search{min-width:0}.support-search input{margin-top:0;padding:.45rem .65rem;font-size:.92rem}.support-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:0;margin-bottom:0;flex:0 0 auto}.support-pagination-button{min-width:68px;padding:.45rem .65rem;font-size:.92rem}.support-pagination-status{margin:0;color:var(--text-soft);text-align:center;min-width:52px}.support-person-modal{width:min(560px,calc(100vw - 32px))}.profile-view.support-article-modal{width:min(820px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 112px))}.support-person-modal-heading{display:flex;align-items:center;gap:12px;min-width:0}.support-person-modal-heading h2{margin:0;color:var(--brand-accent)}.support-person-modal-body ul{margin:0;padding-left:18px}.support-article-modal-header{align-items:flex-start}.support-article-modal-header h2{margin:0;color:var(--brand-accent)}.support-article-modal-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;white-space:nowrap}.support-article-modal-actions .text-button{display:inline-flex;width:auto}.support-article-modal-body{min-height:280px;overflow:hidden}.html-render-sheet{display:block;width:100%;height:min(600px,calc(100vh - 260px));min-height:280px;border:0;background:#fff}@media (max-width: 640px){.support-search-toolbar{grid-template-columns:1fr}.support-results-header{align-items:stretch;flex-direction:column}.support-result-row,.support-result-row.support-directory-summary{grid-template-columns:1fr}.support-result-row.support-directory-summary{grid-template-columns:auto minmax(0,1fr) auto}.support-result-category{width:fit-content}.support-toolbar{grid-template-columns:1fr;align-items:stretch}.support-pagination{justify-content:space-between}.profile-view.support-article-modal{max-height:calc(100vh - 104px)}.html-render-sheet{height:calc(100vh - 260px)}}.profile-view{width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 112px);background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 8px 20px #364f701a;padding:18px;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.profile-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.profile-modal-header h2{margin:0;color:var(--brand-accent)}.text-button{background:transparent;color:var(--brand-accent);border:1px solid #ccd9ea;border-radius:10px;box-shadow:none;font-weight:600}.profile-modal-header .text-button{border-radius:12px;padding:.58rem .9rem}.icon-button{width:auto;min-width:40px;height:40px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center}.refresh-data-button.active{position:relative;color:#1b8361;border-color:#1b836147;background:#ddf7edeb}.refresh-data-button.offline{position:relative;color:#b03a3a;border-color:#b03a3a47;background:#ffececeb}.refresh-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.refresh-icon.spinning{animation:refresh-spin 1s linear infinite}.offline-label{color:#c73737;font-size:.68rem;font-weight:800;letter-spacing:.05em}.gps-button{position:relative}.gps-button.active{color:#1b8361;border-color:#1b836147;background:#ddf7edeb}.gps-button.gps-alert{color:#b03a3a;border-color:#b03a3a47;background:#ffececeb}.gps-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}@keyframes refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.profile-stack{display:grid;gap:12px}.profile-row{border:1px solid #dce7f5;border-radius:12px;background:#f8fbff;padding:12px}.profile-label{margin:0;font-size:.8rem;color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em}.profile-value{margin:6px 0 0;font-size:1rem;font-weight:600;color:var(--text-main);word-break:break-word}.profile-actions{margin-top:16px}.settings-section{margin-top:14px;border:1px solid #dce7f5;border-radius:12px;background:#f8fbff;padding:12px}.settings-section h3{margin:0 0 12px;color:var(--brand-accent);font-size:1.08rem;font-weight:800}.settings-list{display:grid;gap:8px}.settings-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #dce7f5}.settings-row:first-child{border-top:0;padding-top:0}.settings-row:last-child{padding-bottom:0}.settings-row-copy{min-width:0}.settings-row-end{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.settings-row-title,.settings-row-description,.settings-row-value{margin:0}.settings-row-title{color:var(--text-main);font-weight:700}.settings-row-description{margin-top:3px;color:var(--text-soft);font-size:.86rem}.settings-row-value{color:var(--text-main);font-weight:700;text-align:right}.settings-action-button{width:132px;min-width:132px;justify-content:center}.settings-note{margin:10px 0 0;color:var(--text-soft)}.settings-actions-row{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.gps-view{width:min(720px,calc(100vw - 32px))}.gps-overview{display:grid;gap:12px}.gps-overview{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.gps-overview-action{display:flex;flex-direction:column;gap:10px}.gps-overview-action .text-button{width:100%}.gps-availability-card.good{background:#ddf7edeb;border-color:#1b836147}.gps-availability-card.good .profile-label,.gps-availability-card.good .profile-value{color:#1b8361}.gps-availability-card.bad{background:#ffececeb;border-color:#b03a3a47}.gps-availability-card.bad .profile-label,.gps-availability-card.bad .profile-value{color:#b03a3a}.gps-permission-card.good{background:#ddf7edeb;border-color:#1b836147}.gps-permission-card.good .profile-label,.gps-permission-card.good .profile-value{color:#1b8361}.gps-permission-card.bad{background:#ffececeb;border-color:#b03a3a47}.gps-permission-card.bad .profile-label,.gps-permission-card.bad .profile-value{color:#b03a3a}.gps-note{margin-top:12px}.gps-error{margin:6px 0 16px;padding:10px 12px;border:1px solid rgba(176,58,58,.22);border-radius:12px;background:#ffececeb;color:#b03a3a}.signout-button{width:100%}.profile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a273c59;display:flex;align-items:flex-start;justify-content:center;padding:88px 16px 16px;z-index:40;overscroll-behavior:contain}.profile-sheet-wrap{width:100%;display:flex;justify-content:center;max-height:100%}.menu-bar{position:relative;width:100%;background:#fffffff5;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 28px #22314a26;display:flex;gap:8px;padding:8px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);overflow:hidden}.menu-button{flex:1 0 0;min-width:0;background:#eef4fb;color:#51627d;border:1px solid #d6e4f3;border-radius:10px;box-shadow:none;font-weight:600;padding:.52rem .65rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-button.active{background:linear-gradient(135deg,var(--brand-primary),var(--brand-accent));color:#fff;border-color:transparent}.menu-measurements{position:absolute;top:-9999px;left:-9999px;display:flex;gap:8px;visibility:hidden;pointer-events:none}.menu-measurement{flex:0 0 auto}.more-grid{grid-template-columns:1fr}.more-panel{min-height:0}.more-link-list{display:grid;gap:10px}.more-link-card{display:grid;gap:4px;padding:14px;border:1px solid #d8e5f3;border-radius:14px;background:linear-gradient(180deg,#f8fbff,#f3f8fd);color:inherit;text-decoration:none}.more-link-card:hover,.more-link-card.active{border-color:#bcd2eb;background:linear-gradient(180deg,#fbfdff,#eef5fc)}.more-link-title{color:var(--text-main);font-weight:800}.more-link-description{color:var(--text-soft);font-size:.9rem}.sync-status-badge,.settings-sync-badge{min-width:1.25rem;height:1.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#b03a3a;color:#fff;font-size:.72rem;font-weight:800;line-height:1}.sync-status-badge{position:absolute;top:-8px;right:-7px;box-shadow:0 0 0 2px #fff}.settings-sync-button{display:inline-flex;align-items:center;gap:.45rem}.outbox-grid{display:grid;gap:14px;align-items:start}.outbox-modal-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;flex:0 0 auto}.outbox-modal-header h2{text-align:center}.outbox-modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.outbox-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.outbox-summary>div{border:1px solid #dce7f5;border-radius:10px;background:#fff;padding:10px}.outbox-actions-row,.outbox-item-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.outbox-item{border:1px solid #dce7f5;border-radius:10px;padding:.9rem;background:#fff}.outbox-item-details{display:grid;gap:.45rem;margin:.85rem 0 0}.outbox-item-details div{display:grid;gap:.15rem}.outbox-item-details dt{color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase}.outbox-item-details dd{margin:0;overflow-wrap:anywhere;color:var(--text)}.outbox-item+.outbox-item{margin-top:.75rem}.outbox-item.failed,.outbox-item.auth-blocked,.outbox-item.retry-delayed{border-color:#c2410c59}.outbox-item.synced{border-color:#1b836147}.outbox-item.discarded{border-color:#6b728059}@media (max-width: 700px){.authenticated-shell{padding:0 10px 16px}.app-header{padding-top:16px}.dashboard-grid,.schedule-filters{grid-template-columns:1fr}.schedule-period-buttons{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.schedule-toolbar{grid-template-columns:1fr;align-items:stretch}.schedule-toolbar-toggle-icon{display:inline-flex}.schedule-toolbar.collapsed .schedule-search-input-wrap,.schedule-toolbar.collapsed .schedule-actions,.schedule-toolbar.collapsed .schedule-filters{display:none}.schedule-toolbar.collapsed{min-height:0;gap:6px;padding-top:12px;padding-bottom:12px}.schedule-toolbar.collapsed .schedule-search label{margin-bottom:0}.schedule-search{grid-row:1}.schedule-actions{grid-row:3;justify-content:stretch}.schedule-actions button{flex:1}.schedule-filter-summary{text-align:left}.schedule-filters{grid-row:2}.filter-groups-row,.schedule-layout{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:0}.timeline-dot{display:none}.schedule-list{min-height:0}.schedule-list.panel{padding-left:10px;padding-right:10px}.brand-row{align-items:flex-start}.session-time-grid{grid-template-columns:minmax(56px,auto) repeat(2,minmax(0,1fr));gap:6px 8px}.schedule-action-summary-grid{grid-template-columns:1fr}.session-time-header{font-size:.72rem}.session-time-label,.session-time-value{font-size:.84rem}.gps-overview{grid-template-columns:1fr}.settings-row{grid-template-columns:1fr;align-items:stretch}.settings-row-value{text-align:left}.settings-row-end{width:100%;display:grid;justify-content:stretch;gap:8px}.settings-action-button{width:100%;min-width:0}.menu-bar{width:100%;gap:6px;padding:6px}.profile-overlay{padding-top:74px}.menu-button{font-size:.86rem;padding:.5rem .45rem}}
