:root{--color-canvas:#f4f6f7;--color-surface:#fff;--color-surface-elevated:#fff;--color-surface-subtle:#eaf0f2;--color-text-primary:#172a33;--color-text-secondary:#435762;--color-text-muted:#536773;--color-border:#778b96;--color-divider:#d7e0e4;--color-focus:#006a8e;--color-action-primary:#20485a;--color-action-primary-hover:#183a49;--color-action-on-primary:#fff;--color-action-secondary:#fff;--color-action-on-secondary:#20485a;--color-selected-surface:#e5f0f2;--color-selected-border:#20485a;--color-border-subtle:#d7e0e4;--color-state-error-foreground:#9b2c2c;--color-state-error-surface:#fcebeb;--color-state-error-border:#dea2a2;--color-state-danger-foreground:var(--color-state-error-foreground);--color-state-danger-surface:var(--color-state-error-surface);--color-state-danger-border:var(--color-state-error-border);--color-state-success-foreground:#17613b;--color-state-success-surface:#e8f5ec;--color-state-success-border:#97c9aa;--color-state-warning-foreground:#805500;--color-state-warning-surface:#fff4d8;--color-state-warning-border:#d8b663;--color-state-info-foreground:#1f5d86;--color-state-info-surface:#eaf3fa;--color-state-info-border:#98bed8;color:var(--color-text-primary);background:var(--color-canvas);font-synthesis:none;font-family:system-ui,sans-serif;line-height:1.5}:root[data-theme=dark],body.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#1b2028;--color-surface:#242a33;--color-surface-elevated:#2c3340;--color-surface-subtle:#29303c;--color-text-primary:#f1f5f9;--color-text-secondary:#a0aec0;--color-text-muted:#718096;--color-border:#404958;--color-divider:#323946;--color-focus:#38bdf8;--color-action-primary:#38bdf8;--color-action-primary-hover:#0284c7;--color-action-on-primary:#0f172a;--color-action-secondary:#242a33;--color-action-on-secondary:#f1f5f9;--color-selected-surface:#1e3a5f;--color-selected-border:#38bdf8;--color-border-subtle:#323946}.theme-switch-btn{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;box-sizing:border-box;background-color:#cbd5e1;border-radius:17px;outline:none;flex-shrink:0;align-items:center;width:68px;min-width:68px;max-width:68px;height:34px;transition:background-color .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #00000026;border:none!important;min-height:34px!important;max-height:34px!important;margin:0!important;padding:0!important}.theme-switch-btn:hover{opacity:.95;outline:none!important}.theme-switch-btn:focus-visible{outline-offset:2px;outline:2px solid var(--color-focus)!important}[data-theme=dark] .theme-switch-btn,body.dark .theme-switch-btn,.theme-switch-btn.dark{background-color:#1a222d;box-shadow:inset 0 1px 3px #0006}.theme-switch-track-icon{pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.theme-switch-track-sun{color:#64748b;opacity:.3;left:9px}.theme-switch-track-moon{color:#94a3b8;opacity:.25;right:9px}.theme-switch-thumb{z-index:2;pointer-events:none;background-color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:transform .2s cubic-bezier(.4,0,.2,1),background-color .2s;display:flex;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #00000038}[data-theme=dark] .theme-switch-thumb,body.dark .theme-switch-thumb,.theme-switch-btn.dark .theme-switch-thumb{background-color:#111827;transform:translate(34px);box-shadow:0 2px 5px #00000073}.theme-switch-thumb-icon{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;line-height:1;display:flex}.theme-switch-thumb-icon.sun{color:#d97706}.theme-switch-thumb-icon.moon{color:#38bdf8}*{box-sizing:border-box}body{margin:0}main{overflow-wrap:anywhere;max-width:60rem;padding:2rem}h1{font-size:1.5rem}h2{font-size:1.25rem}button{min-height:3rem;font:inherit;color:var(--color-action-on-primary);background:var(--color-action-primary);border:1px solid var(--color-action-primary);cursor:pointer;border-radius:.5rem;padding:.75rem 1rem}button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}main{max-width:72rem;margin:0 auto}.masthead{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.eyebrow{color:var(--color-text-secondary);margin-bottom:.25rem;font-size:.875rem}h1{margin:0}h2{margin-top:0}.panel{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;margin:1.5rem 0;padding:2rem}.narrow{max-width:42rem}label{margin-top:1rem;margin-bottom:.375rem;font-weight:600;display:block}input,select,textarea{border:1px solid var(--color-border);width:100%;min-height:2.75rem;font:inherit;color:inherit;background:var(--color-surface);box-sizing:border-box;border-radius:.25rem;padding:.625rem .75rem}select{cursor:pointer}textarea{resize:vertical;min-height:5rem}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}form button{margin-top:1.5rem}button{margin-bottom:.5rem;margin-right:.5rem}.btn-secondary,button.secondary{color:#20485a;min-width:48px;min-height:48px;font:inherit;cursor:pointer;background:#fff;border:1px solid #778b96;border-radius:.5rem;padding:.75rem 1rem}button:disabled{opacity:.65;cursor:not-allowed}button:not(:disabled):hover{outline:2px solid var(--color-action-primary);outline-offset:1px}.error{color:var(--color-state-error-foreground);background:var(--color-state-error-surface);border:1px solid var(--color-state-error-border);border-radius:.25rem;padding:1rem}.success{color:var(--color-state-success-foreground)}.notice{border-top:1px solid var(--color-divider);margin-top:1.5rem;padding-top:1rem}.account,footer{color:var(--color-text-secondary);font-size:.875rem}footer{border-top:1px solid var(--color-divider);margin-top:3rem;padding-top:1rem}@media (width<=600px){main{padding:1rem}.panel{padding:1.25rem}}.sign-in-shell{flex-direction:column;max-width:72rem;min-height:100svh;padding:2rem;display:flex}.sign-in-brand{align-items:center;gap:.75rem;display:flex}.brand-symbol{background:var(--color-action-primary);width:3rem;height:3rem;color:var(--color-action-on-primary);border-radius:.5rem;place-items:center;font-size:1.5rem;font-weight:700;display:grid}.sign-in-brand p{color:var(--color-text-secondary);margin:0;font-size:.875rem}.sign-in-panel{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;grid-template-columns:1fr 1.2fr;margin:auto 0;display:grid;overflow:hidden}.sign-in-context{background:var(--color-surface-subtle);flex-direction:column;align-items:flex-start;padding:3rem;display:flex}.workspace-symbol{width:3rem;height:3rem;color:var(--color-action-primary);margin-bottom:3rem}.sign-in-context .eyebrow{margin:0 0 1rem;font-size:.75rem;font-weight:600}.sign-in-context h2{margin:0 0 1rem;font-size:2rem;line-height:1.25}.sign-in-context>p:last-of-type{color:var(--color-text-secondary);max-width:28ch;margin:0}.access-note{border-top:1px solid var(--color-border);width:100%;color:var(--color-text-secondary);gap:1rem;margin-top:3rem;padding-top:1.5rem;font-size:.875rem;display:flex}.access-note p{margin:0}.sign-in-form{align-self:center;padding:3rem}.sign-in-label{color:var(--color-text-muted);font-size:.75rem;font-weight:600}.sign-in-form h2{margin:.75rem 0;font-size:1.5rem;line-height:2rem}.sign-in-description{color:var(--color-text-secondary);margin:0 0 2rem}.sign-in-instruction,.sign-in-private{color:var(--color-text-muted);font-size:.875rem}.sign-in-action{justify-content:space-between;align-items:center;width:100%;min-height:3.5rem;margin:1rem 0 1.5rem;font-weight:600;display:flex}.sign-in-action:not(:disabled):hover{background:var(--color-action-primary-hover)}.sign-in-action:focus-visible,.sign-in-help summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}.sign-in-help{border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);font-size:.875rem}.sign-in-help summary{cursor:pointer;min-height:3rem;color:var(--color-action-on-secondary);padding:1rem 0;font-weight:600}.sign-in-help p{color:var(--color-text-secondary);margin:0 0 1rem}.sign-in-private{margin:1.5rem 0 0}.sign-in-footer{border:0;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:0;display:flex}.sign-in-footer p{margin:0}.sign-in-footer button{margin:.5rem 0 0}@media (width<=760px){.sign-in-shell{gap:2rem;padding:1.5rem}.sign-in-panel{grid-template-columns:1fr}.sign-in-context{padding:1.5rem}.workspace-symbol,.access-note,.sign-in-context>p:last-of-type{display:none}.sign-in-context h2{margin:0;font-size:1.25rem;line-height:1.4}.sign-in-context h2 br{display:none}.sign-in-context h2 br:after{content:" "}.sign-in-context .eyebrow{margin-bottom:.5rem}.sign-in-form{padding:1.5rem}.sign-in-footer{flex-direction:column;align-items:flex-start;margin:0}}@media (width<=380px){.sign-in-shell{padding:1rem}}@media (height<=780px) and (width>=761px){.sign-in-panel{margin:2rem 0 0}}@media (height<=780px){.sign-in-shell{gap:1rem;padding:1rem}.sign-in-context,.sign-in-form{padding:1.5rem}.workspace-symbol{margin-bottom:1.5rem}.access-note{margin-top:1.5rem}.sign-in-panel{margin:auto 0}.sign-in-footer{margin-top:0}}@media (width<=760px) and (height<=900px){.sign-in-shell{gap:.75rem;padding:1rem}.sign-in-context,.sign-in-label,.sign-in-instruction,.sign-in-private{display:none}.sign-in-form{padding:1rem}.sign-in-form h2{margin:0 0 .75rem}.sign-in-description{margin:0 0 1rem}.sign-in-action{margin:.75rem 0}.sign-in-footer{gap:0;margin:0}.sign-in-footer>span{display:none}.sign-in-help summary{padding:.75rem 0}}@media (width<=760px) and (height<=660px){.sign-in-description{display:none}.sign-in-form h2{font-size:1.25rem;line-height:1.75rem}.sign-in-form .error{padding:.75rem;font-size:.875rem}}.admin-workspace{margin-top:1.5rem}.admin-nav-bar{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem;display:flex;overflow-x:auto}.admin-tab-btn{color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:1px solid #0000;border-radius:.375rem;align-items:center;gap:.75rem;width:100%;min-height:48px;margin:0;padding:.625rem .875rem;font-size:.875rem;font-weight:500;transition:all .12s;display:flex}.admin-tab-btn:hover{background:var(--color-surface-subtle);color:var(--color-text-primary);outline:none}.admin-tab-btn.active{background:var(--color-selected-surface);color:var(--color-action-primary);border:1px solid var(--color-divider);font-weight:600}.admin-tab-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.tab-segmented-control{-webkit-overflow-scrolling:touch;background:var(--color-surface-subtle);border:1px solid var(--color-divider);border-radius:.5rem;flex-wrap:nowrap;gap:4px;padding:4px;display:flex;overflow-x:auto}.tab-segment{min-width:48px;min-height:48px;font:inherit;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:.375rem;justify-content:center;align-items:center;margin:0;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.tab-segment:hover{color:var(--color-text-primary);background:#ffffff80}.tab-segment.active{color:var(--color-text-primary);border-color:var(--color-border-subtle);background:#fff;font-weight:600}.tab-segment:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.admin-content-area{flex-direction:column;display:flex}.admin-shell{background:var(--color-canvas);min-height:100svh;display:flex}.admin-sidebar{background:var(--color-surface);border-right:1px solid var(--color-divider);flex-direction:column;flex-shrink:0;width:17.5rem;padding:1.5rem 1rem;display:flex}.sidebar-brand{border-bottom:1px solid var(--color-divider);align-items:center;gap:.75rem;padding:0 .5rem 1.5rem;display:flex}.brand-logo{background:var(--color-action-primary);width:2.25rem;height:2.25rem;color:var(--color-action-on-primary);border-radius:.375rem;place-items:center;font-size:1.125rem;font-weight:700;display:grid}.brand-title{margin:0;font-size:1.125rem;font-weight:700;line-height:1.2}.brand-subtitle{color:var(--color-text-secondary);margin:0;font-size:.75rem}.sidebar-workspace-info{background:var(--color-surface-subtle);border:1px solid var(--color-divider);border-radius:.375rem;margin:1.25rem .5rem;padding:.75rem}.sidebar-workspace-info .eyebrow{text-transform:uppercase;letter-spacing:.05em;margin:0 0 .25rem;font-size:.6875rem}.workspace-name-wrap{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.workspace-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:600;overflow:hidden}.admin-nav{flex-direction:column;flex:1;gap:.25rem;display:flex}.nav-icon{flex-shrink:0;width:1.25rem;height:1.25rem}.sidebar-footer{border-top:1px solid var(--color-divider);flex-direction:column;gap:.75rem;margin-top:auto;padding-top:1rem;display:flex}.account-info{color:var(--color-text-secondary);font-size:.8125rem}.account-info .account{word-break:break-all;margin:0 0 .5rem}.connection-pill{align-items:center;gap:.5rem;font-size:.75rem;display:flex}.status-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.status-dot-success{background-color:var(--color-state-success-foreground)}.status-dot-pending{background-color:#805500}.status-dot-error{background-color:var(--color-state-error-foreground)}.retry-inline-btn{min-height:auto;margin:0;padding:.125rem .375rem;font-size:.6875rem}.admin-sign-out{width:100%;min-height:2.5rem;margin:0;font-size:.875rem}.admin-main{flex:1;max-width:72rem;margin:0 auto;padding:2.5rem;overflow-y:auto}.admin-page-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.admin-page-title{margin:.25rem 0 0;font-size:1.75rem;line-height:1.25}.status-panel{margin-top:0;margin-bottom:2rem}.status-subheading{margin:.75rem 0 .25rem;font-size:1.125rem}.status-description{color:var(--color-text-secondary);margin:0}.setup-guide-section{margin-top:2rem}.section-title{margin:0 0 .25rem;font-size:1.25rem}.section-subtitle{color:var(--color-text-secondary);margin:0 0 1.5rem;font-size:.875rem}.setup-grid{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1.25rem;display:grid}.setup-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.setup-card-header{align-items:baseline;gap:.75rem;display:flex}.step-number{color:var(--color-action-primary);background:var(--color-surface-subtle);border-radius:.25rem;padding:.125rem .375rem;font-size:.875rem;font-weight:700}.setup-card h4{margin:0;font-size:1rem}.setup-card p{color:var(--color-text-secondary);flex:1;margin:0;font-size:.875rem;line-height:1.45}.setup-card-footer{border-top:1px solid var(--color-divider);justify-content:space-between;align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.btn-sm{min-height:2.25rem;margin:0;padding:.375rem .75rem;font-size:.8125rem}.btn-primary{min-height:2.75rem;color:var(--color-action-on-primary);background:var(--color-action-primary);border:1px solid var(--color-action-primary);cursor:pointer;border-radius:.375rem;margin:0;padding:.5rem 1rem;font-size:.875rem;font-weight:600}.badge{white-space:nowrap;border-radius:.25rem;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex}.badge-success{color:#17613b;background:#e8f5ec;border:1px solid #97c9aa}.badge-warning{color:#805500;background:#fff4d8;border:1px solid #d8b663}.badge-info{color:#1f5d86;background:#eaf3fa;border:1px solid #98bed8}.badge-subtle,.badge-neutral{background:var(--color-surface-subtle);color:var(--color-text-secondary);border:1px solid var(--color-divider)}.badge-danger{background:var(--color-state-danger-surface);color:var(--color-state-danger-foreground);border:1px solid var(--color-state-danger-border)}.table-container,.table-responsive{width:100%;margin:1.25rem 0;overflow-x:auto}.admin-table,.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.admin-table th,.data-table th{background:var(--color-surface-subtle);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-divider);white-space:nowrap;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.admin-table td,.data-table td{border-bottom:1px solid var(--color-divider);padding:.875rem 1rem}.table-subtext{color:var(--color-text-secondary);font-size:.75rem}.panel-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.panel-header h3{margin:0 0 .25rem;font-size:1.125rem}.section-description{color:var(--color-text-secondary);margin:0;font-size:.875rem}.empty-roster-notice{background:var(--color-surface-subtle);color:var(--color-text-secondary);border-radius:.375rem;margin-top:1rem;padding:1rem;font-size:.875rem}.empty-state-card{text-align:center;background:var(--color-surface-subtle);border:1px dashed var(--color-border);border-radius:.5rem;margin-top:1rem;padding:3rem 2rem}.empty-state-card.compact{padding:1.5rem}.empty-state-icon{width:2.5rem;height:2.5rem;color:var(--color-text-muted);margin-bottom:.75rem}.empty-state-card h4{margin:0 0 .5rem;font-size:1rem}.empty-state-card p{color:var(--color-text-secondary);max-width:32rem;margin:0 auto;font-size:.875rem}.sub-grid{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1.5rem;display:grid}.sync-status-card{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin-top:1.5rem;display:grid}.sync-metric{background:var(--color-surface-subtle);border:1px solid var(--color-divider);border-radius:.375rem;flex-direction:column;gap:.25rem;padding:1.25rem;display:flex}.kpi-cards-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:2rem;display:grid}.kpi-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;flex-direction:column;gap:.5rem;padding:1.25rem;transition:all .15s;display:flex;box-shadow:0 1px 3px #0000000a}.kpi-card:hover{border-color:var(--color-border);box-shadow:0 4px 12px #0000000f}.kpi-card-header{justify-content:space-between;align-items:center;display:flex}.kpi-card-icon{background:var(--color-surface-subtle);width:2.25rem;height:2.25rem;color:var(--color-action-primary);border-radius:.375rem;place-items:center;font-size:1.125rem;display:grid}.kpi-card-title{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.8125rem;font-weight:600}.kpi-card-value{color:var(--color-text-primary);margin:.25rem 0 0;font-size:1.75rem;font-weight:700;line-height:1.2}.kpi-card-subtitle{color:var(--color-text-muted);margin:0;font-size:.8125rem}.metric-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.metric-value{color:var(--color-text-primary);font-size:1.125rem;font-weight:600}.metric-value.success{color:var(--color-state-success-foreground)}@media (width<=860px){.admin-shell{flex-direction:column}.admin-sidebar{border-right:none;border-bottom:1px solid var(--color-divider);width:100%}.admin-nav{flex-flow:wrap}.admin-main{padding:1.5rem}}.modal-backdrop,.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background-color:#172a3373;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.75rem;flex-direction:column;width:100%;max-width:46rem;max-height:90vh;animation:.15s ease-out modal-enter;display:flex;overflow:hidden;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.modal-card.modal-card-sm{max-width:32rem}.modal-card>form{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}@keyframes modal-enter{0%{opacity:0;transform:scale(.97)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{border-bottom:1px solid var(--color-divider);background:var(--color-surface);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.125rem 1.5rem;display:flex}.modal-header h3,.modal-title{color:var(--color-text-primary);margin:0;font-size:1.125rem;font-weight:700}.modal-body,.modal-body-scrollable{flex:auto;min-height:0;padding:1.5rem;overflow-y:auto}.modal-body label,.modal-body .form-label{margin-top:.875rem;margin-bottom:.375rem;font-size:.875rem;font-weight:600;display:block}.modal-body .form-row-2col label,.modal-body .form-row-2col .form-label{margin-top:0}.label-with-action{justify-content:space-between;align-items:center;min-height:1.5rem;margin-bottom:.375rem;display:flex}.label-with-action label,.label-with-action .btn-action-text,.label-with-action .link-button{margin:0!important}.modal-footer{border-top:1px solid var(--color-divider);background:var(--color-surface-subtle);z-index:10;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex;position:sticky;bottom:0}.modal-footer button{min-height:2.75rem;margin:0!important}.btn-action-text,.link-button,form button.btn-action-text,form button.link-button{align-items:center;gap:.25rem;display:inline-flex;color:var(--color-focus)!important;cursor:pointer!important;height:auto!important;min-height:auto!important;box-shadow:none!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important;font-size:.8125rem!important;font-weight:600!important;line-height:1.2!important;text-decoration:none!important}.btn-action-text:hover,.link-button:hover,form button.btn-action-text:hover,form button.link-button:hover{color:var(--color-action-primary)!important;background:0 0!important;outline:none!important;text-decoration:underline!important}.btn-action-text.btn-action-danger{color:var(--color-state-danger-foreground)!important}.form-group{margin-bottom:1.125rem}.form-label{color:var(--color-text-primary);margin-bottom:.375rem;font-size:.875rem;font-weight:600;display:block}.form-input,.form-select{width:100%;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);box-sizing:border-box;border-radius:.375rem;outline:none;padding:.625rem .875rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus{border-color:var(--color-focus);box-shadow:0 0 0 2px #006a8e33}.form-hint{color:var(--color-text-secondary);margin:.375rem 0 0;font-size:.8125rem}.form-row-2col{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem;display:grid}@media (width<=600px){.form-row-2col{grid-template-columns:1fr}}.btn-close{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;display:flex;min-height:2rem!important;max-height:2rem!important;margin:0!important;padding:0!important}.btn-close:hover{background:var(--color-canvas);color:var(--color-text-primary);border-color:var(--color-focus)}.btn-action{border:1px solid var(--color-divider);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;border-radius:.25rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:500;transition:background .15s,border-color .15s;min-height:auto!important;margin:0!important}.btn-action:hover{background:var(--color-surface-subtle);border-color:var(--color-border)}.btn-action+.btn-action{margin-left:.5rem!important}.label-with-action .btn-action{padding:.2rem .5rem;font-size:.75rem;font-weight:500}.btn-action-active{background:var(--color-surface-subtle);border-color:var(--color-action-primary);color:var(--color-action-primary)}.btn-action-danger{color:var(--color-state-danger-foreground);border-color:#9b2c2c33}.btn-action-danger:hover{background:var(--color-state-danger-surface);border-color:var(--color-state-danger-border)}.alert,.alert-banner{border-radius:.375rem;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.alert-info{background:var(--color-state-info-surface);border:1px solid var(--color-state-info-border);color:var(--color-state-info-foreground)}.alert-error,.alert-danger{background:var(--color-state-danger-surface);border:1px solid var(--color-state-danger-border);color:var(--color-state-danger-foreground)}.alert-success{background:var(--color-state-success-surface);border:1px solid var(--color-state-success-border);color:var(--color-state-success-foreground)}.floor-table-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:1rem;display:grid}.floor-table-card{background:var(--color-surface);border:1px solid var(--color-divider);text-align:center;border-radius:.5rem;flex-direction:column;justify-content:space-between;align-items:center;min-height:140px;padding:1rem .875rem;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.floor-table-card:hover{border-color:var(--color-border);box-shadow:0 2px 6px #0000000d}.floor-table-card.occupied{border-color:var(--color-focus);background:var(--color-selected-surface)}.floor-table-card.reserved{border-color:var(--color-state-warning-border);background:var(--color-state-warning-surface)}.floor-table-number{color:var(--color-text-primary);margin:.25rem 0;font-size:1.25rem;font-weight:700}.floor-table-shape{color:var(--color-text-secondary);margin-bottom:.5rem;font-size:.75rem}.station-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem;display:grid}.station-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.catalogue-filters-bar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.catalogue-filters-bar .search-box{flex:260px}.catalogue-filters-bar .search-box input{margin:0}.catalogue-filters-bar .filter-group{align-items:center;gap:.5rem;display:flex}.catalogue-filters-bar .filter-label{color:var(--color-text-secondary);white-space:nowrap;margin:0;font-size:.875rem;font-weight:600}.catalogue-filters-bar select{border:1px solid var(--color-border);background:var(--color-surface);font:inherit;color:inherit;border-radius:.25rem;padding:.625rem .75rem;font-size:.875rem}.dietary-badge{border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.dietary-veg{border:1.5px solid #0f853c}.dietary-veg .dietary-marker{background:#0f853c;border-radius:50%;width:8px;height:8px}.dietary-non-veg{border:1.5px solid #a61c1c}.dietary-non-veg .dietary-marker{background:#a61c1c;border-radius:50%;width:8px;height:8px}.dietary-egg{border:1.5px solid #d48b04}.dietary-egg .dietary-marker{background:#d48b04;border-radius:50%;width:8px;height:8px}.dietary-vegan{border:1.5px solid #166534}.dietary-vegan .dietary-marker{background:#166534;border-radius:2px;width:8px;height:8px}.code-pill{background:var(--color-divider);color:var(--color-text-secondary);white-space:nowrap;border-radius:3px;margin-left:.375rem;padding:.125rem .375rem;font-family:monospace;font-size:.75rem;font-weight:600}.item-description-preview{color:var(--color-text-secondary);max-width:380px;margin:.25rem 0 0;font-size:.8125rem;line-height:1.35}.price-tag{font-variant-numeric:tabular-nums;color:var(--color-text-primary);font-size:1rem;font-weight:700}.status-toggle-btn{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:.25rem;margin:0;padding:.375rem .625rem;font-size:.8125rem;font-weight:600;transition:all .15s}.status-toggle-btn.available{border-color:var(--color-state-success-border);color:var(--color-state-success-foreground);background:var(--color-state-success-surface)}.status-toggle-btn.unavailable{border-color:var(--color-state-danger-border);color:var(--color-state-danger-foreground);background:var(--color-state-danger-surface)}.row-muted{opacity:.65}.modifier-options-list{flex-direction:column;gap:.375rem;margin-top:.5rem;display:flex}.modifier-option-item{background:var(--color-canvas);border-radius:.25rem;justify-content:space-between;align-items:center;padding:.375rem .5rem;font-size:.875rem;display:flex}.tax-slab-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.tax-slab-card h4{color:var(--color-text-primary);margin:.25rem 0;font-size:1.125rem}.tax-slab-card p{color:var(--color-text-secondary);margin:0;font-size:.875rem;line-height:1.4}.tax-split-detail{border-top:1px dashed var(--color-divider);justify-content:space-between;margin-top:auto;padding-top:.75rem;font-size:.875rem;display:flex}.snapshot-active-banner{background:var(--color-selected-surface);border:1px solid var(--color-focus);border-radius:.5rem;margin-top:1rem;padding:1.25rem}.snapshot-active-banner h4{color:var(--color-text-primary);margin:.5rem 0 .25rem;font-size:1.25rem}.snapshot-meta{flex-wrap:wrap;gap:1.5rem;margin-top:.75rem;font-size:.875rem;display:flex}.checkbox-list{flex-direction:column;gap:.5rem;margin-top:.375rem;display:flex}.checkbox-item{cursor:pointer;align-items:center;gap:.5rem;margin:0;font-size:.875rem;display:flex}.checkbox-item input[type=checkbox]{width:auto;min-height:auto;margin:0}.connectivity-banner{border-radius:.5rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem;padding:.875rem 1.25rem;display:flex}.connectivity-online{background:var(--color-state-success-surface);border:1px solid var(--color-state-success-border);color:var(--color-state-success-foreground)}.connectivity-offline{background:var(--color-state-warning-surface);border:1px solid var(--color-state-warning-border);color:var(--color-state-warning-foreground)}.connectivity-status-pill{align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;display:inline-flex}.incident-card{border:1px solid var(--color-state-danger-border);background:var(--color-state-danger-surface);border-radius:.5rem;margin-bottom:1.25rem;padding:1.25rem}.incident-card.warning{border-color:var(--color-state-warning-border);background:var(--color-state-warning-surface)}.incident-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.incident-header h4{color:var(--color-text-primary);margin:0;font-size:1.125rem}.incident-remediation{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.375rem;margin-top:.75rem;padding:.75rem;font-size:.875rem}.report-stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem;display:grid}.report-stat-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:.5rem;flex-direction:column;gap:.375rem;padding:1.25rem;display:flex}.report-stat-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.8125rem;font-weight:500}.report-stat-value{color:var(--color-text-primary);font-size:1.5rem;font-weight:700}.report-stat-desc{color:var(--color-text-secondary);margin:0;font-size:.8125rem}.filter-badge-btn{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:1rem;margin:0;padding:.25rem .625rem;font-size:.75rem;font-weight:500;min-height:auto!important}.filter-badge-btn.active{background:var(--color-selected-surface);border-color:var(--color-focus);color:var(--color-focus);font-weight:600}
