.nav-info-icon{vertical-align:-.05em;opacity:.9;border:1.5px solid;border-radius:999px;justify-content:center;align-items:center;width:1.15em;height:1.15em;margin-right:.35em;font-family:Georgia,Times New Roman,serif;font-size:.72em;font-style:italic;font-weight:800;line-height:1;display:inline-flex}.mobile-nav a .nav-info-icon,.mobile-more-links a .nav-info-icon{margin-right:.4em}.sidebar-nav a.has-nav-alert{position:relative}.nav-alert-dot{background:var(--warn);width:7px;height:7px;box-shadow:0 0 0 2px var(--surface);border-radius:999px;position:absolute;top:10px;right:10px}.confirm-modal-backdrop{z-index:120}.drawer-panel.confirm-modal:not(.group-mark-modal){background:var(--surface);border:1px solid var(--line);width:min(340px,100vw - 32px);max-width:340px;max-height:min(88dvh,520px);box-shadow:0 1px 2px #0f27440f,0 18px 48px #0f27442e}.confirm-modal .drawer-head{margin-bottom:8px}.confirm-modal .drawer-head h1{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.15rem}.confirm-modal-message{white-space:pre-wrap;margin:0 0 18px;line-height:1.45}.confirm-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.confirm-modal .btn.danger{background:var(--err);color:#fff}.confirm-modal .btn.danger:hover:not(:disabled){filter:brightness(.94)}.group-mark-modal-backdrop{z-index:130;justify-content:center;align-items:center!important;padding:20px!important}.group-mark-modal{border-left:4px solid var(--slot-border,var(--teal));background:var(--surface);width:min(440px,100vw - 32px);max-width:440px;max-height:min(90dvh,640px);border-radius:16px!important;padding:20px 20px 22px!important}.group-mark-modal-head{align-items:flex-start;gap:12px;margin-bottom:12px}.group-mark-modal-meta{margin:0 0 4px}.group-mark-modal-trainer{color:var(--navy);align-items:center;gap:8px;margin:8px 0 0;font-weight:600;display:flex}.group-mark-field{margin:14px 0}.group-mark-field input{padding:10px 12px;font-size:1.05rem}.group-mark-pay-preview{background:var(--teal-soft);color:var(--navy);border-radius:10px;margin:8px 0 4px;padding:10px 12px}.group-mark-modal-actions{width:100%;margin-top:18px}.group-mark-modal-actions .btn.primary{margin-left:auto}.help-page{flex-direction:column;gap:16px;min-width:0;display:flex}.help-hero{color:#f4f8fb;background:linear-gradient(135deg,#0f2744f5 0%,#163554 48%,#0d7377e0 100%);border:1px solid #0f274414;border-radius:18px;padding:22px 24px;box-shadow:inset 0 1px #ffffff14,0 12px 32px #0f274424}.help-hero h1{font-family:var(--font-brand);margin:0;font-size:clamp(1.45rem,2.2vw,1.85rem)}.help-hero .muted{color:#f4f8fbb8;margin:6px 0 0}.help-search{flex-direction:column;gap:6px;display:flex}.help-search input{max-width:420px}.help-layout{grid-template-columns:minmax(180px,220px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.help-toc{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffeb;border-radius:16px;padding:14px 12px;position:sticky;top:12px}.help-toc-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 4px 8px;font-size:.68rem;font-weight:700}.help-toc ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.help-toc a{color:var(--text);border-radius:10px;padding:8px 10px;font-size:.86rem;font-weight:600;text-decoration:none;display:block}.help-toc a:hover{background:var(--surface-2)}.help-articles{flex-direction:column;gap:14px;min-width:0;display:flex}.help-article{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7fafbf5 100%);border-radius:16px;padding:18px 20px 20px;scroll-margin-top:16px;box-shadow:0 1px 2px #0f27440a,0 8px 24px #0f27440f}.help-article-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.help-article-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--teal);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 4px;font-size:.68rem;font-weight:700;display:flex}.help-article h2{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.2rem}.help-block{margin-top:12px}.help-block h3{margin:0 0 6px;font-size:.95rem}.help-block p,.help-block li{color:var(--text);font-size:.9rem;line-height:1.5}.help-block p{margin:0 0 8px}.help-block ul{flex-direction:column;gap:4px;margin:0;padding-left:1.15rem;display:flex}.help-rates{flex-direction:column;gap:18px;margin-top:12px;display:flex}.help-rates .rates-block h2{font-size:1rem}.main:has(.control-center-page){width:min(1240px,100%)}.control-center-page{flex-direction:column;gap:20px;min-width:0;display:flex}.d1-usage-card{flex-direction:column;gap:14px;display:flex}.d1-usage-card__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.d1-usage-card__title{margin:4px 0 0;font-size:1.1rem}.d1-usage-card__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.d1-usage-card__stats .label{color:var(--muted,#6b7280);font-size:.75rem}.d1-usage-card__stats .value{font-size:1.15rem;font-weight:600}.d1-usage-card__meter{flex-direction:column;gap:6px;display:flex}.d1-usage-card--warn{border-color:#f59e0b66}.d1-usage-card--danger{background:#ef444408;border-color:#ef444488}@media (width<=720px){.d1-usage-card__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.control-center-hero{color:#f4f8fb;background:linear-gradient(135deg,#0f2744f5 0%,#163554 48%,#0d7377e0 100%);border:1px solid #0f274414;border-radius:18px;padding:22px 24px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 12px 32px #0f274424}.control-center-hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 88% 18%,#7fd4d738,#0000 42%),radial-gradient(circle at 8% 100%,#ffffff0f,#0000 36%);position:absolute;inset:0}.control-center-hero-top{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex;position:relative}.control-center-hero h1{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:clamp(1.55rem,2.4vw,1.95rem);font-weight:700}.control-center-hero .muted{color:#f4f8fbb8;margin:6px 0 0}.control-center-day-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff24;border-radius:14px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;max-width:100%;padding:8px 10px;display:flex}.control-center-day-label{text-align:center;color:#f4f8fb;flex:7rem;min-width:0;font-size:.88rem;font-weight:700}.control-center-day-end{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.control-center-day-nav .btn.ghost{color:#f4f8fb;background:#ffffff14;border-color:#ffffff29}.control-center-day-nav .btn.ghost:hover:not(:disabled){background:#ffffff29}.control-center-day-today{font-size:.82rem}.control-center-refresh,.control-center-pause{min-width:36px}.control-center-pause.on{color:#ffd89a;background:#ffd89a1f;border-color:#ffd89a66}.control-center-pause-hint{margin-top:4px}.control-center-quick{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);background:#ffffffeb;border-radius:16px;padding:14px 16px}.control-center-quick-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 4px 10px;font-size:.68rem;font-weight:700}.control-center-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.control-center-quick-item{color:var(--text);transition:background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease);border:1px solid #0000;border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;text-decoration:none;display:flex}.control-center-quick-item:hover{background:var(--surface-2);border-color:var(--line)}.control-center-quick-item:active{transform:scale(var(--motion-press))}.control-center-quick-item.is-active{background:linear-gradient(180deg, var(--teal-soft), #dff1f1);border-color:#0d737738;box-shadow:inset 0 0 0 1px #0d737714}.control-center-quick-title{font-size:.92rem;font-weight:700;line-height:1.25}.control-center-quick-hint{color:var(--muted);font-size:.68rem;line-height:1.3}.control-center-alerts{background:linear-gradient(#fffaf5 0%,#fff4e8 100%);border:1px solid #9a4b122e;border-radius:16px;padding:16px 18px;box-shadow:0 1px 2px #9a4b120f,0 8px 24px #9a4b1214}.control-center-alerts-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.control-center-alerts-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--warn);margin:0 0 4px;font-size:.68rem;font-weight:700}.control-center-alerts-head h2{font-family:var(--font-brand);letter-spacing:-.01em;color:var(--text);margin:0;font-size:1.05rem}.control-center-alerts-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.control-center-alert{width:100%;color:inherit;text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease);background:#ffffffe0;border:1px solid #9a4b121f;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}button.control-center-alert{font:inherit}.control-center-alert:hover{background:#fff;border-color:#9a4b1238;transform:translateY(-1px)}.control-center-alert:active{transform:scale(var(--motion-press))}.control-center-alert-chip{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:4px 8px;font-size:.62rem;font-weight:700}.control-center-alert-chip.kind-shift_not_started{background:var(--warn-soft);color:var(--warn)}.control-center-alert-chip.kind-plan_empty{color:#a33b3b;background:#fde8e8}.control-center-alert-chip.kind-handoff{background:var(--teal-soft);color:var(--teal)}.control-center-alert-chip.kind-notifications{color:var(--navy);background:#e8eef8}.control-center-alert-chip.kind-shift_closing{background:var(--err-soft);color:var(--err)}.control-center-alert-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.control-center-alert-body strong{font-size:.92rem;line-height:1.3}.control-center-alert-body .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.control-center-alert-arrow{color:var(--muted);flex:none;font-weight:700}.control-center-day-widgets{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7fafbf5 100%);border-radius:16px;padding:18px 18px 20px;box-shadow:0 1px 2px #0f27440a,0 12px 36px #0f274412}.control-center-day-widgets-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:14px;display:flex}.control-center-day-kicker{color:var(--teal)}.control-center-day-widgets-head h2{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.15rem}.control-center-widget-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.control-center-widget{border:1px solid var(--line);min-height:132px;color:inherit;transition:border-color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease);background:#ffffffeb;border-radius:14px;flex-direction:column;gap:10px;padding:14px 16px;text-decoration:none;display:flex;box-shadow:inset 0 1px #ffffffd9,0 2px 10px #0f27440a}.control-center-widget:hover{border-color:#0d737738;transform:translateY(-1px);box-shadow:inset 0 1px #ffffffd9,0 8px 24px #0f274414}a.control-center-widget:active{transform:scale(var(--motion-press))}.control-center-widget.has-error{border-color:#b423182e}.control-center-widget-top{align-items:flex-start;gap:10px;display:flex}.control-center-widget-accent{background:var(--teal);border-radius:999px;flex:none;width:4px;height:36px}.control-center-widget-accent.accent-schedule{background:linear-gradient(#0d7377,#14a3a8)}.control-center-widget-accent.accent-sales{background:linear-gradient(#163554,#0d7377)}.control-center-widget-accent.accent-personal{background:linear-gradient(#6b4fa0,#9a6bd4)}.control-center-widget-accent.accent-studio{background:linear-gradient(#9a4b12,#d4882a)}.control-center-widget-accent.accent-payroll{background:linear-gradient(#0f2744,#163554)}.control-center-widget-accent.accent-director{background:linear-gradient(#0d7377,#0a5f62)}.control-center-widget-grid-month{grid-template-columns:repeat(2,minmax(0,1fr))}.control-center-month-widgets{border-color:#0d737755;min-width:0;overflow-x:hidden;box-shadow:0 1px 2px #0f27440a,0 16px 40px #0d737718}.control-center-month-recap{flex-direction:column;gap:12px;min-width:0;display:flex}.control-center-month-result{min-height:0;padding:18px 20px}.control-center-month-result-label,.control-center-month-metric-label{color:var(--muted);margin:0 0 6px;font-size:.78rem;font-weight:600}.control-center-month-result-value{font-family:var(--font-brand);letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:1.85rem;font-weight:800;line-height:1.1}.control-center-month-result-phrase{margin:8px 0 0;font-size:.92rem;font-weight:650}.control-center-month-result.is-plus{background:#ecfdf3;border-color:#15803d33}.control-center-month-result.is-plus .control-center-month-result-value,.control-center-month-result.is-plus .control-center-month-result-phrase{color:#15803d}.control-center-month-result.is-minus{background:#fef2f2;border-color:#b91c1c33}.control-center-month-result.is-minus .control-center-month-result-value,.control-center-month-result.is-minus .control-center-month-result-phrase{color:#b91c1c}.control-center-month-result.is-start .control-center-month-result-phrase{color:var(--muted);font-weight:600}.control-center-month-recap-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;display:grid}.control-center-month-recap-grid .control-center-widget{min-height:0}.control-center-month-metric-value{font-family:var(--font-brand);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:1.2rem;font-weight:800;line-height:1.2}.control-center-month-recap-grid .is-expenses{background:#fff2cc;border-color:#e6c84a55}.control-center-month-salaries{color:inherit;line-height:1.4;text-decoration:none;display:block}.control-center-month-salaries:active{transform:scale(var(--motion-press))}.control-center-month-salaries:hover{color:var(--teal)}.control-center-month-salaries-src{color:var(--muted);font-weight:500}.control-center-month-people{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;min-width:0;display:grid}.control-center-month-people-block{gap:10px;min-height:0}.control-center-month-people-block h3{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:.92rem}.control-center-month-people-empty{color:var(--teal);margin:0;font-size:.88rem;font-weight:650}.control-center-month-chip-row{flex-direction:column;gap:6px;display:flex}.control-center-month-chip-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.65rem;font-weight:700}.control-center-month-chips{flex-wrap:wrap;gap:6px;display:flex}.control-center-month-chips .pill{white-space:normal;max-width:100%;font-size:.72rem;font-weight:650;line-height:1.35}.control-center-widget-top h3{font-size:.92rem;font-family:var(--font-brand);letter-spacing:-.01em;margin:0}.control-center-widget-top .muted{margin:2px 0 0}.control-center-widget-body{flex:1;min-height:0}.control-center-widget-metric{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.control-center-widget-metric .value{font-family:var(--font-brand);letter-spacing:-.03em;font-size:1.35rem;font-weight:800;line-height:1.1}.control-center-widget-metric.compact .value{font-size:1.05rem;font-weight:700}.control-center-widget-metric .label{color:var(--muted);font-size:.78rem;font-weight:600}.control-center-widget-sub{margin:6px 0 0;line-height:1.35}.control-center-widget-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.control-center-widget-tags .pill{font-size:.68rem}.control-center-widget-link{margin-top:auto}.control-center-widget.is-loading{pointer-events:none;background:var(--surface-2);border-style:dashed}.control-center-widget-shimmer{background:linear-gradient(90deg,#0f27440f 0%,#0f27441a 50%,#0f27440f 100%) 0 0/200% 100%;border-radius:8px;animation:1.2s ease-in-out infinite control-center-shimmer}.control-center-widget-shimmer.title{width:55%;height:14px}.control-center-widget-shimmer.value{width:70%;height:28px;margin-top:12px}.control-center-widget-shimmer.hint{width:85%;height:10px;margin-top:8px}.control-center-section{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7fafbf5 100%);border-radius:16px;flex-direction:column;gap:14px;min-width:0;padding:18px 18px 22px;display:flex;box-shadow:0 1px 2px #0f27440a,0 12px 36px #0f274412}.control-center-section-head h2{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.15rem}.control-center-section-head .muted{margin:4px 0 0}.control-center-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.control-center-shift-card{transition:box-shadow .15s,transform .15s}.control-center-shift-card:hover{box-shadow:0 1px 2px #0f27440a,0 8px 24px #0f274414}.control-center-shift-actions{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.control-center-empty-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.control-center-help{padding:0 2px}.control-center-help summary{cursor:pointer;color:var(--teal);align-items:center;gap:6px;padding:6px 0;font-size:.82rem;font-weight:700;list-style:none;display:inline-flex}.control-center-help summary::-webkit-details-marker{display:none}.control-center-help summary:before{content:"â¸";font-size:.75rem;transition:transform .15s}.control-center-help[open] summary:before{transform:rotate(90deg)}.control-center-help-body{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;margin-top:8px;padding:12px 14px}.control-center-help-list{flex-direction:column;gap:8px;margin:10px 0 0;padding-left:1.1rem;font-size:.84rem;line-height:1.45;display:flex}.control-center-help-list strong{color:var(--text)}.control-center-alerts-hint{margin:4px 0 0}.control-center-alert:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.recent-shifts-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.recent-shifts.is-collapsible .recent-shifts-head{align-items:center}.recent-shifts-toggle{color:inherit;cursor:pointer;text-align:left;min-width:0;font:inherit;background:0 0;border:0;align-items:flex-start;gap:8px;padding:0;display:flex}.recent-shifts-toggle-mark{color:var(--teal);flex-shrink:0;margin-top:.55rem;font-size:.85rem;line-height:1;transition:transform .15s}.recent-shifts.is-open .recent-shifts-toggle-mark{transform:rotate(90deg)}.recent-shifts-toggle-text{flex-direction:column;gap:2px;min-width:0;display:flex}.recent-shifts-toggle .recent-shifts-kicker{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.recent-shifts-toggle .recent-shifts-title{display:block}.recent-shifts-body{margin-top:12px}.recent-shifts-kicker{color:var(--navy)}.recent-shifts-title{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.05rem}.recent-shifts-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.recent-shifts-row{border:1px solid var(--line);background:#ffffffe0;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.recent-shifts-row-main{flex-wrap:wrap;flex:1;align-items:baseline;gap:6px 10px;min-width:0;display:flex}.recent-shifts-date{color:var(--navy);white-space:nowrap;font-size:.82rem;font-weight:700}.recent-shifts-name{font-size:.88rem;font-weight:700}.recent-shifts-type{white-space:nowrap}.recent-shifts-status{font-size:.82rem;font-weight:600}.recent-shifts-status.tone-muted{color:var(--muted)}.recent-shifts-status.tone-warn{color:var(--warn)}.recent-shifts-status.tone-ok{color:var(--teal)}.recent-shifts-status.tone-default{color:var(--text)}.recent-shifts-action{white-space:nowrap;flex:none}.recent-shifts-more{text-align:center;margin:0}.recent-shifts-empty{margin:0}.recent-shifts-loading{flex-direction:column;gap:8px;display:flex}.recent-shifts-shimmer{background:linear-gradient(90deg,#0f27440f 0%,#0f27441a 50%,#0f27440f 100%) 0 0/200% 100%;border-radius:12px;height:44px;animation:1.2s ease-in-out infinite control-center-shimmer}.shift-history-page{flex-direction:column;gap:20px;min-width:0;display:flex}.shift-history-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 22px;display:flex}.shift-history-hero h1{font-family:var(--font-brand);margin:0;font-size:1.45rem}.main:has(.settings-page){width:min(1240px,100%)}.settings-table-card::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.settings-page{flex-direction:column;gap:14px;min-width:0;max-width:100%;min-height:0;display:flex}.settings-head{flex-wrap:wrap;align-items:baseline;gap:8px 14px;display:flex}.settings-head h1{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.settings-head .muted{margin:0}.settings-kicker{letter-spacing:.08em;text-transform:uppercase;color:#7fd4d7;margin:0 0 6px;font-size:.72rem;font-weight:700}.settings-shell{grid-template-columns:minmax(200px,240px) minmax(0,1fr);align-items:start;gap:16px;min-width:0;display:grid}.settings-nav{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-radius:16px;flex-direction:column;gap:4px;padding:12px 10px 10px;display:flex;position:sticky;top:12px;box-shadow:0 1px 2px #0f27440a,0 8px 24px #0f27440f}.settings-nav-groups{flex-direction:column;gap:12px;display:flex}.settings-nav-group{min-width:0}.settings-nav-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 8px 6px;font-size:.68rem;font-weight:700}.settings-nav-list{flex-direction:column;gap:4px;display:flex}.settings-nav-foot{border-top:1px solid var(--line);margin-top:8px;padding-top:10px}.settings-nav-item{color:var(--text);transition:background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease);border:1px solid #0000;border-radius:12px;flex-direction:column;gap:2px;padding:8px 12px;text-decoration:none;display:flex;position:relative}a.settings-nav-item:hover{background:var(--surface-2);border-color:var(--line)}a.settings-nav-item:active{transform:scale(var(--motion-press))}.settings-nav-item.is-active{background:linear-gradient(180deg, var(--teal-soft), #dff1f1);border-color:#0d737738;box-shadow:inset 0 0 0 1px #0d737714}.settings-nav-item.is-active:before{content:"";background:var(--teal);border-radius:999px;width:3px;position:absolute;top:10px;bottom:10px;left:4px}.settings-nav-item.is-soon{opacity:.55;cursor:default}.settings-nav-title{font-size:.92rem;font-weight:700;line-height:1.25}.settings-nav-hint{color:var(--muted);font-size:.72rem;line-height:1.3}.settings-soon{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border:1px solid var(--line);border-radius:999px;align-self:flex-start;margin-top:6px;padding:2px 8px;font-size:.62rem;font-weight:700}.settings-main{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7fafbf5 100%);border-radius:16px;min-width:0;padding:18px 18px 22px;overflow:auto;box-shadow:0 1px 2px #0f27440a,0 12px 36px #0f274412;container:settings-main/inline-size}.settings-panel{gap:14px;min-width:0;max-width:100%}.settings-split{gap:18px;min-width:0;display:grid}.settings-split>*{min-width:0}.settings-team-form h2{font-size:.95rem;font-family:var(--font-brand);letter-spacing:-.01em;margin:0}.settings-panel-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.settings-panel-head h2{font-size:1.15rem;font-family:var(--font-brand);letter-spacing:-.01em;margin:0}.settings-panel-head h3{font-size:1rem;font-family:var(--font-brand);letter-spacing:-.01em;margin:0}.settings-panel-head .muted{margin:4px 0 0}.alias-why{max-width:62ch;margin:0}.settings-aliases-block{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}.settings-scroll-hint{display:none}@media (width<=899px){.settings-scroll-hint{margin:0 0 4px;display:block}.settings-panel .rates-table input{min-height:40px;font-size:16px}}.alias-why a{font-weight:700}.alias-add{max-width:640px}.alias-add h2{font-size:.95rem;font-family:var(--font-brand);letter-spacing:-.01em;margin:0}.alias-add-grid{grid-template-columns:1fr;align-items:end;gap:10px 12px;display:grid}@media (width>=640px){.alias-add-grid{grid-template-columns:1fr auto 1fr}}.alias-add-eq{font-family:var(--font-brand);color:var(--teal);padding-bottom:10px;font-weight:800;display:none}@media (width>=640px){.alias-add-eq{display:block}}.alias-preview{color:var(--navy);margin:0;font-size:.82rem;font-weight:600}.alias-groups{gap:10px;margin:0;padding:0;list-style:none;display:grid}.alias-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px 16px;box-shadow:0 1px 2px #0f274408,0 4px 16px #0f27440d}.alias-card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.alias-card-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:.68rem;font-weight:700}.alias-card-head strong{font-family:var(--font-brand);font-size:1.05rem}.alias-chips{flex-wrap:wrap;gap:6px;display:flex}.alias-chip{background:var(--teal-soft);color:var(--navy);border:1px solid #0d73772e;border-radius:99px;align-items:center;gap:4px;padding:4px 4px 4px 10px;font-size:.85rem;font-weight:600;display:inline-flex}.alias-chip-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:1.05rem;line-height:1}.alias-chip-x:hover{color:var(--warn)}.settings-form-card{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-2));transition:box-shadow var(--motion-mid) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease);border-radius:14px;box-shadow:inset 0 1px #ffffffd9,0 2px 10px #0f27440a}.settings-form-card:hover{box-shadow:inset 0 1px #ffffffd9,0 6px 18px #0f274412}.settings-reset-card{max-width:min(640px,100%)}.settings-reset-section{border:1px solid var(--line);background:#fff;border-radius:12px;margin-top:4px;overflow:hidden}.settings-reset-section.is-critical{border-color:color-mix(in srgb, var(--danger,#b42318) 35%, var(--line));background:color-mix(in srgb, var(--danger,#b42318) 4%, #fff)}.settings-reset-section-head{letter-spacing:.02em;text-transform:uppercase;color:var(--ink-muted,#5b6b7c);background:linear-gradient(180deg, var(--surface-2,#f3f6f8), #eef3f6);border-bottom:1px solid var(--line);padding:10px 14px;font-size:.72rem;font-weight:700}.settings-reset-section.is-critical .settings-reset-section-head{color:var(--danger,#b42318);background:linear-gradient(180deg, color-mix(in srgb, var(--danger,#b42318) 8%, #fff), color-mix(in srgb, var(--danger,#b42318) 4%, #fff))}.settings-reset-list{margin:0;padding:4px 0;list-style:none}.settings-reset-list li+li{border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent)}.settings-reset-item{cursor:pointer;grid-template-columns:auto 1fr;align-items:start;gap:12px;margin:0;padding:12px 14px;display:grid}.settings-reset-item:hover{background:color-mix(in srgb, var(--accent,#1f6feb) 5%, transparent)}.settings-reset-item input[type=checkbox]{flex-shrink:0;width:1.05rem;height:1.05rem;margin-top:3px}.settings-reset-item-text{flex-direction:column;gap:2px;min-width:0;display:flex}.settings-reset-item-title{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;line-height:1.35;display:flex}.settings-reset-item-hint{line-height:1.35}.settings-reset-badge{letter-spacing:.02em;color:var(--danger,#b42318);background:color-mix(in srgb, var(--danger,#b42318) 12%, #fff);border:1px solid color-mix(in srgb, var(--danger,#b42318) 28%, transparent);border-radius:999px;align-items:center;padding:1px 7px;font-size:.65rem;font-weight:700;display:inline-flex}.settings-reset-summary{border:1px dashed var(--line);background:var(--surface-2,#f3f6f8);border-radius:10px;flex-direction:column;gap:4px;margin-top:4px;padding:10px 12px;font-size:.85rem;display:flex}.settings-reset-summary strong{text-transform:uppercase;letter-spacing:.02em;color:var(--ink-muted,#5b6b7c);font-size:.72rem}.settings-table-card{border:1px solid var(--line);scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;background:#fff;border-radius:14px;max-width:100%;overflow:auto;box-shadow:0 1px 2px #0f274408,0 4px 16px #0f27440d}.settings-table-card .data-table{width:100%;min-width:0}.settings-table-card .data-table th{z-index:1;position:sticky;top:0}.settings-staff-table th{background:linear-gradient(180deg, var(--surface-2), #eef4f6);padding:10px 12px;font-size:.68rem}.settings-staff-table td{padding:11px 12px;font-size:.88rem}.settings-staff-table .col-email{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.settings-staff-table .col-actions{white-space:nowrap;width:1%}.settings-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.settings-row-actions .btn.sm{padding:6px 10px;font-size:.78rem;line-height:1.2}.team-page{gap:16px}.team-stats{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:.82rem;display:flex}.team-stats strong{color:var(--navy);font-family:var(--font-brand);font-weight:800}.team-stats-dot{background:var(--line-strong);border-radius:50%;width:4px;height:4px}.team-create{max-width:640px}.team-create-head h2{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:1.02rem}.team-create-head .muted{margin:4px 0 0}.team-create-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.team-roster{gap:12px;margin:0;padding:0;list-style:none;display:grid}.team-card{border:1px solid var(--line);background:#fff;border-radius:16px;gap:14px;padding:16px 18px 14px;display:grid;box-shadow:0 1px 2px #0f27440a,0 8px 24px #0f27440d}.team-card.is-off{opacity:.88;background:linear-gradient(#fbfcfd,#f4f7f9)}.team-card.is-editing{border-color:color-mix(in srgb, var(--teal) 35%, var(--line));box-shadow:0 0 0 3px var(--teal-soft), 0 8px 24px #0f27440f}.team-card-top{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px 14px;display:grid}.team-avatar{color:#fff;width:44px;height:44px;font-family:var(--font-brand);letter-spacing:.04em;border-radius:14px;place-items:center;font-size:.92rem;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #ffffff40}.team-id{gap:2px;min-width:0;display:grid}.team-name{font-family:var(--font-brand);letter-spacing:-.02em;color:var(--navy);font-size:1.05rem}.team-email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.team-edit-fields{gap:6px;display:grid}.team-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.team-pill{letter-spacing:.02em;background:var(--teal-soft);color:var(--teal);border-radius:999px;align-items:center;padding:4px 9px;font-size:.68rem;font-weight:800;display:inline-flex}.team-pill.is-owner{background:var(--navy);color:#eef4f8}.team-pill.is-director{color:#d7f3f1;background:#123a4a}.team-pill.is-admin{background:var(--teal-soft);color:var(--teal)}.team-pill.is-on{background:var(--ok-soft);color:var(--ok)}.team-pill.is-muted{background:var(--bg-accent);color:var(--muted)}.team-color-row{flex-wrap:wrap;align-items:center;gap:10px 14px;padding-top:2px;display:flex}.team-color-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:800}.team-card-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;display:flex}.team-actions-main,.team-actions-risk{flex-wrap:wrap;gap:6px;display:flex}.team-stage-row{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding:10px 0 0;display:flex}.team-stage-actions,.team-stage-pick{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.team-stage-pick select{min-width:160px}.team-pill.is-stage{background:color-mix(in srgb, var(--amber) 18%, transparent);color:var(--amber)}.interview-stage-day-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.interview-stage-day-date{font:inherit}.payroll-cell.stage{background:color-mix(in srgb, var(--amber) 12%, transparent)}.payroll-rub.is-stage{color:var(--amber);font-weight:700}.payroll-stage-pending{line-height:1.3;display:block}.team-card .plan-color-swatch{width:20px;height:20px}@media (width<=700px){.team-card-top{grid-template-columns:auto minmax(0,1fr)}.team-badges{grid-column:2;justify-content:flex-start}.team-card-actions{justify-content:flex-start}.team-actions-risk{margin-left:auto}}.settings-pay-section{border-top:1px solid var(--line);flex-direction:column;gap:12px;padding:14px 0 6px;display:flex}.settings-pay-section:first-of-type{border-top:none;padding-top:0}.settings-pay-section h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.78rem;font-weight:700}.settings-pay-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.settings-pay-field{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-2));border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.settings-pay-label{font-size:.9rem;font-weight:700}.settings-pay-input-row{align-items:center;gap:8px;margin-top:4px;display:flex}.settings-pay-input-row input{width:100%;max-width:140px}.settings-order-btns{gap:4px;display:inline-flex}.settings-order-btns .btn{min-width:32px;padding:4px 8px}.settings-inline-edit{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.settings-inline-edit input{flex:1;min-width:140px}.settings-flash{background:var(--ok-soft);color:var(--ok);border-radius:10px;margin:0;padding:8px 12px;font-size:.85rem;font-weight:600}.settings-checklist-list{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:0;display:flex;overflow:hidden}.settings-check-row{border-bottom:1px solid var(--line);grid-template-columns:1.6rem minmax(0,1fr) auto;align-items:start;gap:8px 10px;padding:8px 10px;display:grid}.settings-check-row:last-child{border-bottom:0}.settings-check-num{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:9px;font-size:.75rem;font-weight:700}.settings-check-fields{flex-direction:column;gap:4px;min-width:0;display:flex}.settings-check-fields input{width:100%;min-height:34px;margin:0;padding:5px 8px}.settings-check-hint{color:var(--navy);font-size:.82rem}.settings-check-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;padding-top:2px;display:flex}.settings-flag{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);letter-spacing:.02em;cursor:pointer;border-radius:99px;padding:4px 8px;font-size:.72rem;font-weight:700}.settings-flag.on{background:var(--teal-soft);color:var(--teal);border-color:#0d737747}.settings-check-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 6px;font-size:1.15rem;line-height:1}.settings-check-x:hover{color:var(--warn)}@media (width<=640px){.settings-check-row{grid-template-columns:1.4rem minmax(0,1fr)}.settings-check-meta{grid-column:2;justify-content:flex-start}}.settings-check{cursor:pointer;align-items:center;gap:8px;font-size:.88rem;display:inline-flex}.settings-check input{width:auto;margin:0}@keyframes control-center-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width>=640px){.control-center-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.control-center-quick-grid,.control-center-widget-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.control-center-page{gap:14px}.control-center-hero{border-radius:14px;padding:14px 18px}.control-center-hero h1{font-size:1.35rem}.control-center-hero .muted{margin-top:2px;font-size:.84rem}.control-center-hero-top{align-items:center;gap:12px}.control-center-day-nav{gap:6px;padding:6px 8px}.control-center-alerts{border-radius:12px;padding:10px 12px;box-shadow:0 1px 2px #9a4b120a}.control-center-alerts-head{gap:8px;margin-bottom:8px}.control-center-alerts-head h2{font-size:.95rem}.control-center-alert{border-radius:10px;gap:8px;padding:8px 10px}.control-center-alert:hover{transform:none}.control-center-help summary{padding:2px 0;font-size:.78rem}.control-center-help-body{margin-top:6px;padding:10px 12px}.control-center-month-result{padding:14px 16px}.control-center-month-result-value{font-size:1.55rem}.control-center-quick{border-radius:12px;padding:12px 14px}.d1-usage-card{gap:10px}}@media (width<=640px){.control-center-widget-grid-month,.control-center-month-recap-grid,.control-center-month-people{grid-template-columns:1fr}.control-center-month-result-value{font-size:1.5rem}.control-center-widget-grid{grid-template-columns:1fr}.control-center-day-widgets{padding:14px}.control-center-hero{border-radius:14px;padding:18px}.control-center-day-nav{justify-content:space-between;width:100%}.control-center-section{padding:14px}.control-center-stats{grid-template-columns:1fr}.control-center-page{gap:14px}.control-center-alerts-hint{display:none}.control-center-alert-body .muted{white-space:normal;text-overflow:unset;overflow:visible}.control-center-shift-actions .btn{flex:calc(50% - 3px);min-height:44px}.control-center-help summary{min-height:44px}}@media (width>=641px){.control-center-alerts-hint kbd{font-size:.68rem}}@media (width<=640px){.recent-shifts-row{flex-direction:column;align-items:stretch}.recent-shifts-action{align-self:flex-end}.recent-shifts-row-main{flex-direction:column;align-items:flex-start;gap:4px}}@media (width<=800px){.help-layout{grid-template-columns:1fr}.help-toc{position:static}.help-toc ul{flex-flow:wrap;gap:6px}.help-toc a{background:var(--surface-2);border:1px solid var(--line);padding:6px 10px;font-size:.78rem}}@media (width<=899px){.settings-table-card.has-mobile-fallback{display:none}}@media (width<=960px){.settings-shell{grid-template-columns:1fr}.settings-nav{padding:12px;position:static}.settings-nav-groups{gap:10px}.settings-nav-list{flex-flow:wrap;gap:6px}.settings-nav-item{min-width:0;padding:8px 12px}.settings-nav-hint{display:none}.settings-nav-item.is-active:before{width:auto;height:3px;inset:auto 10px 4px}.settings-nav-foot{margin-top:4px;padding-top:8px}.settings-head h1{font-size:1.2rem}.settings-main{padding:14px}}.shift-plan-page{flex-direction:column;gap:16px;min-width:0;display:flex}.shift-plan-hero{color:#f4f8fb;z-index:4;background:linear-gradient(135deg,#0f2744f5 0%,#163554 48%,#0d7377e0 100%);border:1px solid #0f274414;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:22px 24px;display:flex;position:relative;overflow:visible;box-shadow:inset 0 1px #ffffff14,0 12px 32px #0f274424}.shift-plan-hero:after{content:"";pointer-events:none;border-radius:inherit;background:radial-gradient(circle at 88% 18%,#7fd4d738,#0000 42%),radial-gradient(circle at 8% 100%,#ffffff0f,#0000 36%);position:absolute;inset:0}.shift-plan-hero-text,.shift-plan-toolbar{z-index:1;position:relative}.shift-plan-toolbar{z-index:2}.shift-plan-kicker{letter-spacing:.08em;text-transform:uppercase;color:#7fd4d7;margin:0 0 6px;font-size:.72rem;font-weight:700}.shift-plan-hero h1{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:clamp(1.45rem,2.2vw,1.85rem);font-weight:700}.shift-plan-hero .muted{color:#f4f8fbb8;margin:6px 0 0}.shift-plan-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.shift-plan-month-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff24;border-radius:14px;align-items:center;gap:8px;padding:8px 10px;display:flex}.shift-plan-month-nav .btn.ghost{color:#f4f8fb;background:#ffffff14;border-color:#ffffff29}.shift-plan-month-nav .btn.ghost:hover:not(:disabled){background:#ffffff29}.shift-plan-month-label{text-align:center;color:#f4f8fb;min-width:9.5rem;font-size:.9rem;font-weight:700}.shift-plan-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.shift-plan-actions .btn.ghost{color:#f4f8fb;background:#ffffff14;border-color:#ffffff29}.shift-plan-actions .btn.ghost:hover:not(:disabled){background:#ffffff29}.shift-plan-more{z-index:5;position:relative}.shift-plan-more-menu{z-index:50;color:#0f2744;background:#fff;border:1px solid #0f27441f;border-radius:12px;flex-direction:column;gap:2px;min-width:200px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.shift-plan-more-menu button{appearance:none;text-align:left;font:inherit;color:#0f2744;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px;font-size:.92rem}.shift-plan-more-menu button:hover:not(:disabled){background:#0f27440f}.shift-plan-more-menu button:disabled{opacity:.45;cursor:not-allowed}.shift-plan-load{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 2px;display:flex}.shift-plan-load-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-right:4px;font-size:.78rem;font-weight:600}.shift-plan-load-chip{appearance:none;border:1px solid color-mix(in srgb, var(--admin-accent) 35%, transparent);background:color-mix(in srgb, var(--admin-soft) 70%, white);color:var(--ink);font:inherit;cursor:grab;border-radius:999px;align-items:center;gap:7px;padding:5px 10px 5px 8px;font-size:.86rem;transition:background .15s,border-color .15s,transform .12s;display:inline-flex}.shift-plan-load-chip:active{cursor:grabbing}.shift-plan-load-chip:hover{border-color:color-mix(in srgb, var(--admin-accent) 55%, transparent)}.shift-plan-load-chip.is-on{background:color-mix(in srgb, var(--admin-accent) 16%, white);border-color:var(--admin-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--admin-accent) 25%, transparent)}.shift-plan-load-swatch{background:var(--admin-accent);border-radius:999px;flex:none;width:10px;height:10px}.shift-plan-load-name{text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem;font-weight:600;overflow:hidden}.shift-plan-load-days{font-variant-numeric:tabular-nums;color:var(--admin-accent);text-align:right;min-width:1.25rem;font-weight:700}.shift-plan-load-clear{appearance:none;color:var(--muted);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:4px 6px;font-size:.82rem;text-decoration:underline}.shift-plan-load-clear:hover{color:var(--ink)}.shift-plan-cell.is-dimmed{opacity:.28;filter:grayscale(.35)}.shift-plan-cell.is-dimmed:hover{opacity:.55}.shift-plan-cell.is-flash{z-index:1;animation:1.4s ease-out 2 shift-plan-flash}.shift-plan-cell.is-drop-target{outline:2px solid var(--teal,#0d9488);outline-offset:1px;box-shadow:0 0 0 3px color-mix(in srgb, var(--teal,#0d9488) 22%, transparent)}.shift-plan-cell.is-draggable{cursor:grab}.shift-plan-cell.is-draggable:active{cursor:grabbing}@keyframes shift-plan-flash{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--teal) 55%, transparent);transform:scale(1)}35%{box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 40%, transparent);transform:scale(1.02)}to{transform:scale(1);box-shadow:0 0 #0000}}.shift-plan-fill-toast{background:color-mix(in srgb, var(--teal) 12%, white);border:1px solid color-mix(in srgb, var(--teal) 30%, transparent);color:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:.94rem;font-weight:600;display:flex}.shift-plan-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px 18px;font-size:.82rem;display:flex}.shift-plan-legend span{align-items:center;gap:8px;display:inline-flex}.shift-plan-dot{border-radius:999px;width:10px;height:10px;display:inline-block;box-shadow:inset 0 0 0 1px #0f27441f}.shift-plan-dot.pattern{background:var(--teal)}.shift-plan-dot.override{background:var(--warn)}.shift-plan-dot.empty{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line-strong)}.shift-plan-setup{background:linear-gradient(180deg, #fff, var(--surface-2));flex-direction:column;align-items:flex-start;gap:10px;display:flex}.shift-plan-setup h2{font-family:var(--font-brand);margin:0}.shift-plan-settings{gap:12px}.shift-plan-settings-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.shift-plan-settings-head h2{font-family:var(--font-brand);margin:0;font-size:1.05rem}.shift-plan-calendar{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7fafbf5 100%);border-radius:16px;min-width:0;overflow:hidden;box-shadow:0 1px 2px #0f27440a,0 12px 36px #0f274412}.shift-plan-weekdays,.shift-plan-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.shift-plan-weekdays{border-bottom:1px solid var(--line);background:linear-gradient(180deg, var(--surface-2), #eef4f6)}.shift-plan-weekday{text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 8px;font-size:.72rem;font-weight:700}.shift-plan-pad{background:repeating-linear-gradient(-45deg,#0000,#0000 6px,#0f274406 6px 7px);border-bottom:1px solid #0f27440a;border-right:1px solid #0f27440a;min-height:108px}.shift-plan-cell{appearance:none;min-height:108px;color:inherit;text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease);font:inherit;isolation:isolate;background:#fff;border:1px solid #0f274412;border-top:0;border-left:0;flex-direction:column;gap:10px;margin:0;padding:10px 10px 12px;display:flex;position:relative}.shift-plan-cell:active{transform:scale(var(--motion-press))}.shift-plan-cell.is-weekend{background:#f4f7fa}.shift-plan-cell:hover{z-index:1;background:#0d73770f}.shift-plan-cell:focus-visible{outline:2px solid var(--teal);outline-offset:-2px;z-index:2}.shift-plan-cell.has-shift{background:linear-gradient(165deg, var(--admin-soft,#e7f4f4) 0%, #fff 58%);box-shadow:inset 4px 0 0 var(--admin-accent,var(--teal))}.shift-plan-cell.is-weekend.has-shift{background:linear-gradient(165deg, var(--admin-soft,#e7f4f4) 0%, #f7fafb 62%)}.shift-plan-cell.is-override.has-shift{background:linear-gradient(165deg, var(--admin-soft,#e7f4f4) 0%, #fff 58%);box-shadow:inset 4px 0 0 var(--admin-accent,var(--teal))}.shift-plan-cell.is-recurring.has-shift:not(.is-split){box-shadow:inset 4px 0 0 var(--admin-accent,var(--teal)), inset 0 3px 0 #2f6fed}.shift-plan-mark{pointer-events:none;z-index:2;position:absolute}.shift-plan-mark.override{border-top:0 solid #0000;border-bottom:16px solid #0000;border-left:0 solid #0000;border-right:16px solid #c45c26;width:0;height:0;top:0;right:0}.shift-plan-mark.recurring{display:none}.shift-plan-cell.is-today{z-index:3;background:linear-gradient(#e8f7f7 0%,#fff 55%);box-shadow:inset 0 0 0 2.5px #0d7377,0 0 0 1px #0d73772e,0 4px 14px #0d737724}.shift-plan-cell.is-today.has-shift{background:linear-gradient(165deg, var(--admin-soft,#d8f0f1) 0%, #e7f8f8 40%, #fff 100%);box-shadow:inset 0 0 0 2.5px #0d7377, inset 4px 0 0 var(--admin-accent,#0d7377), 0 0 0 1px #0d737729, 0 4px 14px #0d73771f}.shift-plan-cell.is-today.is-recurring.has-shift:not(.is-split){box-shadow:inset 0 0 0 2.5px #0d7377, inset 4px 0 0 var(--admin-accent,#0d7377), inset 0 3px 0 #2f6fed, 0 4px 14px #0d73771f}.shift-plan-cell.is-today.is-override.has-shift{box-shadow:inset 0 0 0 2.5px #0d7377, inset 4px 0 0 var(--admin-accent,#0d7377), 0 4px 14px #0d73771f}.shift-plan-cell.is-past{opacity:.72;filter:saturate(.82);background:#eef1f4}.shift-plan-cell.is-past.is-weekend{background:#e8ecf0}.shift-plan-cell.is-past.has-shift{background:linear-gradient(165deg, color-mix(in srgb, var(--admin-soft,#e7f4f4) 55%, #eef1f4) 0%, #f3f5f7 62%)}.shift-plan-cell.is-past.is-weekend.has-shift{background:linear-gradient(165deg, color-mix(in srgb, var(--admin-soft,#e7f4f4) 50%, #e8ecf0) 0%, #eef1f4 62%)}.shift-plan-cell.is-past:hover{opacity:.88;filter:saturate(.92)}.shift-plan-cell.is-past.is-selected{opacity:.94;filter:saturate(.95)}.shift-plan-cell.is-past .shift-plan-cell-day{color:#6a7a8a;background:#0f27440a;font-weight:650}.shift-plan-cell.is-past .shift-plan-cell-name,.shift-plan-cell.is-past .shift-plan-split-name{color:#4a5a6a}.shift-plan-cell.is-upcoming:not(.is-weekend):not(.has-shift){background:#fff}.shift-plan-cell.is-upcoming.is-weekend:not(.has-shift){background:#f6f9fc}.shift-plan-cell.is-selected:not(.is-today){box-shadow:inset 0 0 0 2px var(--teal), inset 4px 0 0 var(--admin-accent,transparent);z-index:2}.shift-plan-cell.is-selected.has-shift:not(.is-today){box-shadow:inset 0 0 0 2px var(--teal), inset 4px 0 0 var(--admin-accent,var(--teal))}.shift-plan-cell.is-selected.is-recurring.has-shift:not(.is-today):not(.is-split){box-shadow:inset 0 0 0 2px var(--teal), inset 4px 0 0 var(--admin-accent,var(--teal)), inset 0 3px 0 #2f6fed}.shift-plan-cell.is-empty:hover .shift-plan-cell-empty{color:var(--teal)}.shift-plan-cell-top{z-index:1;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;display:flex;position:relative}.shift-plan-cell-weekday{display:none}.shift-plan-cell-day{min-width:1.7rem;height:1.7rem;color:var(--muted);background:#0f27440d;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.8rem;font-weight:800;line-height:1;display:inline-flex}.shift-plan-cell.is-weekend .shift-plan-cell-day{color:#7a8a98}.shift-plan-cell.is-today .shift-plan-cell-day{color:#0a5f62;background:#d3e6e7;font-weight:900}.shift-plan-cell-today-badge{letter-spacing:.02em;text-transform:lowercase;color:#0a5f62;background:#ddebec;border:1px solid #0d737747;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;margin-left:auto;padding:3px 7px;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex}.shift-plan-today-live{background:#0d7377;border-radius:50%;width:6px;height:6px;animation:1.6s ease-out infinite shift-plan-today-live;box-shadow:0 0 #0d737773}@keyframes shift-plan-today-live{0%{box-shadow:0 0 #0d737773}70%{box-shadow:0 0 0 6px #0d737700}to{box-shadow:0 0 #0d737700}}@media (prefers-reduced-motion:reduce){.shift-plan-today-live{animation:none}}.shift-plan-cell-body{z-index:1;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;margin-top:auto;display:flex;position:relative}.shift-plan-cell-name{width:fit-content;max-width:100%;color:var(--text);border:1px solid color-mix(in srgb, var(--admin-accent,var(--teal)) 35%, transparent);text-overflow:ellipsis;white-space:nowrap;background:#ffffffd1;border-radius:8px;align-items:center;padding:4px 8px;font-size:.86rem;font-weight:800;line-height:1.2;display:inline-flex;overflow:hidden}.shift-plan-cell-type{background:color-mix(in srgb, var(--admin-accent,var(--teal)) 14%, #fff);color:color-mix(in srgb, var(--admin-accent,var(--teal)) 72%, #0f2744);border-radius:999px;padding:2px 7px;font-size:.68rem;font-weight:800}.shift-plan-cell-empty{color:#0f274452;z-index:1;margin-top:auto;font-size:.76rem;font-weight:650;position:relative}.shift-plan-leg{vertical-align:middle;background:#fff;border:1px solid #0f274424;border-radius:3px;flex-shrink:0;width:18px;height:14px;display:inline-block;position:relative}.shift-plan-leg.today{background:#e8f7f7;box-shadow:inset 0 0 0 2px #0d7377}.shift-plan-leg.past{opacity:.75;background:#e8ecf0}.shift-plan-leg.upcoming{background:#fff;box-shadow:inset 0 0 0 1px #0f27441a}.shift-plan-leg.person{background:color-mix(in srgb, var(--teal) 18%, white);box-shadow:inset 3px 0 0 var(--teal)}.shift-plan-leg.recurring{box-shadow:inset 3px 0 0 var(--teal), inset 0 2px 0 #2f6fed;background:#e6eefd}.shift-plan-leg.override:after{content:"";border-top:0 solid #0000;border-bottom:8px solid #0000;border-left:0 solid #0000;border-right:8px solid #c45c26;position:absolute;top:0;right:0}.shift-plan-leg.override{box-shadow:inset 3px 0 0 var(--teal);background:color-mix(in srgb, var(--teal) 12%, white)}.shift-plan-leg.split{background:linear-gradient(#dff0f1 0 48%,#0000 48% 52%,#f3e4d8 52% 100%);box-shadow:inset 0 0 0 1px #0f27441a}.shift-plan-leg.empty{background:repeating-linear-gradient(-45deg,#fff,#fff 3px,#0f27440f 3px 4px)}.shift-plan-help-link{margin:-4px 0 0}.shift-plan-help-link a{color:var(--teal);text-underline-offset:2px;font-weight:650}.shift-plan-mode-toggle{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr 1fr;gap:6px;padding:4px;display:grid}.shift-plan-mode-block{flex-direction:column;gap:8px;display:flex}.shift-plan-mode-label{letter-spacing:.06em;text-transform:uppercase;color:var(--teal);margin:0;font-size:.72rem;font-weight:800}.shift-plan-mode-toggle button{font:inherit;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;margin:0;padding:12px 10px;font-size:.86rem;font-weight:700;display:flex}.shift-plan-mode-title{color:inherit;font-weight:800;line-height:1.2}.shift-plan-mode-sub{opacity:.75;font-size:.72rem;font-weight:600}.shift-plan-mode-toggle button.on{color:var(--text);background:#fff;border-color:#0d737759;box-shadow:0 1px 3px #0f27441a,inset 0 0 0 1px #0d737726}.shift-plan-mode-toggle button.on .shift-plan-mode-title{color:var(--teal)}.shift-plan-hint{background:var(--teal-soft);color:var(--navy-soft);border:1px solid #0d73772e;border-radius:12px;margin:-4px 0 0;padding:10px 12px}.shift-plan-hint strong{color:var(--teal)}.shift-plan-rules-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.shift-plan-cell.is-split.has-shift{background:#fff;gap:8px;padding-bottom:8px;box-shadow:inset 0 0 0 1px #0f274414}.shift-plan-cell.is-split.is-today{box-shadow:inset 0 0 0 2.5px #0d7377,0 0 0 1px #0d737729,0 4px 14px #0d73771f}.shift-plan-cell.is-split.is-past{opacity:.72;filter:saturate(.82);background:#eef1f4}.shift-plan-cell.is-split.is-selected:not(.is-today){box-shadow:inset 0 0 0 2px var(--teal)}.shift-plan-split{z-index:1;flex-direction:column;gap:5px;min-width:0;margin-top:auto;display:flex;position:relative}.shift-plan-split-band{background:linear-gradient(135deg, var(--admin-soft,#e7f4f4) 0%, color-mix(in srgb, var(--admin-accent,var(--teal)) 10%, #fff) 100%);border:1px solid color-mix(in srgb, var(--admin-accent,var(--teal)) 28%, transparent);min-width:0;box-shadow:inset 3px 0 0 var(--admin-accent,var(--teal));border-radius:10px;flex-direction:column;gap:2px;padding:6px 8px;display:flex}.shift-plan-split-slot{letter-spacing:.04em;text-transform:uppercase;color:color-mix(in srgb, var(--admin-accent,var(--teal)) 78%, #0f2744);font-size:.62rem;font-weight:800;line-height:1}.shift-plan-split-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:800;line-height:1.15;overflow:hidden}.plan-color-picker{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.plan-color-group{flex-direction:column;gap:4px;display:flex}.plan-color-group-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#6b7c93);font-size:.68rem;font-weight:700}.plan-color-group.is-taken .plan-color-group-label{color:#9aa8b8}.plan-color-swatches{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.plan-color-none{margin:0}.team-create-color{flex-direction:column;gap:6px;display:flex}.team-create-color-label{color:var(--text);font-size:.82rem;font-weight:600}.plan-color-swatch{cursor:pointer;border:2px solid #ffffffe6;border-radius:999px;width:22px;height:22px;padding:0;transition:transform .12s,box-shadow .12s;box-shadow:0 0 0 1px #0f27442e}.plan-color-swatch:hover:not(:disabled){transform:scale(1.08)}.plan-color-swatch.is-on{box-shadow:0 0 0 2px #0f2744,0 0 0 4px #0d737759}.plan-color-swatch.is-taken{opacity:.38;cursor:default}.plan-color-swatch.is-taken:not(:disabled){cursor:pointer;opacity:.55}.plan-color-swatch:disabled{opacity:.38;cursor:default}.shift-plan-sheet{width:min(440px,100%)}.shift-plan-sheet-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin:0 0 4px;font-size:.68rem;font-weight:700}.shift-plan-sheet-body{margin-bottom:16px}.shift-plan-expected{background:color-mix(in srgb, var(--teal) 10%, white);border:1px solid color-mix(in srgb, var(--teal) 28%, transparent);border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:6px 10px;padding:10px 12px;display:flex}.shift-plan-expected.is-replacement{background:color-mix(in srgb, var(--warn) 12%, white);border-color:color-mix(in srgb, var(--warn) 35%, transparent)}.shift-plan-expected-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.shift-plan-expected-name{color:var(--ink);font-size:1rem;font-weight:700}.shift-plan-expected-flag{color:#9a5b14;width:100%;font-size:.78rem}.shift-plan-assign-block{flex-direction:column;gap:10px;display:flex}.shift-plan-chips{flex-wrap:wrap;gap:8px;display:flex}.shift-plan-chip{appearance:none;border:1.5px solid color-mix(in srgb, var(--admin-accent) 28%, transparent);background:color-mix(in srgb, var(--admin-soft) 55%, white);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 12px 8px 10px;font-size:.92rem;font-weight:600;transition:background .12s,border-color .12s,box-shadow .12s,opacity .12s,transform .1s,filter .12s;display:inline-flex}.shift-plan-chip:hover:not(:disabled){border-color:color-mix(in srgb, var(--admin-accent) 55%, transparent);transform:translateY(-1px)}.shift-plan-chip.is-on{background:color-mix(in srgb, var(--admin-accent) 86%, #0a1628 8%);border-color:color-mix(in srgb, var(--admin-accent) 70%, #0a1628);color:#fff;box-shadow:0 0 0 2px color-mix(in srgb, var(--admin-accent) 28%, transparent), 0 3px 10px color-mix(in srgb, var(--admin-accent) 32%, transparent);border-width:2px;font-weight:800}.shift-plan-chip.is-on:hover:not(:disabled){border-color:color-mix(in srgb, var(--admin-accent) 70%, #0a1628);transform:none}.shift-plan-chips:has(.shift-plan-chip.is-on) .shift-plan-chip:not(.is-on):not(:disabled){opacity:.48;filter:saturate(.75)}.shift-plan-chips:has(.shift-plan-chip.is-on) .shift-plan-chip:not(.is-on):hover:not(:disabled){opacity:.78;filter:saturate(.95)}.shift-plan-chip:disabled{opacity:.5;cursor:not-allowed;transform:none}.shift-plan-chip-swatch{background:var(--admin-accent);border-radius:50%;flex-shrink:0;width:11px;height:11px;box-shadow:inset 0 0 0 1px #0f27441f}.shift-plan-chip.is-on .shift-plan-chip-swatch{background:#fff;box-shadow:0 0 0 1px #fff6}.shift-plan-chip-check{color:#fff;text-align:center;background:#ffffff38;border-radius:50%;flex-shrink:0;width:1em;height:1em;margin-left:-2px;font-size:.72rem;font-weight:900;line-height:1em;display:none}.shift-plan-chip.is-on .shift-plan-chip-check{place-items:center;display:inline-grid}.shift-plan-quick-btn{align-self:flex-start;font-size:.88rem}.shift-plan-more-toggle{appearance:none;font:inherit;color:var(--muted);cursor:pointer;text-align:left;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:.86rem;text-decoration:underline}.shift-plan-more-toggle:hover{color:var(--ink)}.shift-plan-more-fields,.shift-plan-checklist-block{background:#0f274408;border:1px solid #0f274414;border-radius:12px;padding:12px}.shift-plan-checklist-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.shift-plan-sheet-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (width<=720px){.shift-plan-page{gap:12px}.shift-plan-hero{border-radius:14px;padding:14px 16px}.shift-plan-hero h1{font-size:1.35rem}.shift-plan-kicker{display:none}.shift-plan-month-nav{justify-content:space-between;width:100%}.shift-plan-month-label{flex:1;min-width:0;font-size:.95rem}.shift-plan-actions{width:100%}.shift-plan-actions .btn.primary{flex:auto}.shift-plan-load{gap:6px}.shift-plan-load-label{width:100%;margin-bottom:2px}.shift-plan-mobile-bar{top:var(--mobile-top-clearance,0px);z-index:20;background:color-mix(in srgb, var(--surface,#fff) 92%, #e8f4f4);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:14px;align-items:center;gap:6px;padding:8px;display:flex;position:sticky}.shift-plan-mobile-bar-mid{flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;display:flex}.shift-plan-mobile-week{color:var(--ink);font-size:.92rem;font-weight:800;line-height:1.2}.shift-plan-mobile-today{min-height:0!important;color:var(--teal)!important;padding:2px 8px!important;font-size:.78rem!important}.shift-plan-mobile-mode{white-space:nowrap;padding:8px 10px!important;font-size:.8rem!important}.shift-plan-mobile-mode.is-on{background:color-mix(in srgb, var(--teal) 14%, white)!important;border-color:color-mix(in srgb, var(--teal) 35%, transparent)!important;color:var(--teal)!important}.shift-plan-calendar.is-week-focus .shift-plan-weekdays{display:none}.shift-plan-calendar.is-week-focus .shift-plan-grid{grid-template-columns:1fr}.shift-plan-calendar.is-week-focus .shift-plan-cell,.shift-plan-calendar.is-week-focus .shift-plan-pad{border-right:0;flex-direction:row;align-items:center;gap:12px;min-height:0;padding:10px 12px}.shift-plan-calendar.is-week-focus .shift-plan-cell.is-split.has-shift{min-height:0}.shift-plan-calendar.is-week-focus .shift-plan-cell-top{flex-direction:column;flex:0 0 3.4rem;justify-content:center;align-items:flex-start;gap:2px}.shift-plan-calendar.is-week-focus .shift-plan-cell-weekday{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:800;line-height:1;display:block}.shift-plan-calendar.is-week-focus .shift-plan-cell-day{min-width:1.55rem;height:1.55rem;font-size:.85rem}.shift-plan-calendar.is-week-focus .shift-plan-cell-body,.shift-plan-calendar.is-week-focus .shift-plan-split,.shift-plan-calendar.is-week-focus .shift-plan-cell-empty{flex:1;min-width:0;margin-top:0}.shift-plan-calendar.is-week-focus .shift-plan-split{flex-direction:row;gap:6px}.shift-plan-calendar.is-week-focus .shift-plan-split-band{flex-direction:row;flex:1;align-items:center;gap:6px;min-width:0;padding:8px 10px}.shift-plan-calendar.is-week-focus .shift-plan-split-slot{flex-shrink:0;font-size:.62rem}.shift-plan-calendar.is-week-focus .shift-plan-split-name,.shift-plan-calendar.is-week-focus .shift-plan-cell-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.shift-plan-calendar.is-week-focus .shift-plan-cell-name{max-width:100%}.shift-plan-calendar.is-week-focus .shift-plan-cell-empty{align-items:center;font-size:.88rem;display:flex}.shift-plan-legend{gap:8px 10px;font-size:.7rem}.shift-plan-help-link{display:none}.shift-plan-calendar.is-month-compact .shift-plan-cell,.shift-plan-calendar.is-month-compact .shift-plan-pad{gap:6px;min-height:72px;padding:6px 4px}.shift-plan-calendar.is-month-compact .shift-plan-cell.is-split.has-shift{min-height:96px}.shift-plan-calendar.is-month-compact .shift-plan-split-slot{display:none}.shift-plan-calendar.is-month-compact .shift-plan-cell-name,.shift-plan-calendar.is-month-compact .shift-plan-split-name{padding:2px 4px;font-size:.68rem}.shift-plan-calendar.is-month-compact .shift-plan-cell-day{min-width:1.4rem;height:1.4rem;font-size:.72rem}.shift-plan-swipe-hint{text-align:center;border-top:1px solid #0f27440f;margin:0;padding:8px 10px 10px}.shift-plan-cell,.shift-plan-pad{min-height:88px;padding:8px 6px}.shift-plan-cell.is-split.has-shift{min-height:112px}.shift-plan-split-band{padding:5px 6px}.shift-plan-split-name{font-size:.74rem}.shift-plan-cell-name{padding:3px 6px;font-size:.74rem}.shift-plan-weekday{padding:8px 4px;font-size:.64rem}.shift-plan-mark.override{border-width:0 14px 14px 0}}@media (width>=721px){.shift-plan-mobile-bar,.shift-plan-swipe-hint{display:none}}.interview-page{flex-direction:column;gap:14px;padding-bottom:28px;display:flex}.interview-week-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.interview-week-bar strong{text-align:center;min-width:7.5rem;font-family:var(--font-brand)}.interview-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.interview-day{border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-height:72px;margin:0;padding:8px 4px 6px;display:flex}.interview-day.is-today{border-color:var(--teal);background:linear-gradient(#e7f7f7 0%,#fff 70%);box-shadow:0 0 0 1px #0d737740}.interview-day.is-on{border-color:var(--navy);background:var(--navy);color:#fff}.interview-day-wd{letter-spacing:.04em;text-transform:uppercase;opacity:.7;font-size:.68rem;font-weight:700}.interview-day-num{font-family:var(--font-brand);font-size:1.15rem;font-weight:800;line-height:1}.interview-day-marks{gap:3px;min-height:8px;display:flex}.interview-dot{background:var(--teal);border-radius:99px;width:6px;height:6px}.interview-dot.is-stage_half{background:#d4a017}.interview-dot.is-stage_full{background:#c05621}.interview-dot.is-no_show{background:#a07068}.interview-day-count,.interview-day-add{opacity:.7;font-size:.68rem;font-weight:700}.interview-day-hint{flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0;font-size:.88rem;display:flex}.interview-list{gap:14px;display:grid}@media (width>=800px){.interview-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.interview-card{--interview-accent:var(--teal,#0d7377);border:1px solid #0f274414;border-left:4px solid var(--interview-accent);cursor:pointer;transition:box-shadow var(--motion-fast,.14s) var(--motion-ease,ease), border-color var(--motion-fast,.14s) var(--motion-ease,ease);background:#fff;border-radius:16px;grid-template-columns:68px minmax(0,1fr);margin:0;padding:0;display:grid;overflow:hidden;box-shadow:0 1px 2px #0f27440a}.interview-card.is-planned,.interview-card.is-interviewed{--interview-accent:var(--teal,#0d7377)}.interview-card.is-waiting{--interview-accent:var(--warn,#c45c26)}.interview-card.is-stage{--interview-accent:#0d7377}.interview-card.is-hired{--interview-accent:var(--ok,#1f7a4d)}.interview-card.is-refused{--interview-accent:var(--err,#b42318)}.interview-card.is-no_show{--interview-accent:#8a7a76}.interview-card:hover,.interview-card:focus-visible{border-color:color-mix(in srgb, var(--interview-accent) 35%, #0f274414);box-shadow:0 6px 18px color-mix(in srgb, var(--interview-accent) 12%, #0f27440f);outline:none}.interview-card.is-today{border-color:color-mix(in srgb, var(--interview-accent) 38%, #0f27441a);background:linear-gradient(165deg, color-mix(in srgb, var(--interview-accent) 8%, #fff) 0%, #fff 42%);box-shadow:0 0 0 1px color-mix(in srgb, var(--interview-accent) 18%, transparent), 0 4px 14px color-mix(in srgb, var(--interview-accent) 8%, #0f27440a)}.interview-card.is-today .interview-card-rail{background:color-mix(in srgb, var(--interview-accent) 16%, #fff)}.interview-card-live{letter-spacing:.04em;text-transform:uppercase;color:var(--interview-accent);margin-top:1px;font-size:.62rem;font-weight:700}.interview-card-live.is-session{color:var(--warn,#c45c26)}.interview-card.is-session-open{--interview-accent:var(--warn,#c45c26)}.interview-card-session-open{color:var(--warn,#c45c26);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 6px;font-size:13px;font-weight:600;display:flex}.interview-open-sessions-hint{grid-column:1/-1;margin:0 0 4px}.interview-page .audit-chip em{opacity:.85;margin-left:6px;font-style:normal;font-weight:750}.interview-page .audit-chip.is-warn:not(.is-on){color:var(--warn,#c45c26);border-color:color-mix(in srgb, var(--warn,#c45c26) 35%, transparent);background:color-mix(in srgb, var(--warn,#c45c26) 8%, #fff)}.interview-page .audit-chip.is-warn.is-on{color:var(--warn,#c45c26);border-color:color-mix(in srgb, var(--warn,#c45c26) 40%, transparent);background:color-mix(in srgb, var(--warn,#c45c26) 14%, #fff)}@media (prefers-reduced-motion:reduce){.interview-card{transition:none}}.interview-card-rail{background:color-mix(in srgb, var(--interview-accent) 8%, #fff);color:var(--navy-soft,#1a3a5c);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:14px 6px;display:flex}.interview-card-hour{font-family:var(--font-brand);letter-spacing:-.02em;color:var(--text);font-size:1rem;font-weight:700;line-height:1.15}.interview-card-when{letter-spacing:.01em;color:var(--muted);font-size:.72rem;font-weight:600}.interview-card-main{min-width:0;padding:12px 14px 12px 12px}.interview-card-top{align-items:flex-start;gap:10px;display:flex}.interview-card-avatar{background:color-mix(in srgb, var(--interview-accent) 14%, #fff);width:34px;height:34px;color:var(--interview-accent);font-family:var(--font-brand);letter-spacing:.02em;border-radius:999px;flex-shrink:0;place-items:center;font-size:.72rem;font-weight:700;display:grid}.interview-card-id{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.interview-card-top strong{font-family:var(--font-brand);letter-spacing:-.015em;font-size:.98rem;font-weight:700;line-height:1.25}.interview-card .interview-status{border:1px solid color-mix(in srgb, var(--interview-accent) 28%, transparent);background:color-mix(in srgb, var(--interview-accent) 10%, #fff);color:var(--interview-accent);flex-shrink:0;margin-top:1px;padding:2px 8px;font-size:.68rem;font-weight:600}.interview-card .interview-status.is-planned,.interview-card .interview-status.is-interviewed,.interview-card .interview-status.is-waiting,.interview-card .interview-status.is-stage,.interview-card .interview-status.is-hired,.interview-card .interview-status.is-refused,.interview-card .interview-status.is-no_show{background:color-mix(in srgb, var(--interview-accent) 10%, #fff);color:var(--interview-accent)}.interview-card-phone{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.interview-card-overlap{color:var(--warn);margin:8px 0 0;font-size:.75rem;font-weight:700}.interview-card-meta{align-items:center;gap:8px;min-width:0;margin:8px 0 0;display:flex}.interview-card-tags{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.interview-card-tag{border:1px solid color-mix(in srgb, var(--interview-accent) 22%, var(--line));background:color-mix(in srgb, var(--interview-accent) 8%, #fff);max-width:100%;color:var(--navy-soft);white-space:nowrap;text-overflow:ellipsis;border-radius:99px;padding:2px 8px;font-size:.68rem;font-weight:600;display:inline-flex;overflow:hidden}.interview-card-stage{flex-shrink:0;gap:4px;margin-left:auto;display:flex}.interview-card-stage-dot{background:color-mix(in srgb, var(--interview-accent) 22%, var(--line));border-radius:99px;width:7px;height:7px}.interview-card-stage-dot.is-done{background:var(--interview-accent)}.interview-card-snap{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:.8rem;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.interview-card .interview-next{color:var(--teal);margin:6px 0 0;font-size:.75rem;font-weight:600}.interview-archive-chrome{background:linear-gradient(165deg,#0f274406 0%,#fff 48%),#fff;border:1px solid #0f274414;border-radius:16px;gap:14px;margin:0 0 18px;padding:14px 16px;display:grid}.interview-archive-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.interview-archive-stat{background:var(--surface-2,#f4f6f8);border:1px solid #0f27440f;border-radius:12px;gap:2px;padding:10px 12px;display:grid}.interview-archive-stat strong{font-family:var(--font-brand);letter-spacing:-.03em;color:var(--text);font-size:1.35rem;font-weight:750;line-height:1.1}.interview-archive-stat span{letter-spacing:.02em;text-transform:lowercase;color:var(--muted);font-size:.72rem;font-weight:650}.interview-archive-stat.is-hired{background:color-mix(in srgb, var(--ok,#1f7a4d) 10%, #fff);border-color:color-mix(in srgb, var(--ok,#1f7a4d) 22%, transparent)}.interview-archive-stat.is-hired strong{color:var(--ok,#1f7a4d)}.interview-archive-stat.is-refused{background:color-mix(in srgb, var(--err,#b42318) 9%, #fff);border-color:color-mix(in srgb, var(--err,#b42318) 20%, transparent)}.interview-archive-stat.is-refused strong{color:var(--err,#b42318)}.interview-archive-stat.is-no_show{background:#f1efef;border-color:#8a7a7638}.interview-archive-stat.is-no_show strong{color:#6e615e}.interview-archive-toolbar{gap:10px;display:grid}@media (width>=720px){.interview-archive-toolbar{grid-template-columns:minmax(180px,280px) minmax(0,1fr);align-items:center}}.interview-archive-search input{width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #0f27441f;border-radius:11px;padding:0 12px}.interview-archive-search input:focus{border-color:color-mix(in srgb, var(--teal,#0d7377) 45%, #0f27441f);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal,#0d7377) 16%, transparent);outline:none}.interview-list-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:.35rem 0 .75rem;display:flex}.interview-list-search{flex:160px;min-width:140px}.interview-list-search input,.interview-list-time select{width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #0f27441f;border-radius:11px;padding:0 12px}.interview-list-time{flex:none;min-width:7.5rem}.interview-list-search input:focus,.interview-list-time select:focus{border-color:color-mix(in srgb, var(--teal,#0d7377) 45%, #0f27441f);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal,#0d7377) 16%, transparent);outline:none}.interview-archive-segments{flex-wrap:wrap;gap:6px;display:flex}.interview-archive-seg{min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:#fff;border:1px solid #0f27441a;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.82rem;font-weight:650;display:inline-flex}.interview-archive-seg em{opacity:.8;font-style:normal;font-weight:750}.interview-archive-seg:hover{color:var(--text);border-color:#0f27442e}.interview-archive-seg.is-on{color:var(--text);background:var(--surface-2,#f4f6f8);border-color:#0f274429}.interview-archive-seg.is-hired.is-on{color:var(--ok,#1f7a4d);background:color-mix(in srgb, var(--ok,#1f7a4d) 12%, #fff);border-color:color-mix(in srgb, var(--ok,#1f7a4d) 28%, transparent)}.interview-archive-seg.is-refused.is-on{color:var(--err,#b42318);background:color-mix(in srgb, var(--err,#b42318) 10%, #fff);border-color:color-mix(in srgb, var(--err,#b42318) 26%, transparent)}.interview-archive-seg.is-no_show.is-on{color:#6e615e;background:#efecec;border-color:#8a7a7647}.interview-archive-list{gap:22px;display:grid}.interview-archive-group{gap:8px;display:grid}.interview-archive-month{top:var(--mobile-top-clearance,0px);z-index:2;background:color-mix(in srgb, var(--bg,#f2f4f6) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:baseline;gap:10px;margin:0;padding:8px 2px;display:flex;position:sticky}.interview-archive-month h2{letter-spacing:-.01em;color:var(--text);margin:0;font-size:.92rem;font-weight:750}.interview-archive-month span{color:var(--muted);font-size:.78rem;font-weight:700}.interview-archive-rows{gap:8px;display:grid}.interview-archive-row{--archive-accent:#8a7a76;cursor:pointer;transition:border-color var(--motion-fast,.14s) ease, background var(--motion-fast,.14s) ease;background:#fff;border:1px solid #0f274414;border-radius:14px;grid-template-columns:5px minmax(0,1fr) 18px;align-items:stretch;gap:0;margin:0;padding:0;display:grid;overflow:hidden}.interview-archive-row.is-hired{--archive-accent:var(--ok,#1f7a4d)}.interview-archive-row.is-refused{--archive-accent:var(--err,#b42318)}.interview-archive-row.is-no_show{--archive-accent:#8a7a76}.interview-archive-row:hover,.interview-archive-row:focus-visible{border-color:color-mix(in srgb, var(--archive-accent) 34%, #0f274414);background:color-mix(in srgb, var(--archive-accent) 4%, #fff);outline:none}.interview-archive-outcome{background:var(--archive-accent)}.interview-archive-row-main{gap:6px;min-width:0;padding:12px 12px 12px 14px;display:grid}.interview-archive-row-top{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.interview-archive-badge{letter-spacing:.01em;background:color-mix(in srgb, var(--archive-accent) 12%, #fff);color:var(--archive-accent);border-radius:999px;align-items:center;padding:3px 9px;font-size:.7rem;font-weight:750;display:inline-flex}.interview-archive-name{letter-spacing:-.015em;color:var(--text);min-width:0;font-size:.98rem;font-weight:750}.interview-archive-closed{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.75rem;font-weight:650}.interview-archive-row-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:.78rem;display:flex}.interview-archive-phone{color:var(--teal,#0d7377);font-weight:650;text-decoration:none}.interview-archive-phone:hover{text-decoration:underline}.interview-archive-slot,.interview-archive-stage{font-weight:600}.interview-archive-snap{color:color-mix(in srgb, var(--text) 72%, var(--muted));-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.8rem;line-height:1.35;display:-webkit-box;overflow:hidden}.interview-archive-chevron{color:var(--muted);opacity:.55;place-items:center;font-size:1.1rem;font-weight:500;display:grid}.interview-archive-sheet-banner{background:var(--surface-2,#f4f6f8);border:1px solid #0f274414;border-radius:12px;gap:2px;margin:0 0 8px;padding:10px 12px;display:grid}.interview-archive-sheet-banner.is-hired{background:color-mix(in srgb, var(--ok,#1f7a4d) 10%, #fff);border-color:color-mix(in srgb, var(--ok,#1f7a4d) 22%, transparent)}.interview-archive-sheet-banner.is-refused{background:color-mix(in srgb, var(--err,#b42318) 9%, #fff);border-color:color-mix(in srgb, var(--err,#b42318) 20%, transparent)}.interview-archive-sheet-banner.is-no_show{background:#f1efef;border-color:#8a7a7638}.interview-archive-sheet-banner strong{font-size:.88rem}.interview-archive-sheet-banner span{color:var(--muted);font-size:.78rem}@media (width<=560px){.interview-archive-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.interview-archive-closed{width:100%;margin-left:0}}@media (prefers-reduced-motion:reduce){.interview-archive-row{transition:none}}.interview-next{color:var(--teal);margin:8px 0 0;font-size:.82rem;font-weight:650}.interview-status{background:var(--surface-2);color:var(--muted);border-radius:99px;align-items:center;width:fit-content;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.interview-status.is-planned,.interview-status.is-interviewed{background:var(--teal-soft);color:var(--teal)}.interview-status.is-waiting{background:var(--warn-soft);color:var(--warn)}.interview-status.is-stage{color:#9a4b12;background:#fff4e5}.interview-status.is-hired{background:var(--ok-soft);color:var(--ok)}.interview-status.is-refused,.interview-status.is-no_show{background:var(--err-soft);color:var(--err)}.interview-status.is-no_show{color:#6b4f4a;background:#efe8e6}.interview-tag-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.interview-tag{border:1px solid var(--line);background:var(--surface-2);color:var(--navy-soft);cursor:pointer;border-radius:99px;padding:5px 10px;font-size:.78rem;font-weight:650}.interview-tag.is-on{border-color:var(--teal);background:var(--teal-soft);color:var(--teal)}.interview-empty{flex-direction:column;align-items:flex-start;gap:12px;padding:22px 16px;display:flex}.interview-sheet{flex-direction:column;gap:12px;width:min(560px,100%);display:flex}.interview-form-grid{gap:10px;display:grid}@media (width>=640px){.interview-form-grid{grid-template-columns:1fr 1fr}}.interview-sheet label textarea,.interview-qa-item textarea,.interview-note textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);resize:vertical;font:inherit;margin-top:6px;padding:11px 12px}.interview-who{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.interview-who-dl{gap:8px;margin:0;display:grid}.interview-who-dl div{gap:2px;display:grid}.interview-who-dl dt{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:800}.interview-who-dl dd{margin:0;font-size:.95rem;font-weight:650}.interview-scorecard{gap:14px;margin:0 0 8px;display:grid}.interview-scorecard-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;display:flex}.interview-scorecard-score{background:var(--surface-2,#f4f6f8);text-align:right;border:1px solid #0f27441a;border-radius:14px;gap:2px;min-width:120px;padding:10px 14px;display:grid}.interview-scorecard-score strong{font-family:var(--font-brand);letter-spacing:-.03em;font-size:1.55rem;font-weight:750;line-height:1}.interview-scorecard-score strong span{color:var(--muted);margin-left:2px;font-size:.85rem;font-weight:650}.interview-scorecard-score em{font-size:.78rem;font-style:normal;font-weight:700}.interview-scorecard-score small{color:var(--muted);font-size:.72rem}.interview-scorecard-score.is-strong{background:color-mix(in srgb, var(--ok,#1f7a4d) 12%, #fff);border-color:color-mix(in srgb, var(--ok,#1f7a4d) 28%, transparent);color:var(--ok,#1f7a4d)}.interview-scorecard-score.is-ok{background:color-mix(in srgb, var(--teal,#0d7377) 12%, #fff);border-color:color-mix(in srgb, var(--teal,#0d7377) 28%, transparent);color:var(--teal,#0d7377)}.interview-scorecard-score.is-weak{background:color-mix(in srgb, var(--warn,#c45c26) 12%, #fff);border-color:color-mix(in srgb, var(--warn,#c45c26) 28%, transparent);color:var(--warn,#c45c26)}.interview-scorecard-score.is-no{background:color-mix(in srgb, var(--err,#b42318) 10%, #fff);border-color:color-mix(in srgb, var(--err,#b42318) 26%, transparent);color:var(--err,#b42318)}.interview-scorecard-observation{color:color-mix(in srgb, var(--text) 88%, var(--muted));background:#fff;border:1px solid #0f274414;border-radius:12px;margin:0;padding:12px 14px;font-size:.86rem;line-height:1.45}.interview-scorecard-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.interview-scorecard-q{background:#fff;border:1px solid #0f274414;border-radius:14px;gap:8px;padding:12px 14px;display:grid}.interview-scorecard-prompt{color:var(--text);margin:0;font-size:.9rem;font-weight:700;line-height:1.35}.interview-scorecard-prompt span{color:var(--muted);margin-right:4px;font-weight:650}.interview-scorecard-prompt em{color:var(--teal,#0d7377);text-transform:lowercase;margin-left:8px;font-size:.72rem;font-style:normal;font-weight:700}.interview-scorecard-opts{gap:6px;display:grid}.interview-scorecard-opt{background:var(--surface-2,#f7f8fa);text-align:left;font:inherit;color:var(--text);cursor:pointer;border:1px solid #0f27441a;border-radius:12px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;margin:0;padding:10px 12px;font-size:.84rem;line-height:1.35;display:grid}.interview-scorecard-opt i{background:#fff;border:2px solid #0f274438;border-radius:999px;width:16px;height:16px;margin-top:2px}.interview-scorecard-opt:hover:not(:disabled){border-color:color-mix(in srgb, var(--teal,#0d7377) 35%, #0f27441a)}.interview-scorecard-opt.is-on{border-color:color-mix(in srgb, var(--teal,#0d7377) 40%, transparent);background:color-mix(in srgb, var(--teal,#0d7377) 10%, #fff)}.interview-scorecard-opt.is-on i{border-color:var(--teal,#0d7377);background:var(--teal,#0d7377);box-shadow:inset 0 0 0 3px #fff}.interview-scorecard-opt:disabled{opacity:.6;cursor:wait}.interview-briefing{border-top:1px solid color-mix(in srgb, var(--border,#ddd) 80%, transparent);margin:1rem 0 0;padding:.85rem 0 0}.interview-briefing-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.interview-briefing-head .interview-section-label{margin:0}.interview-briefing>.muted.small{margin:.25rem 0 .65rem}.interview-briefing-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.interview-briefing-item{text-align:left;border:1px solid color-mix(in srgb, var(--border,#ddd) 90%, transparent);background:var(--surface,#fff);width:100%;color:inherit;font:inherit;cursor:pointer;border-radius:10px;align-items:flex-start;gap:.65rem;padding:.55rem .7rem;display:flex}.interview-briefing-item i{border:1.5px solid color-mix(in srgb, var(--muted,#888) 55%, transparent);background:0 0;border-radius:4px;flex:none;width:1.05rem;height:1.05rem;margin-top:.12rem}.interview-briefing-item:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent,#0d7377) 35%, var(--border,#ddd))}.interview-briefing-item.is-on{border-color:color-mix(in srgb, var(--ok,#1f7a4d) 40%, var(--border,#ddd));background:color-mix(in srgb, var(--ok,#1f7a4d) 8%, #fff)}.interview-briefing-item.is-on i{border-color:var(--ok,#1f7a4d);background:var(--ok,#1f7a4d);box-shadow:inset 0 0 0 2px #fff}.interview-briefing-item:disabled{opacity:.6;cursor:wait}.interview-session{border:1px solid color-mix(in srgb, var(--border,#ddd) 85%, transparent);background:color-mix(in srgb, var(--surface-2,#f6f6f6) 70%, #fff);border-radius:14px;margin:0 0 1rem;padding:.85rem .9rem}.interview-session-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.interview-session-head .interview-section-label{margin:0}.interview-session-badge{background:var(--surface,#fff);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700}.interview-session-badge.is-open{color:var(--ok,#1f7a4d);background:color-mix(in srgb, var(--ok,#1f7a4d) 12%, #fff)}.interview-session-actions{flex-wrap:wrap;gap:.5rem;margin-top:.65rem;display:flex}.interview-session-qr{text-align:center;flex-direction:column;align-items:center;gap:.4rem;margin-top:.85rem;display:flex}.interview-archive-score{background:var(--surface-2);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:750}.interview-archive-score.is-strong{color:var(--ok,#1f7a4d);background:color-mix(in srgb, var(--ok,#1f7a4d) 12%, #fff)}.interview-archive-score.is-ok{color:var(--teal,#0d7377);background:color-mix(in srgb, var(--teal,#0d7377) 12%, #fff)}.interview-archive-score.is-weak{color:var(--warn,#c45c26);background:color-mix(in srgb, var(--warn,#c45c26) 12%, #fff)}.interview-archive-score.is-no{color:var(--err,#b42318);background:color-mix(in srgb, var(--err,#b42318) 10%, #fff)}.interview-qa{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.interview-qa-item{border:1px solid var(--line);background:var(--surface);width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;appearance:none;border-radius:14px;flex-direction:column;align-items:flex-start;gap:4px;margin:0;padding:12px 14px;display:flex}.interview-qa-item.has-answer{background:var(--teal-soft);border-color:#0d737747}.interview-qa-item.is-edit{cursor:default}.interview-qa-prompt{color:var(--navy-soft);margin:0;font-size:.78rem;font-weight:800}.interview-qa-answer{white-space:pre-wrap;font-size:.95rem;font-weight:550}.interview-qa-answer.is-empty{color:var(--muted);font-style:italic;font-weight:500}.interview-note{border:1px solid var(--line);background:var(--surface);width:100%;color:inherit;text-align:left;font:inherit;white-space:pre-wrap;cursor:pointer;appearance:none;border-radius:14px;margin:0;padding:12px 14px;display:block}.interview-note.is-edit{cursor:default}.interview-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:6px 0 0;font-size:.78rem;font-weight:800}.interview-sheet-actions{flex-wrap:wrap;gap:8px;display:flex}.interview-stage-dates{grid-template-columns:1fr 1fr;gap:8px;display:grid}.interview-stage-tbd{color:var(--muted,#5b6b7c);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.interview-stage-tbd input{margin:0}.interview-stage-slot{flex-wrap:wrap;gap:6px;display:inline-flex}.interview-stage-slot .interview-archive-seg{min-height:30px;font:inherit;cursor:pointer;padding:0 10px;font-size:13px}.interview-stage-slot .interview-archive-seg:disabled{cursor:default;opacity:.6}.interview-stage-slot-tag{color:var(--teal,#0d7377);background:color-mix(in srgb, var(--teal,#0d7377) 10%, #fff);border-radius:999px;margin-left:8px;padding:1px 8px;font-size:12px;font-style:normal;font-weight:650}.interview-stage-slot-tag.is-missing{color:var(--warn,#c45c26);background:color-mix(in srgb, var(--warn,#c45c26) 10%, #fff)}.interview-card-stage-slots{color:var(--muted,#5b6b7c);font-size:12px}.interview-check{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;font-weight:500;display:flex}.interview-check.is-on{border-color:var(--teal);background:var(--teal-soft)}.interview-check input{width:auto;margin-top:3px}.interview-stage,.interview-decide{flex-direction:column;gap:10px;padding-top:4px;display:flex}.interview-history{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.interview-history li{background:var(--surface-2);color:var(--navy-soft);border-radius:12px;margin:0;padding:8px 12px;font-size:.85rem;font-weight:550}.interview-delete{color:var(--err);align-self:flex-start;margin-top:8px}.interview-help-link{margin:8px 0 0}.interview-day.is-on .interview-dot{background:#fff}.interview-day.is-on .interview-dot.is-stage_half,.interview-day.is-on .interview-dot.is-stage_full,.interview-day.is-on .interview-dot.is-no_show{background:#ffd89a}.pub-interview{color:#1a1a1a;background:linear-gradient(165deg,#f7f3ee 0%,#eef4f3 45%,#f4f6f8 100%);min-height:100dvh;padding:1.25rem 1.1rem 2.5rem;font-family:Georgia,Times New Roman,serif}.pub-interview-brand{flex-direction:column;gap:.15rem;margin-bottom:1.25rem;display:flex}.pub-interview-brand strong{letter-spacing:.04em;font-size:1.35rem}.pub-interview-brand span{opacity:.65;font-family:system-ui,sans-serif;font-size:.9rem}.pub-interview-card{background:#fff;border-radius:18px;max-width:28rem;margin:0 auto;padding:1.25rem 1.1rem 1.4rem;box-shadow:0 10px 36px #0000000f}.pub-interview-card h1{margin:0 0 .75rem;font-size:1.35rem;font-weight:700;line-height:1.25}.pub-interview-card h1 span{opacity:.45;margin-right:.25rem}.pub-interview-card.is-thanks{text-align:center;padding:2.5rem 1.25rem}.pub-interview-card label{flex-direction:column;gap:.35rem;margin:1rem 0;font-family:system-ui,sans-serif;font-size:.85rem;display:flex}.pub-interview-card input{font:inherit;border:1px solid #d5d5d5;border-radius:12px;padding:.7rem .8rem;font-size:1.05rem}.pub-interview-card .btn{width:100%;margin-top:.35rem;font-family:system-ui,sans-serif}.pub-interview-msg{text-align:center;margin:3rem 1rem;font-size:1.1rem}.pub-interview-err{color:#b42318;font-family:system-ui,sans-serif;font-size:.9rem}.pub-interview-progress{opacity:.7;justify-content:space-between;margin-bottom:.65rem;font-family:system-ui,sans-serif;font-size:.8rem;display:flex}.pub-interview-opts{gap:.45rem;margin-top:.85rem;display:grid}.pub-interview-opt{text-align:left;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:12px;align-items:flex-start;gap:.65rem;padding:.7rem .8rem;font-family:system-ui,sans-serif;font-size:.98rem;display:flex}.pub-interview-opt i{border:1.5px solid #aaa;border-radius:4px;flex:none;width:1.1rem;height:1.1rem;margin-top:.1rem}.pub-interview-opt.is-on{background:#edf4f1;border-color:#1f7a4d}.pub-interview-opt.is-on i{background:#1f7a4d;border-color:#1f7a4d;box-shadow:inset 0 0 0 2px #fff}.pub-interview-nav{gap:.5rem;margin-top:1rem;display:flex}.pub-interview-nav .btn{flex:1}.interview-stage-avg{background:var(--surface-2,#f4f4f5);border-radius:12px;margin:.35rem 0 .75rem;padding:.55rem .75rem;font-size:.92rem}.interview-stage-avg.is-strong{color:var(--ok,#1f7a4d)}.interview-stage-avg.is-ok{color:var(--teal,#0d7377)}.interview-stage-avg.is-weak{color:var(--warn,#c45c26)}.interview-stage-avg.is-no{color:var(--err,#b42318)}.interview-stage-scores{gap:.55rem;margin:.85rem 0 1rem;display:grid}.interview-stage-score-day{border:1px solid color-mix(in srgb, var(--border,#ddd) 85%, transparent);background:#fff;border-radius:12px;padding:.45rem .7rem .65rem}.interview-stage-score-day summary{cursor:pointer;justify-content:space-between;gap:.75rem;font-family:system-ui,sans-serif;font-size:.92rem;display:flex}.interview-stage-score-read{gap:.2rem;margin:.45rem 0 0;padding:0;font-family:system-ui,sans-serif;font-size:.85rem;list-style:none;display:grid}.interview-stage-score-read li{opacity:.45}.interview-stage-score-read li.is-on{opacity:1;font-weight:600}.interview-stage-trial-form{gap:.35rem;margin-top:.55rem;display:grid}.interview-stage-errors{flex-wrap:wrap;gap:.35rem;margin-bottom:.35rem;display:flex}.stage-cal{gap:12px;margin-bottom:18px;display:grid}.stage-cal-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stage-cal-bar strong{text-align:center;text-transform:capitalize;min-width:9rem}.stage-cal-legend{flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0;display:flex}.stage-cal-swatch{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.stage-cal-swatch.is-learn{background:color-mix(in srgb, var(--teal,#0d7377) 70%, #fff)}.stage-cal-swatch.is-full{background:#6d9af2}.stage-cal-swatch.is-conflict{background:var(--err,#b42318)}.stage-cal-alert{border:1px solid color-mix(in srgb, var(--err,#b42318) 35%, transparent);background:color-mix(in srgb, var(--err,#b42318) 10%, #fff);color:var(--err,#b42318);border-radius:8px;margin:0;padding:8px 12px;font-size:14px;font-weight:600}.stage-cal-warn{margin:0}.stage-cal-weekdays{color:var(--muted,#5b6b7c);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;font-size:12px;font-weight:650;display:grid}.stage-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.stage-cal-cell{background:#fff;border:1px solid #0f274414;border-radius:10px;flex-direction:column;gap:4px;min-height:88px;padding:6px;display:flex}.stage-cal-cell.is-pad{background:0 0;border:none;min-height:0}.stage-cal-cell.is-today{border-color:color-mix(in srgb, var(--teal,#0d7377) 40%, transparent);background:color-mix(in srgb, var(--teal,#0d7377) 6%, #fff)}.stage-cal-cell.is-conflict{border-color:color-mix(in srgb, var(--err,#b42318) 45%, transparent);background:color-mix(in srgb, var(--err,#b42318) 6%, #fff)}.stage-cal-num{color:var(--navy-soft,#1a3a5c);font-size:12px;font-weight:700}.stage-cal-cell-head{justify-content:space-between;align-items:center;gap:4px;display:flex}.stage-cal-add{width:22px;height:22px;font:inherit;color:var(--teal,#0d7377);cursor:pointer;background:#fff;border:1px dashed #0f27442e;border-radius:6px;padding:0;font-size:14px;font-weight:700;line-height:1}.stage-cal-add:hover:not(:disabled){background:color-mix(in srgb, var(--teal,#0d7377) 10%, #fff);border-style:solid}.stage-cal-add:disabled{opacity:.35;cursor:default}.stage-cal-modal-backdrop{z-index:40;background:#0f274459;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.stage-cal-modal{background:#fff;border-radius:14px;gap:12px;width:min(420px,100%);padding:16px;display:grid;box-shadow:0 16px 40px #0f27442e}.stage-cal-modal h2{margin:0;font-size:1.1rem}.stage-cal-modal header{gap:4px;display:grid}.stage-cal-field{gap:6px;font-size:13px;display:grid}.stage-cal-field>span:first-child{font-weight:650}.stage-cal-field select{font:inherit;border:1px solid #0f274424;border-radius:8px;min-height:36px;padding:0 10px}.stage-cal-slot-row{flex-wrap:wrap;gap:6px;display:inline-flex}.stage-cal-preview{margin:0}.stage-cal-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.stage-cal-events{gap:3px;margin:0;padding:0;list-style:none;display:grid}.stage-cal-chip{text-align:left;width:100%;font:inherit;cursor:pointer;background:color-mix(in srgb, var(--teal,#0d7377) 12%, #fff);color:var(--text,#0f2744);border:1px solid #0000;border-radius:6px;gap:1px;padding:3px 5px;font-size:11px;line-height:1.25;display:grid}.stage-cal-chip strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:750;overflow:hidden}.stage-cal-chip span{opacity:.85}.stage-cal-chip.is-full{background:#e6eefd}.stage-cal-chip.is-am{border-color:color-mix(in srgb, var(--teal,#0d7377) 28%, transparent)}.stage-cal-chip.is-pm{border-color:color-mix(in srgb, var(--warn,#c45c26) 35%, transparent);background:color-mix(in srgb, var(--warn,#c45c26) 10%, #fff)}.stage-cal-chip.is-missing{border-style:dashed;border-color:color-mix(in srgb, var(--warn,#c45c26) 40%, transparent)}.stage-cal-chip.is-conflict{background:color-mix(in srgb, var(--err,#b42318) 14%, #fff);border-color:color-mix(in srgb, var(--err,#b42318) 40%, transparent);color:var(--err,#b42318)}.stage-cal-chip.is-done{opacity:.55}.stage-cal-chip:hover{filter:brightness(.97)}.stage-cal-empty{margin:0}@media (width<=720px){.stage-cal-cell{min-height:72px;padding:4px}.stage-cal-chip{padding:2px 4px;font-size:10px}.stage-cal-chip span{display:none}}.stage-reviews-closing{background:#fbf2f1;border:1px solid #b4231847;border-radius:14px;margin:.75rem 0 1rem;padding:.9rem .95rem}.stage-reviews-closing h3{margin:0 0 .4rem;font-size:1rem}.stage-reviews-warn{color:#8a1f16;margin:0 0 .75rem;font-size:.88rem;font-weight:600}.stage-review-card{background:#fff;border:1px solid #0f27441a;border-radius:12px;margin-top:.65rem;padding:.7rem .75rem}.stage-review-card header{justify-content:space-between;gap:.5rem;margin-bottom:.45rem;font-size:.9rem;display:flex}.stage-review-card ul{gap:.25rem;margin:0 0 .55rem;padding:0;list-style:none;display:grid}.stage-review-card label{align-items:flex-start;gap:.5rem;font-size:.88rem;display:flex}:root{--navy:#0f2744;--navy-soft:#1a3a5c;--teal:#0d7377;--teal-hover:#0a5f62;--teal-soft:#e7f4f4;--bg:#eef2f5;--bg-accent:#e4ecef;--surface:#fff;--surface-2:#f7fafb;--text:#0f2744;--muted:#5a6b78;--line:#d7e0e6;--line-strong:#c3ced6;--err:#b42318;--err-soft:#fdecea;--warn:#9a4b12;--warn-soft:#fff4e5;--ok:#0d7377;--ok-soft:#e7f4f4;--shadow:0 1px 2px #0f27440a, 0 8px 24px #0f27440f;--radius:12px;--radius-sm:8px;--sidebar-w:260px;--mobile-nav-clearance:calc(72px + env(safe-area-inset-bottom,0px));--mobile-top-clearance:calc(env(safe-area-inset-top,0px) + 3.75rem);--scrollbar-size:6px;--scrollbar-track:transparent;--scrollbar-thumb:#0f274424;--scrollbar-thumb-hover:#0d737747;--font:"DM Sans", sans-serif;--font-brand:"Manrope", "DM Sans", sans-serif;--motion-fast:.14s;--motion-mid:.2s;--motion-ease:cubic-bezier(.22, 1, .36, 1);--motion-press:.985;color:var(--text);background:var(--bg);font-family:var(--font);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.45}*{box-sizing:border-box}body{background:radial-gradient(1200px 500px at 10% -10%, #0d73771a, transparent 55%), radial-gradient(900px 420px at 100% 0%, #0f274414, transparent 50%), var(--bg);height:100%;margin:0;overflow:hidden}html{height:100%;overflow:hidden}#root{height:100%;min-height:100%}button,input,select{font:inherit}a{color:inherit}.app-shell{align-items:stretch;max-width:100%;height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-w);background:linear-gradient(180deg, var(--navy) 0%, #0c1f36 100%);color:#e8eef4;flex-direction:column;flex-shrink:0;gap:28px;padding:24px 16px;display:none}.sidebar-brand{padding:4px 10px}.sidebar-brand .brand{font-family:var(--font-brand);letter-spacing:.06em;color:#7fd4d7;font-size:1.05rem;font-weight:800}.sidebar-brand .sub{color:#e8eef4a6;margin-top:4px;font-size:.8rem}.sidebar-nav{scrollbar-gutter:auto;--scrollbar-thumb:#e8eef438;--scrollbar-thumb-hover:#7fd4d773;flex-direction:column;flex:1;gap:6px;min-height:0;padding-right:2px;display:flex;overflow:hidden auto}.nav-group{flex-direction:column;gap:4px;display:flex}.nav-group-label{letter-spacing:.06em;text-transform:uppercase;color:#e8eef46b;padding:0 12px 2px;font-size:.68rem;font-weight:700}.nav-group-info{border-top:1px solid #ffffff1a;flex-shrink:0;margin-top:auto;padding-top:12px}.nav-accordion{background:#ffffff0a;border:1px solid #ffffff12;border-radius:12px;flex-shrink:0;overflow:hidden}.nav-accordion.is-open{background:#ffffff0f;border-color:#7fd4d72e}.nav-accordion-trigger{color:#e8eef4b8;width:100%;font:inherit;letter-spacing:.06em;text-transform:uppercase;text-align:left;cursor:pointer;transition:color var(--motion-fast) var(--motion-ease), background var(--motion-fast) var(--motion-ease);background:0 0;border:0;align-items:center;gap:8px;margin:0;padding:8px 10px;font-size:.68rem;font-weight:700;display:flex}.nav-accordion-trigger:hover{color:#fff;background:#ffffff0d}.nav-accordion.has-active .nav-accordion-trigger{color:#9fe3e5}.nav-accordion-title{flex:1;min-width:0}.nav-accordion-alert{background:#f0a35e;border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 0 3px #f0a35e38}.nav-accordion-chevron{opacity:.65;width:7px;height:7px;transition:transform var(--motion-mid) var(--motion-ease);border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;margin-right:2px;transform:rotate(-45deg)}.nav-accordion.is-open .nav-accordion-chevron{margin-top:-2px;transform:rotate(45deg)}.nav-accordion-panel{transition:grid-template-rows var(--motion-mid) var(--motion-ease);grid-template-rows:0fr;display:grid}.nav-accordion-panel.is-open{grid-template-rows:1fr}.nav-accordion-inner{flex-direction:column;gap:1px;padding:0 5px 5px;display:flex;overflow:hidden}.nav-divider{background:#ffffff1f;height:1px;margin:10px 8px}.sidebar-nav a{border-radius:var(--radius-sm);color:#e8eef4c7;transition:background var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);align-items:center;gap:10px;padding:8px 10px;font-size:.94rem;font-weight:600;text-decoration:none;display:flex}.sidebar-nav a:active{transform:scale(var(--motion-press))}.sidebar-nav a:hover{color:#fff;background:#ffffff12}.sidebar-nav a.on{color:#fff;background:#0d737759;box-shadow:inset 3px 0 #7fd4d7}.sidebar-user{border-radius:var(--radius);background:#ffffff0f;border:1px solid #ffffff14;margin-top:auto;padding:14px 12px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.studio-alerts{flex-direction:column;gap:8px;min-height:0;display:flex}.studio-alerts.is-sidebar{color:#f4f0e6;background:#fff8dc1f;border:1px solid #ffdc7838;border-radius:12px;max-height:42vh;padding:10px}.studio-alerts.is-sheet{color:var(--ink,#0f2744);background:#fff8e7;border:1px solid #f0d9a0;border-radius:12px;margin:0 0 12px;padding:12px}.studio-alerts-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.studio-alerts-title-btn{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.studio-alerts-title{letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:700}.studio-alerts-badge{color:#fff;background:#e11d48;border-radius:999px;justify-content:center;align-items:center;min-width:1.25rem;height:1.25rem;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-flex}.studio-alerts-hint{margin:0 0 6px}.studio-alerts.is-sidebar .studio-alerts-hint,.studio-alerts.is-sidebar .studio-alerts-hint .link-btn{color:#f4f0e6bf}.studio-alerts-body{flex-direction:column;gap:8px;min-height:0;display:flex;overflow:auto}.studio-alerts-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.studio-alerts-empty{margin:0}.studio-alert-card{background:#ffffff1a;border-left:3px solid #e8b84a;border-radius:8px;padding:8px 10px}.studio-alerts.is-sheet .studio-alert-card{background:#fff;border:1px solid #ead7a8;border-left:3px solid #d4a017}.studio-alert-card.is-urgent{background:#e11d4829;border-left-color:#e11d48}.studio-alerts.is-sheet .studio-alert-card.is-urgent{background:#fff1f3}.studio-alert-card.is-overdue{opacity:.85}.studio-alert-text{margin:0 0 6px;font-size:.86rem;font-weight:600;line-height:1.35}.studio-alert-meta{opacity:.85;justify-content:space-between;align-items:center;gap:8px;font-size:.72rem;display:flex}.studio-alerts-compose{flex-direction:column;gap:6px;display:flex}.studio-alerts-compose textarea{resize:vertical;width:100%;min-height:52px;color:inherit;font:inherit;background:#0000002e;border:1px solid #ffffff2e;border-radius:8px;padding:8px 10px}.studio-alerts.is-sheet .studio-alerts-compose textarea{color:var(--ink,#0f2744);background:#fff;border-color:#e0c98a}.studio-alerts-compose-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.studio-alerts-urgent{cursor:pointer;align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.studio-alerts-until{align-items:center;gap:6px;display:inline-flex}.studio-alerts-until input[type=date]{font:inherit;color:inherit;background:#00000026;border:1px solid #fff3;border-radius:6px;padding:2px 6px;font-size:.78rem}.studio-alerts.is-sheet .studio-alerts-until input[type=date]{color:var(--ink,#0f2744);background:#fff;border-color:#e0c98a}.studio-alerts-error{margin:0;font-size:.8rem}.btn.small{padding:6px 10px;font-size:.82rem}.on-duty-chip{color:#f4f8fb;background:#0d737747;border:1px solid #7fd4d759;border-radius:12px;flex-direction:column;gap:2px;margin-top:12px;padding:10px 12px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.on-duty-chip:hover{background:#0d73776b;border-color:#7fd4d78c}.on-duty-chip.is-live{background:#0d73777a;border-color:#7fd4d7;animation:2.4s ease-in-out infinite on-duty-glow}.on-duty-chip.is-empty{color:#e8eef4b8;background:#ffffff0f;border-color:#ffffff1f}.on-duty-label{letter-spacing:.04em;text-transform:uppercase;color:#7fd4d7;align-items:center;gap:7px;font-size:.68rem;font-weight:800;line-height:1.2;display:inline-flex}.on-duty-live-dot{background:#7fd4d7;border-radius:999px;flex:none;width:8px;height:8px;animation:1.6s ease-out infinite on-duty-pulse;box-shadow:0 0 #7fd4d7b3}.on-duty-chip.is-empty .on-duty-label{color:#e8eef48c}.on-duty-name{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;font-weight:800;line-height:1.2;overflow:hidden}.on-duty-chip.is-live .on-duty-name{color:#fff}@keyframes on-duty-pulse{0%{transform:scale(1);box-shadow:0 0 #7fd4d7a6}70%{transform:scale(1.05);box-shadow:0 0 0 8px #7fd4d700}to{transform:scale(1);box-shadow:0 0 #7fd4d700}}@keyframes on-duty-glow{0%,to{border-color:#7fd4d78c}50%{border-color:#b7f0f2}}.on-duty-chip.mobile{background:color-mix(in srgb, var(--teal,#0d7377) 12%, white);border:1px solid color-mix(in srgb, var(--teal,#0d7377) 28%, transparent);max-width:min(62vw,240px);color:var(--text,#0f2744);flex-flow:wrap;align-items:baseline;gap:6px 8px;margin-top:4px;padding:6px 10px;animation:none}.on-duty-chip.mobile .on-duty-label{color:var(--teal,#0d7377);letter-spacing:.03em;font-size:.62rem}.on-duty-chip.mobile .on-duty-live-dot{background:var(--teal,#0d7377);box-shadow:0 0 0 0 color-mix(in srgb, var(--teal,#0d7377) 55%, transparent);animation:1.6s ease-out infinite on-duty-pulse-mobile}.on-duty-chip.mobile.is-live{background:color-mix(in srgb, var(--teal,#0d7377) 18%, white);border-color:var(--teal,#0d7377)}.on-duty-chip.mobile.is-empty{color:var(--muted,#6b7c8f);background:#0f27440a;border-color:#0f27441a}.on-duty-chip.mobile.is-empty .on-duty-label{color:var(--muted,#6b7c8f)}.on-duty-chip.mobile .on-duty-name{font-size:.9rem}@keyframes on-duty-pulse-mobile{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--teal,#0d7377) 50%, transparent)}70%{box-shadow:0 0 0 7px #0000}to{box-shadow:0 0 #0000}}.mobile-top-brand{min-width:0}.sidebar-user .name{font-weight:700}.sidebar-user .role{color:#e8eef4a6;margin-top:2px;font-size:.8rem}.sidebar-user .logout{width:100%;margin-top:10px}.app-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;flex:1;min-width:0;max-width:100%;height:100dvh;min-height:0;max-height:100dvh;display:flex;overflow:clip auto}.mobile-top{padding:calc(14px + env(safe-area-inset-top,0px)) 16px 14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:20;background:#ffffffd9;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.mobile-top .brand{font-family:var(--font-brand);letter-spacing:.05em;color:var(--teal);font-size:.95rem;font-weight:800}.mobile-top .user-meta{text-align:right;font-size:.82rem}.main{flex-direction:column;flex:1 0 auto;width:min(1120px,100%);min-width:0;margin:0 auto;padding:20px 16px 0;display:flex}.main-page{flex:auto;min-width:0;padding-bottom:12px}.main:has(.group-schedule-page){width:100%;max-width:none}:is(.main:has(.price-list-shell.is-doc-editing),.main:has(.hall-rental-shell.is-doc-editing)){width:min(1320px,100%)}.mobile-nav{padding:8px 10px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:30;background:#fffffff0;gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav.cols-4{grid-template-columns:repeat(4,1fr)}.payroll-scroll{max-height:70vh}.pay-sheet-mobile{display:none}.pay-sheet-desktop{display:block}.pay-sheet-mobile-toolbar{background:#0f27440d;border-radius:10px;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 12px;padding:4px;display:grid}.pay-sheet-mobile-toolbar button{appearance:none;font:inherit;color:var(--muted,#5a6b7d);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px;font-weight:600}.pay-sheet-mobile-toolbar button.on{color:var(--navy,#0f2744);background:#fff;box-shadow:0 1px 2px #0f27441a}.pay-sheet-mobile-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pay-sheet-mobile-empty{text-align:center;padding:18px 12px}.pay-sheet-mobile-card{text-align:left;appearance:none;border:1px solid var(--line,#e2e6eb);width:100%;font:inherit;color:inherit;cursor:pointer;background:#fff;border-radius:12px;padding:12px 14px;box-shadow:0 1px 2px #0f27440a}.pay-sheet-mobile-card:active{background:#0d73770d}.pay-sheet-mobile-card-top{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:10px;display:flex}.pay-sheet-mobile-name{color:var(--navy,#0f2744);font-size:1.02rem}.pay-sheet-signed{background:var(--teal-soft,#d8eeef);color:var(--teal,#0d7377)}.pay-sheet-mobile-card-money{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px 10px;display:grid}.pay-sheet-mobile-card-money>span{flex-direction:column;gap:2px;min-width:0;display:flex}.pay-sheet-mobile-card-money .label{text-transform:uppercase;letter-spacing:.03em;color:var(--muted,#5a6b7d);font-size:.72rem}.pay-sheet-mobile-card-money strong{font-variant-numeric:tabular-nums;font-size:.95rem}.pay-sheet-mobile-card-money .is-balance strong{color:var(--teal,#0d7377)}.pay-sheet-mobile-detail{flex-direction:column;gap:12px;display:flex}.pay-sheet-mobile-detail-head{flex-direction:column;gap:8px;display:flex}.pay-sheet-mobile-detail-title{color:var(--navy,#0f2744);margin:0;font-size:1.15rem}.pay-sheet-mobile-card-money.is-detail{border:1px solid var(--line,#e2e6eb);background:linear-gradient(#fafbfc 0%,#f4f7f9 100%);border-radius:10px;padding:10px 12px}.pay-sheet-mobile-cal{border:1px solid var(--line,#e2e6eb);background:#fff;border-radius:12px;overflow:hidden}.pay-sheet-mobile-cal-head,.pay-sheet-mobile-cal-body{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.pay-sheet-mobile-cal-head{border-bottom:1px solid var(--line,#e2e6eb);background:#f4f7f9}.pay-sheet-mobile-cal-head span{text-align:center;color:var(--muted,#5a6b7d);text-transform:lowercase;padding:8px 2px;font-size:.72rem;font-weight:600}.pay-sheet-mobile-cal-head span.is-weekend,.pay-sheet-mobile-cal-day.is-weekend .pay-sheet-mobile-cal-num{color:#b42318}.pay-sheet-mobile-cal-pad{background:#fafbfc;min-height:56px}.pay-sheet-mobile-cal-day{border-top:1px solid #0f27440f;border-right:1px solid #0f27440f;flex-direction:column;gap:2px;min-height:56px;padding:4px 2px 6px;display:flex}.pay-sheet-mobile-cal-day:nth-child(7n){border-right:0}.pay-sheet-mobile-cal-num{color:var(--muted,#5a6b7d);padding:0 4px;font-size:.7rem;font-weight:650}.pay-sheet-mobile-cal-cell{flex:1;align-items:stretch;min-height:0;display:flex}.pay-sheet-mobile-cal-cell .payroll-cell{border-radius:6px;width:100%;min-height:32px;padding:2px;font-size:.72rem;line-height:1.15}.pay-sheet-mobile-extras{border:1px solid var(--line,#e2e6eb);background:#fff;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.pay-sheet-mobile-extras .pay-sheet-mobile-field{flex-direction:column;gap:4px;display:flex}.pay-sheet-mobile-extras .pay-sheet-mobile-field .label{color:var(--muted,#5a6b7d);font-size:.78rem}.pay-sheet-mobile-extras .money-input,.pay-sheet-mobile-extras .cell-readonly.money{min-height:40px;font-size:16px}.pay-sheet-mobile-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width<=899px){.pay-sheet-mobile{display:block}.pay-sheet-desktop{display:none}.pay-sheet-desktop.is-force-grid{display:block}}@media (width>=900px){.pay-sheet-mobile{display:none!important}.pay-sheet-desktop{display:block!important}}.payroll-table .payroll-day{text-align:center;min-width:36px;max-width:42px;padding:4px!important}.payroll-cell{cursor:pointer;width:100%;min-height:32px;font:inherit;color:var(--text);background:0 0;border:none;border-radius:4px;font-size:.78rem;font-weight:600;position:relative}.payroll-cell:hover{background:var(--teal-soft)}button.payroll-cell:active{transform:scale(var(--motion-press))}@media (hover:none){.payroll-cell:hover:not(.is-manual):not(.is-open):not(.vacation){background:0 0}}.payroll-cell.vacation{color:var(--warn);font-size:.65rem}.payroll-cell.has-reel{padding-top:8px;position:relative}.payroll-cell.is-manual{background:#c47b1a12}.payroll-cell.is-manual:after{content:"";opacity:.85;pointer-events:none;background:#c47b1a;border-radius:50%;width:4px;height:4px;position:absolute;top:3px;right:3px}.payroll-cell.is-open{outline-offset:-2px;background:#e4eee9;outline:2px solid #217346}.payroll-rub{font-variant-numeric:tabular-nums;letter-spacing:-.01em;align-items:baseline;gap:1px;line-height:1.1;display:inline-flex}.payroll-rub-num{color:#1a4f8b;font-weight:600}.payroll-rub-cur{color:#456a92;margin-left:.5px;font-size:.72em;font-weight:500}.payroll-rub.is-empty{color:#b0b8c0;font-weight:400}.payroll-rub.is-zero{color:#8a94a0;font-weight:500}.payroll-rub.is-vacation{color:#c65911;letter-spacing:0;font-size:.85em;font-weight:600}.payroll-rub-popover{z-index:80;animation:ui-sheet-in var(--motion-mid) var(--motion-ease);background:#fff;border:1px solid #1a1a1a1f;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex;position:fixed;box-shadow:0 12px 32px #0b1b2b2e,0 2px 8px #0b1b2b14}.payroll-rub-popover-head{color:#445;padding:0 2px;font-size:.78rem;font-weight:600}.payroll-rub-popover-presets{flex-wrap:wrap;gap:6px;display:flex}.payroll-rub-chip{color:#1a4f8b;font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), background var(--motion-fast) var(--motion-ease);background:#f1f4f8;border:1px solid #1a4f8b38;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:600}.payroll-rub-chip:active{transform:scale(var(--motion-press))}.payroll-rub-chip:hover{background:#dfe6ef}.payroll-rub-chip.is-active{color:#fff;background:#1a4f8b;border-color:#1a4f8b}.payroll-rub-chip.is-stage{border-color:color-mix(in srgb, var(--teal) 35%, transparent);background:color-mix(in srgb, var(--teal-soft) 80%, #fff);color:var(--teal)}.payroll-rub-chip.is-stage.is-active{background:var(--teal);border-color:var(--teal);color:#fff}.payroll-rub-popover-row{align-items:center;gap:6px;display:flex}.payroll-rub-popover-input{min-width:0;height:34px;font:inherit;font-variant-numeric:tabular-nums;border:1px solid #1a1a1a29;border-radius:8px;flex:1;padding:0 10px}.payroll-rub-popover-input:focus{outline-offset:0;border-color:#217346;outline:2px solid #2173468c}.payroll-rub-popover-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.payroll-reel-dot{pointer-events:none;background:#e11d48;border-radius:50%;width:6px;height:6px;position:absolute;top:2px;left:50%;transform:translate(-50%);box-shadow:0 0 0 1px #ffffffb3}.payroll-table select{width:100%;min-width:52px;padding:2px;font-size:.75rem}.payroll-table th.weekday{color:var(--muted);text-transform:lowercase;font-size:.65rem;font-weight:600}.payroll-table th.weekend,.payroll-table td.weekend{background:#0d73770f}.payroll-table tr.payroll-staff-row td{background:#b478281f}.payroll-table tr.payroll-staff-row td.weekend{background:#b478282e}.payroll-table tr.payroll-staff-row td.sticky-col{background:#b4782829}.mobile-nav a,.mobile-more-btn{text-align:center;border-radius:var(--radius-sm);min-height:48px;color:var(--muted);cursor:pointer;width:100%;transition:color var(--motion-fast) var(--motion-ease), background var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);background:0 0;border:none;justify-content:center;align-items:center;padding:10px 6px;font-family:inherit;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.mobile-nav a:active,.mobile-more-btn:active{transform:scale(var(--motion-press))}.mobile-nav a.on,.mobile-more-btn.on{color:var(--teal);background:var(--teal-soft)}.mobile-more-backdrop{z-index:40;animation:ui-backdrop-in var(--motion-mid) var(--motion-ease);background:#0f27446b;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.mobile-more-sheet{background:var(--surface);width:min(480px,100%);max-height:min(78dvh,560px);padding:16px 16px calc(16px + env(safe-area-inset-bottom));animation:more-sheet-in var(--motion-mid) var(--motion-ease);border-radius:16px 16px 0 0;flex-direction:column;gap:14px;display:flex;overflow:auto;box-shadow:0 -8px 32px #0f27442e}@keyframes more-sheet-in{0%{opacity:.92;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ui-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes ui-sheet-in{0%{opacity:.9;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.mobile-more-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-more-head h2{margin:0;font-size:1.1rem}.mobile-more-links{flex-direction:column;gap:10px;display:flex}.mobile-more-links .nav-accordion{background:var(--surface-2);border-color:var(--line)}.mobile-more-links .nav-accordion.is-open{background:linear-gradient(180deg, #0d73770f, var(--surface-2));border-color:#0d737738}.mobile-more-links .nav-accordion-trigger{color:var(--muted,#6b7280);padding:12px 14px}.mobile-more-links .nav-accordion-trigger:hover{color:var(--text);background:#0d73770f}.mobile-more-links .nav-accordion.has-active .nav-accordion-trigger{color:var(--teal)}.mobile-more-links .nav-group-info{border-top-color:var(--line);margin-top:4px}.mobile-more-links .nav-accordion-inner{gap:4px;padding:0 8px 10px}.mobile-more-links a{border-radius:var(--radius-sm);min-height:48px;color:var(--text);background:var(--surface-2);border:1px solid var(--line);align-items:center;padding:12px 14px;font-weight:700;text-decoration:none;display:flex}.mobile-more-links a.on{color:var(--teal);background:var(--teal-soft);border-color:#0d737747}.mobile-more-notif{border-radius:var(--radius-sm);background:var(--teal-soft);min-height:48px;color:var(--teal);cursor:pointer;font-weight:700;font:inherit;border:1px solid #0d737747;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;display:flex}.mobile-more-qr{text-align:center;margin:0 0 10px;text-decoration:none}.sidebar-user-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.notif-bell{border-radius:var(--radius-sm);color:#e8eef4;min-height:40px;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;align-items:center;gap:6px;padding:6px 10px;font-size:.78rem;font-weight:700;display:inline-flex;position:relative}.mobile-top .notif-bell{border-color:var(--line);background:var(--surface);color:var(--text)}.mobile-top .notif-bell-label{display:none}.notif-bell-ico{opacity:.92;flex-shrink:0;transition:transform .2s}.notif-bell.has-unread .notif-bell-ico{animation:1.8s ease-in-out infinite notif-bell-nudge}@keyframes notif-bell-nudge{0%,88%,to{transform:rotate(0)}92%{transform:rotate(-10deg)}96%{transform:rotate(8deg)}}.notif-badge{background:var(--err);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:800;line-height:1;animation:.28s notif-badge-pop;display:inline-flex}@keyframes notif-badge-pop{0%{opacity:.4;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.notif-badge.nav{position:absolute;top:4px;right:6px}.notif-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ui-backdrop-in var(--motion-mid) var(--motion-ease);background:#0f27447a;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.notif-panel{background:var(--surface);width:min(440px,100%);max-height:min(84dvh,680px);padding:14px 14px calc(14px + env(safe-area-inset-bottom));animation:more-sheet-in var(--motion-mid) var(--motion-ease);border-radius:16px 16px 0 0;flex-direction:column;gap:12px;display:flex;overflow:hidden;box-shadow:0 -10px 36px #0f274433}.notif-head{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.notif-head-text h2{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.2rem;font-weight:800}.notif-meta{color:var(--teal);margin:2px 0 0;font-size:.78rem;font-weight:600}.notif-meta.muted{color:var(--muted);font-weight:500}.notif-head-actions{align-items:center;gap:8px;display:flex}.notif-mark-all{color:var(--teal);white-space:nowrap;font-size:.82rem;font-weight:650}.notif-close{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);width:36px;height:36px;color:var(--muted);cursor:pointer;justify-content:center;align-items:center;font-size:1.35rem;line-height:1;display:inline-flex}.notif-close:hover{color:var(--text);border-color:var(--line-strong)}.notif-tabs{border-radius:var(--radius-sm);background:var(--bg);flex-shrink:0;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.notif-tab{min-height:40px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:.88rem;font-weight:700}.notif-tab.on{background:var(--surface);color:var(--navy);box-shadow:0 1px 2px #0f274414}.notif-feed,.notif-settings{flex-direction:column;flex:1;gap:12px;min-height:0;padding-right:2px;display:flex;overflow:auto}.notif-pane-in{animation:.2s notif-pane-in}@keyframes notif-pane-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.notif-skeleton{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.notif-skel-row{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-height:64px;animation:.25s both notif-toast-in;display:flex;overflow:hidden}.notif-skel-rail{background:var(--line);width:3px}.notif-skel-body{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex}.notif-skel-line{background:linear-gradient(90deg, var(--bg) 0%, var(--line) 45%, var(--bg) 90%);background-size:200% 100%;border-radius:4px;height:9px;animation:1.1s ease-in-out infinite notif-shimmer;display:block}.notif-skel-line.w40{width:40%}.notif-skel-line.w70{width:70%}.notif-skel-line.w90{width:90%}@keyframes notif-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.notif-empty{text-align:center;padding:44px 18px;animation:.24s notif-pane-in}.notif-empty-ico{background:var(--teal-soft);width:52px;height:52px;color:var(--teal);border-radius:14px;place-items:center;margin:0 auto 12px;display:grid}.notif-empty strong{font-family:var(--font-brand);margin-bottom:6px;font-size:1.08rem;display:block}.notif-empty p{margin:0;max-width:260px;margin-inline:auto;font-size:.88rem;line-height:1.4}.notif-push-line{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.notif-push-copy strong{font-size:.92rem}.notif-push-copy p{margin:3px 0 0}.notif-push-status{flex-shrink:0;align-items:center;gap:8px;display:flex}.notif-push-status .btn{min-height:36px;padding:6px 12px;font-size:.82rem}.notif-status-pill{letter-spacing:.02em;text-transform:uppercase;border-radius:6px;align-items:center;min-height:24px;padding:0 8px;font-size:.72rem;font-weight:800;display:inline-flex}.notif-status-pill.on{background:var(--teal-soft);color:var(--teal)}.notif-status-pill.off{background:var(--bg);color:var(--muted)}.notif-status-pill.denied{background:var(--err-soft);color:var(--err)}.notif-delivery{margin:0}.notif-pref-group{padding:4px 0 8px}.notif-pref-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:.72rem;font-weight:800}.notif-prefs-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.notif-pref-row{min-height:48px;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:4px 0;font-size:.92rem;font-weight:550;display:flex}.notif-toggle{background:var(--line-strong);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:44px;height:26px;padding:0;transition:background .15s;position:relative}.notif-toggle.on{background:var(--teal)}.notif-toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f274440}.notif-toggle.on .notif-toggle-knob{transform:translate(18px)}.notif-toggle:disabled{opacity:.55;cursor:not-allowed}.notif-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.notif-list>li{animation:.22s both notif-toast-in}.notif-item{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;width:100%;font:inherit;color:inherit;gap:0;min-height:56px;padding:0;transition:background .12s,border-color .12s;display:flex;position:relative;overflow:hidden}.notif-item:hover{border-color:var(--line-strong);background:var(--surface-2)}.notif-item:active{transform:scale(.995)}.notif-item:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.notif-item.unread .notif-dot{animation:1.6s ease-in-out infinite notif-dot-pulse}@keyframes notif-dot-pulse{0%,to{box-shadow:0 0 0 2px #0d73772e}50%{box-shadow:0 0 0 4px #0d73771a}}.notif-item-rail{background:0 0;flex-shrink:0;width:3px}.notif-item.unread .notif-item-rail{background:var(--teal)}.notif-item-main{flex-direction:column;flex:1;gap:4px;min-width:0;padding:11px 12px 11px 10px;display:flex}.notif-item-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.notif-item-title-row{align-items:center;gap:7px;min-width:0;display:inline-flex}.notif-item-title-row strong{font-size:.92rem;font-weight:750;line-height:1.25}.notif-dot{background:var(--teal);border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 0 2px #0d73772e}.notif-time{color:var(--muted);flex-shrink:0;font-size:.72rem;font-weight:600}.notif-item-mid{display:flex}.notif-chip{letter-spacing:.02em;background:var(--bg);min-height:18px;color:var(--muted);border-radius:4px;align-items:center;padding:0 7px;font-size:.68rem;font-weight:750;display:inline-flex}.notif-chip.kind-handoff{color:var(--teal);background:#0d73771a}.notif-chip.kind-plan{color:#b45309;background:#d977061f}.notif-chip.kind-closed{color:var(--navy-soft);background:#0f274414}.notif-chip.kind-lockers{color:#7a1f1a;background:#fdecea}.notif-chip.kind-duty{background:var(--warn-soft);color:var(--warn)}.notif-body{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.86rem;line-height:1.35;display:-webkit-box;overflow:hidden}.notif-toast-stack{left:12px;right:12px;bottom:var(--mobile-nav-clearance);z-index:55;pointer-events:none;flex-direction:column;gap:8px;max-width:420px;margin:0 auto;display:flex;position:fixed}.notif-toast{pointer-events:auto;background:var(--navy);color:#e8eef4;border-radius:var(--radius);animation:notif-toast-in var(--motion-mid) var(--motion-ease);padding:12px 12px 10px;box-shadow:0 10px 28px #0f274447}@keyframes notif-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.notif-toast-main{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:0;display:flex}.notif-toast-main strong{font-size:.95rem}.notif-toast-body{color:#e8eef4c7;font-size:.86rem;line-height:1.35}.notif-toast-actions{justify-content:flex-end;gap:14px;margin-top:8px;display:flex}.notif-toast-actions .link-btn{color:#7fd4d7}@media (width>=900px){.notif-toast-stack{margin:0;bottom:28px;left:auto;right:28px}.notif-backdrop{align-items:center;padding:24px}.notif-panel{border-radius:var(--radius);max-height:min(72dvh,620px)}}@media (prefers-reduced-motion:reduce){.notif-bell.has-unread .notif-bell-ico,.notif-item.unread .notif-dot,.notif-skel-line,.notif-pane-in,.notif-list>li,.notif-badge,.notif-panel,.notif-backdrop,.notif-toast,.mobile-more-backdrop,.mobile-more-sheet,.drawer-backdrop.confirm-modal-backdrop,.drawer-panel.confirm-modal{animation:none!important}.sidebar-nav a:active,.mobile-nav a:active,.mobile-more-btn:active{transform:none}}@media (width<=899px){.main{padding-bottom:var(--mobile-nav-clearance)}.app-shell .mobile-top .user-meta>div,.app-shell .mobile-top .user-meta>button.link-btn{display:none}.mobile-top .user-meta{align-items:center;display:flex}.mobile-top .notif-bell{min-width:44px;min-height:44px}.spreadsheet-page .excel-grid{--excel-day-w:44px;--excel-cell-h:40px;font-size:13px}.spreadsheet-page .excel-grid .payroll-day,.payroll-table .payroll-day{min-width:44px;max-width:48px;padding:6px 2px!important}.spreadsheet-page .excel-grid .payroll-cell,.payroll-cell{min-height:40px;font-size:.82rem}.spreadsheet-page .excel-grid .sticky-col{z-index:5;min-width:112px;max-width:132px}.spreadsheet-page .excel-sheet.table-wrap,.table-wrap.rates-scroll,.table-wrap.excel-sheet{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border-radius:10px;max-height:min(70dvh,640px);overflow:auto;box-shadow:inset -14px 0 12px -12px #0f274429}.spreadsheet-page .excel-grid.sales-block .cell-input,.spreadsheet-page .excel-grid .cell-input{min-height:40px;font-size:16px}.budget-sheet-frame.is-editing{overflow:hidden}.budget-sheet-frame.is-editing .budget-sheet-scroll{-webkit-overflow-scrolling:touch;max-height:min(68dvh,620px);overflow:auto}.budget-grid td.budget-td-label,.budget-grid th.budget-th-label{z-index:3;background:var(--budget-row-default,#fff);position:sticky;left:0;box-shadow:2px 0 4px #0f274414}.budget-grid th.budget-th-label{z-index:4;background:var(--budget-header-bg,#f4f7f9)}.budget-grid .tone-section>td.budget-td-label{background:var(--budget-row-section,#f0f4f7)}.budget-grid .tone-total>td.budget-td-label,.budget-grid .is-expenses-total>td.budget-td-label{background:var(--budget-row-total,var(--teal-soft))}.budget-sheet-frame.is-editing .budget-hover-actions,.budget-sheet-frame.is-editing .budget-spacer-actions{opacity:1;pointer-events:auto;transform:none}.budget-icon-btn{width:32px;height:32px;font-size:16px}.budget-col-label{width:min(160px,42vw)}.hh-sheet-frame.is-editing{overflow:hidden}.hh-sheet-frame.is-editing .hh-sheet-scroll{-webkit-overflow-scrolling:touch;max-height:min(68dvh,620px);overflow:auto}.hh-sheet-frame.is-editing .budget-hover-actions{opacity:1;pointer-events:auto;transform:none}.group-schedule-page .group-schedule-chrome,.phase-strip{top:var(--mobile-top-clearance)}.group-schedule-page,.schedule-v2-page{max-width:100%;overflow-x:clip}.group-schedule-page .group-schedule-chrome{border-radius:10px;gap:4px;max-width:100%;margin-bottom:0;padding:4px 8px;overflow:hidden}.group-schedule-page .gs-title-full{display:none}.group-schedule-page .gs-title-short{display:inline}.group-schedule-page .group-schedule-title-block h1{font-size:.95rem;line-height:1.1}.group-schedule-page .group-schedule-stats{display:none!important}.group-schedule-page .group-schedule-toolbar{grid-template-columns:1fr auto;align-items:center;gap:4px 8px;display:grid}.group-schedule-page .group-schedule-title-block,.group-schedule-page .group-schedule-head-actions{gap:0}.group-schedule-page .group-schedule-refresh{min-width:36px;padding:4px 8px;font-size:1.05rem;line-height:1}.group-schedule-page .group-schedule-controls{gap:4px}.group-schedule-page .group-schedule-nav.week-nav{min-height:34px;padding:2px 4px}.group-schedule-page .group-schedule-nav .range{font-size:.82rem}.schedule-filters-disclosure>.schedule-filters-summary{padding:6px 10px;font-size:.8rem}.group-schedule-page .group-schedule-filters{gap:4px;padding:6px 8px}.group-schedule-page .group-schedule-filters .filter-row{flex-direction:row;align-items:center;gap:6px}.group-schedule-page .group-schedule-filters .filter-row-label{flex:0 0 42px;font-size:9px}.group-schedule-page .group-schedule-filters .filter-chips{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:2px;overflow:auto hidden}.mobile-day-tabs{margin-bottom:6px;padding-bottom:4px}.mobile-day-tab{min-width:44px;padding:5px}.mobile-day-tab .today-badge,.schedule-v2-kicker,.schedule-v2-sub,.schedule-v2-page>.schedule-v2-notice:not(.schedule-v2-notice--warn),.schedule-v2-sync-meta-wrap{display:none}.schedule-v2-head{gap:.4rem}.schedule-v2-head h1{margin:0;font-size:1.05rem}.schedule-v2-toolbar{gap:6px}.schedule-v2-meta-row{gap:4px}.schedule-v2-stats{font-size:.78rem}}@media (width>=900px){.sidebar{height:100dvh;display:flex;position:sticky;top:0}.mobile-top,.mobile-nav,.mobile-more-backdrop{display:none}.main{padding:32px 36px 0}.spreadsheet-page.stack,.spreadsheet-page{gap:12px}.spreadsheet-page .page-header{gap:8px 12px;margin-bottom:0}.spreadsheet-page .page-header h1{font-size:1.25rem}.spreadsheet-page .page-header .muted{margin-top:2px;font-size:.82rem}.spreadsheet-page .excel-sheet,.spreadsheet-page .excel-sheet.table-wrap,.spreadsheet-page .table-wrap.excel-sheet,.payroll-scroll{max-height:calc(100dvh - 11.5rem)}.director-pay-tabs{gap:8px}.director-pay-tabs button{gap:1px;padding:8px 12px}.director-pay-tabs button .tab-kicker{font-size:.66rem}.main:has(.spreadsheet-page) .sticky-notes-rail{margin-top:12px;padding-top:10px;padding-bottom:12px}:is(.main:has(.spreadsheet-page) .sticky-note,.main:has(.spreadsheet-page) .sticky-note-add){width:120px;min-height:112px}}:focus{outline:none}:focus-visible,.btn:focus-visible,.nav-accordion-trigger:focus-visible,.mobile-nav a:focus-visible,.mobile-more-btn:focus-visible,.mobile-more-links a:focus-visible,.phase-step:focus-visible,.task-main input:focus-visible,.link-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.stack{flex-direction:column;gap:18px;display:flex}.stack-sm{flex-direction:column;gap:12px;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:4px;display:flex}.page-header h1{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:clamp(1.45rem,2vw,1.75rem);font-weight:800}.page-header .muted{margin:4px 0 0}.audit-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 20px;display:flex}.audit-hero-copy{min-width:min(100%,240px)}.audit-hero-title{flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin-top:6px;display:flex}.audit-hero-title h1{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:clamp(1.45rem,2vw,1.75rem);font-weight:800}.audit-retention{background:var(--teal-soft);color:var(--teal);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:3px 9px;font-size:.68rem;font-weight:800;display:inline-flex}.audit-hero .muted{margin:6px 0 0}.audit-hero-actions{flex-wrap:wrap;gap:8px;display:flex}.audit-filters{gap:0;display:grid}.audit-context{background:var(--teal-soft);color:var(--navy);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:12px;padding:10px 12px;font-size:.88rem;display:flex}.audit-filter-row{grid-template-columns:4.6rem minmax(0,1fr);align-items:start;gap:8px 16px;display:grid}.audit-filter-row+.audit-filter-row{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.audit-filter-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:7px;font-size:.68rem;font-weight:800}.audit-period{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.audit-period-dates{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.audit-period-dates:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #0d737729}.audit-period-dates input[type=date]{width:auto;color:var(--text);font:inherit;background:0 0;border:0;margin:0;padding:6px 4px;font-size:.92rem;font-weight:650}.audit-period-dates input[type=date]:focus{outline:none}.audit-period-sep{color:var(--muted);font-weight:600}.audit-chip-row{flex-wrap:wrap;gap:6px;display:flex}.audit-chip{border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;margin:0;padding:6px 11px;font-size:.82rem;font-weight:650;line-height:1.2;transition:background .12s,border-color .12s,color .12s}.audit-chip:hover{border-color:color-mix(in srgb, var(--teal) 42%, var(--line));background:var(--teal-soft)}.audit-chip.is-on{background:var(--teal);border-color:var(--teal);color:#fff}.audit-chip.is-on:hover{background:var(--teal-hover);border-color:var(--teal-hover)}@media (width<=700px){.audit-filter-row{grid-template-columns:1fr;gap:6px}.audit-filter-label{padding-top:0}}.audit-event{padding:12px 16px}.audit-event.is-warn{border-color:color-mix(in srgb, var(--warn) 45%, var(--line));background:var(--warn-soft)}.audit-event-toggle{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.audit-event-toggle:focus-visible{outline:2px solid var(--teal);outline-offset:4px}.audit-event-line{flex-wrap:wrap;align-items:baseline;gap:6px 0;line-height:1.4;display:flex}.audit-event-sep{color:var(--muted);margin:0 6px}.audit-event-head{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.audit-event-summary{margin:8px 0 0}.audit-event-detail{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin:10px 0 0;padding:10px 0 0;display:flex}.audit-event-detail>div{align-items:baseline;gap:12px;display:flex}.audit-event-detail dt{color:var(--muted);flex:0 0 88px;margin:0;font-size:.78rem;font-weight:650}.audit-event-detail dd{word-break:break-all;margin:0;font-size:.88rem}h1{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:800}h2{margin:0;font-size:1rem;font-weight:700}.muted{color:var(--muted);margin:0;font-size:.92rem}.small{font-size:.82rem}.center{text-align:center;padding:24px}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.empty-state{text-align:center;padding:36px 20px}.empty-state h2{margin-bottom:6px}.shift-empty{text-align:left;max-width:520px}.shift-empty .empty-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--teal);margin:0 0 6px;font-size:.78rem;font-weight:700}.shift-empty h2{font-family:var(--font-brand);margin:0 0 8px;font-size:1.35rem;line-height:1.25}.shift-empty .empty-lead{margin:0 0 16px}.shift-empty.readonly{border-left:3px solid var(--warn)}.shift-empty.closed-hint{border-left:3px solid var(--teal)}.shift-loading{max-width:520px;color:var(--muted);padding:28px 18px}label{color:var(--navy-soft);font-size:.86rem;font-weight:600;display:block}label input,label select{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);margin-top:6px;padding:11px 12px;transition:border-color .15s,box-shadow .15s}label input:focus,label select:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #0d737729}.form-grid{gap:12px;display:grid}@media (width>=700px){.form-grid.cols-2{grid-template-columns:1fr 1fr}.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.form-grid.cols-4 .form-actions{grid-column:span 1}}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) ease;border:none;justify-content:center;align-items:center;padding:11px 14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px) scale(var(--motion-press))}.btn.primary{background:var(--teal);color:#fff}.btn.primary:hover:not(:disabled){background:var(--teal-hover)}.btn.ghost{background:var(--surface-2);color:var(--teal);border:1px solid var(--line)}.btn.ghost:hover:not(:disabled){background:var(--teal-soft)}.btn.danger{background:var(--err-soft);color:var(--err)}.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.link-btn{color:var(--teal);cursor:pointer;transition:opacity var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);background:0 0;border:none;padding:0;font-weight:600}.link-btn:hover{text-decoration:underline}.link-btn:active{transform:scale(var(--motion-press))}@media (prefers-reduced-motion:reduce){:root{--motion-fast:1ms;--motion-mid:1ms;--motion-press:1}.btn:active:not(:disabled),.link-btn:active{transform:none}}.error{color:var(--err);background:var(--err-soft);border-radius:var(--radius-sm);border:1px solid #b423182e;margin:0;padding:10px 12px;font-size:.9rem;font-weight:600}.warn{color:var(--warn);background:var(--warn-soft);border-radius:var(--radius-sm);border:1px solid #9a4b122e;margin:0;padding:10px 12px;font-size:.9rem;font-weight:600}.ok{color:var(--teal);border-radius:var(--radius-sm);background:#0d73771a;border:1px solid #0d737738;margin:0;padding:10px 12px;font-size:.9rem;font-weight:600}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.handoff-banner{background:#0d73770f;border-color:#0d737759}.handoff-reels-block{background:#fff;border:1px solid #0d737733;border-radius:12px;padding:12px}.handoff-reels-label{margin:0 0 4px;font-size:.95rem;font-weight:800}.handoff-reels-toggle .btn.ghost.on{background:color-mix(in srgb, var(--teal,#0d7377) 16%, white);border-color:var(--teal,#0d7377);color:var(--teal,#0d7377);font-weight:800}.pill{background:var(--teal-soft);color:var(--teal);letter-spacing:.01em;border-radius:999px;align-items:center;padding:4px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.pill.muted{background:var(--bg-accent);color:var(--muted)}.pill.warn{background:var(--warn-soft);color:var(--warn);border:none;padding:4px 9px}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.ok.just-paid{animation:paid-pill-in var(--motion-mid) var(--motion-ease)}@keyframes paid-pill-in{0%{transform:scale(.96)}to{transform:none}}@keyframes cell-saved-flash{0%{background-color:#dbe9e1}to{background-color:#0000}}.cell-input.just-saved{animation:cell-saved-flash var(--motion-mid) var(--motion-ease)}.login-page{place-items:center;min-height:100dvh;padding:20px;display:grid}.login-layout{background:var(--surface);border:1px solid var(--line);width:min(920px,100%);box-shadow:var(--shadow);border-radius:18px;gap:0;display:grid;overflow:hidden}.login-brand{background:radial-gradient(500px 280px at 20% 20%, #7fd4d747, transparent 60%), linear-gradient(160deg, var(--navy) 0%, #0c1f36 100%);color:#e8eef4;flex-direction:column;justify-content:flex-end;min-height:280px;padding:40px 36px;display:none}.login-brand .brand{font-family:var(--font-brand);letter-spacing:.08em;color:#7fd4d7;font-size:1.6rem;font-weight:800}.login-brand p{color:#e8eef4bf;max-width:28ch;margin:12px 0 0;line-height:1.5}.login-card{box-shadow:none;border:none;border-radius:0;flex-direction:column;gap:14px;padding:32px 28px;display:flex}.login-page .btn:active:not(:disabled){transform:scale(var(--motion-press))}.login-card h1{font-size:1.55rem}.login-qr-hint{border:1px dashed var(--line);background:var(--surface-2,color-mix(in srgb, var(--surface) 92%, var(--navy) 8%));border-radius:12px;gap:6px;margin-top:4px;padding:12px 14px;display:grid}.login-qr-hint p{margin:0;line-height:1.45}.login-qr-panel .login-qr-code-wrap{justify-content:center;padding:8px 0;display:flex}.login-qr-phone-note{text-align:center;margin:0}@media (width>=800px){.login-layout{grid-template-columns:1.05fr 1fr}.login-brand{display:flex}.login-card{padding:44px 40px}}.stat-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=700px){.stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-card{padding:16px 18px}.stat-card .label{color:var(--muted);font-size:.8rem;font-weight:600}.stat-card .value{font-family:var(--font-brand);letter-spacing:-.03em;margin-top:6px;font-size:1.7rem;font-weight:800}.dash-grid{gap:14px;display:grid}@media (width>=700px){.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.dash-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.shift-card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.progress-bar{background:var(--bg-accent);border-radius:999px;flex:1;height:8px;overflow:hidden}.progress-bar>div,.progress-bar .progress-fill{background:linear-gradient(90deg, var(--teal), #14a3a8);height:100%;transition:width .45s cubic-bezier(.22,1,.36,1)}.progress-row{align-items:center;gap:10px;display:flex}.week-nav{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.week-nav .range{text-align:center;flex:1;font-weight:700}.week-nav-end{align-items:center;gap:8px;display:flex}.week-nav-today{white-space:nowrap;font-size:.82rem}.plan-toolbar{gap:14px;display:grid}@media (width>=900px){.plan-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.plan-day{min-height:160px;padding:12px}}.plan-grid,.plan-week{flex-direction:column;gap:10px;display:flex}.plan-day-title{margin-bottom:10px;font-size:.9rem;font-weight:700}.plan-entry{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;padding:8px;display:flex}.plan-entry:last-child{margin-bottom:0}.split-layout{gap:16px;display:grid}@media (width>=900px){.split-layout{grid-template-columns:minmax(280px,360px) 1fr;align-items:start}}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);scrollbar-gutter:auto;overflow:auto}.soft-scroll,.app-body,.table-wrap,.notif-feed,.notif-settings,.mobile-more-sheet,.sidebar-nav,.checklist-rail,.checklist-stage{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.soft-scroll::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.app-body::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.table-wrap::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.notif-feed::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.notif-settings::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.mobile-more-sheet::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.sidebar-nav::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.checklist-rail::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.checklist-stage::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}.soft-scroll::-webkit-scrollbar-button{width:0;height:0;display:none}.app-body::-webkit-scrollbar-button{width:0;height:0;display:none}.table-wrap::-webkit-scrollbar-button{width:0;height:0;display:none}.notif-feed::-webkit-scrollbar-button{width:0;height:0;display:none}.notif-settings::-webkit-scrollbar-button{width:0;height:0;display:none}.mobile-more-sheet::-webkit-scrollbar-button{width:0;height:0;display:none}.sidebar-nav::-webkit-scrollbar-button{width:0;height:0;display:none}.checklist-rail::-webkit-scrollbar-button{width:0;height:0;display:none}.checklist-stage::-webkit-scrollbar-button{width:0;height:0;display:none}.soft-scroll::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.app-body::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.table-wrap::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.notif-feed::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.notif-settings::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.mobile-more-sheet::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.sidebar-nav::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.checklist-rail::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.checklist-stage::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}.soft-scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.app-body::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.table-wrap::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.notif-feed::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.notif-settings::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.mobile-more-sheet::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.checklist-rail::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.checklist-stage::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px;transition:background .2s}.soft-scroll::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.app-body::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.table-wrap::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.notif-feed::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.notif-settings::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.mobile-more-sheet::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.checklist-rail::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.checklist-stage::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.soft-scroll::-webkit-scrollbar-corner{background:0 0}.app-body::-webkit-scrollbar-corner{background:0 0}.table-wrap::-webkit-scrollbar-corner{background:0 0}.notif-feed::-webkit-scrollbar-corner{background:0 0}.notif-settings::-webkit-scrollbar-corner{background:0 0}.mobile-more-sheet::-webkit-scrollbar-corner{background:0 0}.sidebar-nav::-webkit-scrollbar-corner{background:0 0}.checklist-rail::-webkit-scrollbar-corner{background:0 0}.checklist-stage::-webkit-scrollbar-corner{background:0 0}@media (hover:hover) and (pointer:fine){.soft-scroll:not(:hover)::-webkit-scrollbar-thumb{background:#0f274414}.app-body:not(:hover)::-webkit-scrollbar-thumb{background:#0f274414}.table-wrap:not(:hover)::-webkit-scrollbar-thumb{background:#0f274414}.sidebar-nav:not(:hover)::-webkit-scrollbar-thumb{background:#e8eef41f}}.spreadsheet-page .excel-sheet.table-wrap{--scrollbar-thumb:#0f27441f;--scrollbar-thumb-hover:#0d737742}.data-table{border-collapse:collapse;width:100%;min-width:520px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 14px}.data-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-2);font-size:.78rem;font-weight:700}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:var(--surface-2)}.admin-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.admin-row{justify-content:space-between;align-items:center;gap:8px;display:flex}@media (width>=900px){.admin-list-mobile{display:none}}.main:has(.checklist-workspace){width:min(1280px,100%)}.checklist-workspace{align-items:start;gap:16px;min-height:0;display:grid}.checklist-stage{z-index:1;gap:12px;min-width:0;display:grid;position:relative}.checklist-workspace .phase-strip{z-index:auto;position:static;top:auto}.checklist-stage-head{justify-content:space-between;align-items:baseline;gap:12px;padding:0 2px;display:flex}.checklist-stage-head h2{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:1.1rem}.checklist-stage-count{white-space:nowrap;font-weight:700}.checklist-page.has-sticky-cta{padding-bottom:88px}.phase-strip{z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#ffffffeb;gap:12px;display:grid;position:sticky;top:0}.phase-strip--opening{background:linear-gradient(135deg, #fff6ea 0%, #fff 52%, var(--teal-soft) 100%);border-color:#f0a35e47}.phase-strip--mid{background:linear-gradient(180deg, #fff 0%, var(--surface-2) 100%);border-color:#0d737729}.phase-strip--closing{background:linear-gradient(135deg,#e9f1f5 0%,#fff 48%,#0f274412 100%);border-color:#0f274424}.phase-editorial{color:var(--muted);margin:4px 0 0;font-size:.9rem;font-weight:550;line-height:1.35}.phase-remaining{color:var(--warn);margin:6px 0 0;font-size:.84rem;font-weight:700}.phase-remaining.is-clear{color:var(--teal)}.phase-journey{gap:14px;display:grid}.phase-journey-main{border-radius:var(--radius-sm);background:#ffffffb8;border:1px solid #0f274414;align-items:center;gap:14px;padding:10px 12px;display:flex}.phase-journey.is-complete .phase-journey-ring .progress-ring-fill{stroke:#0a5f62;filter:drop-shadow(0 0 4px #0d737759)}.phase-journey.is-complete .progress-ring-text{color:var(--teal)}.phase-journey-caption{gap:2px;font-size:.92rem;display:grid}.phase-journey-caption strong{font-family:var(--font-brand);letter-spacing:-.02em;font-size:1.02rem}.progress-ring{width:var(--ring-size,52px);height:var(--ring-size,52px);flex-shrink:0;position:relative}.progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.progress-ring-track{fill:none;stroke:#0f27441a;stroke-width:3.2px}.progress-ring-fill{fill:none;stroke:var(--teal);stroke-width:3.2px;stroke-linecap:round;transition:stroke-dasharray .35s}.phase-step.current .progress-ring-fill,.phase-journey-ring .progress-ring-fill{stroke:var(--teal)}.phase-step.done-phase .progress-ring-fill{stroke:#0d73778c}.progress-ring-text{letter-spacing:-.02em;color:var(--navy);place-items:center;font-size:.62rem;font-weight:800;display:grid;position:absolute;inset:0}.phase-stepper{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:0;display:grid}.phase-stepper-item{display:contents}.phase-step-connector{background:var(--line);border-radius:999px;height:2px;margin:0 -2px 28px;transition:background .2s}.phase-step-connector.is-filled{background:#0d737773}.phase-stepper .phase-step{flex-direction:column;align-items:center;gap:6px;min-width:0;padding:8px 4px 10px;display:flex}.phase-stepper .phase-step-label{text-align:center;font-size:.78rem}.phase-stepper .phase-step.done-phase:not(.current) .phase-step-label:after{content:none}.phase-stepper .phase-step.done-phase:not(.current) .phase-step-label:before{content:"✓ ";color:var(--teal);font-weight:800}.phase-strip-top{align-items:flex-start;gap:14px;display:flex}.phase-strip-copy{flex:1;min-width:0}.phase-illustration{width:56px;height:56px;color:var(--teal);flex-shrink:0}.phase-strip--opening .phase-illustration{color:#c07a12}.phase-strip--closing .phase-illustration{color:var(--navy)}.phase-strip.is-phase-complete{animation:.85s phase-complete-glow}@keyframes phase-complete-glow{0%{box-shadow:0 0 #0d737700}40%{box-shadow:0 0 0 4px #0d73772e,0 12px 28px #0d73771f}to{box-shadow:none}}.shift-confetti-canvas{pointer-events:none;z-index:9999;width:100%;height:100%;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.phase-strip.is-phase-complete,.close-ritual{animation:none}}.phase-now{letter-spacing:-.02em;font-family:Manrope,sans-serif;font-size:1.05rem}.phase-steps{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.phase-step{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--muted);cursor:pointer;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .18s;display:flex}.phase-step.on{color:var(--text);border-color:var(--teal);background:var(--surface);box-shadow:0 0 0 2px #0d737724}.phase-step.current:not(.on){color:var(--teal);background:#0d73770f;border-color:#0d737747;transform:none}.phase-step.on.current{color:var(--text);border-color:var(--teal);background:var(--teal-soft);transform:none;box-shadow:0 0 0 2px #0d73772e}.phase-step.done-phase:not(.current){color:var(--teal);border-color:#0d737747}.phase-step.done-phase:not(.current) .phase-step-label:after{content:" ✓";font-weight:800}.phase-next{color:var(--teal);margin:6px 0 0;font-size:.88rem;font-weight:650}.phase-preview-banner{border-radius:var(--radius-sm);color:var(--muted);background:#0f27440a;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;font-size:.85rem;font-weight:600;display:flex}.phase-step-label{font-size:.82rem}.phase-step-count{opacity:.75;font-size:.72rem;font-weight:600}.block-tabs{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.block-tabs button{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:flex}.block-tabs button.on{color:var(--teal);border-color:var(--teal);background:var(--teal-soft)}.task-list{gap:8px}@media (width>=900px){.checklist-workspace{grid-template-columns:minmax(272px,320px) minmax(0,1fr);align-items:stretch;gap:20px;min-height:calc(100dvh - 11rem)}.checklist-rail{scrollbar-gutter:auto;z-index:0;align-self:start;min-width:0;max-height:none;position:sticky;top:12px;overflow:visible}.checklist-stage{scrollbar-gutter:auto;max-height:calc(100dvh - 5.5rem);padding-right:4px;overflow:auto}.checklist-page.has-sticky-cta .checklist-stage{padding-bottom:88px}.checklist-rail .phase-stepper{grid-template-columns:1fr;gap:8px}.checklist-rail .phase-stepper-item{display:block}.checklist-rail .phase-step-connector{display:none}.checklist-rail .phase-stepper .phase-step{flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:10px 12px}.checklist-rail .phase-stepper .phase-step-label{text-align:left;flex:1}.checklist-rail .phase-journey-main{text-align:center;flex-direction:column;align-items:center}.checklist-rail .phase-journey-caption{text-align:center}}.mid-time-chip{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--teal-soft), #fff);color:var(--navy);letter-spacing:-.01em;border:1px solid #0d737747;padding:10px 12px;font-size:.88rem;font-weight:700}.mid-group{border-radius:var(--radius);background:#ffffffb8;border:1px solid #0f274414;gap:8px;padding:12px;transition:border-color .2s,background .2s,box-shadow .2s;display:grid}.mid-group.focus{background:#0d73770d;border-color:#0d737747;box-shadow:0 6px 20px #0d737714}.mid-group-head{justify-content:space-between;align-items:flex-start;gap:10px;padding:0 2px 4px;display:flex}.mid-group-title{align-items:flex-start;gap:10px;min-width:0;display:flex}.mid-group-icon{background:var(--teal-soft);width:2rem;height:2rem;color:var(--teal);border-radius:10px;flex-shrink:0;place-items:center;font-size:1rem;font-weight:800;display:grid}.mid-group-head h3{font-family:var(--font-brand);letter-spacing:-.01em;text-transform:none;color:var(--text);margin:0;font-size:.95rem;font-weight:800}.mid-group-sub{color:var(--muted);margin:2px 0 0;font-size:.8rem;font-weight:500;line-height:1.35}.mid-group.focus .mid-group-head h3{color:var(--teal)}.mid-group.focus .mid-group-icon{background:var(--teal);color:#fff}.mid-group-now{letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--teal);border-radius:999px;padding:3px 7px;font-size:.68rem;font-weight:800}.task-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:none;transition:border-color var(--motion-fast) var(--motion-ease), background var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);cursor:pointer;padding:11px 12px 11px 14px;position:relative}.task-row:active:not(.is-disabled){transform:scale(var(--motion-press))}.task-row:before{content:"";background:var(--line-strong);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.task-row--journal:before{background:#3b82c4}.task-row--sales:before{background:#c07a12}.task-row--payroll:before{background:#6b5bb8}.task-row--rates:before{background:#0d7377}.task-row--photo:before{background:#d4578a}.task-row.is-disabled{cursor:default}.task-row:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.task-row.open{box-shadow:var(--shadow);border-color:#0d737738}.task-row.habit:not(.done){box-shadow:none;background:0 0;border-style:dashed;border-color:#0f274424}.task-row.habit .task-label{font-size:.92rem;font-weight:500}.task-row.time-focus:not(.done){background:#ffffffe6;border-style:solid;border-color:#0d737759}.task-habit-tag{background:var(--line-strong);border-radius:50%;width:6px;height:6px}.task-row.done{background:#0d73770f;border-color:#0d737738}.task-row.done:before{background:var(--teal);opacity:.55}.task-row.just-done{animation:task-settle .38s var(--motion-ease)}@keyframes task-settle{0%{background:var(--surface);transform:scale(1)}35%{background:var(--teal-soft);border-color:var(--teal);transform:scale(1.015)}to{background:#0d73770d;border-color:#0d73772e;transform:scale(1)}}.task-row.done .task-label{color:var(--text);opacity:.78;text-decoration:none}.task-list.is-preview{opacity:.72}.task-thumb-btn{cursor:zoom-in;border-radius:var(--radius-sm);background:0 0;border:none;padding:0;line-height:0;display:block}.task-thumb{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);width:72px;height:72px}.phase-preview-banner--stage{color:var(--text);background:#fff6eaeb;border:1px solid #f0a35e59}.task-compact{justify-content:space-between;align-items:center;gap:8px;display:flex}.task-main{cursor:pointer;flex:1;align-items:flex-start;gap:12px;min-width:0;font-weight:600;display:flex}.task-main input{width:26px;height:26px;accent-color:var(--teal);cursor:pointer;flex-shrink:0;margin-top:1px}.task-copy{gap:4px;min-width:0;display:grid}.task-label{font-size:.98rem;line-height:1.35}.task-hint-inline{color:var(--muted);font-size:.82rem;font-weight:500;line-height:1.35;display:block}.task-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.task-dot{background:var(--teal);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #0d737724}.task-kind-badge{letter-spacing:.04em;text-transform:uppercase;background:var(--surface-2);color:var(--muted);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:3px 6px;font-size:.62rem;font-weight:800}.task-row--journal .task-kind-badge{color:#2563a8;background:#3b82c414;border-color:#3b82c447}.task-row--sales .task-kind-badge{color:#9a4b12;background:#c07a121a;border-color:#c07a1247}.task-row--payroll .task-kind-badge{color:#5b4aa8;background:#6b5bb817;border-color:#6b5bb847}.task-row--photo .task-kind-badge{color:#b83d72;background:#d4578a17;border-color:#d4578a47}.task-row--rates .task-kind-badge{color:var(--teal);background:var(--teal-soft);border-color:#0d737747}.task-required-badge{background:var(--warn-soft);width:18px;height:18px;color:var(--warn);border:1px solid #9a4b1238;border-radius:50%;place-items:center;font-size:.72rem;font-weight:900;line-height:1;display:grid}.task-ico{color:var(--muted);font-size:.85rem;line-height:1}.task-ico.on{color:var(--teal)}.task-expand{color:var(--muted);cursor:pointer;width:28px;height:28px;transition:background var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);background:0 0;border:none;border-radius:8px;font-size:.85rem}.task-expand:active{transform:scale(var(--motion-press))}.task-expand:hover{background:var(--bg-accent);color:var(--text)}.task-details{border-top:1px solid var(--line);margin-top:10px;padding-top:10px;animation:.18s task-open}@keyframes task-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.task-hint{margin:0 0 8px}.task-extra{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;display:flex}.file-btn{position:relative;overflow:hidden}.note-input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;margin:0;padding:9px 11px;font-size:.9rem}.note-input:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #0d737729}.shift-sticky-cta{z-index:35;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(180deg, transparent, #f7f9fbeb 28%, var(--bg));border-top:1px solid #0f274414;position:fixed;bottom:0;left:0;right:0}.checklist-stage-cta{padding:8px 2px 4px}.checklist-stage-cta .btn{width:100%}.app-shell .shift-sticky-cta{left:var(--sidebar-w,0)}@media (width<=899px){.app-shell .shift-sticky-cta{left:0;bottom:var(--mobile-nav-clearance)}.checklist-page.has-sticky-cta{padding-bottom:80px}}@media (width>=900px){.shift-sticky-cta{padding-left:28px;padding-right:28px;left:260px}.shift-sticky-cta .btn{max-width:520px}}.btn.cta-pulse{animation:1.1s cta-pulse}.shift-tool-sheet{max-height:min(88vh,820px);overflow:auto}.sheet-form{gap:8px;display:grid}.sheet-form.cols .sheet-form-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sheet-form input,.payroll-quick select{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;font:inherit;padding:10px 12px}.sheet-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.sheet-list li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.sheet-section{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:8px 0 0;font-size:.8rem;font-weight:800}.payroll-quick select{max-width:110px}.closing-photo-strip{gap:12px;display:grid}.closing-photo-chapter{background:linear-gradient(135deg, #d4578a0f, var(--surface) 55%);border-color:#d4578a38}.closing-photo-title{align-items:flex-start;gap:10px;min-width:0;display:flex}.closing-photo-icon{color:#b83d72;background:#d4578a1f;border-radius:10px;flex-shrink:0;place-items:center;width:2rem;height:2rem;font-size:1rem;display:grid}.closing-photo-sub{margin:2px 0 0;line-height:1.35}.closing-photo-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.closing-photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.closing-photo-card{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);overflow:hidden}.closing-photo-card.has{border-style:solid;border-color:#0d737759}.closing-photo-card img,.closing-photo-empty{aspect-ratio:1;object-fit:cover;width:100%;display:block}.closing-photo-open{cursor:zoom-in;background:0 0;border:none;width:100%;padding:0;display:block}.photo-lightbox{z-index:160;background:#0f2744d1;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 16px 24px;display:flex;position:fixed;inset:0}.photo-lightbox img{object-fit:contain;background:#000;border-radius:12px;width:auto;max-width:min(100%,920px);height:auto;max-height:min(82dvh,900px);box-shadow:0 16px 48px #00000059}.photo-lightbox-close{position:absolute;top:12px;right:12px}.photo-lightbox-caption{color:#fff;text-align:center;max-width:40rem;margin:0;font-weight:650}.closing-photo-empty{color:var(--muted);background:repeating-linear-gradient(-45deg, var(--surface-2), var(--surface-2) 8px, var(--bg-accent) 8px, var(--bg-accent) 16px);place-items:center;font-size:.8rem;font-weight:600;display:grid}.closing-photo-meta{gap:6px;padding:8px;display:grid}.closing-photo-label{color:var(--text);font-size:.78rem;font-weight:650;line-height:1.25}.small-btn{padding:6px 10px!important;font-size:.8rem!important}.close-ritual{background:linear-gradient(165deg,#e7f4f4 0%,#fff 38%,#0f27440a 100%);border-color:#0d737747;gap:18px;animation:.55s cubic-bezier(.22,1,.36,1) close-ritual-enter;overflow:hidden}@keyframes close-ritual-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.close-ritual-hero{padding:4px 0 8px;position:relative}.close-ritual-hero h2{font-family:var(--font-brand);letter-spacing:-.04em;color:var(--navy);margin:6px 0 4px;font-size:clamp(1.75rem,5vw,2.15rem);line-height:1.05}.close-ritual-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin:0;font-size:.72rem;font-weight:800}.close-ritual-date{font-family:var(--font-brand);color:var(--text);text-transform:capitalize;margin:0;font-size:1rem;font-weight:700}.close-ritual-lead{max-width:36rem;margin:8px 0 0;line-height:1.45}.close-ritual-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.close-stat{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);text-align:left;box-shadow:var(--shadow);gap:4px;padding:14px 12px;display:grid}.close-stat--checklist{background:linear-gradient(180deg, var(--teal-soft), var(--surface) 70%);border-color:#0d737738}.close-stat--photos{background:linear-gradient(180deg, #d4578a1a, var(--surface) 70%);border-color:#d4578a38}.close-stat--handoff{background:linear-gradient(180deg, #f0a35e1f, var(--surface) 70%);border-color:#f0a35e47}.close-stat-value{font-family:var(--font-brand);color:var(--navy);letter-spacing:-.03em;font-size:1.45rem;font-weight:800}.close-stat-label{color:var(--text);gap:2px;font-size:.78rem;font-weight:700;display:grid}.close-stat-sub{color:var(--muted);font-size:.72rem;font-weight:500}.close-ritual-exports{border-radius:var(--radius);border:1px solid var(--line);background:#ffffffb8;gap:10px;padding:14px;display:grid}.close-ritual-exports-head h3{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:1rem}.close-export-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.close-export-tile{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;gap:2px;padding:12px;transition:border-color .15s,background .15s,transform .15s;display:grid}.close-export-tile:hover:not(:disabled){background:var(--surface-2);border-color:#0d737747;transform:translateY(-1px)}.close-export-tile:disabled{opacity:.65;cursor:not-allowed}.close-export-title{color:var(--text);font-size:.92rem;font-weight:750}.close-export-hint{color:var(--muted);font-size:.72rem;font-weight:500}.close-export-tile--all{text-align:center;border:none;grid-column:1/-1}.close-export-tile--all .close-export-hint{opacity:.88}.task-strip-ref{letter-spacing:.02em;white-space:nowrap;font-size:.68rem;font-weight:700}@media (width<=520px){.close-ritual-stats{grid-template-columns:1fr}}@keyframes cta-pulse{0%{transform:scale(1);box-shadow:0 0 #0d737700}40%{transform:scale(1.02);box-shadow:0 0 0 10px #0d737729}to{transform:scale(1);box-shadow:0 0 #0d737700}}@media (prefers-reduced-motion:reduce){.task-row.just-done,.btn.cta-pulse,.task-details,.pill.ok.just-paid,.cell-input.just-saved,.payroll-rub-popover{animation:none}.progress-bar>div,.progress-bar .progress-fill{transition:none}}.dash-card-link{color:inherit;text-decoration:none;transition:border-color .15s,transform .12s;display:block}.dash-card-link:hover{border-color:var(--teal);transform:translateY(-1px)}.drawer-backdrop{z-index:80;background:#0f274473;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.drawer-backdrop.confirm-modal-backdrop{z-index:140;animation:ui-backdrop-in var(--motion-mid) var(--motion-ease)}.drawer-panel.confirm-modal{animation:ui-sheet-in var(--motion-mid) var(--motion-ease)}@media (width>=800px){.drawer-backdrop{align-items:center;padding:24px}}.drawer-panel{background:var(--bg);width:min(960px,100%);max-height:min(92dvh,900px);box-shadow:var(--shadow);border-radius:16px 16px 0 0;padding:18px 16px 28px;overflow:auto}@media (width>=800px){.drawer-panel{border-radius:16px;padding:24px}}.drawer-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.drawer-head h1{font-size:1.25rem}.rates-block{min-width:0;max-width:100%}.rates-block h2{margin-bottom:10px}.rates-scroll{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;display:block;overflow-x:auto}.rates-table{min-width:100%}.rates-table.is-wide{min-width:40rem}.rates-table input{border:1px solid var(--line);width:100%;min-width:72px;font:inherit;border-radius:6px;padding:8px}.rates-table .sticky-col{background:var(--surface);z-index:1;position:sticky;left:0}.rates-table thead .sticky-col{z-index:2}.rates-notes{background:var(--teal-soft);border-radius:var(--radius);margin-top:14px;padding:14px 16px}.rates-notes h3{color:var(--teal);margin:0 0 8px;font-size:.9rem}.rates-notes ul{color:var(--navy-soft);margin:0;padding-left:1.1rem;font-size:.88rem}.rates-notes li+li{margin-top:4px}.director-pay-tabs{grid-template-columns:1fr 1fr;gap:10px;display:grid}.director-pay-tabs button{border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;font-weight:700;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.director-pay-tabs button .tab-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}.director-pay-tabs button.on{border-color:var(--teal);background:linear-gradient(180deg, var(--teal-soft) 0%, var(--surface) 100%);box-shadow:0 0 0 1px #0d737733}.director-pay-tabs button.on .tab-kicker{color:var(--teal)}.director-pay-tab-balance{font-variant-numeric:tabular-nums;color:var(--teal);letter-spacing:-.02em;margin-top:4px;font-size:.82rem;font-weight:800}.director-pay-tabs button:not(.on) .director-pay-tab-balance{color:var(--navy)}.director-pay-totals{flex-wrap:wrap;gap:8px;display:flex}.director-pay-total-pill{border:1px solid var(--line);background:var(--surface);min-width:140px;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.director-pay-total-pill .label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.director-pay-total-pill strong{font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);font-size:1.15rem;font-weight:800}.director-pay-total-pill.is-balance{border-color:color-mix(in srgb, var(--teal) 35%, var(--line));background:color-mix(in srgb, var(--teal-soft) 70%, #fff)}.director-pay-total-pill.is-balance strong{color:var(--teal)}.director-pay-table tfoot td{border-top:2px solid #bf9000;font-weight:700;background:#fff2cc!important}.director-pay-table .director-pay-sum-balance{color:var(--teal);background:color-mix(in srgb, var(--teal-soft) 55%, #fff2cc)!important}.director-pay-panel{padding:4px 0 8px}.director-pay-legend{color:#e8eef4;background:linear-gradient(135deg,#0f2744 0%,#1a3a5c 55%,#0d7377 160%);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;font-size:.9rem;display:flex}.director-pay-legend strong{margin-right:4px}.director-pay-legend code{color:#7fd4d7;background:#7fd4d733;border-radius:4px;padding:1px 6px;font-weight:700;display:inline-block}.director-pay-legend .muted{color:#e8eef4b8}.director-pay-legend .btn.ghost{color:#e8eef4;background:#ffffff14;border-color:#e8eef466}.admin-advances-backdrop{z-index:92}.admin-advances-modal{background:var(--surface);flex-direction:column;width:min(980px,100%);max-width:980px;max-height:min(92dvh,860px);padding:0;display:flex;position:relative;overflow:hidden}.admin-advances-accent{background:linear-gradient(90deg, var(--teal), #7fd4d7 45%, #7fd4d766);z-index:2;height:3px;position:absolute;top:0;left:0;right:0}.admin-advances-hero{background:radial-gradient(circle at 92% 8%, #7fd4d72e, transparent 42%), linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);color:#e8eef4;flex-shrink:0;padding:20px 22px 16px;position:relative}.admin-advances-hero-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-advances-kicker{letter-spacing:.1em;text-transform:uppercase;color:#7fd4d7;margin:0 0 4px;font-size:.68rem;font-weight:700}.admin-advances-hero h1{font-family:var(--font-brand);letter-spacing:-.03em;color:#fff;margin:0;font-size:1.65rem;font-weight:800}.admin-advances-subtitle{color:#f4f8fbb8;margin:6px 0 0;font-size:.88rem}.admin-advances-close{color:#e8eef4;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;padding:0;font-size:1.35rem;line-height:1;transition:background .15s,border-color .15s;display:grid}.admin-advances-close:hover:not(:disabled){background:#ffffff24;border-color:#ffffff47}.admin-advances-close:disabled{opacity:.5;cursor:wait}.admin-advances-hero-meta{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.admin-advances-pill{letter-spacing:.02em;border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.admin-advances-pill--period{color:#7fd4d7;background:#7fd4d724;border:1px solid #7fd4d747}.admin-advances-pill--muted{color:#f4f8fbb8;background:0 0;border:1px solid #ffffff1f}.admin-advances-pill--pay{color:#ffe8c2;background:#ffc45a24;border:1px solid #ffc45a47}.admin-advances-pill--ok{color:#b8f0d8;background:#34d39924;border:1px solid #34d39947}.admin-advances-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px 20px 8px;display:flex;overflow:auto}.admin-advances-toolbar{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.admin-advances-presets{flex-wrap:wrap;gap:6px;display:flex}.admin-advances-chip{border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;margin:0;padding:6px 12px;font-size:.8rem;font-weight:700;transition:background .15s,border-color .15s,color .15s}.admin-advances-chip:hover:not(:disabled){border-color:color-mix(in srgb, var(--teal) 40%, var(--line));color:var(--teal)}.admin-advances-chip.is-active{background:var(--teal);border-color:var(--teal);color:#fff}.admin-advances-chip:disabled{opacity:.55;cursor:wait}.admin-advances-dates{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-advances-field{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:8px;padding:4px 10px 4px 12px;display:flex}.admin-advances-field span{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.admin-advances-field input{color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:0;padding:6px 0}.admin-advances-field input:focus{outline:none}.admin-advances-field:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #0d737724}.admin-advances-dates-sep{color:var(--muted);font-weight:700}.admin-advances-show{padding:9px 16px}.admin-advances-alert{border-radius:var(--radius-sm);background:var(--err-soft);color:var(--err);border:1px solid #b423182e;margin:0;padding:10px 12px;font-size:.88rem;font-weight:600}.admin-advances-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}@media (width<=640px){.admin-advances-kpis{grid-template-columns:1fr}}.admin-advances-kpi{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.admin-advances-kpi--accent{background:linear-gradient(180deg, var(--teal-soft), var(--surface) 72%);border-color:#0d737738}.admin-advances-kpi-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.admin-advances-kpi-value{font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);font-size:1.2rem;font-weight:800}.admin-advances-kpi-hint{color:var(--muted);font-size:.75rem}.admin-advances-skeleton .admin-advances-kpis span,.admin-advances-skel-row{background:linear-gradient(90deg, var(--surface-2) 0%, color-mix(in srgb, var(--line) 40%, var(--surface-2)) 50%, var(--surface-2) 100%);background-size:200% 100%;border-radius:14px;animation:1.2s ease-in-out infinite sales-report-shimmer;display:block}.admin-advances-skeleton .admin-advances-kpis span{height:86px}.admin-advances-skel-row{height:64px;margin-top:8px}.admin-advances-empty{border:1px dashed var(--line);min-height:140px;color:var(--muted);border-radius:14px;place-items:center;padding:24px;font-weight:600;display:grid}.admin-advances-empty p{margin:0}.admin-advances-roster{flex-direction:column;gap:6px;display:flex}.admin-advances-row{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:minmax(160px,1.5fr) repeat(5,minmax(84px,1fr)) minmax(148px,auto);align-items:center;gap:8px;padding:10px 12px;display:grid}.admin-advances-row--head{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:0 0;border:0;padding:4px 12px 2px;font-size:.68rem;font-weight:700}.admin-advances-row--head span:not(:first-child){text-align:right}.admin-advances-row.is-payable{border-color:color-mix(in srgb, var(--teal) 28%, var(--line));box-shadow:0 1px #0d73770f}.admin-advances-row.is-paid{background:color-mix(in srgb, var(--ok-soft) 55%, var(--surface))}.admin-advances-row--foot{background:var(--surface-2);font-variant-numeric:tabular-nums;border-style:dashed;margin-top:4px}.admin-advances-person{align-items:center;gap:10px;min-width:0;display:flex}.admin-advances-person strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-advances-avatar{letter-spacing:.02em;color:#fff;background:var(--navy);border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:.72rem;font-weight:800;display:grid}.admin-advances-avatar.tone-0{background:#0d7377}.admin-advances-avatar.tone-1{background:#1a3a5c}.admin-advances-avatar.tone-2{background:#2d6a4f}.admin-advances-avatar.tone-3{background:#3d5a80}.admin-advances-avatar.tone-4{background:#0f2744}.admin-advances-money{font-variant-numeric:tabular-nums;text-align:right;color:var(--text);font-size:.88rem}.admin-advances-remain{font-weight:700}.admin-advances-remain.is-due{color:var(--teal)}.admin-advances-row-action{justify-content:flex-end;display:flex}.admin-advances-pay{white-space:nowrap}.admin-advances-status{justify-content:flex-end;align-items:center;gap:4px;font-size:.78rem;font-weight:700;display:inline-flex}.admin-advances-status--paid{color:var(--teal)}.admin-advances-status--empty{color:var(--muted);font-weight:600}.admin-advances-foot{border-top:1px solid var(--line);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:12px 20px 16px;display:flex}.admin-advances-foot p{min-width:180px;color:var(--muted);flex:1;margin:0;font-size:.78rem;line-height:1.4}@media (width<=899px){.admin-advances-row--head,.admin-advances-row--foot{display:none}.admin-advances-row{grid-template-columns:1fr 1fr;gap:8px 12px}.admin-advances-person,.admin-advances-row-action{grid-column:1/-1}.admin-advances-row-action{justify-content:stretch}.admin-advances-pay{width:100%}.admin-advances-status{justify-content:flex-start}.admin-advances-money{text-align:left;justify-content:space-between;gap:8px;display:flex}.admin-advances-money:before{content:attr(data-label);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}}.director-pay-scroll{border:1px solid var(--line);background:var(--surface);border-radius:14px;box-shadow:0 8px 24px #0f27440f}.spreadsheet-page{min-width:0;max-width:100%;overflow-x:clip}.spreadsheet-page .excel-sheet{background:#fff;border:1px solid #a6a6a6;border-radius:0;max-width:100%;max-height:78vh;overflow:auto;box-shadow:inset 0 0 0 1px #fff}.spreadsheet-page .excel-grid{--excel-h1:30px;--excel-h2:24px;--excel-day-w:36px;--excel-cell-h:28px;border-collapse:collapse;min-width:max-content;font-family:Segoe UI,Calibri,DM Sans,sans-serif;font-size:12px;line-height:1.3}.spreadsheet-page .excel-grid.admins-block{--excel-day-w:44px}.spreadsheet-page .excel-grid th,.spreadsheet-page .excel-grid td{vertical-align:middle;text-transform:none;letter-spacing:0;box-sizing:border-box;background:#fff;border:1px solid #c8c8c8;padding:4px 6px}.spreadsheet-page .excel-grid thead th{z-index:3;color:#1a1a1a;text-align:center;white-space:nowrap;padding:5px 4px;font-size:11px;font-weight:600;position:sticky;overflow:hidden;box-shadow:inset 0 -1px #a6a6a6}.spreadsheet-page .excel-grid.coaches-block thead th{background:#ededed}.spreadsheet-page .excel-grid.admins-block thead th{color:#fff;background:#548235;border-color:#3d6128}.spreadsheet-page .excel-grid thead tr:first-child th{min-height:var(--excel-h1);top:0}.spreadsheet-page .excel-grid thead tr:first-child th[rowspan="2"]{min-height:calc(var(--excel-h1) + var(--excel-h2))}.spreadsheet-page .excel-grid thead tr:nth-child(2) th{top:var(--excel-h1);z-index:2;min-height:var(--excel-h2);padding-top:4px;padding-bottom:4px;font-size:10px;font-weight:500}.spreadsheet-page .excel-grid.admins-block thead tr:nth-child(2) th{color:#f5f5f5;background:#6b9b47}.spreadsheet-page .excel-grid thead th.weekday{color:inherit;opacity:.85}.spreadsheet-page .excel-grid .sticky-col{z-index:4;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:#fff;min-width:140px;max-width:180px;padding-left:10px;padding-right:10px;position:sticky;left:0;overflow:hidden;box-shadow:2px 0 3px #00000014}.spreadsheet-page .excel-grid thead .sticky-col{z-index:6;text-align:left}.spreadsheet-page .excel-grid.coaches-block thead .sticky-col{background:#ededed}.spreadsheet-page .excel-grid.admins-block thead .sticky-col{color:#fff;background:#548235}.spreadsheet-page .excel-grid .payroll-day{min-width:var(--excel-day-w);max-width:var(--excel-day-w);width:var(--excel-day-w);text-align:center;padding:4px 2px!important}.spreadsheet-page .excel-grid th.weekend,.spreadsheet-page .excel-grid td.weekend{background:#fff9e6!important}.spreadsheet-page .excel-grid.admins-block th.weekend{color:#fff;opacity:.92;background:#6b9b47!important}.spreadsheet-page .excel-grid.admins-block td.weekend{color:#1a1a1a;background:#fff9e6!important}.spreadsheet-page .excel-grid .payroll-cell{min-height:var(--excel-cell-h);height:var(--excel-cell-h);color:inherit;white-space:nowrap;text-overflow:clip;box-sizing:border-box;border-radius:0;justify-content:center;align-items:center;width:100%;padding:0 1px;font-size:11px;font-weight:400;line-height:1.15;display:inline-flex;position:relative;overflow:hidden}.spreadsheet-page .excel-grid .payroll-cell:hover{outline-offset:-1px;background:#e8f2ff;outline:1px solid #217346}.spreadsheet-page .excel-grid .payroll-cell.vacation{color:inherit}.spreadsheet-page .excel-grid .payroll-cell.has-reel{padding-top:7px;position:relative}.spreadsheet-page .excel-grid .payroll-cell.is-manual{box-shadow:none;background:#faf4ed}.spreadsheet-page .excel-grid .payroll-cell.is-open{outline-offset:-2px;background:#e7f5ec;outline:2px solid #217346}.spreadsheet-page .excel-grid .payroll-rub-num{color:#1a4f8b;font-size:11px;font-weight:600}.spreadsheet-page .excel-grid .payroll-rub-cur{color:#7a93ad;font-size:8px;font-weight:500}.spreadsheet-page .excel-grid .payroll-rub.is-empty{color:#c5ccd4;font-size:10px}.spreadsheet-page .excel-grid .payroll-rub.is-vacation{font-size:9px}.spreadsheet-page .excel-grid .payroll-reel-dot{width:5px;height:5px;top:1px;left:50%;right:auto;transform:translate(-50%)}.spreadsheet-page .excel-grid select{width:100%;min-width:0;height:var(--excel-cell-h);background:#fff;border:2px solid #217346;border-radius:0;padding:0 2px;font-size:11px}.spreadsheet-page .excel-grid .money-col{text-align:right;font-variant-numeric:tabular-nums;color:#1a1a1a;min-width:64px;max-width:88px;font-weight:600;padding-right:6px!important}.spreadsheet-page .excel-grid .sign-col{text-align:center;min-width:48px;font-size:11px}.spreadsheet-page .excel-grid .money-input{text-align:right;width:100%;min-width:0;font:inherit;color:#1a1a1a;background:0 0;border:none;border-radius:0;padding:1px 4px;font-size:11px;font-weight:600}.spreadsheet-page .excel-grid .money-input:focus{outline-offset:-2px;background:#fff;outline:2px solid #217346}.spreadsheet-page .excel-grid .excel-sign{color:#888;min-height:var(--excel-cell-h);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;font-weight:600}.spreadsheet-page .excel-grid .excel-sign.paid{color:#217346;font-weight:700}.spreadsheet-page .excel-grid .pill.paid,.spreadsheet-page .excel-grid .sign-col .btn.ghost{color:#217346;min-height:var(--excel-cell-h);background:0 0;border:none;padding:0;font-size:11px;font-weight:700}.spreadsheet-page .excel-grid tr.cleaning-row td{border-top:2px solid #bf9000;background:#fff2cc!important}.spreadsheet-page .excel-grid tbody tr:hover td:not(.weekend){background:#f5f5f5}.spreadsheet-page .excel-grid tbody tr:hover td.weekend{background:#fff4d6!important}.spreadsheet-page .excel-grid tbody tr:hover td.sticky-col{background:#f5f5f5}.spreadsheet-page .excel-grid .link-btn{color:#0563c1;font-size:10px}.director-pay-table th.sticky-col,.director-pay-table td.sticky-col{background:var(--surface);z-index:2;min-width:140px;max-width:180px}.director-pay-table thead th{letter-spacing:.02em;background:#e8f3f3;font-size:.72rem}.director-pay-table thead th.weekday{color:var(--muted);font-weight:500}.director-pay-table tbody tr:nth-child(2n) td,.director-pay-table tbody tr:nth-child(2n) td.sticky-col{background:#f7fafb}.director-pay-table .money-col{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:72px}.director-pay-table .sign-col{text-align:center;min-width:64px}.director-pay-table .pay-mark{min-width:1.4em;color:var(--teal);justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:inline-flex}.director-pay-table .pay-mark:not(.has){color:#0000}.director-pay-table .pill.paid{background:var(--ok-soft);color:var(--ok);font-size:.75rem;font-weight:700}.director-pay-table tr.cleaning-row td{border-top:1px solid #f0d9b5;background:#fff8ef!important}.director-pay-table tfoot td{background:#eef6f6;font-size:.9rem}.director-pay-table .money-input{border:1px solid var(--line);text-align:right;width:5.5rem;font:inherit;border-radius:6px;padding:4px 6px;font-weight:700}.spreadsheet-page .data-table.excel-grid tbody tr:hover{background:0 0}.spreadsheet-page .excel-grid tr.payroll-staff-row td{background:#fff2cc!important}.spreadsheet-page .excel-grid tr.payroll-staff-row td.weekend{background:#ffe8b3!important}.spreadsheet-page .excel-grid tr.payroll-staff-row td.sticky-col{background:#fff2cc!important}.spreadsheet-page .excel-grid tr.payroll-staff-row:hover td:not(.weekend){background:#ffe8a3!important}.spreadsheet-page .excel-grid.sales-block thead th,.spreadsheet-page .excel-grid.sales-block thead .sticky-col{background:#ededed}.spreadsheet-page .excel-grid .col-date{white-space:nowrap;min-width:118px}.spreadsheet-page .excel-grid .col-text{min-width:120px;max-width:220px}.spreadsheet-page .excel-grid .col-note{min-width:140px;max-width:280px}.spreadsheet-page .excel-grid .col-action{text-align:center;width:36px;min-width:36px;padding-left:2px!important;padding-right:2px!important}.spreadsheet-page .excel-grid .cell-input{width:100%;min-width:0;font:inherit;color:#0563c1;background:0 0;border:none;border-radius:0;padding:1px 4px;font-size:11px}.spreadsheet-page .excel-grid .cell-input:focus{outline-offset:-2px;background:#fff;outline:2px solid #217346}.spreadsheet-page .excel-grid .cell-input.money{text-align:right;font-variant-numeric:tabular-nums;color:#1a1a1a;font-weight:600}.spreadsheet-page .excel-grid .cell-input[type=date]{color:#1a1a1a;font-weight:600}.spreadsheet-page .excel-grid tr.totals-row td{border-top:2px solid #bf9000;font-weight:700;background:#fff2cc!important}.spreadsheet-page .excel-grid tr.totals-row td.money-col{color:#1a1a1a}.spreadsheet-page .excel-grid tbody td{height:var(--excel-cell-h,28px);padding:2px 4px!important}.spreadsheet-page .excel-grid.sales-block tbody tr:hover td,.spreadsheet-page .excel-grid.sales-block tbody tr:hover td.sticky-col{background:#f5f5f5}.spreadsheet-page .excel-grid.sales-block tbody tr.day-break td{border-top:2px solid #6b4fa0}.spreadsheet-page .excel-grid.sales-block tbody tr.is-paid td,.spreadsheet-page .excel-grid.sales-block tbody tr.is-paid td.sticky-col,.spreadsheet-page .excel-grid.sales-block tbody tr.is-paid td.col-date{background:color-mix(in srgb, var(--ok-soft) 72%, #fff)}.spreadsheet-page .excel-grid.sales-block tbody tr.is-paid:hover td,.spreadsheet-page .excel-grid.sales-block tbody tr.is-paid:hover td.sticky-col,.spreadsheet-page .excel-grid.sales-block tbody tr.is-paid:hover td.col-date{background:color-mix(in srgb, var(--ok-soft) 88%, #e8f0f0)}.sales-till-page{gap:14px}.sales-till-hero{color:#f4f8fb;background:linear-gradient(135deg,#0f2744f5 0%,#163554 52%,#0d7377db 100%);border:1px solid #0f274414;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 22px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 12px 32px #0f27441f}.sales-till-hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 88% 18%,#7fd4d738,#0000 42%),radial-gradient(circle at 8% 100%,#ffffff0f,#0000 36%);position:absolute;inset:0}.sales-till-hero-text,.sales-till-hero-actions{z-index:1;position:relative}.sales-till-kicker{letter-spacing:.08em;text-transform:uppercase;color:#7fd4d7;margin:0 0 6px;font-size:.72rem;font-weight:700}.sales-till-hero h1{color:#fff;margin:0}.sales-till-hero .muted{color:#f4f8fbb8;margin:6px 0 0}.sales-till-hero-actions{flex-wrap:wrap;gap:8px;display:flex}.sales-till-hero .btn.ghost{color:#e8eef4;background:#ffffff14;border-color:#ffffff38}.sales-till-hero .btn.ghost:hover{background:#ffffff24}.sales-till-hero .btn.primary{box-shadow:none}.sales-till-board{grid-template-columns:1fr;gap:12px;display:grid}@media (width>=760px){.sales-till-board{grid-template-columns:minmax(220px,1.1fr) 1.6fr;align-items:stretch}}.sales-till-total{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:18px 20px}.sales-till-total .label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:700}.sales-till-total .value{font-family:var(--font-brand);letter-spacing:-.04em;color:var(--navy);margin-top:6px;font-size:clamp(1.7rem,3vw,2.15rem);font-weight:800}.sales-till-total .count{color:var(--teal);margin-top:4px;font-size:.88rem;font-weight:600}.sales-till-splits{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.sales-till-split{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;justify-content:center;gap:6px;padding:16px 14px;display:flex}.sales-till-split .label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:700}.sales-till-split .value{font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:800}.sales-till-period{flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:8px 2px 2px;display:flex}.sales-till-period label{color:var(--muted);flex-direction:column;gap:4px;font-size:.75rem;font-weight:600;display:flex}.sales-till-period input[type=date]{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--text);border-radius:10px;padding:4px 8px}.sales-till-period .btn{min-height:36px}.sales-till-period-note{margin:8px 0}.sales-till-journal{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:14px}.sales-till-journal>summary{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;padding:12px 16px;list-style:none;display:flex}.sales-till-journal[open]>summary{border-radius:14px 14px 0 0}.sales-till-journal>summary:hover{background:var(--surface-2)}.sales-till-journal>summary::-webkit-details-marker{content:"";display:none}.sales-till-journal>summary::marker{content:"";display:none}.sales-till-journal-title{color:var(--navy);align-items:center;gap:8px;font-weight:700;display:inline-flex}.sales-till-journal-title:before{content:"";border-right:2px solid var(--teal);border-bottom:2px solid var(--teal);width:.45em;height:.45em;transition:transform .15s;transform:rotate(-45deg)}.sales-till-journal[open] .sales-till-journal-title:before{margin-top:-2px;transform:rotate(45deg)}.sales-till-journal-body{border-top:1px solid var(--line);padding:4px 16px 16px}.sales-till-journal .sales-till-period{padding-top:12px}.sales-till-composer{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:16px 18px 14px}.sales-till-composer.is-accepted{border-color:#0d737747}.sales-till-composer-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.sales-till-composer-head h2{margin:0;font-size:1rem}.sales-till-accepted{color:var(--teal);font-size:.82rem;font-weight:700;animation:.25s sales-till-accepted-in}@keyframes sales-till-accepted-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.sales-till-composer-grid{align-items:end;gap:10px;display:grid}@media (width>=880px){.sales-till-composer-grid{grid-template-columns:minmax(140px,1.4fr) minmax(120px,1.1fr) auto 110px auto}}.sales-till-field input{min-height:44px;font-size:16px}.sales-till-amount input{font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700}.sales-till-pay{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;gap:6px;min-height:44px;margin-top:6px;padding:2px;display:flex}.sales-till-pay button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;padding:0 14px;font-weight:700}.sales-till-pay button.on{background:var(--navy);color:#fff}.sales-till-pay button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.sales-till-punch{min-height:44px;padding-inline:22px;font-weight:700}@media (width<=899px){.sales-till-punch{width:100%}.sales-till-composer-head .muted.small{display:none}.sales-till-page{gap:10px}.sales-till-journal>summary{gap:4px 10px;padding:10px 12px}.sales-till-journal-body{padding:2px 10px 10px}.sales-till-period{grid-template-columns:1fr 1fr auto;align-items:end;gap:6px 8px;padding-top:8px;display:grid}.sales-till-period label{min-width:0}.sales-till-period input[type=date]{width:100%;min-height:34px;padding:4px 6px;font-size:16px}.sales-till-period .btn{white-space:nowrap;min-height:34px;padding:4px 10px}.sales-till-period-note{display:none}.spreadsheet-page .excel-grid.sales-block .col-date{width:7.75rem;min-width:7.75rem;max-width:7.75rem}.spreadsheet-page .excel-grid.sales-block .sticky-col{min-width:108px;max-width:140px;left:7.75rem}}.sales-till-more{margin-top:10px}.sales-till-more summary{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;font-size:.82rem;font-weight:600}.sales-till-more-fields{gap:10px;margin-top:10px;display:grid}@media (width>=700px){.sales-till-more-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-till-note{grid-column:1/-1}}.sales-till-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.sales-till-section-head h2{margin:0;font-size:1rem}.sales-till-tickets-empty{margin:0;padding:16px 4px}.sales-till-empty{text-align:center;border:1px dashed var(--line-strong);background:var(--surface-2);border-radius:14px;padding:28px 18px}.sales-till-empty-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin:0 0 6px;font-size:.72rem;font-weight:700}.sales-till-empty h2{margin:0 0 6px;font-size:1.1rem}.sales-till-empty .muted{margin:0}.sales-till-tickets{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sales-till-ticket{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--teal);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:12px 14px;display:grid}.sales-till-ticket.is-fresh{animation:1.4s sales-till-fresh}@keyframes sales-till-fresh{0%{box-shadow:0 0 0 3px #0d73771f, var(--shadow);border-color:#0d737766}to{border-color:var(--line);box-shadow:var(--shadow)}}@media (prefers-reduced-motion:reduce){.sales-till-accepted,.sales-till-ticket.is-fresh,.sales-till-journal-title:before{transition:none;animation:none}}.sales-till-ticket-title{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.sales-till-ticket-product,.sales-till-ticket-title strong{color:var(--navy);font-size:1rem;font-weight:700}.sales-till-ticket .cell-input{width:100%;min-height:32px;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:8px;margin-top:0;padding:4px 6px;font-size:16px}.sales-till-ticket .cell-input:focus{border-color:var(--teal);background:var(--surface);outline:none;box-shadow:0 0 0 3px #0d737724}.sales-till-ticket-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:.9rem;display:flex}.sales-till-ticket-meta .cell-input{flex:1;width:auto;min-width:88px}.sales-till-ticket-pays{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.sales-till-ticket-pay{background:var(--surface-2);border:1px solid var(--line);letter-spacing:.03em;text-transform:uppercase;color:var(--muted);border-radius:999px;align-items:center;gap:6px;margin:0;padding:4px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.sales-till-ticket-pay.has{background:var(--teal-soft);color:var(--teal);border-color:#0d737738}.sales-till-ticket-pay .cell-input,.sales-till-ticket-pay .money{font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;width:72px;min-height:28px;color:var(--navy);margin-top:0;padding:2px 4px;font-weight:700}.sales-till-ticket-note{margin-top:6px}.sales-till-ticket-side{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.sales-till-ticket-total{font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);white-space:nowrap;font-size:1.15rem;font-weight:800}.analytics-page{gap:14px}.analytics-grid{grid-template-columns:1fr;gap:12px;display:grid}@media (width>=800px){.analytics-grid{grid-template-columns:1fr 1fr}}.analytics-block{background:var(--surface);border:1px solid var(--line);min-height:168px;box-shadow:var(--shadow);border-radius:16px;padding:18px 20px}.analytics-block-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin:0 0 6px;font-size:.72rem;font-weight:700}.analytics-block h2{margin:0 0 8px}.analytics-formula{margin-top:10px}.analytics-block.is-studio,.analytics-block.is-classes,.analytics-block.is-trainers,.analytics-block.is-admins{grid-column:1/-1}.analytics-insights{background:var(--teal-soft);border:1px solid #0d73772e;border-radius:16px;padding:16px 20px}.analytics-insights ul{flex-direction:column;gap:6px;margin:8px 0 0;padding:0 0 0 1.15em;display:flex}.analytics-insights li{color:var(--navy);font-weight:600;line-height:1.4}.analytics-kpis{grid-template-columns:1fr;gap:10px;margin:12px 0 16px;display:grid}@media (width>=640px){.analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}.analytics-kpi{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.analytics-kpi .label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.analytics-kpi .value{font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);font-size:1.35rem;font-weight:800}.analytics-delta{font-size:.78rem;font-weight:700}.analytics-delta.is-up{color:var(--teal)}.analytics-delta.is-down{color:var(--warn)}.analytics-delta.is-flat,.analytics-delta-vs{color:var(--muted);font-weight:600}.analytics-charts{grid-template-columns:1fr;gap:14px;display:grid}@media (width>=800px){.analytics-charts{grid-template-columns:1fr 1fr}}.analytics-chart-label{color:var(--navy-soft);margin:0 0 6px;font-size:.78rem;font-weight:700}.analytics-chart-empty{margin:0;padding:28px 8px}.analytics-spark{min-height:120px}.analytics-spark svg{width:100%;height:auto;display:block}.analytics-spark-tick{fill:var(--muted);font-size:9px}.analytics-spark-tip{color:var(--muted);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:.78rem;font-weight:600}.analytics-class-chart{margin:4px 0 14px}.analytics-class-cols{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=720px){.analytics-class-cols{grid-template-columns:1fr 1fr}}.analytics-rank{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.analytics-rank li{gap:4px;display:grid}.analytics-rank-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;display:flex}.analytics-rank-head strong{font-size:.92rem}.analytics-rank-bar{background:var(--teal);opacity:.75;border-radius:99px;height:4px}.analytics-totm{color:#f4f8fb;background:linear-gradient(135deg,#0f2744f5 0%,#0d7377d1 100%);border-radius:14px;margin:8px 0 16px;padding:16px 18px}.analytics-totm-kicker{letter-spacing:.08em;text-transform:uppercase;color:#7fd4d7;margin:0 0 4px;font-size:.72rem;font-weight:700}.analytics-totm-name{font-family:var(--font-brand);margin:0;font-size:1.35rem;font-weight:800}.analytics-totm-score{font-variant-numeric:tabular-nums;margin:4px 0 8px;font-size:1.05rem;font-weight:700}.analytics-totm .muted{color:#f4f8fbb8}.analytics-unmatched{background:var(--warn-soft);color:var(--warn);border-radius:10px;margin:0 0 12px;padding:10px 12px}.analytics-unmatched-mark{color:var(--warn);font-weight:700}.analytics-v2-page{gap:12px}.analytics-v2-tabs{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.analytics-v2-tab{border:1px solid var(--line);background:var(--surface);color:var(--muted);white-space:nowrap;cursor:pointer;transition:background var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:700}.analytics-v2-tab:hover:not(.on){background:var(--surface-2);color:var(--text)}.analytics-v2-tab:active{transform:scale(var(--motion-press))}.analytics-v2-tab.on{background:var(--teal-soft);color:var(--teal);border-color:#0d737759}.analytics-v2-hero{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=760px){.analytics-v2-hero{grid-template-columns:repeat(4,minmax(0,1fr))}}.analytics-v2-hero-item{box-shadow:var(--shadow);background:linear-gradient(155deg,#fffffff7 0%,#e7f4f4b8 100%);border:1px solid #0d73771f;border-radius:14px;padding:12px 14px}.analytics-v2-hero-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.analytics-v2-hero-value{font-family:var(--font-brand);letter-spacing:-.02em;margin:2px 0 0;font-size:1.3rem;font-weight:800}.analytics-v2-hero-delta{margin:2px 0 0;font-size:.78rem;font-weight:700}.analytics-v2-hero-delta.is-up{color:var(--teal)}.analytics-v2-hero-delta.is-down{color:var(--warn)}.analytics-v2-hero-delta.is-flat{color:var(--muted)}.analytics-v2-card{min-height:0}.analytics-v2-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.analytics-v2-card-action{padding-top:2px}.analytics-v2-insights{grid-template-columns:1fr;gap:8px;display:grid}.analytics-v2-insight-card{background:#0d73770d;border:1px solid #0d737729;border-radius:10px;padding:10px 12px}.analytics-v2-insight-card p{color:var(--navy);margin:0;font-weight:600}.analytics-v2-quality{gap:8px;display:grid}.analytics-v2-quality-item{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;padding:10px 12px}.analytics-v2-quality-item p{margin:0;font-weight:600}.analytics-v2-quality-item.is-warn{background:var(--warn-soft);border-color:#9a4b124d}.analytics-v2-quality-item.is-ok{background:var(--ok-soft);border-color:#0d73774d}.analytics-v2-links-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.table-edit-bar{align-items:center;gap:10px;margin-bottom:8px;display:flex}.spreadsheet-page .table-edit-bar .btn.ghost{border-radius:999px;padding-inline:14px}.spreadsheet-page .table-edit-bar .btn.primary{box-shadow:none;border-radius:999px;padding-inline:16px}.spreadsheet-page .cell-readonly{color:#1a1a1a;white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:11px;display:block;overflow:hidden}.spreadsheet-page .cell-readonly.money{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.spreadsheet-page .cell-readonly.muted-empty{color:#888}.spreadsheet-page .excel-sheet.is-readonly .payroll-cell{cursor:default;pointer-events:none}.spreadsheet-page .excel-sheet.is-readonly .payroll-cell:hover{background:0 0;outline:none}.group-schedule-page.spreadsheet-page{flex-direction:column;gap:8px;min-height:0;display:flex}.group-schedule-page .group-schedule-chrome{z-index:8;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-radius:12px;flex-direction:column;gap:6px;margin:0 0 2px;padding:8px 10px;display:flex;position:sticky;top:0;box-shadow:0 6px 20px #0f274412}.group-schedule-page .group-schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.group-schedule-page .group-schedule-title-block{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.group-schedule-page .group-schedule-title-block h1{letter-spacing:-.02em;margin:0;font-size:1.15rem;line-height:1.15}.group-schedule-page .gs-title-short{display:none}.group-schedule-page .group-schedule-head-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.group-schedule-page .group-schedule-head-actions .btn{padding:5px 10px;font-size:.82rem}.group-schedule-page .group-schedule-stats{flex-wrap:wrap;gap:4px;margin:0;display:flex}.group-schedule-page .group-schedule-stats .stat-pill{background:color-mix(in srgb, var(--surface-2,#f4f7fa) 80%, #fff);border:1px solid var(--line);box-shadow:none;border-radius:999px;align-items:baseline;gap:4px;padding:3px 8px;display:inline-flex}.group-schedule-page .group-schedule-stats .stat-value{font-family:var(--font-brand);color:var(--teal);font-size:.88rem;font-weight:700}.group-schedule-page .group-schedule-stats .stat-label{color:var(--muted);font-size:10px}.group-schedule-page .group-schedule-stats .muted-stat .stat-value{color:var(--navy);font-size:.85rem}.group-schedule-page .group-schedule-controls{grid-template-columns:minmax(180px,240px) minmax(0,1fr);align-items:stretch;gap:8px;display:grid}@media (width<=960px){.group-schedule-page .group-schedule-controls{grid-template-columns:1fr}}.group-schedule-page .group-schedule-nav.week-nav{box-shadow:none;border-radius:10px;gap:6px;min-height:0;margin:0;padding:4px 6px}.group-schedule-page .group-schedule-nav .range{font-size:.88rem}.group-schedule-page .group-schedule-nav .btn{min-width:34px;padding:4px 8px}.group-schedule-page .group-schedule-filters{z-index:auto;background:color-mix(in srgb, var(--surface-2,#f4f7fa) 55%, #fff);border:1px solid var(--line);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:10px;flex-direction:column;gap:4px;min-width:0;margin:0;padding:4px 8px;display:flex;position:static}.group-schedule-page .group-schedule-filters .filter-row{align-items:center;gap:8px;min-width:0;display:flex}.group-schedule-page .group-schedule-filters .filter-row-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex:0 0 40px;padding-top:0;font-size:10px;font-weight:700}.group-schedule-page .group-schedule-filters .filter-chips{flex-wrap:nowrap;gap:4px;min-width:0;padding-bottom:1px;display:flex;overflow-x:auto}.group-schedule-page .group-schedule-filters .legend-chip{color:var(--muted);background:var(--surface);border:1px solid var(--line);cursor:pointer;font-size:10px;font:inherit;white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:4px;padding:3px 8px;transition:border-color .15s,background .15s,box-shadow .15s,color .15s;display:inline-flex}.group-schedule-page .group-schedule-filters .legend-chip.is-filter:hover{border-color:color-mix(in srgb, var(--chip-color,var(--teal)) 45%, var(--line))}.group-schedule-page .group-schedule-filters .legend-chip.on{color:var(--navy);border-color:var(--chip-color,var(--teal));background:color-mix(in srgb, var(--chip-color,var(--teal)) 14%, #fff);box-shadow:0 0 0 1px color-mix(in srgb, var(--chip-color,var(--teal)) 18%, transparent);font-weight:600}.group-schedule-page .group-schedule-filters .legend-dot{background:var(--chip-color,var(--teal));border-radius:50%;flex-shrink:0;width:6px;height:6px}.group-schedule-page .group-schedule-filters .chip-count{opacity:.75;font-size:9px}.group-schedule-page .group-schedule-filters .filter-clear{align-self:flex-start;padding:2px 8px;font-size:.78rem}.schedule-filters-disclosure{min-width:0;max-width:100%}.schedule-filters-summary{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2,#f4f7fa) 55%, #fff);color:var(--navy);border-radius:10px;align-items:center;gap:6px;padding:8px 10px;font-size:.82rem;font-weight:700;list-style:none;display:flex}.schedule-filters-summary::-webkit-details-marker{display:none}.schedule-filters-summary:before{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex-shrink:0;width:.45rem;height:.45rem;transition:transform .15s;transform:rotate(-45deg)}.schedule-filters-disclosure[open]>.schedule-filters-summary:before{transform:rotate(45deg)}.schedule-filters-on{color:var(--teal);font-weight:800}.schedule-filters-disclosure .group-schedule-filters,.schedule-filters-disclosure .schedule-v2-filters{margin-top:6px}@media (width>=900px){.schedule-filters-disclosure{display:contents}.schedule-filters-disclosure>.schedule-filters-summary{display:none}.schedule-filters-disclosure .group-schedule-filters,.schedule-filters-disclosure .schedule-v2-filters{margin-top:0}}.group-schedule-desktop{display:block}.spreadsheet-page .excel-grid.group-schedule-block{--gs-header:linear-gradient(180deg, #dce8f8 0%, #c5d9f1 100%);--gs-header-solid:#c5d9f1;--gs-alt:#eef4fb;--gs-border:#b8c9dc;--gs-today:#0d73772e;--gs-today-bright:#e4faf8;--gs-now:#0d737733;--gs-time-w:40px;table-layout:fixed;width:100%;min-width:0}.spreadsheet-page.group-schedule-page .excel-sheet.group-schedule-desktop{border-radius:var(--radius);border:1px solid var(--line-strong);box-shadow:var(--shadow);--scrollbar-thumb:#0f27441a;--scrollbar-thumb-hover:#0d73773d;flex:auto;max-height:min(84vh,980px);overflow:hidden auto}.group-schedule-mobile{display:none}.group-schedule-page .group-schedule-legend,.group-schedule-page .mobile-day-tabs,.group-schedule-page .filter-chips{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.group-schedule-page .group-schedule-legend::-webkit-scrollbar{width:0;height:4px}.group-schedule-page .mobile-day-tabs::-webkit-scrollbar{width:0;height:4px}.group-schedule-page .filter-chips::-webkit-scrollbar{width:0;height:4px}.group-schedule-page .group-schedule-legend::-webkit-scrollbar-thumb{background:#0f27441f;border-radius:999px}.group-schedule-page .mobile-day-tabs::-webkit-scrollbar-thumb{background:#0f27441f;border-radius:999px}.group-schedule-page .filter-chips::-webkit-scrollbar-thumb{background:#0f27441f;border-radius:999px}.group-schedule-page .group-schedule-legend::-webkit-scrollbar-thumb:hover{background:#0d737742}.group-schedule-page .mobile-day-tabs::-webkit-scrollbar-thumb:hover{background:#0d737742}.group-schedule-page .filter-chips::-webkit-scrollbar-thumb:hover{background:#0d737742}.group-schedule-page .group-schedule-legend::-webkit-scrollbar-track{background:0 0}.group-schedule-page .mobile-day-tabs::-webkit-scrollbar-track{background:0 0}.group-schedule-page .filter-chips::-webkit-scrollbar-track{background:0 0}.spreadsheet-page .excel-grid.group-schedule-block th,.spreadsheet-page .excel-grid.group-schedule-block td{border-color:var(--gs-border);text-align:center;vertical-align:middle;min-width:0;width:calc((100% - (2 * var(--gs-time-w))) / 7);padding:4px 3px;transition:background .15s;overflow:hidden}.spreadsheet-page .excel-grid.group-schedule-block thead th{z-index:3;background:var(--gs-header-solid);background-image:var(--gs-header);color:var(--navy);font-weight:700;font-family:var(--font-brand);white-space:nowrap;padding:5px 3px;font-size:11px;line-height:1.15;position:sticky;top:0;box-shadow:inset 0 -2px #0f274414}.spreadsheet-page .excel-grid.group-schedule-block thead th.today-col{color:var(--navy);white-space:normal;box-shadow:inset 3px 0 0 var(--teal), inset -3px 0 0 var(--teal), inset 0 -3px 0 var(--teal);background:linear-gradient(#f3fffe 0%,#c8f4f1 100%)}.spreadsheet-page .excel-grid.group-schedule-block thead th.today-col .day-name,.spreadsheet-page .excel-grid.group-schedule-block thead th.today-col .day-date{opacity:1;font-weight:800}.spreadsheet-page .excel-grid.group-schedule-block .today-badge{text-transform:uppercase;letter-spacing:.06em;color:#fff;background:linear-gradient(180deg, #14959a 0%, var(--teal) 100%);vertical-align:middle;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-top:0;margin-left:5px;padding:2px 7px 2px 6px;font-size:9px;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #ffffff59,0 2px 8px #0d737759}.spreadsheet-page .excel-grid.group-schedule-block .today-live,.group-schedule-page .today-live{background:#fff;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.6s ease-out infinite gs-today-live;display:inline-block;box-shadow:0 0 #ffffffb3}.spreadsheet-page .excel-grid.group-schedule-block .time-col{background:var(--gs-header-solid);background-image:var(--gs-header);font-variant-numeric:tabular-nums;color:var(--navy-soft);width:var(--gs-time-w);min-width:var(--gs-time-w);max-width:var(--gs-time-w);white-space:nowrap;z-index:2;padding-left:2px;padding-right:2px;font-size:10px;font-weight:700;position:sticky}.spreadsheet-page .excel-grid.group-schedule-block .time-col:first-child{left:0;box-shadow:2px 0 4px #0f27440f}.spreadsheet-page .excel-grid.group-schedule-block .time-col:last-child{right:0;box-shadow:-2px 0 4px #0f27440f}.spreadsheet-page .excel-grid.group-schedule-block tbody tr.alt-row td:not(.time-col):not(.today-col){background:var(--gs-alt)}.spreadsheet-page .excel-grid.group-schedule-block tbody td.today-col{background:var(--gs-today-bright);box-shadow:inset 3px 0 0 var(--teal), inset -3px 0 0 var(--teal)}.spreadsheet-page .excel-grid.group-schedule-block tbody tr.alt-row td.today-col{background:color-mix(in srgb, var(--gs-today-bright) 78%, var(--gs-alt));box-shadow:inset 3px 0 0 var(--teal), inset -3px 0 0 var(--teal)}.spreadsheet-page .excel-grid.group-schedule-block tbody tr.now-row td.time-col{box-shadow:inset 0 0 0 2px var(--teal);color:var(--teal);font-weight:800;position:relative}.spreadsheet-page .excel-grid.group-schedule-block .time-col .time-label{display:inline-block}.spreadsheet-page .excel-grid.group-schedule-block .now-dot{background:var(--teal);vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-left:4px;animation:1.8s ease-out infinite gs-now-pulse;display:inline-block;box-shadow:0 0 #0d737773}@keyframes gs-now-pulse{0%{box-shadow:0 0 #0d737773}70%{box-shadow:0 0 0 8px #0d737700}to{box-shadow:0 0 #0d737700}}@keyframes gs-today-live{0%{opacity:1;box-shadow:0 0 #ffffffb3}70%{opacity:.85;box-shadow:0 0 0 6px #fff0}to{opacity:1;box-shadow:0 0 #fff0}}@media (prefers-reduced-motion:reduce){.spreadsheet-page .excel-grid.group-schedule-block .now-dot,.spreadsheet-page .excel-grid.group-schedule-block .today-live,.group-schedule-page .today-live{animation:none}}.spreadsheet-page .excel-grid.group-schedule-block tbody tr.now-row td:not(.time-col){background:var(--gs-now)}.spreadsheet-page .excel-grid.group-schedule-block tbody tr.now-row td.today-col{box-shadow:inset 3px 0 0 var(--teal), inset -3px 0 0 var(--teal), inset 0 0 0 1px #0d737747;background:linear-gradient(#c5f3ef 0%,#b3ebe8 100%)}.spreadsheet-page .excel-grid.group-schedule-block .day-name{text-transform:none;margin-right:4px;font-weight:700;display:inline}.spreadsheet-page .excel-grid.group-schedule-block .day-date{opacity:.85;font-weight:500;display:inline}.spreadsheet-page .group-slot-entry{padding:2px 1px}.spreadsheet-page .group-slot-entry.split{border-top:none;margin-top:2px;padding-top:0}.spreadsheet-page .cell-stack{flex-direction:column;gap:2px;min-width:0;display:flex}.spreadsheet-page .cell-stack.is-multi .group-slot-entry,.spreadsheet-page .cell-stack.is-multi .group-slot-entry.split{border:none;margin:0;padding:0}.spreadsheet-page .cell-stack.is-multi .slot-card-inner{box-shadow:none;border-left-width:3px;border-radius:5px;gap:0;padding:2px 5px 2px 4px}.spreadsheet-page .cell-stack.is-multi .group-slot-entry.is-clickable:hover .slot-card-inner{box-shadow:0 0 0 1px color-mix(in srgb, var(--slot-border,var(--teal)) 50%, transparent);transform:none}.spreadsheet-page .group-slot-entry.is-compact .slot-meta-line{justify-content:space-between;align-items:center;gap:4px;min-width:0;display:flex}.spreadsheet-page .group-slot-entry.is-compact .trainer{opacity:.8;white-space:nowrap;text-overflow:ellipsis;font-size:7px;line-height:1.15;overflow:hidden}.spreadsheet-page .group-slot-entry.is-compact .class-name{font-size:8px;line-height:1.15}.spreadsheet-page .group-slot-entry.is-compact .slot-inline-client{opacity:.85;font-weight:600}.spreadsheet-page .group-slot-entry.is-compact .slot-badge-row{flex-shrink:0;margin-top:0}.spreadsheet-page .group-slot-entry.is-compact .slot-badge{padding:0 3px;font-size:7px}.spreadsheet-page .cell-stack.is-triple .slot-card-inner{padding:1px 4px 1px 3px}.spreadsheet-page .cell-stack.is-triple .class-name{font-size:7.5px}.spreadsheet-page .slot-card-inner{background:var(--slot-bg,#f7fafb);border:1px solid color-mix(in srgb, var(--slot-border,var(--line)) 35%, transparent);border-left:3px solid var(--slot-border,var(--teal));text-align:left;transition:box-shadow var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease);box-sizing:border-box;border-radius:7px;align-items:center;gap:5px;max-width:100%;padding:4px 5px;display:flex;box-shadow:0 1px 2px #0f27440d}.spreadsheet-page .cell-add-parallel{border:1px dashed color-mix(in srgb, var(--teal) 40%, var(--line));background:color-mix(in srgb, var(--teal) 6%, transparent);width:100%;min-height:16px;color:var(--teal);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;margin-top:1px;padding:0;font-size:11px;font-weight:700;line-height:1;display:flex}.spreadsheet-page .cell-add-parallel:hover{background:color-mix(in srgb, var(--teal) 14%, transparent);border-color:var(--teal)}.spreadsheet-page td.has-entries:not(.editable-cell):hover .slot-card-inner,.spreadsheet-page .group-slot-entry.is-clickable:not(.is-dimmed):hover .slot-card-inner{transform:translateY(-1px);box-shadow:0 4px 12px #0f27441a}.spreadsheet-page .group-slot-entry.is-dimmed{pointer-events:none}.spreadsheet-page .group-slot-entry.is-dimmed .slot-card-inner{opacity:.22;filter:grayscale(.35);box-shadow:none;transform:none}.spreadsheet-page .excel-grid.group-schedule-block td.filter-empty{opacity:.55}.spreadsheet-page .trainer-avatar{color:#fff;background:var(--trainer-color,var(--muted));border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;font-size:8px;font-weight:700;display:grid;box-shadow:0 1px 2px #0f274426}@media (width<=1200px){.spreadsheet-page .excel-grid.group-schedule-block .trainer-avatar{display:none}.spreadsheet-page .excel-grid.group-schedule-block .day-name{font-size:10px}.spreadsheet-page .excel-grid.group-schedule-block .class-name{font-size:8px}}.spreadsheet-page .slot-text{flex:1;min-width:0}.spreadsheet-page .excel-grid.group-schedule-block .class-name{text-transform:uppercase;letter-spacing:.02em;color:var(--slot-text,var(--navy));word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:9px;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.spreadsheet-page .excel-grid.group-schedule-block .trainer{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:9px;font-weight:500;line-height:1.15;overflow:hidden}.spreadsheet-page .excel-grid.group-schedule-block td.has-entries{vertical-align:top;min-height:40px}.spreadsheet-page .excel-grid.group-schedule-block td.editable-cell{cursor:pointer;position:relative}.spreadsheet-page .excel-grid.group-schedule-block td.editable-cell:hover{outline:2px solid var(--teal);outline-offset:-2px}.spreadsheet-page .excel-grid.group-schedule-block td.selected-cell{outline:2px solid var(--navy);outline-offset:-2px;background:#fffbeb!important}.spreadsheet-page .group-slot-entry.is-clickable{cursor:pointer}.spreadsheet-page .group-slot-entry.is-clickable:active .slot-card-inner{transform:scale(var(--motion-press))}.spreadsheet-page .group-slot-entry.is-clickable:hover .slot-card-inner{outline:2px solid color-mix(in srgb, var(--slot-border,var(--teal)) 55%, transparent);outline-offset:0;transform:translateY(-1px);box-shadow:0 4px 12px #0f27441f}.spreadsheet-page .group-slot-entry.is-active .slot-card-inner{outline:2px solid var(--teal);outline-offset:0;box-shadow:0 0 0 3px #0d73772e,0 4px 14px #0f27441f}@media (hover:none){.spreadsheet-page td.has-entries:not(.editable-cell):hover .slot-card-inner,.spreadsheet-page .group-slot-entry.is-clickable:hover .slot-card-inner,.spreadsheet-page .group-slot-entry.is-compact.is-clickable:hover .slot-card-inner,.spreadsheet-page .cell-stack.is-multi .group-slot-entry.is-clickable:hover .slot-card-inner{transform:none}}.spreadsheet-page .group-slot-entry.is-compact.is-clickable:hover .slot-card-inner,.spreadsheet-page .cell-stack.is-multi .group-slot-entry.is-clickable:hover .slot-card-inner{box-shadow:0 0 0 1px color-mix(in srgb, var(--slot-border,var(--teal)) 45%, transparent);outline:none;transform:none}.group-slot-modal-backdrop{z-index:90}.group-slot-modal{overscroll-behavior:contain;background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 70%, transparent);flex-direction:column;width:min(520px,100%);max-width:520px;max-height:min(92dvh,900px);padding-top:18px;padding-bottom:16px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #0f27440f,0 24px 64px #0f27442e}.group-slot-modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:12px;min-height:0;padding-right:2px;display:flex;overflow:hidden auto}.group-slot-modal .drawer-head{z-index:3;box-shadow:none;border-bottom:1px solid var(--line);background:0 0;flex-shrink:0;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;position:relative}.group-slot-modal-close{flex-shrink:0;padding:8px 12px;font-size:.82rem}.group-slot-modal-layout{gap:12px;min-height:0;display:grid}.group-slot-modal-layout.is-two-col{grid-template-columns:1fr}@media (width>=800px){.group-slot-modal.has-template:not(.is-narrow){width:min(880px,100vw - 48px);max-width:880px}.group-slot-modal.has-template:not(.is-narrow) .group-slot-modal-body{overflow:hidden}.group-slot-modal-layout.is-two-col{flex:auto;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:stretch;gap:14px;min-height:0;overflow:hidden}.group-slot-modal.has-template:not(.is-narrow) .group-slot-modal-section{overflow:hidden}.group-slot-modal.has-template:not(.is-narrow) .group-session-panel-body,.group-slot-modal.has-template:not(.is-narrow) .group-slot-modal-form-body{overscroll-behavior:contain;padding-right:2px;overflow-y:auto}}.group-slot-modal-section{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;min-width:0;min-height:0;padding:14px 14px 12px;display:flex}.group-slot-modal-section.is-session{background:linear-gradient(180deg, color-mix(in srgb, var(--slot-bg,var(--teal-soft)) 55%, #fff) 0%, var(--surface-2) 42%);border-color:color-mix(in srgb, var(--slot-border,var(--teal)) 22%, var(--line))}.group-slot-modal-section.is-template{background:linear-gradient(180deg, #fff 0%, var(--surface-2) 100%)}.group-slot-section-head,.group-template-head{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.group-slot-section-copy{min-width:0}.group-slot-section-title{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:.95rem;font-weight:800}.group-slot-section-kicker{color:var(--muted);letter-spacing:.01em;margin:2px 0 0;font-size:.75rem;font-weight:600}.group-template-toggle{flex-shrink:0;padding:6px 10px;font-size:.78rem}.group-session-panel{flex-direction:column;flex:auto;gap:0;min-height:0;display:flex}.group-session-panel-body,.group-slot-modal-form-body{flex-direction:column;flex:auto;gap:10px;min-height:0;display:flex}.group-session-status-row{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.group-slot-modal .status-btn{min-height:44px;color:var(--navy-soft);box-shadow:none;background:0 0;border:none;border-radius:10px;margin:0;font-weight:800}.group-slot-modal .status-btn:hover:not(:disabled){background:var(--surface-2)}.group-slot-modal .status-btn.is-draft.is-done{background:var(--teal-soft);color:var(--teal)}.group-slot-modal .status-btn.is-draft.is-cancelled{background:var(--err-soft);color:var(--err)}.group-slot-modal .status-btn.is-saved.is-done{background:var(--teal);color:#fff}.group-slot-modal .status-btn.is-saved.is-cancelled{background:var(--err);color:#fff}.group-session-pay-row{align-items:flex-end;gap:8px;display:flex}.group-session-pay-row .grow{flex:auto;min-width:0}.group-session-pick-hint,.group-session-hint{margin:0}.group-slot-modal-form{flex:auto;gap:0;min-height:0}.group-template-fields{gap:10px;display:grid}.group-slot-modal-actions.is-template-actions,.group-session-panel>.group-slot-modal-actions{z-index:2;border-top:1px solid var(--line);background:#fff;border-radius:0 0 16px 16px;flex-shrink:0;margin:12px -14px -12px;padding:12px 14px;position:relative}.group-slot-modal-accent{height:3px;position:absolute;top:0;left:0;right:0}.group-slot-modal-title-block h1{font-family:var(--font-brand);letter-spacing:-.03em;margin:0;font-size:1.28rem;line-height:1.2}.group-slot-modal-title-block .muted{margin:4px 0 0}.group-slot-modal-badges{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.group-slot-modal .category-pill{color:var(--chip-color,var(--teal));background:color-mix(in srgb, var(--chip-color,var(--teal)) 12%, #fff);border:1px solid color-mix(in srgb, var(--chip-color,var(--teal)) 28%, transparent);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.group-slot-modal .move-pill{color:var(--warn);background:var(--warn-soft);border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.group-slot-modal .session-pill{border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.group-slot-modal .session-pill.done{color:var(--ok);background:var(--ok-soft)}.group-slot-modal .session-pill.cancelled{color:var(--err);background:var(--err-soft)}.group-slot-modal-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.group-slot-modal .label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.group-slot-modal-grid select,.group-slot-modal-form input,.group-slot-modal-form select,.group-session-panel input{border:1px solid var(--line);width:100%;font:inherit;color:var(--text);background:#fff;border-radius:10px;padding:9px 12px;transition:border-color .15s,box-shadow .15s}.group-slot-modal-grid select,.group-slot-modal-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235a6b78' d='M1 2h10L6 7z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:10px 7px;padding-right:32px}.group-slot-modal-grid select:focus,.group-slot-modal-form input:focus,.group-slot-modal-form select:focus,.group-session-panel input:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #0d737729}.group-slot-modal input.is-readonly{background:var(--surface-2);color:var(--navy-soft)}.group-slot-modal .trainer-quick-picks{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.group-slot-modal .trainer-chip{align-items:center;gap:6px;padding:5px 10px;font-size:.8rem;display:inline-flex}.group-slot-modal .trainer-chip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.group-slot-modal .ok-flash{border-radius:var(--radius-sm);background:var(--ok-soft);color:var(--ok);margin:0;padding:8px 12px;font-size:.9rem;font-weight:600}.group-slot-modal-meta{text-align:right;max-width:16rem;margin:0 0 0 auto;line-height:1.35}.group-slot-modal .modal-hotkeys{margin:0}.group-slot-delete-confirm,.group-slot-add-confirm{background:var(--err-soft);border:1px solid color-mix(in srgb, var(--err) 25%, transparent);border-radius:16px;padding:16px}.group-slot-add-confirm{background:var(--teal-soft);border-color:color-mix(in srgb, var(--teal) 22%, transparent)}.group-slot-delete-confirm p,.group-slot-add-confirm p{margin:0 0 8px}.group-slot-modal-preview .trainer-avatar-lg{background:linear-gradient(145deg, var(--trainer-color,var(--muted)), #0f2744);width:40px;height:40px;font-size:15px}.slot-badge-row{flex-wrap:wrap;gap:3px;margin-top:3px;display:flex}.slot-badge{letter-spacing:.02em;text-transform:none;border-radius:999px;align-items:center;padding:1px 5px;font-size:8px;font-weight:700;line-height:1.3;display:inline-flex}.slot-badge.badge-kids{color:#075985;background:#e0f2fe}.slot-badge.badge-new{color:#0a5f62;background:#d8f3f3}.slot-badge.badge-popular{color:#9a3412;background:#ffedd5}.slot-badge.badge-large{color:#1e3a5f;background:#dbeafe}.slot-badge.badge-small{color:#3f3f46;background:#e4e4e7}.group-slot-modal .slot-badge{padding:2px 8px;font-size:10px}.group-schedule-undo-toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:95;border-radius:var(--radius);background:var(--navy);color:#e8eef4;flex-wrap:wrap;align-items:center;gap:12px;max-width:min(520px,100vw - 24px);padding:12px 14px;animation:.22s notif-toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 32px #0f274447}.group-schedule-undo-toast strong{font-weight:700}.group-schedule-undo-actions{gap:8px;margin-left:auto;display:flex}.group-schedule-undo-toast .btn.primary{background:var(--teal);border-color:var(--teal)}.group-schedule-undo-toast .btn.ghost{color:#e8eef4;background:#ffffff1a;border-color:#ffffff40}.group-schedule-undo-toast .btn.ghost:hover:not(:disabled){background:#ffffff29;border-color:#ffffff59}@media (width<=899px){.group-schedule-undo-toast{bottom:var(--mobile-nav-clearance)}}.group-slot-modal-preview{background:var(--slot-bg,var(--surface-2));border:1px solid color-mix(in srgb, var(--slot-border,var(--line)) 35%, transparent);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.group-slot-modal-preview .trainer-avatar{background:var(--trainer-color,var(--muted));width:36px;height:36px;font-size:14px}.group-slot-modal-preview .preview-copy{min-width:0}.group-slot-modal-preview .preview-class{color:var(--slot-text,var(--navy));text-transform:uppercase;letter-spacing:.02em;font-size:.92rem;font-weight:800}.group-slot-modal-preview .preview-trainer{color:var(--muted);margin-top:1px;font-size:.82rem}.group-slot-modal-siblings{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex}.group-slot-modal-siblings .label{margin:0}.group-slot-modal-siblings .sibling-chips{flex-wrap:wrap;flex:auto;gap:6px;margin:0;display:flex}.group-slot-modal-siblings .sibling-chip{border-radius:999px;padding:5px 10px;font-size:.78rem}.group-slot-modal-siblings .sibling-cap-hint,.group-slot-modal-siblings .sibling-hint{flex:100%;margin:0}.group-slot-modal-form input{width:100%}.group-slot-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.group-slot-modal-actions .btn.primary{min-width:9.5rem}.group-slot-modal-actions.is-global-delete{border-top:none;justify-content:flex-start;margin-top:0;padding-top:4px}@media (width<=640px){.group-slot-modal-preview{flex-wrap:wrap}.group-slot-modal-meta{text-align:left;flex:100%;max-width:none;margin-left:52px}.group-slot-modal-actions .btn.primary{flex:auto;min-width:0}}.group-schedule-page .mobile-add-slot{margin-top:8px}.group-schedule-page .mobile-hour-group{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.group-schedule-page .mobile-add-parallel{margin-left:52px;padding:6px 10px;font-size:.85rem}.group-schedule-page .mobile-cell-cap{margin-top:2px;margin-left:52px}.spreadsheet-page .group-schedule-editor{margin-top:16px}.spreadsheet-page .group-schedule-editor h2{margin:0 0 12px;font-size:1rem}.spreadsheet-page .group-schedule-slot-list{margin:0 0 16px;padding:0;list-style:none}.spreadsheet-page .group-schedule-slot-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.spreadsheet-page .group-schedule-slot-list .row-actions{flex-shrink:0;gap:8px;display:flex}@media (width<=899px){.group-schedule-mobile{display:block}.group-schedule-desktop{display:none}.group-schedule-filters{box-sizing:border-box;max-width:100%;top:auto;overflow:hidden}.group-schedule-filters .filter-row{flex-direction:row;align-items:center;gap:6px;max-width:100%}.group-schedule-filters .filter-row-label{flex:0 0 42px;padding-top:0}.group-schedule-filters .filter-chips{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px;width:100%;min-width:0;max-width:100%;padding-bottom:2px;display:flex;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.group-schedule-filters .legend-chip{flex:none;max-width:none}.mobile-day-tabs{-webkit-overflow-scrolling:touch;gap:6px;max-width:100%;margin-bottom:12px;padding-bottom:12px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 90%,#0000);mask-image:linear-gradient(90deg,#000 90%,#0000)}.mobile-day-tab{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:56px;color:var(--text);cursor:pointer;flex-direction:column;flex:none;align-items:center;gap:2px;padding:10px 8px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.mobile-day-tab.on{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 2px #0d737726}.mobile-day-tab.today{border-color:var(--teal);background:linear-gradient(#f3fffe 0%,#d4f4f1 100%);box-shadow:0 0 0 2px #0d737729}.mobile-day-tab.today.on{border-color:var(--teal);background:linear-gradient(#e4faf8 0%,#c8f0ed 100%);box-shadow:0 0 0 2px #0d737747}.mobile-day-tab.today .tab-short{color:var(--teal);align-items:center;gap:5px;display:inline-flex}.mobile-day-tab .today-live{background:var(--teal);animation-name:gs-now-pulse;box-shadow:0 0 #0d737773}.mobile-day-tab .today-badge{text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--teal);border-radius:999px;align-items:center;margin-top:2px;padding:1px 6px;font-size:8px;font-weight:800;display:inline-flex}.mobile-day-list.is-today{box-shadow:inset 3px 0 0 var(--teal), inset -3px 0 0 var(--teal);background:linear-gradient(#0d73771a,#0d73770a);border-radius:14px;padding:10px 8px 12px}.mobile-day-tab .tab-short{font-size:13px;font-weight:700}.mobile-day-tab .tab-date{color:var(--muted);font-size:10px}.mobile-day-tab .tab-count{text-align:center;color:#fff;background:var(--teal);border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;line-height:16px;position:absolute;top:4px;right:4px}.mobile-day-list{flex-direction:column;gap:10px;display:flex}.mobile-slot-row{grid-template-columns:52px 1fr;align-items:start;gap:10px;display:grid}.mobile-slot-time{color:var(--navy-soft);font-variant-numeric:tabular-nums;padding-top:8px;font-size:13px;font-weight:700}.mobile-empty{text-align:center;padding:24px}}@media (width<=700px){.director-pay-tabs{grid-template-columns:1fr}}.public-schedule-page{color:#e8eef4;background:radial-gradient(900px 480px at 12% -10%,#0d737747,#0000 55%),radial-gradient(700px 420px at 100% 0,#7fd4d71f,#0000 50%),linear-gradient(#0c1f36 0%,#0f2744 48%,#0a3a3d 100%);min-height:100dvh;padding:28px 16px 40px}.public-schedule-page .btn:active,.public-schedule-page a:active,.public-schedule-page .mobile-day-tab:active{transform:none}.public-schedule-hero{max-width:1100px;margin:0 auto 24px}.public-brand{font-family:var(--font-brand);letter-spacing:.08em;color:#7fd4d7;margin-bottom:10px;font-size:.95rem;font-weight:800}.public-schedule-hero h1{font-family:var(--font-brand);color:#fff;margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.2rem)}.public-schedule-hero p{color:#e8eef4b3;margin:0 0 16px}.public-legend{flex-wrap:wrap;gap:8px;display:flex}.public-legend .legend-chip{color:#e8eef4d9;background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;display:inline-flex}.public-legend .legend-dot{background:var(--chip-color,#7fd4d7);border-radius:50%;width:8px;height:8px}.public-status{text-align:center;color:#e8eef4bf;max-width:1100px;margin:24px auto}.public-status.error{color:#ffb4a9}.public-mobile{max-width:560px;margin:0 auto;display:none}.public-desktop{border-radius:var(--radius);background:#ffffff0a;border:1px solid #ffffff1f;max-width:1100px;margin:0 auto;display:block;overflow:auto}.public-grid{border-collapse:collapse;table-layout:fixed;width:100%;font-size:11px}.public-grid th,.public-grid td{vertical-align:top;text-align:center;border:1px solid #ffffff1a;padding:6px 4px}.public-grid thead th{color:#fff;background:#0d737740;font-weight:700}.public-grid .time-col{color:#7fd4d7;background:#00000026;width:52px;font-weight:700}.public-grid .day-name{text-transform:lowercase;display:block}.public-grid .day-date{opacity:.75;font-weight:500;display:block}.public-grid th.today-col,.public-grid td.today-col{background:#0d737724}.public-grid-slot{text-align:left;background:var(--slot-bg,#ffffff1a);border-left:3px solid var(--slot-border,#7fd4d7);color:var(--slot-text,#0f2744);border-radius:8px;margin-bottom:4px;padding:5px 6px}.public-grid-slot .public-class{text-transform:uppercase;font-size:9px;font-weight:700;line-height:1.2}.public-grid-slot .public-trainer-name{opacity:.8;margin-top:2px;font-size:10px}.public-day-list{flex-direction:column;gap:10px;display:flex}.public-slot-card{border:1px solid #ffffff1a;border-left:4px solid var(--slot-border,#7fd4d7);background:#ffffff14;border-radius:14px;grid-template-columns:64px 1fr;gap:12px;padding:14px;display:grid}.public-slot-card time{color:#7fd4d7;font-variant-numeric:tabular-nums;padding-top:2px;font-weight:800}.public-slot-card .public-class{text-transform:uppercase;letter-spacing:.02em;color:#fff;font-weight:700}.public-slot-card .public-trainer{color:#e8eef4bf;align-items:center;gap:8px;margin-top:6px;font-size:.9rem;display:flex}.public-slot-card .trainer-avatar{color:#fff;background:var(--trainer-color,#5a6b78);border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.public-schedule-foot{color:#e8eef48c;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:1100px;margin:28px auto 0;font-size:.85rem;display:flex}.public-schedule-foot a{color:#7fd4d7;font-weight:600;text-decoration:none}.public-schedule-foot a:hover{text-decoration:underline}.schedule-share-modal{background:var(--surface);width:min(480px,100%);max-width:480px}.sales-report-modal{background:var(--surface);flex-direction:column;width:min(860px,100%);max-width:860px;padding:0;display:flex;position:relative;overflow:hidden}.sales-report-accent{background:linear-gradient(90deg, var(--teal), #7fd4d7 45%, #7fd4d766);z-index:2;height:3px;position:absolute;top:0;left:0;right:0}.sales-report-hero{background:radial-gradient(circle at 92% 8%, #7fd4d72e, transparent 42%), linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);color:#e8eef4;padding:20px 20px 16px;position:relative}.sales-report-hero-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sales-report-kicker{letter-spacing:.1em;text-transform:uppercase;color:#7fd4d7;margin:0 0 4px;font-size:.68rem;font-weight:700}.sales-report-hero h1{font-family:var(--font-brand);letter-spacing:-.03em;color:#fff;margin:0;font-size:1.65rem;font-weight:800}.sales-report-subtitle{color:#f4f8fbb8;margin:6px 0 0;font-size:.88rem;line-height:1.4}.sales-report-close{color:#e8eef4;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;padding:0;font-size:1.35rem;line-height:1;transition:background .15s,border-color .15s;display:grid}.sales-report-close:hover:not(:disabled){background:#ffffff24;border-color:#ffffff47}.sales-report-hero-meta{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.sales-report-pill{letter-spacing:.02em;border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.sales-report-pill--saved{color:#7fd4d7;background:#7fd4d724;border:1px solid #7fd4d747}.sales-report-pill--ready{color:#b8f0d8;background:#34d39924;border:1px solid #34d39947}.sales-report-pill--draft{color:#f4f8fbe0;background:#ffffff1a;border:1px solid #ffffff29}.sales-report-pill--muted{color:#f4f8fbb8;background:0 0;border:1px solid #ffffff1f}.sales-report-skeleton{gap:14px;padding:20px;display:grid}.sales-report-skeleton-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.sales-report-skeleton-kpis span,.sales-report-skeleton-block{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-2) 0%, color-mix(in srgb, var(--line) 40%, var(--surface-2)) 50%, var(--surface-2) 100%);background-size:200% 100%;animation:1.2s ease-in-out infinite sales-report-shimmer;display:block}.sales-report-skeleton-kpis span{height:72px}.sales-report-skeleton-block{height:48px}.sales-report-skeleton-block--tall{height:180px}@keyframes sales-report-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.sales-report-layout{flex:1;grid-template-columns:1fr;gap:0;min-height:0;display:grid;overflow:auto}@media (width>=720px){.sales-report-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}.sales-report-main{flex-direction:column;gap:14px;min-width:0;padding:18px 20px;display:flex}@media (width>=720px){.sales-report-main{border-right:1px solid var(--line)}}.sales-report-alert{border-radius:var(--radius-sm);gap:2px;padding:10px 12px;font-size:.86rem;line-height:1.35;display:grid}.sales-report-alert strong{font-weight:700}.sales-report-alert span{color:var(--muted)}.sales-report-alert--warn{background:var(--warn-soft);border:1px solid color-mix(in srgb, var(--warn) 22%, transparent)}.sales-report-alert--info{background:color-mix(in srgb, var(--teal) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--teal) 22%, transparent)}.sales-report-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sales-report-kpis--readonly{grid-template-columns:1fr}@media (width<=520px){.sales-report-kpis{grid-template-columns:1fr}}.sales-report-kpi{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.sales-report-kpi--accent{background:linear-gradient(180deg, var(--teal-soft), var(--surface) 72%);border-color:#0d737738}.sales-report-kpi-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.sales-report-kpi-value{font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);font-size:1.15rem;font-weight:800}.sales-report-closing{gap:6px;display:grid}.sales-report-closing-label{color:var(--text);font-size:.78rem;font-weight:700}.sales-report-closing-field{border:2px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:4px;padding:4px 14px 4px 4px;transition:border-color .15s,box-shadow .15s;display:flex}.sales-report-closing-field:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px #0d737724}.sales-report-closing-field.is-filled{border-color:color-mix(in srgb, var(--teal) 45%, var(--line))}.sales-report-closing-field input{min-width:0;font-family:var(--font-brand);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--navy);background:0 0;border:none;flex:1;padding:12px 10px;font-size:1.5rem;font-weight:800}.sales-report-closing-field input:focus{outline:none}.sales-report-closing-field input::placeholder{color:color-mix(in srgb, var(--muted) 55%, transparent);font-weight:600}.sales-report-closing-suffix{color:var(--muted);font-size:1.1rem;font-weight:700}.sales-report-closing-hint{color:var(--muted);margin:0;font-size:.78rem}.sales-report-section-title{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:.92rem;font-weight:700}.sales-report-section-sub{color:var(--muted);margin:2px 0 0;font-size:.76rem}.sales-report-sales-card{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);gap:10px;padding:14px;display:grid}.sales-report-sales-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.sales-report-empty{border-radius:var(--radius-sm);text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--line);margin:0;padding:12px;font-size:.86rem}.sales-report-lines{gap:6px;max-height:168px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.sales-report-lines li{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 10px;font-size:.86rem;display:grid}.sales-report-line-amount{font-family:var(--font-brand);font-variant-numeric:tabular-nums;color:var(--navy);white-space:nowrap;font-weight:800}.sales-report-line-product{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);overflow:hidden}.sales-report-pay{letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.sales-report-pay--cash{color:#0d7377;background:var(--teal-soft)}.sales-report-pay--card{color:#1a4a8a;background:#1a4a8a1a}.sales-report-pay--transfer{color:#9a4b12;background:var(--warn-soft)}.sales-report-pay--mixed{color:var(--muted);background:var(--surface-2)}.sales-report-remarks textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;font:inherit;resize:vertical;min-height:56px;margin-top:6px;padding:10px 12px}.sales-report-remarks textarea:focus{outline:2px solid color-mix(in srgb, var(--teal) 35%, transparent);border-color:var(--teal)}.sales-report-remarks-readonly{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:12px 14px}.sales-report-remarks-readonly p{margin:4px 0 0;font-size:.9rem;line-height:1.4}.sales-report-preview-panel{background:color-mix(in srgb, var(--bg) 55%, var(--surface));flex-direction:column;gap:10px;min-width:0;padding:18px 20px;display:flex}.sales-report-preview-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.sales-report-live{background:var(--line-strong);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.sales-report-live.is-on{background:var(--teal);animation:2s ease-in-out infinite sales-report-pulse;box-shadow:0 0 0 4px #0d73772e}@keyframes sales-report-pulse{0%,to{box-shadow:0 0 0 4px #0d73772e}50%{box-shadow:0 0 0 6px #0d737714}}.sales-report-preview-wrap{border-radius:var(--radius);border:1px solid var(--line);background:#0c1f36;flex:1;min-height:0;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.sales-report-preview-wrap.is-empty{background:var(--surface-2);border-style:dashed}.sales-report-preview{color:#d4e4ef;resize:none;background:0 0;border:none;width:100%;min-height:220px;margin:0;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.45;display:block}.sales-report-preview-wrap.is-empty .sales-report-preview{color:var(--muted);min-height:180px}.sales-report-preview:focus{outline:none}.sales-report-footer{border-top:1px solid var(--line);background:var(--surface-2);flex-direction:column;gap:10px;padding:14px 20px 18px;display:flex}.sales-report-footer-error{border-radius:var(--radius-sm);background:var(--err-soft);color:var(--err);margin:0;padding:8px 12px;font-size:.86rem;font-weight:600}.sales-report-share{gap:8px;display:grid}.sales-report-share-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.sales-report-share-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.sales-report-share-channels{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;gap:6px;padding:4px;display:inline-flex}.sales-report-share-chip{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:7px 12px;font-size:.82rem;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.sales-report-share-chip:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.sales-report-share-chip.is-active{color:var(--navy);background:var(--surface);box-shadow:var(--shadow)}.sales-report-share-chip--max.is-active{color:#5b21b6}.sales-report-share-chip--whatsapp.is-active{color:#128c7e}.sales-report-share-chip--telegram.is-active{color:#08c}.sales-report-share-send{white-space:nowrap}.sales-report-share--compact .sales-report-share-row{justify-content:flex-start}.sales-report-share--compact .sales-report-share-channels{padding:3px}.sales-report-share--compact .sales-report-share-chip{padding:5px 9px;font-size:.75rem}@media (width<=479px){.sales-report-share-row{flex-direction:column;align-items:stretch}.sales-report-share-send{justify-content:center;width:100%}}.sales-report-close-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sales-report-footer-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sales-report-action.is-success{color:var(--teal);border-color:color-mix(in srgb, var(--teal) 35%, transparent);background:var(--teal-soft)}.sales-report-action--primary{min-width:min(100%,220px)}@media (width<=479px){.sales-report-footer-actions{flex-direction:column}.sales-report-footer-actions .btn{justify-content:center;width:100%}}.sales-report-error-state{padding:24px 20px}.shift-gate-banner{border-radius:var(--radius-sm);border:1px solid var(--line);background:color-mix(in srgb, var(--warn,#f59e0b) 10%, var(--surface));flex-direction:column;gap:4px;margin:0 0 12px;padding:10px 12px;display:flex}.shift-gate-banner--report{background:color-mix(in srgb, var(--accent,#6366f1) 8%, var(--surface))}.close-stat--report{text-align:left;grid-column:1/-1;align-items:stretch}.close-stat--report .sales-report-preview{width:100%;margin:8px 0}.share-link-block{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.share-link-block input{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;font:inherit;padding:10px 12px}.share-qr-block{text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;display:flex}.share-qr{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px}.share-export-block{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.share-export-row{flex-wrap:wrap;gap:8px;display:flex}.share-export-row select{border:1px solid var(--line);border-radius:var(--radius-sm);min-width:160px;font:inherit;background:var(--surface);flex:1;padding:10px 12px}.share-hint{margin:0}@media (width<=899px){.public-mobile{display:block}.public-desktop{display:none}.public-mobile .mobile-day-tabs{gap:6px;margin-bottom:12px;padding-bottom:12px;display:flex;overflow-x:auto}.public-mobile .mobile-day-tab{border-radius:var(--radius-sm);color:#e8eef4;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff26;flex-direction:column;flex:none;align-items:center;gap:2px;min-width:56px;padding:10px 8px;display:flex}.public-mobile .mobile-day-tab.on{background:#0d73774d;border-color:#7fd4d7}.public-mobile .mobile-day-tab .tab-short{font-weight:700}.public-mobile .mobile-day-tab .tab-date{opacity:.75;font-size:10px}}.sticky-notes-rail{pointer-events:none;border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent);z-index:0;background:0 0;flex-shrink:0;margin-top:auto;padding:12px 4px 16px;position:relative}.sticky-notes-rail>*{pointer-events:auto}.sticky-notes-filters{flex-wrap:wrap;gap:4px;margin:0 0 8px;padding:0 2px;display:flex}.sticky-notes-filter{appearance:none;color:#6a3048;font:inherit;cursor:pointer;background:#ffffffb8;border:1px solid #c88ca066;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:.68rem;font-weight:750;line-height:1.2;display:inline-flex}.sticky-notes-filter.is-on{color:#0a5f62;background:#d8e9e9;border-color:#0d737759}.sticky-notes-filter-n{font-variant-numeric:tabular-nums;opacity:.75}.main:has(.spreadsheet-page){flex-grow:0}.main:has(.spreadsheet-page) .main-page{flex:none}.main:has(.spreadsheet-page) .sticky-notes-rail{z-index:auto;background:0 0;margin-top:16px;padding-top:12px;padding-bottom:16px}.sticky-notes-scroller{scrollbar-width:thin;flex-direction:row;align-items:flex-end;gap:12px;padding:12px 6px 8px;display:flex;overflow:auto visible}.sticky-note{background:linear-gradient(180deg, #ffffff59 0%, transparent 42%), var(--sticky-pink,#f9c2d0);color:#4a2030;width:148px;min-height:148px;transform:rotate(var(--sticky-tilt,0deg));transform-origin:50% 0;border-radius:2px 2px 3px 3px;flex:none;padding:18px 14px 12px;position:relative;box-shadow:inset 0 1px #ffffff73,0 8px 18px #280a142e,0 2px 4px #280a141f}.sticky-note:before{content:"";background:#ffffff61;border-radius:2px;width:42%;height:14px;position:absolute;top:-6px;left:50%;transform:translate(-50%)rotate(-1deg);box-shadow:0 1px 2px #00000014}.sticky-note.is-urgent{box-shadow:inset 0 1px #ffffff73,0 0 0 2px #e11d4859,0 8px 18px #280a142e}.sticky-note.is-due-today{box-shadow:inset 0 1px #ffffff73,0 0 0 2.5px #0d7377,0 8px 18px #0d737738}.sticky-note.is-done{opacity:.72;filter:saturate(.7)}.sticky-note.is-done .sticky-note-body{-webkit-text-decoration:line-through #4a203059;text-decoration:line-through #4a203059}.sticky-note-badges{flex-wrap:wrap;gap:4px;margin:0 0 6px;display:flex}.sticky-note-badge{letter-spacing:.02em;color:#6a3048;background:#ffffff8c;border-radius:999px;align-items:center;padding:2px 7px;font-size:.62rem;font-weight:800;line-height:1.2;display:inline-flex}.sticky-note-badge.is-today{color:#0a5f62;background:#d3e6e7;border:1px solid #0d73774d}.sticky-note-badge.is-due{background:#ffffff9e}.sticky-note-badge.is-done-mark{color:#3d6b4f;background:#ffffffb3}.sticky-note-due-field{color:#6a3048;flex-direction:column;gap:3px;margin:6px 0 4px;font-size:.68rem;font-weight:700;display:flex}.sticky-note-due-field input[type=date]{appearance:none;color:#4a2030;font:inherit;background:#ffffffb8;border:1px solid #4a20302e;border-radius:8px;min-height:34px;padding:6px 8px;font-size:.82rem;font-weight:600}.sticky-note-due-field input[type=date]:focus{outline-offset:1px;outline:2px solid #0d737773}.sticky-note-done-btn{appearance:none;color:#5a2840;font:inherit;cursor:pointer;background:#ffffffa6;border:1px solid #4a203038;border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:800;line-height:1.3}.sticky-note-done-btn:hover:not(:disabled){background:#ffffffe0}.sticky-note-done-btn.is-undone{border-style:dashed;font-weight:700}.sticky-note-done-btn:disabled{opacity:.5;cursor:default}.sticky-note-x{color:#7a3048;cursor:pointer;background:#ffffff8c;border:0;border-radius:999px;place-items:center;width:28px;height:28px;padding:0;font-size:1.15rem;line-height:1;display:grid;position:absolute;top:4px;right:4px}.sticky-note-x:hover{color:#e11d48;background:#fff}.sticky-note-body{word-break:break-word;white-space:pre-wrap;margin:0;font-size:.88rem;font-weight:600;line-height:1.35}.sticky-note-foot{color:#4a2030b8;justify-content:space-between;align-items:center;gap:6px;margin-top:auto;font-size:.68rem;font-weight:700;display:flex}.sticky-note-foot>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sticky-note.is-peeling{pointer-events:none;z-index:2;animation:.42s ease-in forwards sticky-note-peel}.sticky-note.is-editing{z-index:3;transform:rotate(0)}.sticky-note-edit{flex-direction:column;gap:8px;height:100%;display:flex}.sticky-notes-meta{justify-content:space-between;align-items:center;gap:8px;padding:0 8px;display:flex}.sticky-notes-archive-toggle{flex-shrink:0}.sticky-notes-archive{pointer-events:auto;background:#ffffffb8;border:1px solid #c88ca059;border-radius:8px;max-height:140px;margin:6px 8px 0;padding:8px 10px;overflow:auto}.sticky-notes-archive ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sticky-notes-archive li{flex-direction:column;gap:2px;display:flex}.sticky-archive-body{color:#4a2030;font-size:.8rem;font-weight:600}.sticky-undated-backdrop{z-index:150}.sticky-undated-banner{background:color-mix(in srgb, #f9c2d0 22%, var(--bg));border:1px solid #c88ca066;border-radius:12px;gap:8px;margin:0 0 12px;padding:12px 14px;display:grid}.sticky-undated-banner-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sticky-undated-banner-title{color:#4a2030;margin:0;font-size:.95rem;font-weight:800}.sticky-undated-banner-msg{margin:0}.sticky-undated-banner .sticky-undated-list{max-height:min(36dvh,280px)}.sticky-undated-modal{width:min(440px,100%);max-height:min(88dvh,640px);padding-bottom:max(16px, env(safe-area-inset-bottom,0px))}.sticky-undated-list{flex-direction:column;gap:10px;max-height:min(48dvh,360px);margin:12px 0 0;padding:0;list-style:none;display:flex;overflow:auto}.sticky-undated-item{background:color-mix(in srgb, #f9c2d0 35%, var(--bg));border:1px solid #c88ca059;border-radius:12px;padding:10px 12px}.sticky-undated-body{color:#4a2030;margin:0;font-size:.92rem;font-weight:650;line-height:1.35}.sticky-undated-meta{margin:4px 0 0}.sticky-undated-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.sticky-undated-date input[type=date]{appearance:none;color:#4a2030;font:inherit;background:#fffc;border:1px solid #4a20302e;border-radius:8px;max-width:100%;min-height:34px;padding:6px 8px;font-size:.82rem;font-weight:600}.sticky-undated-readonly{margin:6px 0 0}.sticky-undated-error{margin:10px 0 0}.sticky-undated-footer{margin-top:14px}@media (width<=899px){.sticky-undated-modal{border-radius:16px 16px 0 0;width:100%;max-height:min(92dvh,720px);margin-top:auto}.sticky-undated-backdrop{align-items:flex-end;padding:0}.sticky-undated-list{max-height:min(52dvh,420px)}}@keyframes sticky-note-peel{0%{opacity:1;transform:rotate(var(--sticky-tilt,0deg)) translateY(0) scale(1)}55%{opacity:.85;transform:rotate(calc(var(--sticky-tilt,0deg) + 12deg)) translateY(-18px) scale(1.02)}to{opacity:0;transform:rotate(calc(var(--sticky-tilt,0deg) + 28deg)) translateY(40px) scale(.92)}}.sticky-note-compose{z-index:2;flex-direction:column;gap:8px;width:180px;min-height:168px;display:flex}.sticky-note-compose textarea,.sticky-note-edit textarea{box-sizing:border-box;resize:vertical;color:#4a2030;caret-color:#4a2030;width:100%;height:96px;min-height:96px;font:inherit;pointer-events:auto;z-index:1;-webkit-user-select:text;user-select:text;background:#ffffff8c;border:1px dashed #4a203047;border-radius:4px;outline:none;flex:none;padding:8px;font-size:.86rem;font-weight:600;line-height:1.35;display:block;position:relative}.sticky-note-compose textarea::placeholder,.sticky-note-edit textarea::placeholder{color:#4a20306b;opacity:1}.sticky-note-compose textarea:focus,.sticky-note-edit textarea:focus{background:#ffffffb3;border-color:#4a203073}.sticky-note-compose-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sticky-note-urgent{cursor:pointer;align-items:center;gap:4px;font-size:.72rem;display:inline-flex}.sticky-note-add{color:#8a4058;cursor:pointer;width:88px;min-height:88px;font:inherit;background:#ffffff8c;border:2px dashed #c8788c8c;border-radius:4px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;display:flex;transform:rotate(-1deg)}.sticky-note-add span:first-child{font-size:1.6rem;font-weight:700;line-height:1}.sticky-note-add-label{font-size:.72rem;font-weight:600}.sticky-note-add:hover{background:#fff;border-color:#c86a84}.sticky-notes-hint{color:var(--muted);margin:0;font-size:.68rem}.sticky-notes-error{color:#b91c1c;margin:0 8px 4px;font-size:.78rem}@media (width<=899px){.sticky-notes-rail{padding-bottom:16px}.sticky-note{width:132px;min-height:132px}}@media (width>=900px){.sticky-notes-rail{padding-bottom:20px}}@media (prefers-reduced-motion:reduce){.sticky-note,.sticky-note-add{transform:none}.sticky-note.is-peeling{opacity:.4;animation:none}}.budget-readonly-hint{background:var(--surface-2);border-radius:8px;margin:0;padding:8px 12px}.budget-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.budget-tool-btn{background:var(--surface-2);color:var(--navy-soft);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.budget-tool-btn:hover:not(:disabled){background:var(--teal-soft);color:var(--teal-hover);border-color:#0d737740}.budget-tool-btn:disabled{opacity:.45;cursor:default}.budget-sheet-frame{--budget-border:var(--sheet-border,#e2e6eb);--budget-border-strong:var(--sheet-border-strong,#cfd6dd);--budget-header-bg:var(--sheet-header-bg,linear-gradient(180deg, #f4f7f9 0%, #eef2f5 100%));--budget-header-fg:var(--sheet-header-fg,#3a4f63);--budget-label-fg:var(--sheet-label-fg,var(--navy));--budget-row-default:#fff;--budget-row-default-alt:#fafbfc;--budget-row-section:#f0f4f7;--budget-row-total:var(--sheet-total-bg,var(--teal-soft));--budget-row-highlight:#e8f2f3;--budget-row-highlight-accent:var(--teal);--budget-focus:var(--sheet-focus,var(--teal));--budget-hover-wash:var(--sheet-hover-wash,#0d73770a);border:1px solid var(--budget-border-strong);background:var(--surface);box-shadow:var(--sheet-frame-shadow,0 1px 2px #0f27440a);border-radius:12px;overflow:hidden}.budget-sheet-frame.is-editing{overflow:hidden}.budget-sheet-scroll{max-height:min(78vh,900px);overflow:auto}@media (width>=900px){.budget-sheet-frame.is-editing,.budget-sheet-frame.is-editing .budget-sheet-scroll{overflow:visible}}.budget-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%;font-family:var(--font);color:var(--budget-label-fg);font-size:13px;line-height:1.3}.budget-col-label{width:min(380px,42vw)}.budget-col-rub,.budget-col-axis{width:112px}.budget-grid th,.budget-grid td{border-right:1px solid var(--budget-border);border-bottom:1px solid var(--budget-border);vertical-align:middle;background:var(--budget-row-default);padding:0}.budget-grid th:first-child,.budget-grid td:first-child{border-left:none}.budget-grid tr>:last-child{border-right:none}.budget-head-row th{z-index:2;background:var(--budget-header-bg);letter-spacing:.04em;text-transform:uppercase;height:40px;color:var(--budget-header-fg);text-align:center;border-bottom:1px solid var(--budget-border-strong);font-size:11px;font-weight:700;position:sticky;top:0;box-shadow:0 1px #0f27440a}.budget-th-label{background:var(--budget-header-bg)}.budget-th-num{background:#eef3f5}.budget-th-axis{color:var(--navy);background:#e8eef2}.budget-th-edit{justify-content:center;align-items:center;min-height:40px;padding:0 4px;display:flex;position:relative}.budget-th-input,.budget-label-field,.budget-num-input{width:100%;font:inherit;color:inherit;background:0 0;border:0;outline:none}.budget-th-input{text-align:center;text-transform:none;letter-spacing:0;padding:8px 4px;font-size:12px;font-weight:700}.budget-th-input:focus,.budget-label-field:focus,.budget-num-input:focus{background:0 0;border-radius:4px;box-shadow:inset 0 0 0 1.5px #0d73778c}.budget-sheet-frame.is-editing .budget-tr:hover>td{background-image:linear-gradient(var(--budget-hover-wash), var(--budget-hover-wash))}.budget-sheet-frame.is-editing .budget-tr-section-head:hover>td,.budget-sheet-frame.is-editing .budget-tr-spacer:hover>td{background-image:none}.budget-tr{height:auto;min-height:34px}.budget-grid td.budget-td-label{text-align:left;white-space:normal;text-overflow:clip;max-width:none;color:var(--budget-label-fg);letter-spacing:-.01em;padding:8px 16px 8px 18px;font-size:.9375rem;font-weight:600;line-height:1.4;overflow:visible}.budget-grid td.budget-td-label.is-indent{color:var(--budget-label-fg);padding-left:26px;font-weight:600}.budget-grid td.budget-td-label.is-synced{padding-right:52px;position:relative}.budget-synced-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--teal);pointer-events:none;background:#0d737714;border-radius:4px;padding:2px 5px;font-size:.65rem;font-weight:700;line-height:1.2;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.budget-grid td.budget-td-title{font-family:var(--font-brand);letter-spacing:-.02em;color:var(--navy);border-left:3px solid var(--budget-row-highlight-accent);padding:12px 18px;font-size:.95rem;font-weight:800}.budget-grid td.budget-td-tag{letter-spacing:.02em;color:var(--teal);padding:8px 18px;font-size:12px;font-weight:700}.budget-td-num{text-align:right;font-variant-numeric:tabular-nums;padding:2px 8px}.budget-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;padding:6px;display:block}.budget-num-input{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;min-height:30px;padding:6px}.budget-money-cell{position:relative}.budget-cell-history{z-index:20;background:var(--surface);border:1px solid var(--budget-border-strong);border-radius:10px;min-width:168px;max-width:240px;padding:6px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #0f27441f}.budget-cell-history-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:2px 8px 6px;font-size:.68rem;font-weight:700;display:block}.budget-cell-history-item{width:100%;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:7px 8px;font-size:.8125rem;display:flex}.budget-cell-history-item:hover{background:var(--budget-hover-wash)}.budget-cell-history-when{color:var(--muted);white-space:nowrap;font-weight:600}.budget-cell-history-val{font-variant-numeric:tabular-nums;color:var(--navy);white-space:nowrap;font-weight:700}.budget-sheet-frame.is-editing .budget-tr:has(.budget-money-cell.is-open)>td{z-index:12;position:relative;overflow:visible}.budget-grid .tone-default>td{background:var(--budget-row-default)}.budget-grid .tone-section>td{background:var(--budget-row-section)}.budget-grid .tone-section .budget-td-label{color:var(--budget-label-fg);font-weight:700}.budget-grid .tone-total>td{background:var(--budget-row-total)}.budget-grid .tone-total .budget-td-label,.budget-grid .tone-total .budget-num{color:var(--teal-hover);font-weight:700}.budget-grid .is-result-pos>td{background:#ecfdf3}.budget-grid .is-result-pos .budget-td-label,.budget-grid .is-result-pos .budget-num{color:#15803d}.budget-grid .is-result-neg>td{background:#fef2f2}.budget-grid .is-result-neg .budget-td-label,.budget-grid .is-result-neg .budget-num{color:#b91c1c}.budget-grid .tone-highlight>td{background:var(--budget-row-highlight)}.budget-grid .is-expenses-total>td{background:#fff2cc}.budget-grid .is-expenses-total .budget-td-label,.budget-grid .is-expenses-total .budget-num{font-weight:700}.budget-tr-section-head td{border-right:none;border-bottom:1px solid var(--budget-border-strong);background:linear-gradient(#f5f8fa 0%,#eef3f6 100%);padding:0}.budget-td-section{padding:10px 18px 8px!important}.budget-section-label{font-family:var(--font-brand);letter-spacing:.08em;text-transform:uppercase;color:var(--navy-soft);align-items:center;gap:8px;font-size:.72rem;font-weight:800;display:inline-flex}.budget-section-label:before{content:"";background:var(--teal);border-radius:2px;flex-shrink:0;width:3px;height:12px}.budget-grid .tone-spacer>td,.budget-grid .budget-tr-spacer td{border-right:none;border-bottom:1px solid var(--budget-border);background:#f7f9fa;height:18px;padding:0}.budget-spacer-rule{background:0 0;height:1px;margin:0 18px;display:block}.budget-label-wrap{align-items:center;gap:4px;min-width:0;padding-right:2px;display:flex;position:relative}.budget-label-field{text-align:left;min-width:0;font-weight:inherit;border-radius:4px;flex:1;padding:4px 2px}.budget-hover-actions{opacity:0;pointer-events:none;flex-shrink:0;gap:1px;transition:opacity .14s,transform .14s;display:inline-flex;transform:translate(4px)}.budget-sheet-frame.is-editing .budget-th-axis:hover .budget-hover-actions,.budget-sheet-frame.is-editing .budget-tr:hover .budget-hover-actions{opacity:1;pointer-events:auto;transform:translate(0)}.budget-icon-btn{color:#0f274473;width:20px;height:20px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;font-size:13px;font-weight:600;line-height:1;transition:background .12s,color .12s;display:grid}.budget-icon-btn:hover:not(:disabled){color:var(--teal-hover);background:#0d73771f}.budget-icon-btn.is-danger:hover:not(:disabled){color:var(--err);background:#b423181a}.budget-icon-btn:disabled{opacity:.35;cursor:default}.budget-spacer-actions{opacity:0;gap:6px;padding:0 12px;transition:opacity .14s;display:flex}.budget-sheet-frame.is-editing .budget-tr-spacer:hover .budget-spacer-actions{opacity:1}@media (width<=700px){.budget-col-label{width:min(280px,58vw)}.budget-col-rub,.budget-col-axis{width:88px}.budget-grid{font-size:12px}}.budget-year-recap{border:1px solid var(--line,#e2e6eb);background:linear-gradient(#fafbfc 0%,#f4f7f9 100%);border-radius:10px;margin-top:18px;padding:14px 16px 16px}.budget-year-recap-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;margin-bottom:12px;display:flex}.budget-year-recap-title{color:var(--navy,#0f2744);margin:0 0 4px;font-size:1.05rem;font-weight:650}.budget-year-recap-nav{flex-shrink:0;align-items:center;gap:6px;display:flex}.budget-year-recap-year{text-align:center;font-variant-numeric:tabular-nums;min-width:3.2em;color:var(--navy,#0f2744)}.budget-year-recap-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.budget-year-recap-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:640px;font-size:13px}.budget-year-recap-table th,.budget-year-recap-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #0f274414;padding:6px 8px}.budget-year-recap-table th:first-child,.budget-year-recap-table td:first-child,.budget-year-recap-table th[scope=row]{text-align:left;color:var(--muted,#5a6b7d);font-weight:550}.budget-year-recap-table thead th{color:var(--muted,#5a6b7d);border-bottom-color:#0f274424;font-weight:550}.budget-year-recap-month-btn{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;margin:0;padding:2px 4px;font-weight:600}.budget-year-recap-month-btn:hover{color:var(--teal,#0d7377);background:#0d73771a}.budget-year-recap-month-btn.is-current{background:var(--teal-soft,#d8eeef);color:var(--teal,#0d7377)}.budget-year-recap-table .is-positive{color:#1a7a4c}.budget-year-recap-table .is-negative{color:#b42318}.budget-year-recap-table .is-empty{color:var(--muted,#5a6b7d);opacity:.7}.budget-year-recap-table tbody tr:last-child th,.budget-year-recap-table tbody tr:last-child td{border-bottom:0;font-weight:600}.spreadsheet-page{--sheet-border:#e2e6eb;--sheet-border-strong:#cfd6dd;--sheet-header-bg:linear-gradient(180deg, #f4f7f9 0%, #eef2f5 100%);--sheet-header-fg:#3a4f63;--sheet-label-fg:var(--navy);--sheet-focus:var(--teal);--sheet-hover-wash:#0d73770a;--sheet-total-bg:var(--teal-soft);--sheet-frame-shadow:0 1px 2px #0f27440a}.spreadsheet-page.is-expanded{z-index:80;padding:12px 16px calc(12px + env(safe-area-inset-bottom));box-sizing:border-box;background:var(--bg,#f4f6f8);flex-direction:column;gap:10px;width:100%;max-width:none;height:100%;margin:0;display:flex;position:fixed;inset:0;overflow:auto}.spreadsheet-page.is-expanded .page-header{flex-shrink:0}.spreadsheet-page.is-expanded .budget-sheet-frame,.spreadsheet-page.is-expanded .hh-sheet-frame{min-height:0;box-shadow:none;border-color:var(--line);flex-direction:column;flex:auto;display:flex}.spreadsheet-page.is-expanded .budget-sheet-scroll,.spreadsheet-page.is-expanded .hh-sheet-scroll{flex:auto;height:auto;min-height:0;max-height:none}.spreadsheet-page.is-expanded .budget-toolbar{flex-shrink:0}.spreadsheet-page.is-expanded .excel-sheet.table-wrap,.spreadsheet-page.is-expanded .table-wrap.excel-sheet{flex:auto;min-height:0;max-height:none}@media (width<=700px){.spreadsheet-page.is-expanded{padding:10px 10px calc(10px + env(safe-area-inset-bottom))}}.hh-sheet-frame{--budget-border:var(--sheet-border);--budget-border-strong:var(--sheet-border-strong);--budget-focus:var(--sheet-focus);--budget-hover-wash:var(--sheet-hover-wash);border:1px solid var(--sheet-border-strong);background:var(--surface);box-shadow:var(--sheet-frame-shadow);border-radius:12px;overflow:hidden}.hh-sheet-scroll{max-height:min(78vh,900px);overflow:auto}.hh-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%;font-family:var(--font);color:var(--sheet-label-fg);font-size:13px;line-height:1.3}.hh-col-label{width:340px}.hh-col-num{width:112px}.hh-grid th,.hh-grid td{border-right:1px solid var(--sheet-border);border-bottom:1px solid var(--sheet-border);vertical-align:middle;background:#fff;padding:0}.hh-grid th:first-child,.hh-grid td:first-child{border-left:none}.hh-grid tr>:last-child{border-right:none}.hh-head th{z-index:2;background:var(--sheet-header-bg);letter-spacing:.04em;text-transform:uppercase;text-align:center;height:40px;color:var(--sheet-header-fg);border-bottom:1px solid var(--sheet-border-strong);font-size:11px;font-weight:700;position:sticky;top:0;box-shadow:0 1px #0f27440a}.hh-th-label{background:var(--sheet-header-bg)}.hh-th-num{background:#eef3f5}.hh-th-edit{justify-content:center;align-items:center;gap:4px;min-height:40px;padding:0 4px;display:flex;position:relative}.hh-th-input,.hh-label-input,.hh-num-input{width:100%;font:inherit;color:inherit;background:0 0;border:0;border-radius:4px;outline:none}.hh-th-input{text-align:center;text-transform:none;letter-spacing:0;padding:8px 4px;font-size:12px;font-weight:700}.hh-th-input:focus,.hh-label-input:focus,.hh-num-input:focus{background:0 0;box-shadow:inset 0 0 0 1.5px #0d73778c}.hh-row{height:34px}.hh-sheet-frame.is-editing .hh-row:hover>td{background-image:linear-gradient(var(--sheet-hover-wash), var(--sheet-hover-wash))}.hh-sheet-frame.is-editing .hh-total:hover>td{background-image:none}.hh-sheet-frame.is-editing .hh-row:hover .budget-hover-actions,.hh-sheet-frame.is-editing .hh-th-num:hover .budget-hover-actions{opacity:1;pointer-events:auto;transform:translate(0)}.hh-grid td.hh-td-label{text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:340px;color:var(--sheet-label-fg);background:#fff;padding:7px 16px 7px 18px;font-weight:600;overflow:hidden}.hh-label-input{text-align:left;padding:4px 2px}.hh-td-num{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;background:#fff;padding:2px 8px}.hh-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;padding:6px;display:block}.hh-num-input{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;min-height:30px;padding:6px}.hh-total td{color:var(--teal-hover);font-weight:700;background:var(--sheet-total-bg)!important}.hh-num-total{color:var(--teal-hover);font-weight:700}.hh-empty td{text-align:center;color:var(--muted);background:var(--surface-2);border-right:none;padding:18px}.hh-suggest{flex:1;min-width:0;position:relative}.hh-suggest-list{border:1px solid var(--sheet-border-strong);max-height:220px;box-shadow:var(--shadow);background:#fff;border-radius:8px;margin:0;padding:4px 0;list-style:none;overflow:auto}.hh-suggest-list-portal{z-index:10050;position:fixed}.hh-suggest-item{text-align:left;width:100%;font:inherit;color:var(--navy);cursor:pointer;background:0 0;border:0;padding:7px 12px;font-size:12px;display:block}.hh-suggest-item:hover{background:var(--teal-soft)}@media (width<=700px){.hh-col-label{width:200px}.hh-col-num{width:88px}.hh-grid{font-size:12px}}.export-folder-card{border:1px solid var(--line);background:linear-gradient(180deg, #fff, var(--surface-2));border-radius:14px;gap:10px;max-width:520px;padding:16px 18px;display:grid;box-shadow:inset 0 1px #ffffffd9,0 2px 10px #0f27440a}.export-folder-card.is-compact{max-width:none}.export-folder-title{font-family:var(--font-brand);letter-spacing:-.01em;margin:0 0 4px;font-size:1.05rem;font-weight:700}.export-folder-current{margin:8px 0 0;font-size:.92rem}.export-folder-actions{flex-wrap:wrap;gap:8px;display:flex}.archive-period-picks{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px;display:grid}.archive-period-picks .btn{min-height:36px;box-shadow:none;border:0;justify-content:center;padding:6px 8px;font-size:.82rem}.archive-period-picks .btn.ghost{background:0 0}.archive-period-field{gap:4px;max-width:240px;font-size:.88rem;display:grid}.settings-account{gap:16px}.settings-account-feel{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;display:flex}.settings-account-feel input{margin-top:3px}.settings-account-feel span{gap:2px;display:grid}.settings-account-feel strong{font-size:.92rem}.settings-account-id{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:4px 2px 14px;display:flex}.settings-account-id h2{font-family:var(--font-brand);letter-spacing:-.02em;margin:0;font-size:1.2rem}.settings-account-id .muted{margin:4px 0 0}.settings-account-avatar{background:linear-gradient(180deg, var(--teal), var(--teal-hover));color:#fff;width:48px;height:48px;font-family:var(--font-brand);border-radius:14px;flex-shrink:0;place-items:center;font-size:1.15rem;font-weight:800;display:grid;box-shadow:0 8px 18px #0d737738}.settings-account-grid{gap:14px;min-width:0;display:grid}.settings-account-card,.settings-account-grid>.export-folder-card{min-width:0;max-width:none;height:100%}.settings-account-card h2{font-family:var(--font-brand);letter-spacing:-.01em;margin:0;font-size:1.05rem}.settings-account-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-account-card-head .muted{margin:6px 0 0}.settings-account-status{white-space:nowrap;letter-spacing:.02em;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:.72rem;font-weight:700}.settings-account-status.is-on{color:var(--ok);background:var(--ok-soft);border:1px solid #0d737738}.settings-account-status.is-hint{color:var(--muted);background:var(--surface-2);border:1px solid var(--line)}.settings-account-inline-btn{align-self:flex-start}.settings-account-guide{margin:0;padding-left:18px;line-height:1.55}.settings-account-codes{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;margin:0;padding:12px 14px;font-size:.9rem;line-height:1.65}.settings-account-actions{flex-wrap:wrap;gap:8px;display:flex}.settings-account-manual{margin:0}.settings-account-manual summary{cursor:pointer}.settings-account-manual .stack-sm{margin-top:8px}@media (width>=860px){.settings-account-grid{grid-template-columns:1fr 1fr;align-items:start}}@container settings-main (width>=640px){.settings-account-grid{grid-template-columns:1fr 1fr;align-items:start}}.sessions-card{margin-bottom:4px}.sessions-qr-cta{border:1px solid color-mix(in srgb, var(--teal,#2a9d8f) 35%, var(--line));background:color-mix(in srgb, var(--teal,#2a9d8f) 10%, var(--surface));border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.sessions-qr-cta p{margin:4px 0 0}.sessions-toolbar{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.sessions-toolbar select{min-width:220px}.sessions-group-head{flex-wrap:wrap;align-items:baseline;gap:8px 12px;display:flex}.sessions-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sessions-item{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.sessions-item.is-current{background:#0d737714;border-color:#0d737759}.sessions-item-main{flex:1;min-width:0}.sessions-item-title{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.sessions-item-title strong{font-weight:600}.sessions-kind,.sessions-badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 7px;font-size:.75rem}.sessions-badge{color:#0a5a5e;background:#0d73771f;border-color:#0d737759}.btn.danger-soft{color:#b42318}.btn.danger-soft:hover:not(:disabled){background:#b4231814}.sessions-fresh-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.9rem;display:flex}.sessions-fresh-toggle input{margin:0}.sessions-badge.is-live{color:#146e3c;background:#228c501f;border-color:#228c5066}.sessions-badge.is-trusted{color:#8c5a0a;background:#dcaa2829;border-color:#b4781473}.sessions-item-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.sessions-item.is-idle:not(.is-current){opacity:.78}.session-qr-modal{width:min(420px,100vw - 32px);max-width:420px}.session-qr-link{word-break:break-all;margin:0;font-size:.75rem}@media (width<=520px){.archive-period-picks{grid-template-columns:1fr 1fr}}.staff-archive-banner{background:#0d737714;border:1px solid #0d737747;border-radius:12px;gap:10px;margin:0 0 12px;padding:12px 14px;display:grid}.staff-archive-banner p{margin:0}.drawer-panel.confirm-modal.staff-archive-modal{width:min(420px,100vw - 32px);max-width:420px}.staff-archive-command{left:0;right:0;bottom:var(--mobile-nav-clearance);z-index:45;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);background:#fffffff7;gap:8px;padding:12px 14px 10px;display:grid;position:fixed;box-shadow:0 -6px 24px #0f27441a}.staff-archive-command-title{color:var(--navy);margin:0;font-size:.95rem;font-weight:800}.staff-archive-command-msg{margin:0;line-height:1.35}.staff-archive-command-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.staff-archive-command-actions .btn.primary{flex:auto;min-width:0}@media (width>=900px){.staff-archive-command{display:none}}.price-list-page{max-width:1120px;margin:0 auto;padding:0 4px 32px}.price-list-page--compact .price-list-hero{padding-top:8px}.price-list-hero{text-align:center;padding:12px 8px 20px}.price-list-brand{background:var(--teal-soft);width:56px;height:56px;color:var(--teal);letter-spacing:.04em;border-radius:999px;justify-content:center;align-items:center;margin-bottom:12px;font-size:.72rem;font-weight:800;display:inline-flex}.price-list-hero h1,.price-list-hero__title-input{color:var(--navy);margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.1rem)}.price-list-hero__subtitle,.price-list-hero__subtitle-input{color:var(--muted);margin:0;font-size:.98rem}.price-list-hero__title-input,.price-list-hero__subtitle-input,.price-list-card__title-input{text-align:center;border:1px solid var(--line);width:100%;max-width:520px;font:inherit;border-radius:10px;padding:8px 12px}.price-list-chips{z-index:5;background:linear-gradient(180deg, var(--bg) 70%, transparent);flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px;padding:8px 0;display:flex;position:sticky;top:0}.price-list-chip{color:var(--teal);background:#fff;border:1px solid #0d737740;border-radius:999px;padding:6px 12px;font-size:.86rem;font-weight:600;text-decoration:none}.price-list-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.price-list-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:16px 16px 14px;box-shadow:0 8px 24px #0f172a0a}.price-list-card--wide{grid-column:1/-1}.price-list-card--edit{border-color:#0d737759;box-shadow:0 0 0 2px #0d737714}.price-list-card__title{color:var(--teal);margin:0 0 12px;font-size:1.02rem;font-weight:800}.price-list-card__title-input{text-align:left;color:var(--teal);margin-bottom:10px;font-weight:800}.price-list-card__rows{gap:8px;display:grid}.price-list-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:8px;font-size:.92rem;display:grid}.price-list-row__label{color:var(--navy)}.price-list-row__hint{color:var(--muted);font-size:.86rem}.price-list-row__dots{border-bottom:1px dotted #0f172a2e;min-width:12px;margin-bottom:4px}.price-list-row__price{font-variant-numeric:tabular-nums;color:var(--navy);white-space:nowrap;font-weight:700}.price-list-edit-row{grid-template-columns:1fr .8fr 100px auto;align-items:center;gap:6px;display:grid}.price-list-edit-row input{border:1px solid var(--line);font:inherit;border-radius:8px;padding:6px 8px}.price-list-add{width:100%;margin-top:10px}.price-list-remove{min-width:36px;padding-inline:8px}.price-list-extras{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:18px;display:grid}.price-list-extra-card{border:1px solid var(--line);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.price-list-extra-label{color:var(--navy);font-weight:600}.price-list-extra-price{color:var(--teal);white-space:nowrap;font-weight:800}.price-list-extra-edit{grid-template-columns:1fr .8fr 90px auto;align-items:center;gap:6px;display:grid}.price-list-extra-edit input{border:1px solid var(--line);border-radius:8px;padding:6px 8px}.price-list-notes{border:1px solid var(--line);background:#0f172a08;border-radius:14px;margin-top:22px;padding:16px}.price-list-notes h3{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:.95rem}.price-list-notes ul{color:var(--muted);margin:0;padding-left:18px;font-size:.9rem}.price-list-notes textarea{border:1px solid var(--line);width:100%;font:inherit;border-radius:10px;padding:10px 12px}.price-list-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.price-list-toolbar__title{margin:0 0 4px;font-weight:700}.price-list-public-foot{text-align:center;margin-top:16px}.price-list-history{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px 16px}.price-list-history h3{margin:0 0 10px;font-size:.95rem}.price-list-history ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.price-list-history li{gap:2px;font-size:.9rem;display:grid}.price-list-history__when{color:var(--muted);font-size:.8rem}.price-list-history__who{color:var(--navy);font-weight:700}.price-list-history__what{color:var(--navy)}.public-price-list-shell.is-embed,.price-list-shell.is-embed{background:0 0;min-height:auto;padding:8px}.schedule-share-modal textarea{width:100%;font:inherit;border:1px solid var(--line);resize:vertical;border-radius:10px;padding:8px 10px;font-size:.82rem}@media (width<=700px){.price-list-edit-row,.price-list-extra-edit{grid-template-columns:1fr}.price-list-row{grid-template-columns:1fr auto}.price-list-row__dots{display:none}}.price-list-public-actions{justify-content:flex-end;margin-bottom:8px;display:flex}.price-list-preview-banner{color:var(--navy);background:#0d73771a;border:1px solid #0d737738;border-radius:12px;margin:0;padding:10px 12px;font-size:.9rem;font-weight:600}.price-list-card__head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.price-list-card__head .price-list-card__title-input{flex:1;min-width:160px;margin-bottom:0}.price-list-drag-wrap{cursor:grab;-webkit-user-select:none;user-select:none;display:inline-flex}.price-list-drag-wrap:active{cursor:grabbing}.price-list-drag{width:28px;color:var(--muted);letter-spacing:-2px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.price-list-row-tools{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.price-list-icon{min-width:36px;padding-inline:8px}.price-list-icon.is-off,.btn.ghost.is-off{opacity:.55}.price-list-edit-row{grid-template-columns:auto 1fr .8fr 100px auto}.price-list-extra-edit{grid-template-columns:auto 1fr .8fr 90px auto auto}.price-list-card.is-hidden,.price-list-edit-row.is-hidden,.price-list-extra-edit.is-hidden{opacity:.48}.price-list-card.is-drop,.price-list-edit-row.is-drop{outline:2px dashed var(--teal)}.price-list-add-section{width:100%;margin-top:12px}.price-list-toolbar .btn.on{border-color:var(--teal);color:var(--teal);background:#0d737714}@media print{body{background:#fff!important}.sidebar,.mobile-top,.mobile-nav,.staff-archive-banner,.no-print,.sticky-notes-rail,.settings-flash,.notif-toast-stack{display:none!important}.app-body,.main,.main-page,.price-list-shell,.public-price-list-shell{max-width:none!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:0!important}.price-list-page{max-width:none;padding:0}.price-list-hero{padding:0 0 12px}.price-list-chips{background:0 0;position:static}.price-list-grid{grid-template-columns:1fr 1fr;gap:10px}.price-list-card,.price-list-extra-card,.price-list-notes{box-shadow:none;break-inside:avoid}.price-list-brand{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.hall-rental-shell{max-width:960px;margin:0 auto}.public-hall-rental-shell{background:linear-gradient(#f4fbfb 0%,#fff 240px);min-height:100vh;padding:24px 16px 40px}.hall-rental-page{background:#fff;border-radius:20px;padding:28px 24px 32px;box-shadow:0 12px 40px #00505014}.hall-rental-page--compact .hall-rental-hero{padding-top:8px}.hall-rental-hero{text-align:center;border-bottom:1px solid var(--line);margin-bottom:28px;padding:12px 8px 28px}.hall-rental-brand{background:var(--teal,#0d7377);color:#fff;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin:0 0 12px;padding:6px 14px;font-size:.78rem;font-weight:700;display:inline-block}.hall-rental-hero h1,.hall-rental-hero__title-input{letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800}.hall-rental-hero__subtitle,.hall-rental-hero__subtitle-input{color:var(--muted);margin:0;font-size:1rem}.hall-rental-hero__title-input,.hall-rental-hero__subtitle-input{text-align:center;border:1px solid var(--line);width:100%;max-width:520px;font:inherit;border-radius:10px;padding:8px 12px}.hall-rental-block+.hall-rental-block{margin-top:32px}.hall-rental-section-head{align-items:center;gap:12px;margin-bottom:18px;display:flex}.hall-rental-section-head h2{letter-spacing:.06em;text-transform:uppercase;color:var(--teal,#0d7377);white-space:nowrap;margin:0;font-size:.95rem;font-weight:800}.hall-rental-section-head__line{background:linear-gradient(90deg, var(--teal,#0d7377), transparent);flex:1;height:2px}.hall-rental-section-head__icon{background:var(--teal,#0d7377);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:.95rem;display:grid}.hall-rental-rooms{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.hall-rental-room{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;padding:20px 16px}.hall-rental-room--edit{flex-direction:column;gap:8px;display:flex}.hall-rental-room.is-hidden{opacity:.45}.hall-rental-room__icon{margin-bottom:8px;font-size:1.6rem}.hall-rental-room h3{margin:0 0 4px;font-size:1rem;font-weight:700}.hall-rental-room__area{color:var(--teal,#0d7377);margin:0 0 12px;font-weight:600}.hall-rental-room__price{margin:0}.hall-rental-room__price strong{color:var(--teal,#0d7377);font-size:1.5rem}.hall-rental-room__price span{color:var(--muted);font-size:.95rem}.hall-rental-table-wrap{border:1px solid var(--line);border-radius:14px;overflow-x:auto}.hall-rental-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.92rem}.hall-rental-table thead th{background:var(--teal,#0d7377);color:#fff;text-align:left;padding:12px 10px;font-weight:700;position:sticky;top:0}.hall-rental-table tbody td{border-top:1px solid var(--line);vertical-align:middle;padding:12px 10px}.hall-rental-table tbody tr:nth-child(2n) td{background:#f8fbfb}.hall-rental-pkg-hours{align-items:center;gap:6px;font-weight:700;display:inline-flex}.hall-rental-price-was{color:var(--muted);margin-right:6px;text-decoration:line-through}.hall-rental-price-now{color:var(--teal,#0d7377);font-size:1.05rem}.hall-rental-discount{color:var(--teal,#0d7377);font-weight:700}.hall-rental-terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.hall-rental-term{align-items:flex-start;gap:12px;display:flex}.hall-rental-term__icon{background:var(--teal,#0d7377);color:#fff;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:1rem;display:grid}.hall-rental-term p{margin:8px 0 0;line-height:1.45}.hall-rental-term--edit{border:1px dashed var(--line);border-radius:12px;flex-direction:column;padding:12px}.hall-rental-term--edit.is-hidden{opacity:.45}.hall-rental-term--edit select,.hall-rental-term--edit textarea,.hall-rental-edit-title,.hall-rental-edit-area,.hall-rental-edit-cell,.hall-rental-edit-prices input{border:1px solid var(--line);width:100%;font:inherit;border-radius:8px;padding:8px 10px}.hall-rental-edit-prices{flex-direction:column;gap:4px;display:flex}.hall-rental-edit-price{align-items:center;gap:8px;display:flex}.hall-rental-edit-actions{flex-wrap:wrap;gap:6px;display:flex}.hall-rental-edit-row-actions{white-space:nowrap}.hall-rental-add{margin-top:12px}.hall-rental-remove{color:var(--danger,#b42318)}.hall-rental-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.hall-rental-toolbar__title{margin:0 0 4px;font-weight:700}.hall-rental-public-actions{justify-content:flex-end;margin-bottom:8px;display:flex}.hall-rental-public-foot{text-align:center;margin-top:16px}.hall-rental-drag{cursor:grab;color:var(--muted);-webkit-user-select:none;user-select:none;letter-spacing:-2px;font-size:.85rem}.hall-rental-drag-wrap{align-items:center;display:inline-flex}.hall-rental-edit-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.hall-rental-row-tools{gap:4px;display:flex}.hall-rental-room.is-drop,.hall-rental-term.is-drop,.hall-rental-table tr.is-drop td{outline:2px dashed var(--teal,#0d7377);outline-offset:-2px}.hall-rental-preview-banner{color:#0d4f52;background:#e8f6f6;border-radius:10px;margin:0;padding:10px 14px;font-size:.92rem}.hall-rental-history{border:1px solid var(--line);background:var(--panel,#fff);border-radius:12px;padding:14px 16px}.hall-rental-history h3{margin:0 0 10px;font-size:1rem}.hall-rental-history ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hall-rental-history li{grid-template-columns:auto auto 1fr;gap:10px;font-size:.9rem;display:grid}.hall-rental-history__when{color:var(--muted);white-space:nowrap}.hall-rental-history__who{white-space:nowrap;font-weight:600}.public-hall-rental-shell.is-embed{background:#fff;min-height:auto;padding:12px}.hall-rental-shell.is-embed{max-width:none}@media (width<=720px){.hall-rental-rooms,.hall-rental-terms{grid-template-columns:1fr}.hall-rental-page{border-radius:14px;padding:20px 14px 24px}}@media print{.hall-rental-toolbar,.hall-rental-public-actions,.hall-rental-public-foot,.hall-rental-add,.hall-rental-edit-actions,.hall-rental-edit-row-actions,.hall-rental-preview-banner,.hall-rental-history,.hall-rental-drag-wrap{display:none!important}.public-hall-rental-shell{max-width:none!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:0!important}.hall-rental-page{max-width:none;box-shadow:none;border-radius:0;padding:0}.hall-rental-hero{margin-bottom:16px;padding:0 0 12px}.hall-rental-rooms,.hall-rental-terms{grid-template-columns:1fr 1fr;gap:10px}.hall-rental-room,.hall-rental-term,.hall-rental-table-wrap{break-inside:avoid}.hall-rental-brand,.hall-rental-table thead th,.hall-rental-term__icon,.hall-rental-section-head__icon{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.public-doc-history{border:1px solid var(--line);background:var(--panel,#fff);border-radius:12px;padding:14px 16px}.public-doc-history h3{margin:0 0 10px;font-size:1rem}.public-doc-history ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.public-doc-history li{grid-template-columns:auto auto 1fr;gap:10px;font-size:.9rem;display:grid}.public-doc-history__when{color:var(--muted);white-space:nowrap}.public-doc-history__who{white-space:nowrap;font-weight:600}.public-doc-cross-links{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;display:flex}.public-doc-cross-links__sep{opacity:.5}.public-doc-public-foot{margin-top:16px}.help-public-docs{margin-bottom:16px}.help-public-docs__label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px;font-size:.85rem;font-weight:700}.help-public-docs__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.help-public-docs__card{border:1px solid var(--line);color:inherit;border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.help-public-docs__card:hover{border-color:var(--teal,#0d7377);box-shadow:0 4px 16px #0d737714}@media print{.public-doc-cross-links,.public-doc-history,.help-public-docs{display:none!important}}.lockers-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.lockers-toolbar__title{margin:0 0 4px;font-weight:700}.lockers-search{flex-direction:column;gap:4px;min-width:220px;display:flex}.lockers-alert{background:#eef6f6;border-radius:10px;padding:10px 14px;font-size:.92rem}.lockers-alert--overdue{color:#7a1f1a;background:#fdecea}.lockers-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.lockers-boards{flex-direction:column;gap:20px;display:flex}.locker-zone{border-radius:16px;padding:16px}.locker-zone--women{background:linear-gradient(#e8f4fb 0%,#f7fbfe 48px);border:1px solid #b7d7ea}.locker-zone--men{background:linear-gradient(#f3ece4 0%,#fbf8f4 48px);border:1px solid #d2bba4}.locker-zone__head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.locker-zone__head h2{margin:0;font-size:1.05rem}.locker-grid{contain:layout style;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;display:grid}.locker-card{cursor:pointer;min-height:58px;font:inherit;color:inherit;transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);background:#fff;border:1px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:6px 4px;display:flex}.locker-card:active{transform:scale(var(--motion-press))}.locker-card__num{font-size:1rem;font-weight:800}.locker-card__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--muted);font-size:.68rem;line-height:1.15;overflow:hidden}.locker-card--free{border-color:#c5d4c8}.locker-zone--women .locker-card--free{background:#f3fafd;border-color:#9ec9e0}.locker-zone--men .locker-card--free{background:#faf4ee;border-color:#cbb197}.locker-card--reserved{background:#e7f3ff;border-color:#7eb6e0}.locker-card--occupied{background:#fff4d6;border-color:#e0c36a}.locker-card--pending_return{background:#fff8e6;border-color:#d4a017}.locker-card--overdue{background:#fde8e6;border-color:#d97a72}.locker-card--out_of_service{opacity:.7;background:#ececec;border-color:#c8c8c8}.locker-card.is-selected{outline:2px solid var(--teal,#0d7377);outline-offset:1px}.lockers-detail{flex-direction:column;gap:10px;display:flex;position:sticky;top:12px}.lockers-detail__head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.lockers-detail__num{margin:0;font-size:1.4rem;font-weight:800}.lockers-detail__who{margin:0;line-height:1.4}.locker-status{margin:4px 0 0;font-size:.85rem;font-weight:700}.locker-status--free{color:#2f6b4f}.locker-status--reserved{color:#1d5f8a}.locker-status--occupied{color:#8a6408}.locker-status--pending_return{color:#9a6700}.locker-status--overdue{color:#b42318}.locker-status--out_of_service{color:#666}.lockers-mode,.lockers-dates{gap:8px;display:flex}.lockers-mode .btn.on{border-color:var(--teal,#0d7377);background:#e8f6f6}.lockers-dates label{flex:1}.lockers-toolbar__links{margin:6px 0 0}.lockers-toolbar__links a{color:inherit}.lockers-history{flex-direction:column;gap:10px;display:flex}.lockers-history__filters{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.lockers-history__list{max-height:280px;margin:0;padding:0;list-style:none;overflow:auto}.lockers-history__row{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;grid-template-columns:7.5rem 3rem minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:8px;padding:6px 4px;display:grid}.lockers-history__row:hover{background:#0d73770f}.lockers-history__row:active{transform:scale(var(--motion-press))}.lockers-sale,.lockers-freeze{flex-direction:column;gap:8px;display:flex}.lockers-sale__check{align-items:center;gap:8px;font-size:.88rem;display:flex}.lockers-events{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin:8px 0 0;padding:8px 0 0;font-size:.85rem;list-style:none;display:flex}@media (width<=899px){.lockers-layout{grid-template-columns:1fr}.lockers-detail{order:-1;position:static}.lockers-history__row{grid-template-rows:auto auto;grid-template-columns:1fr 1fr}.locker-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px}.locker-card{min-height:64px;padding:8px 4px}.locker-card__num{font-size:1.05rem}.locker-card__name{white-space:normal;-webkit-line-clamp:2;text-align:center;-webkit-box-orient:vertical;max-height:2.4em;font-size:.72rem;line-height:1.2;display:-webkit-box;overflow:hidden}}.public-lockers-shell{flex-direction:column;gap:16px;max-width:520px;min-height:100vh;margin:0 auto;padding:24px 16px 40px;display:flex}.public-lockers-shell.is-women{background:linear-gradient(#e8f4fb 0%,#fff 220px)}.public-lockers-shell.is-men{background:linear-gradient(#f3ece4 0%,#fff 220px)}.public-lockers-hero{text-align:center}.public-lockers-brand{background:var(--teal,#0d7377);color:#fff;letter-spacing:.08em;border-radius:999px;margin:0 0 8px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-block}.public-lockers-hero h1{margin:0 0 4px}.public-lockers-zones{gap:12px;display:grid}.public-lockers-zone-btn{border:1px solid var(--line);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;gap:4px;padding:22px 16px;display:flex}.public-lockers-zone-btn strong{font-size:1.2rem}.public-lockers-zone-btn.is-women{background:#f3fafd;border-color:#9ec9e0}.public-lockers-zone-btn.is-men{background:#faf4ee;border-color:#cbb197}.public-lockers-form,.public-lockers-main{flex-direction:column;gap:12px;display:flex}.public-lockers-hello{justify-content:space-between;align-items:baseline;gap:8px;margin:0;font-weight:700;display:flex}.public-lockers-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.public-lockers-cell{min-height:52px;font:inherit;cursor:pointer;background:#fff;border:1px solid #9ec9e0;border-radius:12px;font-size:1.05rem;font-weight:800}.public-lockers-shell.is-men .public-lockers-cell{border-color:#cbb197}.public-lockers-cell:disabled{opacity:.45}.public-lockers-mine{border:2px solid var(--teal,#0d7377);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;gap:2px;padding:14px;font-weight:700;display:flex}.public-lockers-mine span{color:var(--muted);font-size:.9rem;font-weight:500}.public-lockers-ticket{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;flex-direction:column;gap:10px;padding:20px 16px;display:flex}.public-lockers-ticket__num{color:var(--teal,#0d7377);margin:0;font-size:2.4rem;font-weight:800}.public-lockers-foot{text-align:center;margin-top:auto}.public-lockers-foot a{color:inherit}.public-lockers-badge{border:2px solid var(--teal,#0d7377);background:#fff;border-radius:14px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.public-lockers-badge.is-key{border-color:#c47a1a}.public-lockers-badge strong{font-size:1.05rem}.public-lockers-badge span{color:var(--muted);font-size:.88rem}.main:has(.schedule-v2-page){max-width:920px}.main:has(.schedule-v2-page--week){width:100%;max-width:none}.schedule-v2-page{flex-direction:column;gap:1rem;display:flex}.schedule-v2-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.schedule-v2-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 .25rem;font-size:.78rem}.schedule-v2-sub{color:var(--muted);max-width:42rem;margin:.35rem 0 0}.schedule-v2-notice{background:#fff8e6;border:1px solid #f0d48a;border-radius:12px;padding:.75rem 1rem;font-size:.92rem;line-height:1.45}.schedule-v2-notice--warn{background:#fff0f0;border-color:#f0a8a8}.schedule-v2-toolbar{flex-direction:column;gap:.65rem;display:flex}.schedule-v2-toolbar-row,.schedule-v2-meta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.schedule-v2-view-toggle{background:var(--surface-2,#eef2f7);border:1px solid var(--line,#dbe3ee);border-radius:12px;padding:3px;display:inline-flex}.schedule-v2-view-toggle button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;margin:0;padding:.35rem .85rem;font-size:.88rem;font-weight:700}.schedule-v2-view-toggle button.on{background:var(--surface,#fff);color:var(--navy,#1e293b);box-shadow:0 1px 3px #0f27441a}.schedule-v2-range{text-align:center;min-width:7.5rem;font-size:.98rem;font-weight:700}.schedule-v2-stats{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;display:flex}.schedule-v2-stat{font-size:.88rem}.schedule-v2-stat strong{font-size:1rem}.schedule-v2-date-nav{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.schedule-v2-date-nav.week-nav{align-items:center}.schedule-v2-date-label{margin-left:.35rem;font-size:1.05rem}.schedule-v2-sync-meta-wrap{text-align:right;flex-direction:column;align-items:flex-end;gap:.15rem;display:flex}.schedule-v2-sync-meta{color:var(--muted);margin:0;font-size:.88rem}.schedule-v2-sync-error{max-width:28rem;margin:0;font-size:.82rem}.schedule-v2-list{flex-direction:column;gap:.65rem;display:flex}.schedule-v2-card{border:1px solid #0000000f;border-left-width:4px;border-radius:14px;grid-template-columns:5.5rem 1fr;gap:.85rem;padding:.85rem 1rem;display:grid}.schedule-v2-card-time{color:var(--navy,#1e293b);font-size:.95rem;font-weight:700}.schedule-v2-card-title{margin:0;font-size:1rem}.schedule-v2-card-coach{color:var(--muted);align-items:center;gap:.45rem;margin:.25rem 0 0;font-size:.9rem;display:flex}.schedule-v2-coach-dot{color:#fff;border-radius:999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.65rem;font-weight:700;display:inline-flex}.schedule-v2-card-meta{flex-wrap:wrap;gap:.35rem;margin-top:.45rem;display:flex}.schedule-v2-badge{background:#ffffffd9;border:1px solid #00000014;border-radius:999px;padding:.15rem .5rem;font-size:.78rem;font-weight:600;display:inline-flex}.schedule-v2-badge.muted{color:var(--muted);font-weight:500}.schedule-v2-badge.warn{color:#9a3412;background:#fff4e5;border-color:#f0c987}.schedule-v2-empty{text-align:center;border:1px dashed var(--border,#cbd5e1);border-radius:14px;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1rem;display:flex}.schedule-v2-empty-hint{max-width:28rem;margin:0;font-size:.92rem}.schedule-v2-error{margin:0}.schedule-v2-filters{border:1px solid var(--line,#dbe3ee);background:var(--surface,#fff);border-radius:14px;flex-direction:column;gap:.55rem;padding:.75rem .85rem;display:flex}.schedule-v2-filters .filter-row{flex-wrap:wrap;align-items:flex-start;gap:.45rem .65rem;display:flex}.schedule-v2-filters .filter-row-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex:0 0 4.2rem;padding-top:.35rem;font-size:.72rem;font-weight:800}.schedule-v2-filters .filter-chips{flex-wrap:wrap;flex:1;gap:.35rem;min-width:0;display:flex}.schedule-v2-filters .legend-chip{border:1px solid var(--line,#dbe3ee);background:var(--surface,#fff);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;margin:0;padding:.28rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.schedule-v2-filters .legend-chip.on{border-color:var(--chip-color,var(--teal,#0d7377));box-shadow:inset 0 0 0 1px var(--chip-color,var(--teal,#0d7377))}.schedule-v2-filters .legend-dot{background:var(--chip-color,var(--teal,#0d7377));border-radius:999px;width:.55rem;height:.55rem}.schedule-v2-filters .chip-count{color:var(--muted);font-size:.68rem;font-weight:700}.schedule-v2-filters .filter-clear{align-self:flex-start;margin-top:.15rem}.schedule-v2-grid td.filter-empty{background:#fef3c759}.schedule-v2-grid-chip.is-dimmed{opacity:.35}.schedule-v2-free-slots{border:1px solid var(--line,#dbe3ee);background:linear-gradient(180deg, #f0fdf48c, var(--surface,#fff));border-radius:14px;flex-direction:column;gap:.65rem;padding:.75rem .85rem;display:flex}.schedule-v2-free-slots-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.schedule-v2-free-slots-toggle{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;align-items:baseline;gap:.45rem .75rem;padding:0;display:flex}.schedule-v2-free-slots-title{font-size:.95rem;font-weight:800}.schedule-v2-free-slots-summary{font-size:.82rem}.schedule-v2-free-slots-notice{margin:0;font-size:.82rem;line-height:1.45}.schedule-v2-free-slots-body{grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:.75rem 1rem;display:grid}.schedule-v2-free-day-title{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin:0 0 .35rem;font-size:.82rem;font-weight:800}.schedule-v2-free-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.schedule-v2-free-item{background:#ffffffb3;border:1px solid #dbe7eecc;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.28rem .45rem;font-size:.8rem;display:flex}.schedule-v2-free-item.is-both{background:#ecfdf5d9;border-color:#10b98159}.schedule-v2-free-time{font-variant-numeric:tabular-nums;font-weight:700}.schedule-v2-free-room{color:var(--teal,#0d7377);font-weight:700}.schedule-v2-free-room-short{display:none}.schedule-v2-free-blocked{margin-top:.45rem;font-size:.78rem}.schedule-v2-free-blocked summary{cursor:pointer;color:var(--muted)}.schedule-v2-free-list.blocked .schedule-v2-free-item{opacity:.85}.schedule-v2-free-empty-day,.schedule-v2-free-slots-empty{margin:0;font-size:.82rem}.schedule-v2-grid td.cell-free-both{background:#ecfdf559;box-shadow:inset 0 0 0 2px #10b98147}.schedule-v2-grid td.cell-free-large{box-shadow:inset 3px 0 #0e749073}.schedule-v2-grid td.cell-free-small{box-shadow:inset 3px 0 #d9770673}.schedule-v2-grid td.cell-free-none{background:#fef2f238}.schedule-v2-mobile{display:none}.schedule-v2-desktop{display:block}.spreadsheet-page .excel-grid.schedule-v2-grid,.excel-grid.schedule-v2-grid{--gs-header:linear-gradient(180deg, #dce8f8 0%, #c5d9f1 100%);--gs-header-solid:#c5d9f1;--gs-alt:#eef4fb;--gs-border:#b8c9dc;--gs-time-w:40px;table-layout:fixed;width:100%;min-width:0}.schedule-v2-page .excel-sheet.schedule-v2-desktop{border-radius:var(--radius,14px);border:1px solid var(--line-strong,#b8c9dc);box-shadow:var(--shadow,0 8px 24px #0f274414);max-height:min(84vh,980px);overflow:auto}.schedule-v2-grid th,.schedule-v2-grid td{border-color:var(--gs-border);text-align:center;vertical-align:top;min-width:0;width:calc((100% - (2 * var(--gs-time-w))) / 7);padding:3px}.schedule-v2-grid thead th{z-index:2;background:var(--gs-header-solid);background-image:var(--gs-header);color:var(--navy,#1e293b);padding:5px 3px;font-size:11px;font-weight:700;line-height:1.15;position:sticky;top:0}.schedule-v2-grid thead th.today-col{box-shadow:inset 3px 0 0 var(--teal,#0d7377), inset -3px 0 0 var(--teal,#0d7377), inset 0 -3px 0 var(--teal,#0d7377);background:linear-gradient(#f3fffe 0%,#c8f4f1 100%)}.schedule-v2-grid .time-col{width:var(--gs-time-w);min-width:var(--gs-time-w);max-width:var(--gs-time-w);background:var(--gs-header-solid);font-variant-numeric:tabular-nums;color:var(--navy-soft,#475569);vertical-align:middle;font-size:10px;font-weight:700}.schedule-v2-grid tbody tr.alt-row td:not(.time-col){background:var(--gs-alt)}.schedule-v2-grid tbody tr.now-row .time-col{box-shadow:inset 0 0 0 2px var(--teal,#0d7377)}.schedule-v2-grid td.has-entries{padding:2px}.schedule-v2-cell-stack{flex-direction:column;align-items:stretch;gap:3px;display:flex}.schedule-v2-grid-chip{text-align:left;border:1px solid #0000000f;border-left-width:3px;border-radius:8px;min-width:0;padding:4px 5px;font-size:10px;line-height:1.2}.schedule-v2-grid-chip-head{justify-content:space-between;align-items:center;gap:4px;display:flex}.schedule-v2-grid-chip-time{font-variant-numeric:tabular-nums;font-weight:800}.schedule-v2-grid-chip-room{background:#ffffffbf;border-radius:4px;justify-content:center;align-items:center;min-width:1rem;height:1rem;padding:0 3px;font-size:9px;font-weight:800;display:inline-flex}.schedule-v2-grid-chip-room.warn{color:#9a3412}.schedule-v2-grid-chip-title{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:700;display:-webkit-box;overflow:hidden}.schedule-v2-grid-chip-coach,.schedule-v2-grid-chip-meta{color:#0f2744b8;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.schedule-v2-page .mobile-day-tabs{gap:.35rem;margin-bottom:.75rem;padding-bottom:.35rem;display:flex;overflow-x:auto}.schedule-v2-page .mobile-day-tab{border:1px solid var(--line,#dbe3ee);background:var(--surface,#fff);min-width:3.2rem;font:inherit;cursor:pointer;border-radius:12px;flex:none;padding:.45rem .55rem}.schedule-v2-page .mobile-day-tab.on{border-color:var(--teal,#0d7377);background:var(--teal-soft,#e4faf8)}.schedule-v2-page .mobile-day-tab.today.on{box-shadow:inset 0 0 0 1px var(--teal,#0d7377)}.schedule-v2-page .mobile-day-tab .tab-short{justify-content:center;align-items:center;gap:4px;font-weight:800;display:flex}.schedule-v2-page .mobile-day-tab .tab-date{color:var(--muted);margin-top:2px;font-size:.72rem;display:block}.schedule-v2-page .mobile-day-tab .tab-count{background:#0f274414;border-radius:999px;margin-top:3px;padding:1px 6px;font-size:.68rem;font-weight:700;display:inline-flex}@media (width<=899px){.schedule-v2-desktop{display:none}.schedule-v2-mobile{display:block}.schedule-v2-filters{box-sizing:border-box;max-width:100%;overflow:hidden}.schedule-v2-filters .filter-row{flex-direction:column;align-items:stretch;gap:6px;max-width:100%}.schedule-v2-filters .filter-row-label{flex:none;padding-top:0}.schedule-v2-filters .filter-chips{flex-wrap:wrap;flex:none;gap:6px;width:100%;min-width:0;max-width:100%}.schedule-v2-filters .legend-chip{flex:0 auto;max-width:100%}}@media (width<=560px){.schedule-v2-card{grid-template-columns:1fr;gap:.35rem}}.doc-edit-line{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 4px;display:grid;position:relative}.doc-edit-line:last-child{border-bottom:0}.doc-edit-fields{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-width:0;display:grid}.doc-section-head .doc-edit-fields,.doc-pkg-row .doc-edit-fields,.doc-term-edit .doc-edit-fields{grid-template-columns:1fr}.doc-edit-stack{flex-direction:column;gap:2px;min-width:12ch;display:flex}.doc-edit-name,.doc-section-title{width:100%;min-width:12ch;font:inherit;color:var(--navy);background:0 0;border:0;border-radius:0;padding:2px 0}.doc-edit-name{font-weight:700}.doc-section-title{color:var(--teal);font-size:1.02rem;font-weight:800}.doc-edit-hint{width:100%;min-width:0;font:inherit;color:var(--muted);background:0 0;border:0;padding:0;font-size:.82rem}.doc-edit-name:focus,.doc-edit-hint:focus,.doc-section-title:focus{box-shadow:0 1px 0 var(--teal);outline:none}.doc-money{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;flex-shrink:0;align-items:baseline;gap:4px;padding:4px 10px;display:inline-flex}.doc-money input{text-align:right;width:6.4rem;font:inherit;font-variant-numeric:tabular-nums;color:var(--navy);background:0 0;border:0;padding:0;font-weight:800}.doc-money input:focus{outline:none}.doc-money__suffix{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:700}.doc-pill{letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:.68rem;font-weight:700}.doc-pill.is-on{color:var(--teal);background:var(--teal-soft)}.doc-pill.is-off{color:var(--muted);background:var(--surface-2)}.doc-edit-chrome{align-items:center;gap:6px;display:flex}.doc-edit-aside{justify-content:flex-end}@media (hover:hover) and (pointer:fine){.doc-edit-chrome{opacity:0;transition:opacity .12s}.doc-edit-line:hover .doc-edit-chrome,.doc-edit-line:focus-within .doc-edit-chrome{opacity:1}.doc-edit-line:has(.doc-menu.is-open) .doc-edit-chrome{opacity:1}}.doc-edit-handle{cursor:grab;color:var(--muted);letter-spacing:-2px;-webkit-user-select:none;user-select:none;padding:4px 2px;font-weight:800;line-height:1}.doc-edit-handle:active{cursor:grabbing}.doc-menu{position:relative}.doc-menu-btn{width:32px;height:32px;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;margin:0;padding:0;font-size:1.15rem;line-height:1}.doc-menu-btn:hover{background:var(--surface-2)}.doc-menu-list{z-index:40;border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:188px;padding:6px;position:absolute;top:calc(100% + 4px);right:0}.doc-menu-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;margin:0;padding:8px 10px;display:block}.doc-menu-item:hover:not(:disabled){background:var(--surface-2)}.doc-menu-item.is-danger{color:var(--err)}.doc-menu-item:disabled{opacity:.4;cursor:default}.doc-add-row{border:1px dashed var(--line);width:100%;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;margin-top:8px;padding:10px;font-weight:700;display:flex}.doc-add-row:hover{border-color:var(--teal);color:var(--teal);background:var(--teal-soft)}.doc-edit-line.is-hidden{opacity:.48}.doc-edit-line.is-drop{outline:2px dashed var(--teal);outline-offset:2px}.price-list-grid.is-editing{grid-template-columns:1fr}.price-list-extras.is-editing{grid-template-columns:1fr;gap:0}.hall-rental-rooms.is-editing,.hall-rental-terms.is-editing,.doc-pkg-list{flex-direction:column;gap:0;display:flex}.doc-room-edit,.doc-pkg-row,.doc-term-edit{background:var(--surface);border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:12px;margin-bottom:8px;padding:8px 10px}.doc-pkg-fields{flex-direction:column;gap:10px;min-width:0;display:flex}.doc-pkg-meta{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.doc-pkg-validity{flex:1;min-width:120px}.doc-pkg-discount{font-variant-numeric:tabular-nums;color:var(--teal);font-weight:800}.doc-pkg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.doc-pkg-pair{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.doc-pkg-pair>span{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.doc-pkg-pair-inputs{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.doc-pkg-was{color:var(--muted);font-size:.72rem;font-weight:700}.doc-icon-chips{flex-wrap:wrap;gap:6px;display:flex}.doc-icon-chip{border:1px solid var(--line);background:var(--surface);font:inherit;cursor:pointer;border-radius:999px;margin:0;padding:4px 10px;font-size:.78rem;font-weight:700}.doc-icon-chip.is-on{border-color:var(--teal);background:var(--teal-soft);color:var(--teal)}.doc-term-edit textarea{border:1px solid var(--line);width:100%;font:inherit;resize:vertical;border-radius:10px;padding:8px 10px}@media (width<=700px){.doc-edit-line{grid-template-columns:auto minmax(0,1fr)}.doc-edit-aside{grid-column:1/-1;justify-content:flex-end}.doc-edit-fields,.doc-pkg-grid{grid-template-columns:1fr}}.studio-doc-workspace.is-split{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:start;gap:16px;display:grid}.studio-doc-edit-col{min-width:0}.studio-doc-preview-col{border:1px solid var(--line);background:var(--surface-2);border-radius:16px;min-width:0;max-height:calc(100dvh - 24px);padding:12px 14px 16px;position:sticky;top:12px;overflow:auto}.studio-doc-preview-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:.68rem;font-weight:700}.studio-doc-preview-frame{pointer-events:none;transform-origin:top}.studio-doc-preview-col .price-list-page,.studio-doc-preview-col .hall-rental-page{max-width:none;font-size:.88em}@media (width<=899px){.studio-doc-workspace.is-split{display:block}.studio-doc-preview-col{display:none}}@media print{.studio-doc-workspace.is-split{display:block}.studio-doc-edit-col{display:none!important}.studio-doc-preview-col{background:0 0;border:0;max-height:none;padding:0;position:static;overflow:visible}.studio-doc-preview-kicker{display:none}.studio-doc-preview-frame{pointer-events:auto}}.sig-setup-page{background:var(--bg,#f4f6f8);place-items:center;min-height:100dvh;padding:20px;display:grid}.sig-setup-page .btn:active:not(:disabled){transform:scale(.994)}.sig-setup-card{background:var(--surface,#fff);border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:14px;padding:28px 24px;display:flex}.sig-setup-brand{font-family:var(--font-brand);letter-spacing:.08em;color:var(--teal,#0d7377);margin:0;font-size:.85rem;font-weight:800}.sig-setup-card h1{margin:0 0 6px;font-size:1.4rem}.sig-setup-name{background:var(--surface-2,#f4f6f8);border-radius:10px;margin:0;padding:10px 12px}.sig-setup-check{align-items:center;gap:8px;font-weight:600;display:flex}.sig-setup-check input{width:18px;height:18px}.journal-pay-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.journal-pay-batch-bar{border:1px solid color-mix(in srgb, #0d7377 30%, var(--line));background:color-mix(in srgb, #0d7377 8%, var(--bg));border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;padding:10px 14px;display:flex}.journal-pay-batch-bar p{margin:0;font-size:.92rem}.journal-pay-batch-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spreadsheet-page .excel-grid th.col-check,.spreadsheet-page .excel-grid td.col-check{text-align:center;width:36px;padding-left:6px;padding-right:6px}.spreadsheet-page .excel-grid tr.is-pay-selected td{background:#0d737712}.journal-month-recap{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:stretch;gap:12px;display:grid}.journal-month-recap .stat-card .value{font-size:1.4rem}.journal-paid-trainers{min-height:5.5rem}.journal-paid-trainers .label{color:var(--muted);font-size:.8rem;font-weight:600}.journal-paid-trainers .muted{margin:8px 0 0}.journal-paid-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.journal-paid-list li{justify-content:space-between;gap:12px;font-size:.95rem;display:flex}.spreadsheet-page .excel-grid.sales-block{width:100%;min-width:100%}.spreadsheet-page .excel-grid.sales-block .col-date{z-index:5;background:#fff;width:9.25rem;min-width:9.25rem;max-width:9.25rem;position:sticky;left:0}.spreadsheet-page .excel-grid.sales-block thead .col-date{z-index:7;background:#ededed}.spreadsheet-page .excel-grid.sales-block .sticky-col{left:9.25rem}.spreadsheet-page .excel-grid.sales-block tbody tr:hover td.col-date{background:#f5f5f5}.spreadsheet-page .excel-grid th.col-pay,.spreadsheet-page .excel-grid td.col-pay{white-space:nowrap;vertical-align:middle;width:1%;min-width:7rem}
