:root{--ground:#f4f5f2;--surface:#fff;--subtle:#f8f9f7;--track:#eceeea;--line:#e1e4df;--line-strong:#cbd0ca;--line-control:#848d8b;--ink:#12191b;--ink-secondary:#33403f;--ink-muted:#4e5a5c;--ink-faint:#646e70;--ink-disabled:#9aa3a1;--accent:#0e7c66;--accent-hover:#095a4a;--accent-soft:#0e7c6617;--on-accent:#fff;--hard:#b42318;--hard-soft:#fdecea;--warn:#b86e00;--warn-ink:#8a5300;--warn-soft:#fdf1dc;--shift-day:#e3ecfb;--shift-day-ink:#1d3a73;--shift-evening:#fbe7d3;--shift-evening-ink:#7a3e0c;--shift-night:#262b57;--shift-night-ink:#fff;--shift-night-muted:#d5d8f0;--shadow-float:0 6px 20px #12191b1a;--font-sans:Geist, system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{background:var(--ground);color:var(--ink);font-family:var(--font-sans);margin:0;font-size:14px}body{font-variant-numeric:tabular-nums}a{color:var(--accent)}button{color:inherit;font-family:inherit}:is(button:focus-visible,select:focus-visible,a:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.shell{flex-wrap:wrap;min-height:100vh;display:flex}.side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;flex:220px;gap:20px;max-width:100%;padding:20px 16px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:10px;padding:0 6px;font-size:20px;font-weight:700;display:flex}.org{border:1px solid var(--line);background:var(--ground);width:100%;min-height:48px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.org:hover{border-color:var(--line-strong)}.org-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.org-text b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.org-text small{color:var(--ink-muted);font-size:12px}.org-chevron{color:var(--ink-muted);flex:none}.org-wrap{position:relative}.org-menu{z-index:30;border:1px solid var(--line);background:var(--surface);width:max(100%,260px);box-shadow:var(--shadow-float);border-radius:14px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.org-menu-head{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);padding:6px 8px 4px;font-size:11px;font-weight:700}.org-menu-item{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:8px;font-size:13px;text-decoration:none;display:flex}.org-menu-item:hover{background:var(--ground)}.org-check{color:var(--accent);margin-left:auto;font-weight:700}.org-add{border-top:1px solid var(--track);color:var(--accent);border-radius:0 0 10px 10px;margin-top:2px;font-weight:600}.small-badge{flex:none;width:26px;height:26px;font-size:11px}.org-badge.unit-badge{background:var(--accent)}.org-badge.add-badge{background:var(--accent-soft);color:var(--accent);font-size:16px}.side-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.brand{color:var(--ink);text-decoration:none}.side-toggle{color:var(--ink-muted);flex:none}.side-toggle:hover{background:var(--ground);color:var(--ink)}@media (min-width:781px){.shell{flex-wrap:nowrap}.shell>.side{flex:0 0 236px;height:100dvh;transition:flex-basis .15s;position:sticky;top:0;overflow-y:auto}.shell>.main{flex:1 1 0}.side[data-collapsed=true]{flex-basis:72px;padding:20px 12px}.side[data-collapsed=true] .side-label{display:none}.side[data-collapsed=true] .side-top{flex-direction:column}.side[data-collapsed=true] .brand,.side[data-collapsed=true] .nav a,.side[data-collapsed=true] .org{justify-content:center;padding-left:0;padding-right:0}.side[data-collapsed=true] .org{background:0 0;border-color:#0000}.side[data-collapsed=true] .org-menu{top:0;left:calc(100% + 8px)}}.org-badge{background:var(--shift-night);width:30px;height:30px;color:var(--on-accent);border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.nav{flex-direction:column;gap:2px;display:flex}.nav a{height:40px;color:var(--ink-secondary);border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-weight:500;text-decoration:none;display:flex}.nav a:hover{background:var(--ground)}.nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft);font-weight:600}.nav a[aria-disabled=true]{color:var(--ink-disabled);pointer-events:none}.side-bottom{flex-direction:column;gap:10px;margin-top:auto;display:flex}.privacy{background:var(--ground);color:var(--ink-muted);border-radius:12px;flex-direction:column;gap:6px;padding:12px;font-size:12px;display:flex}.privacy b{color:var(--ink)}.main{flex-direction:column;flex:999 560px;gap:16px;min-width:0;padding:24px 28px 32px;display:flex}.head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.head-left,.head-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}h1{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:650}.weeknav{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:4px;padding:2px;display:flex}.icon-btn{cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.icon-btn:disabled{opacity:.35;cursor:default}.chip{border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600}.chip.ok{color:var(--accent-hover);background:var(--accent-soft)}.chip.draft{color:var(--warn-ink);background:var(--warn-soft)}.stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;padding:4px 12px;display:flex}.stat small{color:var(--ink-muted);font-size:11px}.stat span{font-size:14px;font-weight:650}.stat em{color:var(--ink-muted);font-style:normal;font-weight:500}.btn{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}a.btn{color:var(--ink);text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.btn.dark{background:var(--ink);color:var(--on-accent);border:none}.btn.accent{background:var(--accent);color:var(--on-accent);border:none;border-radius:14px;justify-content:center;height:48px;font-size:15px}.select{border:1px solid var(--line-strong);background:var(--surface);height:44px;font:inherit;border-radius:12px;padding:0 10px;font-weight:600}.status{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}.next-step{border:1px solid var(--accent);background:var(--accent-soft);border-radius:16px;flex-wrap:wrap;align-items:center;gap:14px 20px;padding:16px 18px;display:flex}.next-step-text{flex-direction:column;flex:340px;gap:3px;min-width:0;display:flex}.next-step-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.next-step-text strong{color:var(--ink);font-size:17px}.next-step-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.next-step-actions .select{height:44px}.next-step-actions .btn.accent{padding:0 20px}.dot{border-radius:5px;flex:none;width:10px;height:10px}.cols{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:12px;padding:16px;display:flex}.grid-card{flex:999 640px;min-width:0}.panel{flex:340px;gap:14px;min-width:0;padding:18px}.legend{color:var(--ink-muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.sw{border:1px solid var(--line-strong);border-radius:4px;width:12px;height:12px}.table-wrap{border:1px solid var(--track);border-radius:12px;overflow-x:auto}table.roster{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}.roster th,.roster td{font-weight:inherit}.roster thead tr{background:var(--subtle)}.roster thead th{text-align:left;color:var(--ink-muted);padding:8px 6px;font-size:12px;font-weight:600}.roster thead th.today span{color:var(--accent-hover);background:var(--accent-soft);border-radius:8px;padding:3px 8px}.roster tbody tr{border-top:1px solid var(--track)}.roster tbody th{text-align:left;width:170px;padding:8px 12px}.roster td{vertical-align:middle;padding:4px}.who{align-items:center;gap:10px;display:flex}.avatar{background:var(--track);border-radius:15px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:flex}.who-name{flex-direction:column;gap:1px;display:flex}.who-name b{font-size:13px;font-weight:600}.who-name small{color:var(--ink-muted);font-size:11px}.hours{text-align:right;white-space:nowrap;padding:8px 12px;font-weight:600}.hours small{color:var(--ink-muted);font-weight:400}.hours.over{color:var(--warn-ink)}.cell{text-align:left;cursor:pointer;border:none;border-radius:9px;flex-direction:column;gap:1px;width:100%;padding:6px 8px;font-size:11px;display:flex;position:relative}.cell b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.cell.day{background:var(--shift-day);color:var(--shift-day-ink)}.cell.evening{background:var(--shift-evening);color:var(--shift-evening-ink)}.cell.night{background:var(--shift-night);color:var(--shift-night-ink)}.cell.night small{color:var(--shift-night-muted)}.cell.open.must{border-color:var(--hard);background:var(--hard-soft);color:var(--hard)}.cell.absent{background:var(--track);color:var(--ink-muted);cursor:default}.cell.selected{box-shadow:0 0 0 2px var(--accent)}.cell.hardv{box-shadow:0 0 0 2px var(--hard)}.cell .warn-dot{background:var(--warn);border-radius:4px;width:7px;height:7px;position:absolute;top:5px;right:5px}.cell .new-dot{background:var(--accent);border-radius:4px;width:7px;height:7px;position:absolute;top:5px;right:5px}.off{height:40px;color:var(--ink-disabled);align-items:center;padding:0 8px;display:flex}.stack{flex-direction:column;gap:4px;display:flex}.cov.short{color:var(--hard);font-weight:600}.rowhead{color:var(--ink-muted);font-size:12px;font-weight:600}.roster tbody tr.sum{background:var(--subtle);border-top:1px solid var(--line)}.kicker{color:var(--ink-muted);font-size:12px;font-weight:600}.panel h2{letter-spacing:-.01em;margin:0;font-size:19px;font-weight:650}.muted{color:var(--ink-muted);font-size:13px}.small{color:var(--ink-muted);font-size:12px}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.stats div{background:var(--ground);border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.stats b{font-size:18px;font-weight:650}.stats small{color:var(--ink-muted);font-size:11px}.cands{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.cand{text-align:left;border:1.5px solid var(--line);background:var(--surface);cursor:pointer;border-radius:14px;flex-direction:column;gap:8px;width:100%;padding:12px 14px;display:flex}.cand[data-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.cand-top{align-items:center;gap:10px;display:flex}.radio{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.cand-name{flex:1;align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.best{color:var(--on-accent);background:var(--accent);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.cost{font-size:14px;font-weight:650}.factors{flex-direction:column;gap:4px;padding-left:28px;display:flex}.factor{color:var(--ink-secondary);align-items:flex-start;gap:6px;font-size:12px;display:flex}.factor svg{flex:none;margin-top:1px}.done{background:var(--accent-soft);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.list{color:var(--ink-secondary);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13px;display:flex}.opt{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.tag{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.opt .tag{align-self:flex-start}.tag.legal{color:var(--accent-hover);background:var(--accent-soft)}.tag.agreement{color:var(--warn-ink);background:var(--warn-soft)}.tag.law{color:var(--hard);background:var(--hard-soft)}.err{color:var(--hard);font-size:13px}.signin{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.signin-card{gap:16px;width:100%;max-width:420px;padding:28px}.signin-card h1{font-size:22px}.signin-form{flex-direction:column;gap:8px;display:flex}.input{border:1px solid var(--line-strong);height:44px;font:inherit;background:var(--surface);border-radius:12px;padding:0 12px}.or{color:var(--ink-muted);align-items:center;gap:10px;font-size:12px;display:flex}.or:before,.or:after{content:"";background:var(--line);flex:1;height:1px}.user{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:8px;padding:4px 6px 4px 4px;display:flex}a.user{color:var(--ink);padding-right:12px;text-decoration:none}a.user:hover{border-color:var(--line-strong)}.user-nudge{background:var(--accent-soft);color:var(--accent);border-radius:999px;margin-left:6px;padding:3px 8px;font-size:12px;font-weight:600}.user b{font-size:13px}.user small{color:var(--ink-muted);font-size:11px}.link-btn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 6px;font-size:12px;font-weight:600}.code-input{letter-spacing:6px;font-variant-numeric:tabular-nums;text-align:center;font-size:22px}.code-input.long{letter-spacing:1px;font-size:18px}table.people{min-width:640px}.people tbody tr{cursor:pointer}.people tbody tr:hover,.people tbody tr.on{background:var(--subtle)}.people tbody tr.inactive{opacity:.55}.people td{padding:8px 6px}.people tbody th{width:auto}.row-btn{all:unset;cursor:pointer;align-items:center;gap:10px;display:flex}.row-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.tags{flex-wrap:wrap;gap:4px;display:flex}.access{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.panel-head h2{margin:0}.form,.form>fieldset{flex-direction:column;gap:12px;display:flex}.form fieldset{border:0;min-width:0;margin:0;padding:0}.form label{color:var(--ink-secondary);flex-direction:column;gap:4px;font-size:13px;display:flex}.row2{flex-wrap:wrap;gap:12px;display:flex}.row2>label{flex:140px}.form fieldset.checks{flex-flow:wrap;gap:8px 16px}.checks legend{color:var(--ink-secondary);margin-bottom:6px;padding:0;font-size:13px}.form .checks label{color:var(--ink);flex-direction:row;align-items:center;gap:6px}.invite{border-top:1px solid var(--track);flex-direction:column;gap:10px;padding-top:14px;display:flex}.invite-card{align-items:flex-start}.qr{width:200px;max-width:100%;height:200px}.code{letter-spacing:2px;font-family:ui-monospace,Menlo,monospace;font-size:20px}@media print{body *{visibility:hidden}.invite-card,.invite-card *{visibility:visible}.invite-card{border:0;position:absolute;inset:0 auto auto 0}.invite-card button{display:none}}.offer .yes{border-top:1px solid var(--track);flex-direction:column;gap:4px;padding:8px 0;display:flex}.offer-card,.sick-form{border-color:var(--accent);background:var(--accent-soft);gap:8px}.offer-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}table.mini{border-collapse:collapse;width:100%;font-size:13px}.mini th{text-align:left;color:var(--ink-muted);background:var(--subtle);padding:6px 8px;font-size:12px;font-weight:600}.mini td{border-top:1px solid var(--track);padding:5px 8px}.mini td:last-child,.mini th:last-child{text-align:right}.mini.preview td,.mini.preview th{text-align:left;white-space:nowrap;font-variant-numeric:tabular-nums}.mapcols{flex-direction:column;gap:6px;display:flex}.mapcols legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.mapcol{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mapcol .input{flex:140px;min-width:0}.form label.inline-check,.inline-check{flex-direction:row;align-items:center;gap:6px;font-size:13px}.setup{flex-direction:column;align-items:center;gap:20px;min-height:100vh;padding:28px 16px 48px;display:flex}.setup-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:1120px;display:flex}.steps{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.steps li{white-space:nowrap;height:30px;color:var(--ink-faint);background:var(--track);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 12px 0 6px;font-size:12px;font-weight:600;display:inline-flex}.steps li .n{background:var(--surface);border-radius:10px;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:inline-flex}.steps li[aria-current=step]{color:var(--on-accent);background:var(--accent)}.steps li[aria-current=step] .n{color:var(--accent)}.steps li.step-done{color:var(--accent-hover);background:var(--accent-soft)}.setup-card{gap:16px;width:100%;max-width:1120px;padding:24px}.setup-card .row2{max-width:720px}.next-wrap{text-align:right;justify-content:flex-end;align-items:center;gap:12px;margin-left:auto;display:flex}.setup-card h1{margin:0;font-size:22px}.choices,.form>fieldset.choices{border:0;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin:0;padding:0;display:grid}.choices legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.form .choice,.choice{border:1px solid var(--line);cursor:pointer;color:var(--ink);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.choice[data-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.choice input{opacity:0;pointer-events:none;position:absolute}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.choice small{color:var(--ink-muted);font-size:12px}.choice.other{border-style:dashed;grid-column:1/-1}.choice small.faint{color:var(--ink-faint);margin-top:2px}.people-setup .select{font-weight:400}.people-setup .input,.people-setup .select{width:100%;min-width:90px}.people-setup td:last-child{text-align:right}.people-setup .inline-check{margin-right:10px}textarea.input{resize:vertical;height:auto;min-height:104px;padding:10px 12px;line-height:1.45}@media (max-width:680px){.people-setup thead{display:none}.people-setup,.people-setup tbody{display:block}.people-setup tr{border-top:1px solid var(--track);grid-template-columns:1fr 1fr 36px;gap:8px 10px;padding:12px;display:grid}.people-setup tr:first-child{border-top:0}.people-setup td{text-align:left;border:0;flex-direction:column;gap:4px;padding:0;display:flex}.people-setup td[data-label]:before{content:attr(data-label);color:var(--ink-muted);font-size:12px;font-weight:600}.people-setup td:first-child{grid-area:1/1/2/3}.people-setup td:nth-child(2){grid-area:2/1/3/4}.people-setup td:nth-child(3){grid-area:3/1}.people-setup td:nth-child(4){grid-area:3/2/4/4}.people-setup td:last-child{grid-area:1/3;justify-content:flex-end}.people-setup td.quals{flex-flow:wrap;grid-column:1/-1;gap:6px 12px}.people-setup td.quals:before{flex-basis:100%}.people-setup .input,.people-setup .select{min-width:0}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.form .select{font-weight:400}.form fieldset.pills-field{flex-direction:column;gap:8px;display:flex}.pills-field legend,.section-title{margin:4px 0 0;padding:0;font-size:14px;font-weight:600}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1px solid var(--line-strong);background:var(--subtle);border-radius:999px;align-items:center;height:34px;padding:0 4px 0 12px;display:inline-flex}.pill input{font:inherit;background:0 0;border:0;outline:none;min-width:3ch;padding:0;font-size:14px}.pill:focus-within{border-color:var(--accent)}.pill button{cursor:pointer;width:26px;height:26px;color:var(--ink-muted);background:0 0;border:0;border-radius:13px;font-size:16px;line-height:1}.pill button:hover{background:var(--track);color:var(--ink)}.add-row{align-items:center;gap:8px;max-width:460px;display:flex}.add-row .input{flex:auto;min-width:0}.add-row .btn{white-space:nowrap;flex:none}.form fieldset.shift-card{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;margin:0;padding:14px;display:flex}.shift-times{grid-template-columns:minmax(160px,2fr) repeat(2,minmax(110px,1fr)) minmax(90px,.8fr);gap:10px;display:grid}.shift-times .input{width:100%;min-width:0}.shift-days{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.shift-days .small{margin-right:4px}.shift-days .inline-check{margin-left:10px}.day-chip{border:1px solid var(--line-strong);background:var(--surface);width:34px;height:30px;font:inherit;color:var(--ink-muted);cursor:pointer;border-radius:8px;font-size:12px;font-weight:600}.day-chip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.needs{background:var(--subtle);border-radius:12px;flex-direction:column;gap:6px;padding:10px;display:flex}.needs-row{grid-template-columns:72px minmax(150px,1.4fr) minmax(130px,1fr) 120px 36px;align-items:center;gap:8px;display:grid}.needs-row .input,.needs-row .select{width:100%;min-width:0;height:38px}.needs-row .add-row{max-width:none}.needs-head{color:var(--ink-muted);font-size:12px;font-weight:600}.needs-row .inline-check{justify-content:center}.only-narrow{display:none}.shift-foot{justify-content:space-between;gap:12px;display:flex}.link-btn.danger{color:var(--hard)}.btn.danger{background:var(--hard);border-color:var(--hard);color:#fff}@media (max-width:680px){.shift-times{grid-template-columns:1fr 1fr}.shift-times label:first-child{grid-column:1/-1}.needs-head{display:none}.setup-card{padding:18px}.form fieldset.shift-card{padding:12px}.needs{padding:8px}.needs-row{border-bottom:1px solid var(--track);grid-template-columns:56px minmax(0,1fr) 32px;row-gap:6px;padding-bottom:10px}.needs-row:last-child{border-bottom:0;padding-bottom:0}.needs-row>:nth-child(2){grid-area:1/2}.needs-row>:nth-child(3){grid-area:2/1/3/4}.needs-row>:nth-child(4){grid-area:3/1/4/4;justify-content:flex-start}.needs-row>:nth-child(5){grid-area:1/3}.shift-days .small{flex-basis:100%}.shift-days .inline-check{flex-basis:100%;margin-left:0}.day-chip{width:32px}.needs-row .select{font-size:14px}.only-narrow{display:inline}}.role-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.role-card{border:1px solid var(--line);background:var(--surface);min-height:112px;font:inherit;text-align:left;color:var(--ink);cursor:pointer;border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;display:flex;position:relative}.role-card:hover{border-color:var(--line-control)}.role-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.role-card.add{border-style:dashed;border-color:var(--line-strong);background:var(--subtle);justify-content:center}.role-card.add .role-name{color:var(--accent)}.role-name{padding-right:40px;font-size:15px;font-weight:650}.role-pay{color:var(--ink-secondary);font-size:14px}.role-pay.none{color:var(--ink-faint)}.role-meta{color:var(--ink-faint);font-size:13px}.role-quals{flex-wrap:wrap;gap:4px;display:flex}.role-quals .tag{color:var(--accent-hover);background:var(--accent-soft)}.role-edit{color:var(--accent);font-size:13px;font-weight:600;position:absolute;top:14px;right:16px}.why{background:var(--accent-soft);color:var(--ink-secondary);border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.5}.why strong{color:var(--ink)}dialog.sheet{background:var(--surface);width:min(620px,100vw - 32px);max-height:min(860px,100dvh - 32px);color:var(--ink);box-shadow:var(--shadow-float);border:0;border-radius:18px;padding:0}dialog.sheet::backdrop{background:#12191b66}.sheet-form{max-height:inherit;flex-direction:column;display:flex}.sheet-head{border-bottom:1px solid var(--track);justify-content:space-between;align-items:center;gap:12px;padding:18px 22px 12px;display:flex}.sheet-head h2{margin:0;font-size:19px}.sheet-body{flex-direction:column;gap:22px;padding:18px 22px 22px;display:flex;overflow-y:auto}.sheet-foot{border-top:1px solid var(--track);justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;display:flex}.sheet-actions{gap:8px;margin-left:auto;display:flex}.sheet-err{flex-basis:100%;margin:0}.sheet-actions .btn{white-space:nowrap}.sheet-foot{flex-wrap:wrap}.field-block{flex-direction:column;gap:8px;display:flex}.field-title{font-size:15px;font-weight:650}.optional-note{color:var(--ink-faint);margin-left:6px;font-size:12px;font-weight:500}.field-help{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.45}.field-block .input{width:100%}.seg{background:var(--track);border:0;border-radius:12px;align-self:flex-start;min-width:0;max-width:100%;margin:0;padding:3px;display:inline-flex}.seg label{text-align:center;font:inherit;color:var(--ink-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:auto;padding:8px 14px;font-size:14px;font-weight:600}.seg label:has(:focus-visible){outline:2px solid var(--accent)}.seg label.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #12191b1f}.money-row{align-items:center;gap:10px;max-width:340px;display:flex}.money-row.short{max-width:220px}.money-row .input{font-variant-numeric:tabular-nums;flex:auto;min-width:0}.money-row .unit{color:var(--ink-muted);flex:none;font-size:14px}.calc{color:var(--accent-hover);margin:0;font-size:13px}.sub-field{flex-direction:column;gap:6px;max-width:340px;font-size:14px;display:flex}.toggle-chips{flex-wrap:wrap;gap:6px;display:flex}.toggle-chips button{border:1px solid var(--line-strong);background:var(--surface);font:inherit;color:var(--ink-muted);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.toggle-chips button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover)}@media (max-width:680px){.role-card{min-height:0}dialog.sheet{border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}.sheet-form{height:100%}.sheet-body{flex:auto;padding:16px}.sheet-head,.sheet-foot{padding-left:16px;padding-right:16px}.seg{align-self:stretch}.seg label{padding:8px 6px;font-size:13px}}.roles-card{flex-direction:column;gap:14px;display:flex}.roles-intro{margin:0}.role-card.static{cursor:default}.role-card.static:hover{border-color:var(--line)}.role-use{color:var(--ink-faint);margin-top:auto;padding-top:4px;font-size:12px}.topbar,dialog.drawer{display:none}@media (max-width:780px){.shell{flex-flow:column}.shell>.side{display:none}.topbar{z-index:20;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:56px;padding:8px 16px;display:flex;position:sticky;top:0}.topbar-brand{flex:none;display:flex}.topbar-org{flex-direction:column;flex:auto;min-width:0;line-height:1.2;display:flex}.topbar-org b,.topbar-org small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-org b{font-size:14px}.topbar-org small{color:var(--ink-muted);font-size:12px}.menu-btn{border:1px solid var(--line-strong);background:var(--surface);height:40px;font:inherit;color:var(--ink);cursor:pointer;border-radius:10px;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}dialog.drawer[open]{background:var(--surface);width:min(320px,86vw);max-width:none;height:100dvh;max-height:none;color:var(--ink);box-shadow:var(--shadow-float);border:0;margin:0;padding:0;animation:.18s ease-out drawer-in;display:block}dialog.drawer::backdrop{background:#12191b66}.drawer-inner{flex-direction:column;gap:20px;min-height:100%;padding:20px 16px;display:flex;position:relative}.drawer-close{position:absolute;top:16px;right:12px}.drawer-inner .nav a{height:44px}.drawer-user .user,.panel-head{flex-wrap:wrap}.panel-head>.select{flex:100%;min-width:0}.panel{scroll-margin-top:72px}.head-right>.user{display:none}.main{padding:16px 16px 28px}.head h1{font-size:22px}}@keyframes drawer-in{0%{opacity:0;transform:translate(-24px)}}@media (prefers-reduced-motion:reduce){dialog.drawer[open]{animation:none}}.today-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.today-stats>div{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:2px;padding:14px 16px;display:flex}.today-stats b{font-size:24px;font-weight:650}.today-stats small{color:var(--ink-muted);font-size:12px}.today-stats>div.warn b{color:var(--warn-ink)}.today-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));align-items:start;gap:16px;display:grid}.today-grid>.card{gap:10px}.today-grid h2{margin:0}.attention,.today-shifts,.today-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.attention li{border-top:1px solid var(--track);align-items:center;gap:10px;padding:10px 0;display:flex}.attention li:first-child{border-top:0}.attention li>span:nth-child(2){flex:1}.attention li .btn{flex:none;text-decoration:none}.attention li.hard .dot{background:var(--hard)}.attention li.warn .dot{background:var(--warn)}.today-shift{border-top:1px solid var(--track);grid-template-columns:6px minmax(90px,.6fr) 1fr;align-items:center;gap:12px;padding:10px 0;display:grid}.today-shift:first-child{border-top:0}.today-band{background:var(--shift-day-ink);border-radius:3px;align-self:stretch;width:6px;min-height:28px}.today-band.evening{background:var(--warn)}.today-band.night{background:var(--shift-night)}.today-when{flex-direction:column;display:flex}.today-when small{color:var(--ink-muted);font-size:12px}.today-who{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.today-person{align-items:center;gap:6px;font-size:13px;display:inline-flex}.tag.hard{color:var(--hard);background:var(--hard-soft);text-decoration:none}.tag.open{color:var(--ink-secondary);background:var(--track);text-decoration:none}.today-list li{border-top:1px solid var(--track);align-items:center;gap:10px;padding:8px 0;display:flex}.today-list li:first-child{border-top:0}.today-list li .today-band{min-height:22px}.today-list li.past{opacity:.55}.today-list li>b{min-width:64px}.today-next h2{font-size:22px}.today-big{letter-spacing:-.02em;font-size:34px;font-weight:650}@media (max-width:780px){.today-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.today-shift{grid-template-columns:6px 1fr}.today-shift .today-who{grid-column:2}}.tag.now{color:var(--on-accent);background:var(--accent)}.rules-intro{max-width:760px;color:var(--ink-secondary);margin:0;font-size:14px;line-height:1.5}.rules-card{gap:8px}.rules-head{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.rules-head h2{margin:0;font-size:18px}.rule-list{margin:0;padding:0;list-style:none}.rule-row{border-top:1px solid var(--track);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.rule-row:first-child{border-top:0}.rule-row .btn{flex:none}.rule-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.rule-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rule-summary{color:var(--ink-secondary);font-size:13px}.rule-row.overruled .rule-title b,.rule-row.overruled .rule-summary{color:var(--ink-faint)}.rule-note{color:var(--warn-ink)}.rule-source a{color:var(--ink-muted)}.tag.must{color:var(--hard);background:var(--hard-soft)}.tag.try{color:var(--warn-ink);background:var(--warn-soft)}.not-modelled{border-top:1px solid var(--track);padding-top:10px}.not-modelled summary{cursor:pointer;color:var(--ink-secondary);font-size:13px;font-weight:600}.not-modelled ul{color:var(--ink-secondary);flex-direction:column;gap:4px;margin:6px 0 0;padding-left:18px;font-size:13px;display:flex}.rule-types{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.rule-types legend{margin-bottom:8px}.choice.taken{opacity:.55;cursor:default}.warn-text{color:var(--warn-ink)}@media (max-width:680px){.rule-types{grid-template-columns:1fr}}.insight-pick{align-self:flex-start}.insight-pick button{font:inherit;cursor:pointer;color:var(--ink-muted);background:0 0;border:0;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:600}.insight-pick button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #12191b14}.insight-rows{margin:0;padding:0;list-style:none}.insight-rows li{border-top:1px solid var(--track);align-items:center;gap:10px;padding:8px 0;display:flex}.insight-rows li:first-child{border-top:0}.insight-who{flex-direction:column;flex:1;min-width:0;display:flex}.insight-who small{color:var(--ink-muted);font-size:12px}.meter{background:var(--track);border-radius:4px;flex:none;width:110px;height:8px;position:relative;overflow:hidden}.meter>span{background:var(--accent);border-radius:4px;height:100%;display:block}.meter.medium>span{background:var(--warn)}.meter.high>span{background:var(--hard)}.meter.under>span{background:var(--line-control)}.meter>i{background:var(--ink);width:2px;position:absolute;top:-2px;bottom:-2px}.fair-bars{flex-direction:column;flex:none;gap:4px;width:130px;display:flex}.fair-bars .stack{background:var(--track);border-radius:4px;flex-direction:row;gap:0;height:7px;display:flex;overflow:hidden}.fair-bars .now{background:var(--shift-night)}.fair-bars .past{background:var(--shift-night-muted)}.fair-bars .weekend .now{background:var(--warn)}.fair-bars .weekend .past{background:var(--warn-soft)}.insight-rows.cost li>span:last-child{font-weight:600}@media (max-width:780px){.meter{width:72px}.fair-bars{width:84px}.attention li{flex-wrap:wrap}.attention li>span:nth-child(2){flex:calc(100% - 24px)}.attention li .btn{height:36px;margin-left:20px}}.clock-card{gap:8px}.clock-card h2{margin:0;font-size:20px}.clock-big{letter-spacing:-.02em;font-size:40px;font-weight:650}.clock-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.clock-break{align-items:center;gap:8px;display:inline-flex}.clock-break .input{width:70px}.clock-btn{justify-content:center;align-self:flex-start;min-width:160px;height:52px;font-size:16px}.time-list{margin:0;padding:0;list-style:none}.time-list>li{border-top:1px solid var(--track);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;display:flex}.time-list>li:first-child{border-top:0}.time-day{min-width:92px;font-size:13px;font-weight:600}.time-what{flex-direction:column;flex:220px;gap:1px;min-width:0;display:flex}.time-what small{color:var(--ink-muted);font-size:12px}.time-what small.warn-text{color:var(--warn-ink)}.tag.status-open{color:var(--on-accent);background:var(--accent)}.tag.status-submitted{color:var(--warn-ink);background:var(--warn-soft)}.tag.status-approved{color:var(--accent-hover);background:var(--accent-soft)}.tag.status-disputed{color:var(--hard);background:var(--hard-soft)}.time-actions{align-items:center;gap:8px;display:inline-flex}.time-actions .btn{height:36px}.time-team{gap:12px}.time-team-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.week-nav{align-items:center;gap:8px;display:inline-flex}.time-day-block h3{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;margin:8px 0 0;font-size:13px}.entry-form{background:var(--subtle);border-radius:12px;flex:100%;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));align-items:end;gap:8px;min-width:0;padding:12px;display:grid}.entry-form .input{width:100%;min-width:0}.entry-title{grid-column:1/-1;font-size:13px}.entry-form label{flex-direction:column;gap:4px;display:flex}.entry-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.query-form{flex:100%;align-items:center;gap:8px;display:flex}.query-form .input{flex:1}.time-totals summary{cursor:pointer;font-size:13px;font-weight:600}.entry-form .entry-note{grid-column:span 2}@media (max-width:780px){.entry-form{grid-template-columns:1fr 1fr}.entry-form .entry-note{grid-column:1/-1}.clock-btn{align-self:stretch}}.meetings-sum{margin:0}.meeting-day{gap:6px}.meeting-list,.slot-list{margin:0;padding:0;list-style:none}.meeting-row{border-top:1px solid var(--track);align-items:flex-start;gap:14px;padding:12px 0;display:flex}.meeting-row:first-child{border-top:0}.meeting-time{flex-direction:column;min-width:48px;display:flex}.meeting-time small{color:var(--ink-muted);font-size:12px}.meeting-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.meeting-main small{color:var(--ink-muted);font-size:12px}.meeting-main small.warn-text{color:var(--warn-ink)}.meeting-people{align-items:center;gap:4px;margin-top:2px;display:flex}.meeting-people .avatar{width:26px;height:26px;font-size:10px}.meeting-actions{align-items:center;gap:8px;display:inline-flex}.book-panel{gap:14px}.book-head{justify-content:space-between;align-items:center;display:flex}.book-head h2{margin:0;font-size:20px}.book-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.book-grid label{flex-direction:column;gap:4px;display:flex}.book-grid .input,.book-grid .select{width:100%}.book-mode{align-self:flex-start}.book-times{border-top:1px solid var(--track);flex-direction:column;gap:8px;padding-top:6px;display:flex}.slot-list li{border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;margin-top:6px;padding:10px 12px;display:flex}.slot-list li.slot-best{border-color:var(--accent);background:var(--accent-soft)}.slot-list li.slot-bad{opacity:.75}.slot-time{align-items:center;gap:8px;min-width:128px;display:flex}.slot-why{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.slot-why small{color:var(--ink-muted);font-size:12px}.slot-why small.warn-text{color:var(--warn-ink)}.slot-why small.err{color:var(--hard)}.slot-list .btn{flex:none;height:36px}@media (max-width:780px){.slot-list li{flex-wrap:wrap}.slot-why{flex-basis:100%;order:3}.slot-time{flex:1}}.book-card.wide{max-width:640px}.book-summary{flex-direction:column;gap:4px;display:flex}.book-summary h1{margin:0;font-size:24px}.book-when{margin-top:4px;font-size:16px}.book-done{align-self:flex-start}.book-step{border-top:1px solid var(--track);flex-direction:column;gap:10px;padding-top:14px;display:flex}.book-form .input{width:100%}.book-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.book-note{background:var(--accent-soft);color:var(--accent-hover);border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.slot-picker{flex-direction:column;gap:10px;display:flex}.day-strip{scrollbar-width:thin;gap:6px;padding-bottom:4px;display:flex;overflow-x:auto}.day-strip button{border:1px solid var(--line);background:var(--surface);width:58px;font:inherit;color:var(--ink);cursor:pointer;border-radius:12px;flex-direction:column;flex:none;align-items:center;gap:1px;padding:8px 0;display:flex}.day-strip button small{color:var(--ink-muted);font-size:11px}.day-strip button b{font-size:18px}.day-strip button.on{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.day-strip button.on small{color:var(--on-accent)}.time-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;display:grid}.time-grid button{border:1px solid var(--line-strong);background:var(--surface);height:42px;font:inherit;color:var(--ink);cursor:pointer;border-radius:10px;font-weight:600}.time-grid button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover)}:is(.day-strip button:focus-visible,.time-grid button:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.links-card{gap:8px}.link-row{flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:2px;display:flex}.link-row code{background:var(--subtle);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:6px;padding:3px 8px;font-size:12px}.link-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.link-grid label{flex-direction:column;gap:4px;display:flex}.link-grid .input,.link-grid .select{width:100%}.hours-row{background:var(--subtle);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;display:flex}.hours-row .input{width:112px}.day-chips{flex-wrap:wrap;flex-basis:100%;gap:4px;display:flex}.basis-seg{flex:none}.time-cost{flex-direction:column;flex:none;align-items:flex-end;display:flex}.time-cost small{color:var(--ink-muted);font-size:11px}.billing-h2{letter-spacing:-.01em;margin:0;font-size:19px;font-weight:650}.billing-meter{align-items:center;gap:10px;display:flex}.billing-meter .meter{flex:1;max-width:220px}.billing-plans-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;display:grid}.plan-card{border:1px solid var(--line);background:var(--subtle);border-radius:14px;flex-direction:column;gap:8px;min-width:0;padding:14px;display:flex}.plan-card.on{border-color:var(--accent);background:var(--accent-soft)}.plan-card>b{font-size:15px}.plan-price{letter-spacing:-.02em;font-size:24px;font-weight:650}.plan-points{color:var(--ink-secondary);flex-direction:column;flex:1;gap:2px;margin:0;padding-left:18px;font-size:13px;display:flex}.plan-card .btn{justify-content:center}.plan-current{align-self:flex-start}.plan-banner>span:nth-child(2),.billing-alert>span:nth-child(2){flex:220px;min-width:0}.plan-banner .btn{text-decoration:none}.whatif-intro{max-width:720px}.whatif-scenarios,.whatif-cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start;gap:16px;display:grid}.whatif-cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.whatif-scenario,.whatif-col{min-width:0}.whatif-scenario-head,.whatif-change-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.whatif-change{background:var(--subtle);border:1px solid var(--track);border-radius:12px;flex-direction:column;gap:8px;min-width:0;margin:0;padding:10px 12px;display:flex}.whatif-change .sub-field,.whatif-scenario>.sub-field{max-width:none}.whatif-change .input,.whatif-change .select,.whatif-scenario>.sub-field .select{width:100%;min-width:0}.whatif-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));gap:8px;display:grid}.whatif-quals{border:0;flex-direction:column;gap:6px;margin:0;padding:0;display:flex}.whatif-run{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.whatif-col.current{background:var(--subtle)}.whatif-col .kicker{color:var(--ink-muted)}.whatif-col.scenario .kicker{color:var(--accent-hover)}.whatif-col-head{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.whatif-col-head b{overflow-wrap:anywhere}.whatif-rows li{padding:6px 0}.whatif-val{text-align:right;align-items:baseline;gap:6px;display:flex}.whatif-val small{font-size:12px;font-weight:600}.whatif-val small.better{color:var(--accent-hover)}.whatif-val small.worse{color:var(--warn-ink)}.whatif-trade,.whatif-breaks ul{color:var(--ink-secondary);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13px;line-height:1.45;display:flex}.whatif-breaks{flex-direction:column;gap:4px;display:flex}.whatif-breaks ul{color:var(--hard)}.whatif-confirm{flex-direction:column;gap:8px;display:flex}.whatif-confirm .sheet-actions{margin-left:0}.clock-settings{gap:18px}.clock-part{flex-direction:column;gap:10px;min-width:0;display:flex}.clock-part+.clock-part{border-top:1px solid var(--track);padding-top:16px}.clock-part h3{margin:0;font-size:15px}.clock-form,.area-form{flex-wrap:wrap;align-items:flex-end;gap:10px;min-width:0;display:flex}.area-form{flex-direction:column;flex:auto;align-items:stretch}.clock-form label,.area-form label{flex-direction:column;gap:4px;display:flex}.area-form .input{width:140px;max-width:100%}.clock-settings .seg{flex-wrap:wrap}.clock-settings .seg label{white-space:normal}.clock-save{align-self:flex-start}.pair-code{background:var(--accent-soft);border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.pair-code .code{letter-spacing:4px;font-size:28px}.pin-input{letter-spacing:4px;width:120px}.clock-scan{justify-content:center;align-items:center;min-height:100dvh;padding:16px;display:flex}.clock-scan-card{align-items:flex-start;gap:14px;width:min(440px,100%);padding:24px}.clock-scan-card h1{margin:0;font-size:24px}.clock-scan-mark,.kiosk-done-mark{background:var(--accent);width:56px;height:56px;color:var(--on-accent);border-radius:50%;justify-content:center;align-items:center;font-size:30px;font-weight:700;display:inline-flex}.kiosk{background:var(--ground);flex-direction:column;display:flex;position:fixed;inset:0;overflow:auto}.kiosk-pair{justify-content:center;align-items:center;padding:16px}.kiosk-pair-card{gap:14px;width:min(480px,100%);padding:24px}.kiosk-pair-card h1{margin:0;font-size:22px}.kiosk-head{align-items:center;gap:16px;padding:18px 28px;display:flex}.kiosk-where{flex-direction:column;flex:1;min-width:0;display:flex}.kiosk-where b{font-size:18px}.kiosk-where small{color:var(--ink-muted)}.kiosk-clock{letter-spacing:-.02em;font-size:34px;font-weight:650}.kiosk-body{flex:1;justify-content:center;align-items:center;gap:48px;padding:12px 28px;display:flex}.kiosk-scan{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.kiosk-scan h1{margin:8px 0 0;font-size:28px}.kiosk-qr{width:min(58vh,420px);max-width:80vw;height:min(58vh,420px);max-height:80vw;box-shadow:var(--shadow-float);background:#fff;border-radius:22px;padding:12px}.kiosk-offline{background:var(--warn-soft);width:min(58vh,420px);max-width:80vw;color:var(--warn-ink);border-radius:22px;padding:40px 16px;font-size:18px}.kiosk-side{flex-direction:column;align-items:stretch;gap:18px;width:min(360px,100%);display:flex}.kiosk-idle,.kiosk-done{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:200px;padding:24px;display:flex}.kiosk-idle b{font-size:22px}.kiosk-done{background:var(--accent-soft);border-color:var(--accent)}.kiosk-done b{font-size:26px}.kiosk-done span:last-child{color:var(--ink-secondary);font-size:22px}.kiosk-done.out .kiosk-done-mark{background:var(--ink)}.kiosk-pin-btn{justify-content:center;height:56px;font-size:16px}.kiosk-foot{justify-content:space-between;align-items:center;gap:12px;padding:12px 28px;display:flex}.kiosk-foot-actions{gap:12px;display:inline-flex}.kiosk-people{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.kiosk-people .btn{justify-content:center;height:56px;font-size:16px}.pin-dots{justify-content:center;gap:14px;display:flex}.pin-dots span{border:2px solid var(--line-control);border-radius:50%;width:16px;height:16px}.pin-dots span.on{background:var(--ink);border-color:var(--ink)}.keypad{grid-template-columns:repeat(3,1fr);align-self:center;gap:10px;width:min(340px,100%);display:grid}.keypad .btn{justify-content:center;height:64px;font-size:24px}.keypad .btn.accent{height:64px;font-size:18px}@media (max-width:780px),(orientation:portrait){.kiosk-body{flex-direction:column;gap:24px}}@media (max-width:780px){.kiosk-head,.kiosk-body,.kiosk-foot{padding-left:16px;padding-right:16px}.kiosk-clock{font-size:24px}.kiosk-scan h1{font-size:22px}}.swap-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.swap-item{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:12px 14px;display:flex}.swap-item b,.swap-item span{overflow-wrap:anywhere}.swap-pick{max-height:280px;overflow-y:auto}.attention-actions{flex-wrap:wrap;flex:none;gap:8px;display:flex}.stat em.over{color:var(--hard)}.stat em.near{color:var(--warn-ink)}.budget-meter.meter{width:100%}.budget-form{flex-direction:column;gap:16px;display:flex}.budget-form label{color:var(--ink-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}@media (max-width:780px){.attention li{flex-wrap:wrap}.attention-actions{width:100%}}.bell-btn{border-radius:8px;justify-content:center;align-items:center;min-width:28px;min-height:28px;display:inline-flex}.bell-btn:hover{background:var(--accent-soft)}.notify-topics{border:0;min-width:0;margin:0;padding:0}.notify-topics legend{margin-bottom:4px;padding:0}.notify-check{cursor:pointer;align-items:flex-start;gap:10px;padding:6px 0;display:flex}.notify-check input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:2px 0 0}.notify-check span{flex-direction:column;gap:2px;min-width:0;display:flex}.notify-check b{font-size:14px;font-weight:600}.notify-check small{color:var(--ink-muted);font-size:13px;line-height:1.4}.notify-actions{flex-wrap:wrap;gap:8px;display:flex}.install-hint{background:var(--accent-soft);color:var(--ink-muted);border-radius:12px;flex-direction:column;gap:8px;padding:12px;font-size:13px;line-height:1.45;display:flex}.install-hint>b{color:var(--ink);font-size:14px}.install-hint .btn{align-self:flex-start}.settings-nav{flex-wrap:wrap;gap:6px;display:flex}.settings-nav a{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-secondary);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.settings-nav a:hover{border-color:var(--accent);color:var(--accent-hover)}.settings-card{scroll-margin-top:16px}.settings-card h2{margin:0;font-size:18px}.settings-facts{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin:0;display:grid}.settings-facts div{flex-direction:column;gap:2px;min-width:0;display:flex}.settings-facts dt{color:var(--ink-muted);font-size:12px}.settings-facts dd{overflow-wrap:anywhere;margin:0;font-weight:600}.switch-row{cursor:pointer;align-items:center;gap:12px;width:100%;display:flex}.switch{-webkit-appearance:none;appearance:none;background:var(--line-strong);cursor:pointer;border-radius:999px;flex:none;width:42px;height:24px;margin:0;transition:background .15s;position:relative}.switch:after{content:"";background:var(--surface);border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #12191b33}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(18px)}.switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.switch:disabled{opacity:.6;cursor:default}.audit{flex-direction:column;gap:12px;min-width:0;display:flex}.audit-filters{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.audit-filters label{flex-direction:column;flex:150px;gap:4px;min-width:0;display:flex}.audit-filters .select,.audit-filters .input{width:100%;min-width:0}.audit-list{margin:0;padding:0;list-style:none}.audit-list li{border-top:1px solid var(--track);grid-template-columns:140px minmax(0,1fr);gap:12px;padding:10px 0;display:grid}.audit-list li:first-child{border-top:0}.audit-when{color:var(--ink-muted);font-variant-numeric:tabular-nums;padding-top:2px;font-size:12px}.audit-main{overflow-wrap:anywhere;flex-direction:column;gap:4px;min-width:0;display:flex}.audit-meta{flex-wrap:wrap;gap:6px;display:flex}.audit-details summary{cursor:pointer;color:var(--ink-secondary);font-size:12px;font-weight:600}.audit-details dl{flex-direction:column;gap:4px;margin:6px 0 0;font-size:13px;display:flex}.audit-details dl div{flex-wrap:wrap;gap:4px 8px;display:flex}.audit-details dt{color:var(--ink-muted)}.audit-details dd{margin:0}.audit-details s{color:var(--ink-muted)}.rep-pick{align-items:center;gap:8px;min-width:0;display:flex}.rep-pick .select{min-width:0;max-width:100%}.today-stats.rep-stats{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:780px){.audit-list li{grid-template-columns:minmax(0,1fr);gap:4px}.today-stats.rep-stats{grid-template-columns:minmax(0,1fr)}.rep-pick{flex-direction:column;align-items:stretch;width:100%}}:root{--cal-personal:#ece7fa;--cal-personal-ink:#4a2f86}.cal-quick-row{gap:8px;display:flex}.cal-quick-row .input{flex:auto;min-width:0}.cal-preview{background:var(--subtle);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.cal-preview-what{flex-direction:column;gap:2px;display:flex}.cal-preview-actions,.cal-sync-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cal-layout{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:start;gap:16px;display:grid}.cal-main,.cal-side{min-width:0}.cal-side{flex-direction:column;gap:16px;display:flex}.cal-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.cal-nav{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.cal-nav .btn{justify-content:center;min-width:44px}.cal-title{margin:0 0 0 6px;font-size:17px}.cal-week{border:1px solid var(--line);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.cal-week-head,.cal-allday,.cal-week-body{grid-template-columns:52px repeat(7,minmax(0,1fr));display:grid}.cal-week-head,.cal-allday{border-bottom:1px solid var(--line)}.cal-day-head{border:0;border-left:1px solid var(--track);background:var(--surface);cursor:pointer;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;display:flex}.cal-day-head small{color:var(--ink-muted);font-size:11px}.cal-day-head b{border-radius:50%;width:28px;height:28px;font-size:15px;line-height:28px}.cal-day-head.today b{background:var(--accent);color:var(--on-accent)}.cal-allday-cell{border-left:1px solid var(--track);flex-direction:column;gap:2px;min-width:0;padding:4px 2px;display:flex}.cal-week-body{height:560px;position:relative;overflow-y:auto}.cal-hours,.cal-col{height:960px;position:relative}.cal-hour{color:var(--ink-faint);font-size:11px;position:absolute;right:6px;transform:translateY(-50%)}.cal-allday .cal-hour{text-align:right;align-self:center;padding-right:6px;position:static;transform:none}.cal-col{border-left:1px solid var(--track);background-image:repeating-linear-gradient(to bottom, var(--track) 0 1px, transparent 1px 40px)}.cal-col.today{background-color:var(--accent-soft)}.cal-ev{text-align:left;font:inherit;cursor:pointer;border:0;border-radius:6px;flex-direction:column;gap:1px;padding:2px 5px;display:flex;position:absolute;overflow:hidden}.cal-ev b,.cal-ev small,.cal-chip{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-ev b{font-size:12px}.cal-ev small{opacity:.85;font-size:11px}.cal-ev[aria-disabled],.cal-chip[aria-disabled],.cal-agenda-row[aria-disabled]{cursor:default}.cal-now{background:var(--hard);pointer-events:none;height:2px;position:absolute;left:0;right:0}.cal-chip{max-width:100%;font:inherit;text-align:left;cursor:pointer;border:0;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:600;display:block}.cal-ev.shift.day,.cal-chip.shift.day{background:var(--shift-day);color:var(--shift-day-ink)}.cal-ev.shift.evening,.cal-chip.shift.evening{background:var(--shift-evening);color:var(--shift-evening-ink)}.cal-ev.shift.night,.cal-chip.shift.night{background:var(--shift-night);color:var(--shift-night-ink)}.cal-ev.meeting,.cal-chip.meeting{background:var(--accent-soft);color:var(--accent-hover);box-shadow:inset 3px 0 0 var(--accent)}.cal-ev.personal,.cal-chip.personal{background:var(--cal-personal);color:var(--cal-personal-ink)}.cal-ev.busy,.cal-chip.busy{background:repeating-linear-gradient(135deg, var(--track) 0 4px, var(--subtle) 4px 8px);color:var(--ink-muted)}.cal-ev.leave,.cal-chip.leave{background:var(--warn-soft);color:var(--warn-ink)}.cal-ev.keep_free,.cal-chip.keep_free{background:var(--surface);color:var(--ink-muted);box-shadow:inset 0 0 0 1px var(--line-strong)}.cal-dot{background:var(--line-strong);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.cal-dot.shift.day{background:#5b7fc7}.cal-dot.shift.evening{background:#d08a45}.cal-dot.shift.night{background:var(--shift-night)}.cal-dot.meeting{background:var(--accent)}.cal-dot.personal{background:var(--cal-personal-ink)}.cal-dot.busy{background:var(--ink-faint)}.cal-dot.leave{background:var(--warn)}.cal-dot.keep_free{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-control)}.cal-month{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal-month-dow{background:var(--subtle);text-align:center;color:var(--ink-muted);padding:6px 0;font-size:11px;font-weight:600}.cal-month-day{background:var(--surface);min-width:0;min-height:96px;font:inherit;text-align:left;cursor:pointer;border:0;flex-direction:column;gap:3px;padding:4px;display:flex}.cal-month-day>b{text-align:center;border-radius:50%;width:22px;height:22px;font-size:12px;line-height:22px}.cal-month-day.out{background:var(--subtle);color:var(--ink-faint)}.cal-month-day.today>b{background:var(--accent);color:var(--on-accent)}.cal-month-day.picked{box-shadow:inset 0 0 0 2px var(--accent)}.cal-month-items{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-month-items small{color:var(--ink-muted);font-size:11px}.cal-dots{display:none}.cal-agenda{flex-direction:column;gap:12px;display:flex}.cal-phone-only{display:none}.cal-agenda-day h3{justify-content:space-between;align-items:center;margin:0 0 4px;font-size:13px;display:flex}.cal-agenda-day ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.cal-agenda-row{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:10px 92px minmax(0,1fr);align-items:center;gap:8px;padding:8px;display:grid}.cal-agenda-row:hover{background:var(--subtle)}.cal-agenda-time{color:var(--ink-secondary);font-size:13px}.cal-agenda-what{flex-direction:column;min-width:0;display:flex}.cal-agenda-what b,.cal-agenda-what small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-agenda-what small{color:var(--ink-muted);font-size:12px}.cal-legend{flex-wrap:wrap;gap:6px 14px;display:flex}.cal-legend>span{align-items:center;gap:6px;display:inline-flex}.cal-sync-row{border-top:1px solid var(--track);flex-direction:column;gap:6px;padding-top:12px;display:flex}.cal-sync-row:first-of-type{border-top:0;padding-top:0}.cal-sync-row .input{width:100%;min-width:0}.cal-open{flex-direction:column;gap:8px;display:flex}.cal-form-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.cal-field{color:var(--ink-muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.cal-field .input{width:100%;min-width:0}textarea.input.cal-notes{resize:vertical;height:auto;padding:10px 12px}@media (max-width:1180px){.cal-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:780px){.cal-week{display:none}.cal-phone-only{display:flex}.cal-month-day{align-items:center;min-height:52px}.cal-month-items{display:none}.cal-dots{flex-wrap:wrap;justify-content:center;gap:2px;display:flex}.cal-agenda-row{grid-template-columns:10px 76px minmax(0,1fr)}.cal-title{flex-basis:100%;margin:4px 0 0}}.leave-tabs{flex-wrap:wrap}.leave-big{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.leave-big b{font-variant-numeric:tabular-nums;font-size:40px;line-height:1}.leave-big span{color:var(--ink-muted)}.leave-meter{background:var(--track);border-radius:5px;height:10px;display:flex;overflow:hidden}.leave-meter .used,.leave-legend i.used{background:var(--accent)}.leave-meter .planned,.leave-legend i.planned,.backfill-bars i.helper{background:color-mix(in srgb, var(--accent) 40%, var(--surface))}.leave-legend i.temp,.backfill-bars i.temp{background:var(--warn)}.leave-legend{color:var(--ink-secondary);flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.leave-legend li{align-items:center;gap:6px;display:flex}.leave-legend i{background:var(--track);border-radius:3px;width:10px;height:10px}.leave-type{width:92px;color:var(--ink-secondary);flex:none;font-size:13px;font-weight:600}.attention li>.leave-when,.leave-when{flex-direction:column;flex:1;min-width:0;display:flex}.leave-when small{color:var(--ink-muted);font-size:12px}.tag.leave-requested{color:var(--warn-ink);background:var(--warn-soft)}.tag.leave-approved{color:var(--accent-hover);background:var(--accent-soft)}.tag.leave-rejected{color:var(--hard);background:var(--hard-soft)}.tag.leave-cancelled{color:var(--ink-muted);background:var(--track)}.leave-left{font-variant-numeric:tabular-nums;flex-direction:column;flex:none;align-items:flex-end;display:flex}.leave-left small{color:var(--ink-muted);font-size:11px}.leave-dates{flex-wrap:wrap;gap:12px;display:flex}.leave-dates label{flex-direction:column;flex:140px;gap:4px;min-width:0;display:flex}.leave-percent{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.leave-amount{max-width:200px}.backfill-bars{border-bottom:1px solid var(--line);align-items:flex-end;gap:2px;height:64px;padding:4px 0;display:flex}.backfill-bars span{flex-direction:column;flex:1 1 0;justify-content:flex-end;min-width:2px;height:100%;display:flex}.backfill-bars i{width:100%;display:block}.backfill-bars i.temp{border-radius:2px 2px 0 0}.leave-round-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.leave-round-actions{flex-wrap:wrap;gap:8px;display:flex}.leave-result{background:var(--accent-soft);border-radius:12px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.leave-why{color:var(--ink-secondary);margin:0;padding-left:18px;font-size:13px}.leave-wishes{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.leave-wishes .field-title{flex-basis:100%}.leave-wishes label{flex-direction:column;flex:180px;gap:4px;min-width:0;display:flex}.leave-person{flex-wrap:wrap}.leave-move{flex:0 190px;min-width:0}.leave-block{flex:none;font-size:13px}.cover-weeks{gap:3px;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.cover-weeks li{background:var(--track);font-variant-numeric:tabular-nums;border-radius:6px;flex-direction:column;flex:1 1 0;align-items:center;min-width:0;padding:4px 0;font-size:11px;display:flex}.cover-weeks li small{color:var(--ink-muted)}.cover-weeks li.some{background:var(--accent-soft)}.cover-weeks li.over{background:var(--hard-soft);color:var(--hard)}@media (max-width:780px){.leave-type{flex-basis:100%;width:auto}.leave-move{flex-basis:100%}.cover-weeks small{display:none}}.clients-tabs{margin-bottom:4px}.clients-privacy{color:var(--ink-muted);margin:0}.clients-h2{overflow-wrap:anywhere;margin:0;font-size:17px}.client-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px;display:grid}.client-card{border:1px solid var(--line);background:var(--surface);min-width:0;font:inherit;text-align:left;color:var(--ink);cursor:pointer;overflow-wrap:anywhere;border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;display:flex}.client-card:hover{border-color:var(--line-control)}.client-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.client-card-head{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:15px;display:flex}.client-card-head small{color:var(--ink-muted);font-size:12px}.client-hours{color:var(--ink-secondary)}.visit-run,.routes-bar{flex-flow:wrap;align-items:flex-end;gap:12px;display:flex}.visit-run-period{flex-direction:column;gap:4px;min-width:0;display:flex}.visit-run-actions{flex-wrap:wrap;gap:8px;display:flex}.visit-run-help{flex-basis:100%;margin:0}.client-back,.client-row-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.client-facts{grid-template-columns:minmax(90px,auto) 1fr;gap:6px 14px;margin:0;font-size:14px;display:grid}.client-facts dt{color:var(--ink-muted)}.client-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.client-two{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:8px;display:grid}.client-checks{flex-wrap:wrap;gap:8px 16px;display:flex}.client-check{align-items:center;gap:8px;font-size:14px;display:flex}.route{gap:10px}.route-stops{border-left:2px solid var(--track);flex-direction:column;gap:8px;margin:0;padding:0 0 0 14px;list-style:none;display:flex}.route-stops li{flex-direction:column;gap:2px;display:flex}.route-visit{overflow-wrap:anywhere}.base-row .input{width:92px;min-width:0}@media (max-width:780px){.base-row{flex-wrap:wrap}.base-row .insight-who{flex-basis:100%}.base-row .input{flex:70px;width:auto}.client-facts{grid-template-columns:1fr;gap:2px}.client-facts dd{margin-bottom:6px}}.grid-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.move-bar{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.move-bar .btn{text-overflow:ellipsis;white-space:nowrap;max-width:100%;height:36px;overflow:hidden}.cell[data-drag-src]{cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.cell[data-drag-src=on]{opacity:.35;outline:2px dashed var(--line-control);outline-offset:1px}body.is-dragging,body.is-dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.roster td.drop-cell{transition:background-color .12s;position:relative}.roster td.drop-day{background:color-mix(in srgb, var(--accent) 4%, transparent)}.roster td[data-drop=ok]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.roster td[data-drop=bad]{background:var(--hard-soft);box-shadow:inset 0 0 0 2px var(--hard)}.drag-float{z-index:200;pointer-events:none;will-change:transform;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:fixed;top:0;left:0}.drag-float[hidden],.drag-ghost[hidden]{display:none}.drag-ghost>.cell{opacity:.95;transform:rotate(-2deg);box-shadow:0 14px 30px #12191b38}.drag-hint{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--line-control);max-width:260px;box-shadow:var(--shadow-float);color:var(--ink);border-radius:10px;flex-direction:column;gap:2px;padding:8px 12px;font-size:13px;display:flex}.drag-hint.ok{border-left-color:var(--accent)}.drag-hint.bad{border-left-color:var(--hard)}.drag-hint.bad b{color:var(--hard)}.drag-hint small{color:var(--ink-muted);font-size:12px}.pick-target{z-index:2;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:1.5px dashed #0000;border-radius:10px;flex-direction:column;justify-content:center;gap:1px;padding:4px 8px;font-size:11px;display:flex;position:absolute;inset:3px}.pick-target.ok{border-color:color-mix(in srgb, var(--accent) 70%, transparent);background:color-mix(in srgb, var(--surface) 86%, var(--accent) 14%);color:var(--accent-hover)}:is(.pick-target.ok:hover,.pick-target.ok:focus-visible){border-color:var(--accent);border-style:solid;outline:none}.pick-target.bad{background:color-mix(in srgb, var(--surface) 55%, transparent);cursor:not-allowed}:is(.pick-target.bad:hover,.pick-target.bad:focus-visible){border-color:var(--hard);outline:none}.pick-target b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.pick-target small{color:inherit;opacity:.85;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.move-tip{margin-right:2px}.tl-card{flex-direction:column;gap:10px;min-width:0;display:flex}.tl-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tl-days{border:0;flex-wrap:wrap;gap:4px;min-width:0;margin:0;padding:0;display:flex}.tl-day{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:9px;height:32px;padding:0 10px;font-size:12px;font-weight:600}.tl-day.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-hover)}.tl-wrap{border:1px solid var(--track);border-radius:12px;overflow-x:auto}.tl{min-width:760px}.tl.week{min-width:980px}.tl-row{border-top:1px solid var(--track);grid-template-columns:150px 1fr;display:grid}.tl-row.tl-head{background:var(--subtle);border-top:0}.tl-who{flex-direction:column;justify-content:center;gap:1px;min-width:0;padding:6px 12px;display:flex}.tl-who b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.tl-who small{color:var(--ink-muted);font-size:11px}.tl-track{min-height:30px;position:relative}.tl-head .tl-track{height:30px}.tl-grid{background:var(--track);width:1px;position:absolute;top:0;bottom:0}.tl-tick{color:var(--ink-muted);white-space:nowrap;padding-left:4px;font-size:11px;font-weight:600;position:absolute;top:8px}.tl-bar{text-align:left;cursor:pointer;border:none;border-radius:7px;align-items:center;height:26px;padding:0 6px;font-size:11px;display:flex;position:absolute;overflow:hidden}.tl-bar.day{background:var(--shift-day);color:var(--shift-day-ink)}.tl-bar.evening{background:var(--shift-evening);color:var(--shift-evening-ink)}.tl-bar.night{background:var(--shift-night);color:var(--shift-night-ink)}.tl-bar.open{border:1.5px dashed var(--line-control);background:var(--surface);color:var(--ink-secondary)}.tl-bar.open.must{border-color:var(--hard);background:var(--hard-soft);color:var(--hard)}.tl-bar.selected{box-shadow:0 0 0 2px var(--accent)}.tl-bar.hardv{box-shadow:0 0 0 2px var(--hard)}.tl-label{z-index:1;white-space:nowrap;font-weight:650;position:relative}.tl-label small{opacity:.8;font-weight:500}.tl-break{background:repeating-linear-gradient(135deg,#0000 0 3px,#12191b2e 3px 5px);position:absolute;top:0;bottom:0}.tl-mark{z-index:2;background:var(--hard);width:16px;height:16px;color:var(--on-accent);text-align:center;border-radius:8px;font-size:11px;font-weight:700;line-height:16px;position:absolute;top:4px;right:4px}.tl-bar .warn-dot{background:var(--warn);border-radius:4px;width:7px;height:7px;position:absolute;top:4px;right:4px}.tl-away{background:var(--track);color:var(--ink-muted);white-space:nowrap;border-radius:7px;padding:0 6px;font-size:11px;line-height:22px;position:absolute;top:4px;bottom:4px;overflow:hidden}.tl-now{z-index:3;background:var(--hard);width:2px;position:absolute;top:0;bottom:0}dialog.sheet.wide{width:min(820px,100vw - 32px)}.rule-row.on{background:var(--accent-soft);border-radius:10px;padding-left:8px;padding-right:8px}.rot-row{flex-wrap:wrap;gap:12px;display:flex}.rot-row>.field-block{flex:200px}.rot-grid-wrap,.ver-diff-wrap{border:1px solid var(--track);border-radius:12px;overflow-x:auto}.rot-grid{border-collapse:collapse;width:100%;min-width:600px;font-size:12px}.rot-grid th{color:var(--ink-muted);text-align:left;padding:6px 4px;font-weight:600}.rot-grid td{padding:3px}.rot-cell{border:1px solid var(--line-strong);background:var(--surface);width:100%;height:34px;font:inherit;border-radius:8px;padding:0 4px;font-size:12px}.rot-cell.on{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.rot-member{flex-wrap:wrap;justify-content:space-between;align-items:center}.rot-member .select{height:36px}.ver-picks{flex-wrap:wrap;gap:12px;display:flex}.ver-pick{flex:220px;min-width:0}.ver-pick .select{width:100%}.ver-stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.ver-stats .warn b{color:var(--warn-ink)}.ver-tradeoff{color:var(--ink-secondary);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13px;display:flex}.ver-diff{border-collapse:collapse;width:100%;min-width:480px;font-size:13px}.ver-diff th,.ver-diff td{text-align:left;border-top:1px solid var(--track);font-weight:inherit;padding:8px 10px}.ver-diff thead th{background:var(--subtle);color:var(--ink-muted);border-top:0;font-size:12px;font-weight:600}.ver-diff tbody th .tag{margin-left:8px}.ver-diff td.none{color:var(--ink-faint);font-style:italic}.heal{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:10px 16px;display:flex}.heal-line{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.heal-text{flex:260px;min-width:0}.heal-text small{color:var(--ink-muted);display:block}.heal-actions{align-items:center;gap:6px;display:flex}.heal-actions .btn{height:36px}.heal-fix{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.heal-mode{align-items:flex-start;gap:8px;display:flex}@media (max-width:680px){dialog.sheet.wide{width:100vw;max-width:100vw}}@media (max-width:780px){.tl-row{grid-template-columns:110px 1fr}.drop-hint{display:none}}.chat-panel{z-index:40;background:var(--surface);border:1px solid var(--line);width:min(420px,100vw - 24px);box-shadow:var(--shadow-float);border-radius:18px;flex-direction:column;display:flex;position:fixed;top:12px;bottom:12px;right:12px;overflow:hidden}.chat-head{border-bottom:1px solid var(--track);grid-template-columns:1fr auto;align-items:center;gap:2px 8px;padding:12px 8px 10px 16px;display:grid}.chat-head .small{grid-column:1}.chat-head .icon-btn{grid-area:1/2/span 2;font-size:20px}.chat-body{flex-direction:column;flex:auto;gap:10px;min-height:0;padding:14px 16px;display:flex;overflow-y:auto}.chat-examples{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.chip-btn{border:1px solid var(--line-strong);background:var(--surface);font:inherit;cursor:pointer;text-align:left;border-radius:999px;padding:8px 12px;font-size:13px}.chat-msg{overflow-wrap:anywhere;border-radius:14px;flex-direction:column;gap:8px;max-width:92%;padding:10px 12px;font-size:14px;line-height:1.45;display:flex}.chat-msg p{margin:0}.chat-msg.me{background:var(--ink);color:var(--on-accent);white-space:pre-wrap;align-self:flex-end}.chat-msg.ai{background:var(--subtle);border:1px solid var(--track);align-self:stretch;max-width:100%}.chat-sources summary{cursor:pointer;color:var(--ink-muted);font-size:12px}.chat-sources ul{color:var(--ink-secondary);margin:4px 0 0;padding-left:18px;font-size:12px}.proposal{border:1px dashed var(--line-control);background:var(--surface);border-radius:12px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.proposal-actions,.review-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.proposal-actions .btn{height:38px}.proposal-actions .select{flex:160px;min-width:0}.ok-text{color:var(--accent-hover)}.chat-input{border-top:1px solid var(--track);align-items:flex-end;gap:8px;padding:10px 12px 4px;display:flex}.chat-input textarea.input{flex:1;min-width:0;min-height:48px;max-height:140px}.chat-foot{padding:0 14px 10px}@media (max-width:780px){.chat-panel{border:0;border-radius:0;width:100vw;inset:0}}.review{flex-direction:column;gap:10px;display:flex}.review-progress{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.review-card{border:1px solid var(--line);background:var(--surface);touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:16px;flex-direction:column;gap:8px;padding:16px;transition:transform .18s;display:flex;box-shadow:0 1px 2px #12191b0f}.review-card[data-swipe=accept]{border-color:var(--accent);background:var(--accent-soft)}.review-card[data-swipe=reject]{border-color:var(--hard);background:var(--hard-soft)}.review-card .form{-webkit-user-select:text;user-select:text}.review-title{font-size:16px}.review-card .rule-summary{margin:0;font-size:14px}.review-source blockquote{border-left:3px solid var(--line-strong);color:var(--ink-secondary);margin:6px 0 0;padding:6px 10px;font-style:italic}.review-actions .btn{flex:1 1 0;justify-content:center}.review-hint{display:none}.ai-label{color:var(--warn-ink);background:var(--warn-soft);border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:12px;font-weight:650}.tag.conf-high{color:var(--accent-hover);background:var(--accent-soft)}.tag.conf-medium{color:var(--warn-ink);background:var(--warn-soft)}.tag.conf-low{color:var(--hard);background:var(--hard-soft)}.ai-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.ai-row .grow{flex-direction:column;flex:260px;gap:4px;min-width:0;font-size:13px;font-weight:600;display:flex}@media (hover:none) and (pointer:coarse){.review-hint{display:block}}.setup-intro{flex-direction:column;gap:4px;display:flex}.setup-intro p{margin:0}.build-start{background:var(--accent-soft);width:100%;max-width:880px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;border-radius:14px;align-items:center;gap:14px;padding:14px 16px;display:flex}.build-start:hover{border-color:var(--accent)}.build-start:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.build-start-icon{background:var(--surface);width:36px;height:36px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.build-start-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.build-start-go{color:var(--accent);flex:none;font-size:18px}.questions{gap:10px;max-width:880px}.q{border:1px solid var(--line);border-radius:14px}.q-open{border-color:var(--line-strong);flex-direction:column;gap:14px;padding:18px;display:flex}.q-head{align-items:center;gap:10px;margin:0;font-size:16px;display:flex}.q-mark{background:var(--accent);width:24px;height:24px;color:var(--on-accent);border-radius:12px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.q-done{background:var(--subtle);flex-wrap:wrap;align-items:center;gap:4px 12px;padding:10px 14px;display:flex}.q-done .q-mark{background:var(--accent-soft);color:var(--accent)}.q-title{min-width:130px;color:var(--ink-muted);font-size:13px}.q-summary{overflow-wrap:anywhere;flex:160px;min-width:0;font-size:14px;font-weight:600}.q-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.q-actions .small{flex:220px}.q-actions .btn.accent{height:44px;padding:0 20px}.id-mode{padding:4px 2px}.build{border:1px solid var(--line-strong);background:var(--surface);border-radius:16px;flex-direction:column;gap:14px;max-width:880px;padding:20px;display:flex}.build-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.build-head h2{margin:0;font-size:18px}.build-head p{margin:4px 0 0}.build-head .icon-btn{color:var(--ink-muted);flex:none;margin:-8px -8px 0 0;font-size:22px}.build .seg{flex-wrap:wrap;align-self:flex-start}.build-text{color:var(--ink-secondary);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.build-text textarea.input{resize:vertical;width:100%;height:auto;min-height:120px;padding:12px;font-weight:400;line-height:1.5}.build-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.build-foot .small{flex:220px}.build-skip{align-self:flex-start;font-size:13px}.drop-wrap{flex-direction:column;gap:6px;display:flex}.drop-wrap .drop{border:1.5px dashed var(--line-strong);background:var(--subtle);text-align:center;cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;transition:border-color .15s,background-color .15s;display:flex}.drop-wrap .drop:hover,.drop-wrap .drop[data-over=true]{border-color:var(--accent);background:var(--accent-soft)}:is(.drop:has(input:focus-visible),.drop-replace:has(input:focus-visible)){outline:2px solid var(--accent);outline-offset:2px}.drop-icon{background:var(--surface);width:52px;height:52px;color:var(--accent);border-radius:16px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex;box-shadow:0 1px 3px #12191b14}.drop-title{color:var(--ink);font-size:14px;font-weight:600}.drop-browse{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.drop-meta{color:var(--ink-muted);font-size:12px}.drop-file{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.drop-file[data-over=true]{border-color:var(--accent);background:var(--accent-soft)}.drop-file-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.drop-file-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.drop-file-text b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.drop-file .drop-replace{color:var(--accent);cursor:pointer;border-radius:8px;flex:none;padding:6px 10px;font-size:13px;font-weight:600}.drop-file .drop-replace:hover{background:var(--accent-soft)}.col-kinds{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.col-kinds label{overflow-wrap:anywhere;flex-direction:column;gap:4px;min-width:0;display:flex}.ai-preview summary{cursor:pointer;font-size:13px;font-weight:600}.ai-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border:1px solid var(--track);border-radius:10px;max-height:220px;margin:6px 0 0;padding:10px;font-size:12px;overflow:auto}canvas.redact{border:1px solid var(--line);cursor:crosshair;touch-action:none;border-radius:10px;width:100%;height:auto}.redact-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.redact-list li{align-items:center;gap:8px;display:flex}.redact-list .input{flex:1;min-width:0}details.ai-notes{padding:0}details.ai-notes summary{color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-weight:600;list-style:none;display:flex}details.ai-notes summary::-webkit-details-marker{display:none}details.ai-notes summary:after{content:"Show";color:var(--accent);margin-left:auto;font-size:13px;font-weight:500}details.ai-notes[open] summary:after{content:"Hide"}.ai-notes ul{margin:0;padding:0 14px 12px 32px}@media (max-width:520px){.build{padding:16px}.build .seg{grid-template-columns:1fr 1fr;align-self:stretch;display:grid}.build-foot .btn.accent{width:100%}.q-open{padding:14px}}.status[hidden]{display:none}.skeleton{background:linear-gradient(90deg, var(--track) 0%, var(--subtle) 50%, var(--track) 100%);background-size:200% 100%;border-radius:14px;animation:1.2s ease-in-out infinite skeleton}.skeleton-title{border-radius:10px;width:220px;height:30px}.skeleton-card{height:180px}.skeleton-card.short{height:110px}@keyframes skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.account{max-width:none}.account-nav{flex-wrap:wrap;gap:6px;display:flex}.account-nav a{background:var(--track);color:var(--ink-secondary);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.account-nav a:hover{background:var(--accent-soft);color:var(--accent)}.account-card{gap:14px;padding:20px;scroll-margin-top:16px}.account-card h2{margin:0;font-size:17px}.account-note{background:var(--accent-soft);color:var(--ink);border-radius:12px;margin:0;padding:10px 14px;font-size:13px}.account-who{align-items:center;gap:12px;display:flex}.account-avatar{width:48px;height:48px;font-size:16px}.account-who-text,.account-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.account-who-text b{font-size:16px}.account-who-text small,.account-row-text small{color:var(--ink-muted);font-size:13px}.account-form{max-width:480px}.account-row{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.account-row-split{border-top:1px solid var(--track);padding-top:14px}.account-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.account-list li{border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.account-key{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.notify-inline{flex-direction:column;gap:16px;display:flex}.units-lede{max-width:640px;color:var(--ink-secondary);margin:0;font-size:13px;line-height:1.55}.units-plan{color:var(--ink-secondary);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.units-plan-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:4px}.units-plan-dot[data-full=true]{background:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}.units-plan-link{font-weight:600;text-decoration:none}.units-sites{flex-direction:column;gap:12px;display:flex}.units-site{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.units-site-head{align-items:center;gap:10px;min-height:36px;display:flex}.units-site-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.units-site-name,.units-name{flex-direction:column;flex:160px;gap:1px;min-width:0;display:flex}.units-site-name b,.units-name b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.units-site-name small,.units-name small{color:var(--ink-muted);font-size:12px}.units-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.units-list li{background:var(--subtle);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 8px 8px 10px;transition:background-color .15s;display:flex}.units-badge{background:var(--accent);width:32px;height:32px;color:var(--on-accent);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.units-badge.muted-badge{background:var(--track);color:var(--ink-muted)}.units-list .btn{height:36px}.units-empty{margin:0;padding:4px 2px}.units-rename{flex-wrap:wrap;flex:260px;align-items:center;gap:8px;display:flex}.units-rename .input{flex:160px;height:36px}.units-rename .btn{height:36px}.units-add{border:1px solid var(--line);background:var(--subtle);border-radius:16px;max-width:640px;padding:16px}.units-add h3{margin:0;font-size:15px}.units-add-btn span{color:var(--accent);margin-right:4px;font-weight:700}.units-archived{border-top:1px solid var(--track);padding-top:12px}.units-archived summary{cursor:pointer;color:var(--ink-secondary);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.units-archived[open] summary{margin-bottom:10px}.units-count{background:var(--track);border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;display:inline-flex}.row-actions{flex:none;position:relative}.row-actions-btn{width:36px;height:36px;color:var(--ink-muted)}.row-actions-menu{z-index:25;border:1px solid var(--line);background:var(--surface);min-width:170px;box-shadow:var(--shadow-float);border-radius:12px;flex-direction:column;padding:6px;animation:.12s ease-out pop-in;display:flex;position:absolute;top:calc(100% + 4px);right:0}.row-actions-menu button{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13px}.row-actions-menu button:hover{background:var(--ground)}.row-actions-menu button.danger{color:var(--hard)}.checks-help{flex-basis:100%}.period-next{border:1px dashed var(--line-strong);font:inherit;color:var(--accent);text-align:left;cursor:pointer;background:0 0;border-radius:10px;align-items:baseline;gap:6px;margin-top:2px;padding:6px 8px;font-size:13px;font-weight:600;transition:background-color .15s,border-color .15s;display:flex}.period-next:hover{border-color:var(--accent);background:var(--accent-soft)}.period-next small{color:var(--ink-muted);margin-left:auto;font-size:11px;font-weight:500}:root{--shadow-soft:0 1px 2px #12191b0a, 0 2px 8px #12191b08;--ease:cubic-bezier(.2, .8, .2, 1)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}::selection{background:var(--accent-soft)}h1{letter-spacing:-.02em}h2{letter-spacing:-.01em}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.card{box-shadow:var(--shadow-soft)}.btn{transition:background-color .15s var(--ease), border-color .15s var(--ease), box-shadow .15s var(--ease), transform 80ms var(--ease)}.btn:not(:disabled):hover{border-color:var(--line-control);background:var(--subtle)}.btn:not(:disabled):active{transform:translateY(1px)}.btn.accent{box-shadow:0 1px 2px #0e7c6640,inset 0 1px #ffffff1f}.btn.accent:not(:disabled):hover{background:var(--accent-hover);box-shadow:0 4px 12px #0e7c6640,inset 0 1px #ffffff1f}.btn.danger:not(:disabled):hover{background:#931c13;border-color:#931c13}.btn.ghost{color:var(--ink-secondary);background:0 0;border-color:#0000}.btn.ghost:not(:disabled):hover{background:var(--ground);border-color:#0000}.icon-btn{transition:background-color .15s var(--ease)}.icon-btn:not(:disabled):hover{background:var(--ground)}.link-btn{transition:background-color .15s var(--ease);border-radius:6px}.link-btn:not(:disabled):hover{background:var(--accent-soft)}.input,.select,textarea.input{transition:border-color .15s var(--ease), box-shadow .15s var(--ease)}.input:hover:not(:disabled),.select:hover:not(:disabled){border-color:var(--line-control)}.input:focus,.select:focus,textarea.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input::placeholder{color:var(--ink-faint)}.nav a{transition:background-color .15s var(--ease), color .15s var(--ease)}.org-menu,.row-actions-menu{transform-origin:0 0}.org-menu{animation:pop-in .14s var(--ease)}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.side{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.next-step{box-shadow:var(--shadow-soft)}@media (prefers-reduced-motion:reduce){.btn,.input,.select,.nav a,.org-menu,.row-actions-menu{transition:none;animation:none}}.main{gap:20px;padding:28px 32px 48px}h1{font-size:24px;font-weight:650}.btn{border-color:var(--line);height:40px;font-weight:600}.btn.accent,.btn.dark{background:var(--accent);height:40px;color:var(--on-accent);border:none;border-radius:12px;font-size:14px}.btn.dark:not(:disabled):hover{background:var(--accent-hover)}.icon-btn{color:var(--ink-secondary)}.icon-btn:disabled{opacity:.3}.card,.next-step,.units-site{box-shadow:none}.head .chat-btn{background:0 0;border-color:#0000}.head .chat-btn:not(:disabled):hover{background:var(--track)}.head-right{gap:6px}.weeknav{border-color:var(--line)}.next-step{border:none;border-radius:14px;gap:12px 20px;padding:16px 20px}.next-step-text strong{font-size:16px;font-weight:650}.next-step-text .muted{line-height:1.5}.heal{background:var(--warn-soft);border:none;padding:10px 14px}.heal-toggle{color:var(--ink-secondary);cursor:pointer;align-items:center;gap:8px;padding:0 4px;font-size:13px;display:flex}.heal-toggle small{color:var(--ink-muted);font-size:13px}.cell.open{border:1px solid var(--line);background:var(--surface);color:var(--ink-muted)}.cell.open.must{border:1.5px dashed var(--hard);background:var(--hard-soft);color:var(--hard)}.cov{color:var(--ink-faint);font-size:12px}.cov-badge{background:var(--track);min-width:26px;height:22px;color:var(--ink-secondary);border-radius:11px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.cov-badge.must{background:var(--hard-soft);color:var(--hard)}.grid-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.legend-key{margin-left:auto;position:relative}.legend-key summary{height:36px;color:var(--ink-secondary);cursor:pointer;border-radius:10px;align-items:center;padding:0 12px;font-size:13px;font-weight:600;list-style:none;display:inline-flex}.legend-key summary::-webkit-details-marker{display:none}.legend-key summary:hover,.legend-key[open] summary{background:var(--track)}.legend-key .legend{z-index:20;border:1px solid var(--line);background:var(--surface);width:260px;box-shadow:var(--shadow-float);border-radius:14px;grid-template-columns:1fr 1fr;gap:10px 12px;padding:14px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.menu{position:relative}.menu-list{z-index:30;border:1px solid var(--line);background:var(--surface);min-width:232px;box-shadow:var(--shadow-float);animation:pop-in .12s var(--ease);transform-origin:100% 0;border-radius:14px;flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.menu-list.left{left:0;right:auto}.menu-item{width:100%;min-height:38px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:6px 10px;font-size:14px;display:flex}.menu-item:hover:not(:disabled){background:var(--ground);outline:none}.menu-item:focus-visible{background:var(--ground);outline:none}.menu-item:disabled{color:var(--ink-disabled);cursor:default}.menu-item.danger{color:var(--hard)}.menu-text{flex-direction:column;display:flex}.menu-text small{color:var(--ink-muted);font-size:12px}.menu-check{width:14px;color:var(--accent);font-weight:700}.menu-heading{color:var(--ink-muted);padding:8px 10px 2px;font-size:12px;font-weight:600}.menu-sep{background:var(--track);border:0;height:1px;margin:6px 4px}.menu-list>.menu-sep:first-child{display:none}.summary-cost{border-top:1px solid var(--track);color:var(--ink-muted);flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;padding-top:10px;font-size:13px;display:flex}.summary-cost b{color:var(--ink);font-size:15px}.summary-cost em{font-style:normal}.summary-cost em.over{color:var(--hard)}.summary-cost em.near{color:var(--warn-ink)}@media (pointer:coarse),(max-width:780px){.btn,.btn.accent,.btn.dark{height:44px}.icon-btn{width:44px;height:44px}}@media (max-width:780px){.main{gap:16px;padding:16px 16px 40px}h1{font-size:20px}.card{padding:16px}.head{align-items:center;gap:10px 8px}.head-left{display:contents}.head-left>*{order:2}.head-left h1{order:1}.head-left .chip,.head-left .head-meta{order:2;margin-right:auto}.head-right{order:3;gap:2px;margin-left:auto}.head-left .weeknav{flex-basis:100%;order:4;justify-content:space-between}.menu-btn{background:0 0;border-color:#0000;justify-content:center;width:44px;height:44px;padding:0}}.head-meta{color:var(--ink-muted);font-size:14px}.today-stats{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:0;overflow:hidden}.today-stats>div{background:0 0;border:none;border-radius:0;padding:16px 20px}.today-stats>div+div{border-left:1px solid var(--track)}.today-stats b{letter-spacing:-.02em;font-size:28px;font-weight:600}@media (max-width:780px){.today-stats{grid-template-columns:1fr 1fr}.today-stats>div:nth-child(3){border-left:none}.today-stats>div:nth-child(n+3){border-top:1px solid var(--track)}.today-stats>div{padding:14px 16px}.today-stats b{font-size:24px}}.people-search{max-width:360px}.grid-card .table-wrap{border:none;border-radius:0}.roster.people thead th{border-bottom:1px solid var(--line);background:0 0}.privacy{border-top:1px solid var(--track);background:0 0;border-radius:0;gap:2px;padding:10px 10px 4px;font-size:11px}.privacy label{font-size:13px}.units-sites{gap:20px}.units-site{background:0 0;border:none;border-radius:0;gap:4px;padding:0}.units-list{gap:0}.units-list li{border-top:1px solid var(--track);background:0 0;border-radius:0;padding:10px 6px}.units-list li:hover{background:var(--subtle)}.units-add{background:0 0}html{scrollbar-gutter:stable}@media (min-width:781px){.shell>.side{z-index:10;width:236px;height:auto;position:fixed;inset:0 auto 0 0}.shell>.main{margin-left:236px}.shell>.side[data-collapsed=true]{width:72px}.shell:has(>.side[data-collapsed=true])>.main{margin-left:72px}}.card-title{margin:0;font-size:16px;font-weight:650}.period-picker .select{border-color:var(--line);height:40px;padding:0 32px 0 12px;font-weight:600}.budget-form{flex-wrap:nowrap;align-items:stretch;gap:16px;max-width:560px}.budget-form .input{width:100%;max-width:240px}.form>fieldset.budget-kind{grid-template-columns:1fr 1fr}.budget-kind legend{color:var(--ink-secondary);margin-bottom:8px;font-size:13px;font-weight:500}.budget-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:520px){.form>fieldset.budget-kind{grid-template-columns:1fr}}.status-text{flex:1 1 0;min-width:0}.head{min-height:44px}.head-right{flex-wrap:nowrap}.kicker{letter-spacing:-.005em;color:var(--ink);font-size:15px;font-weight:650}.kicker.ok{color:var(--accent-hover)}.kicker.alert{color:var(--hard)}.card-title,.settings-card h2,.account-card h2,.rules-head h2{margin:0;font-size:16px;font-weight:650}.card-sub{color:var(--ink-muted);font-size:13px}.rules-head{flex-direction:column;align-items:flex-start;gap:2px}.main>:not(dialog){width:100%;max-width:1280px}.main.narrow>:not(dialog){max-width:880px}.btn.accent:disabled,.btn.dark:disabled{background:var(--track);color:var(--ink-faint);box-shadow:none;opacity:1}.settings-nav a,.account-nav a{background:var(--track);color:var(--ink-secondary);white-space:nowrap;border:none;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.settings-nav a:hover,.account-nav a:hover{background:var(--accent-soft);color:var(--accent)}@media (max-width:780px){.settings-nav,.account-nav{scrollbar-width:none;flex-wrap:nowrap;margin:0 -16px;padding:0 16px;overflow-x:auto}}.form label.inline-check,.inline-check{flex-direction:row;align-items:center;gap:8px;min-height:36px;display:flex}.add-btn{align-self:flex-start}.add-btn:before{content:"+";color:var(--accent);margin-right:6px;font-weight:700}.stats{gap:0}.stats div{background:0 0;border-radius:0;padding:4px 12px}.stats div:first-child{padding-left:0}.stats div+div{border-left:1px solid var(--track)}@media (max-width:1400px){.cols>.panel{flex-basis:100%}}.statusbar{flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.statusbar .status{background:0 0;border:none;flex-wrap:nowrap;flex:260px;align-items:center;padding:0}.statusbar .status .dot{flex:none}.statusbar .heal-toggle{margin-left:auto}.statusbar .heal{flex-basis:100%}.roster .hours-head,.roster td.hours{z-index:1;text-align:right;background:var(--surface);box-shadow:-1px 0 0 var(--track);padding-right:12px;position:sticky;right:0}.roster thead .hours-head{background:var(--subtle)}.roster tr.sum td:last-child{background:var(--subtle);position:sticky;right:0}.phone-only{display:none}@media (max-width:780px){.phone-only{display:revert}small.phone-only{display:block}.hide-phone,.roster.people thead,.roster.people td{display:none}.roster.people{min-width:0}}.roles-page{flex-direction:column;gap:12px;display:flex}.roles-intro,.roles-tip{max-width:720px;margin:0}.roles-page .role-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media (max-width:780px){.head .chat-btn{justify-content:center;width:44px;padding:0}.head .chat-btn .chat-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.rules-card .choices,.swap-policy .choices{max-width:640px}.rules-ai-off{margin:0;padding:0 4px}.section-title{color:var(--ink-muted);margin:12px 0 0;font-size:13px;font-weight:600}.clock-settings h3{margin:0;font-size:16px;font-weight:650}.clock-settings .clock-part{border:none;padding:0}.clock-row label{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.budget-offer{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}@media (max-width:780px){.basis-seg{flex-basis:100%;order:5}.basis-seg label{flex:1}}.attention li .dot{background:var(--line-strong);border-radius:4px;flex:none;width:8px;height:8px}.attention li.ok .dot{background:var(--accent)}.attention li .btn{height:36px;color:var(--accent);background:0 0;border-color:#0000}.attention li .btn:not(:disabled):hover{background:var(--accent-soft);border-color:#0000}@media (max-width:780px){.attention li{flex-wrap:wrap;align-items:flex-start}.attention li .dot{margin-top:6px}.attention li>span:nth-child(2){flex:1 1 0;min-width:0}.attention li .btn{height:32px;margin-left:18px;padding:0 8px}}.today-big{font-size:28px}.plan-grid{align-items:stretch}.plan-card{background:var(--surface)}.plan-card .btn{margin-top:auto}.plan-name{justify-content:space-between;align-items:center;gap:8px;display:flex}.plan-name b{font-size:15px}@media (max-width:480px){.head-left .head-meta{display:none}}@media (max-width:780px){.attention li>span:nth-child(2){flex:calc(100% - 26px)}.attention li .btn,.attention li .attention-actions{margin-left:18px}.roster .hours-head,.roster td.hours,.roster tr.sum td:last-child{display:none}.who-hours .over{color:var(--warn-ink);font-weight:600}}@media (pointer:coarse),(max-width:780px){.period-picker .select{height:44px}.head h1{align-items:center;min-height:44px;display:flex}}.insight-for{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.billing-top{align-items:stretch}.panel>table.mini{max-width:640px}table.mini tfoot td{border:0;padding-top:8px}@media (max-width:780px){.head-right>.basis-seg{flex:1}.head-right>.basis-seg label{text-align:center;flex:1}}.today-grid.leave-team{grid-template-columns:1fr}@media (max-width:780px){.heal-toggle small{display:none}}.mini tfoot td:last-child{text-align:left}@media (max-width:780px){.head-right:has(>.basis-seg){width:100%}.statusbar .heal-toggle{align-self:flex-start;margin-left:0}}.view-modes{background:var(--track);border:0;border-radius:10px;flex-shrink:0;order:99;align-items:center;gap:2px;min-width:0;margin:0 0 0 auto;padding:2px;display:inline-flex}.view-mode{width:32px;height:32px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.view-mode:hover{color:var(--ink)}.view-mode.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #12191b14}.view-mode:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.main:has(.sched-expanded,.sched-page)>:not(dialog){max-width:none}.main.narrow:has(.sched-expanded,.sched-page)>:not(dialog){max-width:none}.cols:has(>.sched-expanded,>.sched-page)>.panel{flex-basis:100%}.cal-layout:has(>.sched-expanded,>.sched-page){grid-template-columns:minmax(0,1fr)}.cal-layout:has(>.sched-expanded,>.sched-page)>.cal-side{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;display:grid}@media (min-width:781px){html[data-sched=page] .shell>.side{display:none}:is(html[data-sched=page] .shell>.main,html[data-sched=page] .shell:has(>.side[data-collapsed=true])>.main){margin-left:0}}@media (max-width:780px){html[data-sched=page] .shell>.side{display:none}}:-webkit-any(.sched:-webkit-full-screen,.sched.sched-cover){background:var(--ground);border:0;border-radius:0;width:100%;max-width:none;height:100%;margin:0;padding:20px 24px;overflow:auto}:is(.sched:fullscreen,.sched.sched-cover){background:var(--ground);border:0;border-radius:0;width:100%;max-width:none;height:100%;margin:0;padding:20px 24px;overflow:auto}.sched.sched-cover{z-index:150;height:100dvh;position:fixed;inset:0}html[data-sched=cover],html[data-sched=cover] body{overflow:hidden}.sched:-webkit-full-screen::backdrop{background:var(--ground)}.sched:fullscreen::backdrop{background:var(--ground)}.grid-card.sched-cover,.cal-main.sched-cover{background:var(--surface)}.grid-card.sched:-webkit-full-screen{background:var(--surface)}.grid-card.sched:fullscreen{background:var(--surface)}.cal-main.sched:-webkit-full-screen{background:var(--surface)}.cal-main.sched:fullscreen{background:var(--surface)}.cal-main.sched-expanded .cal-week-body,.cal-main.sched-page .cal-week-body{height:min(78vh,960px)}.cal-main.sched-cover .cal-week-body{height:calc(100dvh - 190px)}.cal-main.sched:-webkit-full-screen .cal-week-body{height:calc(100dvh - 190px)}.cal-main.sched:fullscreen .cal-week-body{height:calc(100dvh - 190px)}.meetings-board{flex-direction:column;gap:12px;display:flex}.meetings-board-bar{align-items:center;gap:12px;display:flex}.meetings-board-bar .section-title{margin:0}.meetings-days{flex-direction:column;gap:12px;display:flex}.meetings-board:-webkit-any(.sched-expanded,.sched-page,:-webkit-full-screen,.sched-cover) .meetings-days{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;display:grid}.meetings-board:is(.sched-expanded,.sched-page,:fullscreen,.sched-cover) .meetings-days{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;display:grid}@media (max-width:780px){.view-mode{width:36px;height:36px}.view-mode:first-child,.view-mode:nth-child(2){display:none}:-webkit-any(.sched:-webkit-full-screen,.sched.sched-cover){padding:12px}:is(.sched:fullscreen,.sched.sched-cover){padding:12px}}:is(.main:has(.grid-card.sched-page)>.next-step,.main:has(.grid-card.sched-page)>.statusbar){display:none}.sched-status{align-items:center;gap:10px;min-width:0;margin-left:auto;display:inline-flex}.sched-status>.small{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden}.sched-status .err-text{color:var(--hard)}.sched-status+.view-modes{margin-left:0}@media (max-width:780px){.grid-tools>.move-bar{flex-basis:100%;order:100}}.po{--po-day:#5b8fe0;--po-evening:#d9883a;--po-night:#4e4aa6;flex-direction:column;gap:18px;min-width:0;display:flex}.po-wrap{min-width:0;container-type:inline-size}.po-wait{margin:8px 0}.po-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.po h3{margin:0;font-size:14px;font-weight:650}.po-block{flex-direction:column;gap:10px;min-width:0;display:flex}.po-health{background:var(--subtle);border:1px solid var(--track);border-radius:14px;flex-direction:column;gap:10px;padding:16px;display:flex}.po-score{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.po-score>b{letter-spacing:-.02em;font-size:34px;font-weight:700;line-height:1}.po-level{background:var(--accent-soft);color:var(--accent-hover);border-radius:999px;align-items:center;gap:6px;margin-left:4px;padding:3px 10px;font-size:12px;font-weight:650;display:inline-flex}.po-level .dot{background:currentColor;border-radius:50%;width:7px;height:7px}.po-level.watch{background:var(--warn-soft);color:var(--warn-ink)}.po-level.risk{background:var(--hard-soft);color:var(--hard)}.po-delta{color:var(--ink-muted);font-size:12px}.po-parts{grid-template-columns:56px minmax(0,1fr) 28px;align-items:center;gap:8px 12px;margin:0;padding:0;list-style:none;display:grid}.po-parts li{display:contents}.po-part-score{text-align:right;font-variant-numeric:tabular-nums;font-size:12px;font-weight:650}.po-parts small{color:var(--ink-muted);grid-column:2/-1;margin-top:-4px;font-size:12px}.po-part-label{color:var(--ink-secondary);font-size:12px;font-weight:600}.po-meter{background:var(--track);border-radius:999px;height:8px;display:block;overflow:hidden}.po-meter>span{background:var(--accent);border-radius:999px;height:100%;display:block}.po-meter.watch>span{background:var(--warn-ink)}.po-meter.risk>span{background:var(--hard)}.po-tiles{border:1px solid var(--track);background:var(--surface);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.po-tile{min-width:0;box-shadow:1px 0 0 var(--track), 0 1px 0 var(--track);flex-direction:column;gap:3px;padding:12px 14px;display:flex}.po-tile>b{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:650;overflow:hidden}.po-d{color:var(--ink-secondary);font-weight:600}.po-d [aria-hidden]{vertical-align:1px;font-size:9px}.po-d.same{color:var(--ink-muted);font-weight:500}.po-chart{min-width:0;position:relative}.po-chart svg{display:block;overflow:visible}.po-axis{stroke:var(--line);stroke-width:1px}.po-hit{fill:#0000}.po-bar-fill{fill:var(--accent)}.po-bar-ot{fill:var(--warn-ink)}.po-chart g:hover .po-bar-fill{fill:var(--accent-hover)}.po-val{fill:var(--ink-secondary);text-anchor:middle;font-size:11px;font-weight:600}.po-tick{fill:var(--ink-muted);text-anchor:middle;font-size:11px}.po-target{stroke:var(--ink-muted);stroke-width:1.5px;stroke-dasharray:4 4}.po-target-label{fill:var(--ink-secondary);font-size:11px;font-weight:600}.po-target-sub{fill:var(--ink-muted);font-size:10px}.po-tip{z-index:3;background:var(--surface);border:1px solid var(--line);width:170px;box-shadow:var(--shadow-float);pointer-events:none;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;font-size:12px;display:flex;position:absolute;transform:translateY(-100%)}.po-mix{grid-template-columns:84px minmax(0,1fr);align-items:center;gap:10px;display:grid}.po-mix-bar{gap:2px;height:22px;display:flex}.po-seg{color:#fff;justify-content:center;align-items:center;min-width:4px;font-size:11px;font-weight:650;display:flex}.po-seg:first-child{border-radius:6px 0 0 6px}.po-seg:last-child{border-radius:0 6px 6px 0}.po-seg:only-child{border-radius:6px}.po-seg.day,.po-sw.day{background:var(--po-day)}.po-seg.evening,.po-sw.evening{background:var(--po-evening)}.po-seg.night,.po-sw.night{background:var(--po-night)}.po-sw.hours{background:var(--accent)}.po-sw.ot{background:var(--warn-ink)}.po-legend{color:var(--ink-muted);flex-wrap:wrap;gap:4px 14px;font-size:12px;display:flex}.po-legend>span{align-items:center;gap:6px;display:inline-flex}.po-sw{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.po-rules{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.po-rules li{flex-direction:column;gap:6px;display:flex}.po-rule-head{justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;display:flex}.po-rule-head b{font-weight:600}.po-state{color:var(--accent-hover);flex:none;font-size:11px;font-weight:650}.po-state.near{color:var(--warn-ink)}.po-state.over{color:var(--hard)}.po-gauge{background:var(--track);border-radius:999px;height:8px;display:block;position:relative}.po-gauge-fill{background:color-mix(in srgb, var(--accent) 70%, var(--surface));border-radius:999px;height:100%;display:block}.po-rules li.near .po-gauge-fill{background:var(--warn-ink)}.po-rules li.over .po-gauge-fill{background:var(--hard)}.po-gauge i{background:var(--ink);border-radius:1px;width:2px;height:14px;margin-left:-1px;position:absolute;top:-3px}.po-next{flex-direction:column;gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.po-next li{grid-template-columns:10px 64px minmax(0,1fr);align-items:center;gap:10px;display:grid}.po-table th[scope=row]{text-align:left;font-weight:500}.po-table tr.near td{color:var(--warn-ink)}.po-table tr.over td{color:var(--hard)}@container (width>=440px){.po-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.po-tick.part{fill:var(--ink-faint);font-size:10px}.po-more{align-self:flex-start}@container (width>=620px){.po{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px 28px;display:grid}.po-bar,.po-health,.po-tiles{grid-column:1/-1}}.person-tabs{align-self:flex-start}.insight-rows li:has(.who-open){border-radius:10px;position:relative}.insight-rows li:has(.who-open):hover{background:var(--subtle)}.who-open{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:650}.who-open:after{content:"";border-radius:10px;position:absolute;inset:0}.who-open:focus-visible{outline:none}.who-open:focus-visible:after{outline:2px solid var(--accent);outline-offset:2px}.st-title{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.st-back{font-size:13px}.st-intro{margin:0}.st-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.st-list li{border-top:1px solid var(--track);grid-template-columns:6px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 4px;display:grid}.st-list li:first-child{border-top:0}.st-sw{border-radius:3px;align-self:stretch;width:6px}.st-sw.day{background:var(--shift-day-ink)}.st-sw.evening{background:var(--shift-evening-ink)}.st-sw.night{background:var(--shift-night)}.st-main{flex-direction:column;gap:2px;min-width:0;display:flex}.st-main b{font-size:15px}.st-count{white-space:nowrap}.st-form .st-times{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.st-length{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;margin-top:-6px;display:flex}.st-form .st-days legend,.st-form .st-needs legend{margin-bottom:8px;padding:0;font-size:13px;font-weight:600}.st-day-row{gap:6px;display:flex}.st-form .st-day-row label{border:1px solid var(--line);min-width:0;height:38px;color:var(--ink-muted);cursor:pointer;border-radius:999px;flex-direction:row;flex:1;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex}.st-form .st-day-row label.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-hover)}.st-form .st-day-row label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.st-form .st-chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.st-form .st-needs{flex-direction:column;gap:8px;display:flex}.st-need{grid-template-columns:minmax(0,1fr) auto auto 32px;align-items:center;gap:12px;padding:6px 0;display:grid}.st-role{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.stepper{border:1px solid var(--line);border-radius:10px;align-items:center;display:inline-flex;overflow:hidden}.stepper button{background:var(--surface);width:36px;height:34px;font:inherit;color:var(--ink);cursor:pointer;border:0;font-size:16px}.stepper button:hover:not(:disabled){background:var(--subtle)}.stepper button:disabled{color:var(--ink-disabled);cursor:default}.stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:30px;font-weight:650}.st-form .st-chip{border:1px solid var(--line);height:30px;color:var(--ink-muted);white-space:nowrap;cursor:pointer;border-radius:999px;flex-direction:row;align-items:center;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.st-form .st-chip.on{background:var(--hard-soft);border-color:color-mix(in srgb, var(--hard) 50%, transparent);color:var(--hard)}.st-drop{color:var(--ink-muted)}.st-add-role{align-self:flex-start;max-width:240px}.st-from{max-width:240px}.st-check{background:var(--accent-soft);border-radius:12px;outline:none;flex-direction:column;gap:4px;padding:12px 14px;font-size:13px;display:flex}.st-check.warn{background:var(--warn-soft)}.st-check ul{margin:4px 0 0;padding-left:18px}.st-foot .sheet-actions{align-items:center}.st-why{margin-right:4px}@media (max-width:780px){.st-list li{grid-template-columns:6px minmax(0,1fr) auto}.st-count{display:none}.st-form .st-times{grid-template-columns:1fr 1fr}.st-form .st-times label:last-child{grid-column:1/-1}.st-day-row{gap:4px}.st-form .st-day-row label{font-size:12px}.st-need{grid-template-columns:minmax(0,1fr) auto 32px;row-gap:6px}.st-need .stepper{grid-area:1/2}.st-need .st-drop{grid-area:1/3}.st-form .st-need .st-chip{grid-area:2/1/auto/-1;justify-self:start}.st-why{text-align:right;flex-basis:100%}}.cell small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.cell{max-height:64px;overflow:hidden}.view-menu .menu-trigger{height:36px;font-size:13px}.menu-box{border:1.5px solid var(--line-control);width:16px;height:16px;color:var(--on-accent);border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.menu-box.on{background:var(--accent);border-color:var(--accent)}.menu-item:disabled .menu-box{opacity:.4}.roster.grouped th[scope=row]{min-width:150px}.group-head{align-items:center;gap:10px;display:flex}.group-head>span{flex-direction:column;gap:1px;display:flex}.group-head small{color:var(--ink-muted);font-size:12px}.group-sw{border-radius:2px;flex:none;width:4px;height:30px}.group-sw.day{background:var(--shift-day-ink)}.group-sw.evening{background:var(--shift-evening-ink)}.group-sw.night{background:var(--shift-night)}.roster.grouped td{vertical-align:top}@media (max-width:780px){.roster.grouped th[scope=row]{min-width:110px}}.menu-item.is-off{color:var(--ink-disabled);cursor:default}.menu-item.is-off .menu-box{opacity:.4}.menu-caret{color:var(--ink-muted);margin-left:6px;font-size:11px}.group-edit{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;margin:-4px -6px;padding:4px 6px}.group-edit:hover{background:var(--subtle)}.grouped-empty{text-align:center;padding:24px 12px}.share-page{flex-direction:column;gap:16px;width:100%;max-width:760px;margin:0 auto;padding:24px 16px 40px;display:flex}.share-page.wide{max-width:1180px}.share-brand{display:flex}.share-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;display:flex}.share-title{flex-direction:column;gap:4px;min-width:0;display:flex}.share-title h1{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:26px;font-weight:650}.share-week{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:4px;padding:3px;display:flex}.share-week b{text-align:center;min-width:190px;font-size:14px}.share-week .icon-btn{font-size:22px;line-height:1}.share-body{padding:8px 16px;transition:opacity .15s}.share-body.busy{opacity:.6}.share-empty{margin:16px 0}.share-grid-wrap{overflow-x:auto}.share-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:720px}.share-grid th,.share-grid td{border-bottom:1px solid var(--track);vertical-align:top;text-align:left;padding:6px 4px}.share-grid thead th{color:var(--ink-muted);font-size:12px;font-weight:600}.share-grid tbody tr:last-child th,.share-grid tbody tr:last-child td{border-bottom:0}.share-grid tbody th{text-overflow:ellipsis;white-space:nowrap;padding-top:12px;font-size:13px;font-weight:650;overflow:hidden}.share-grid .share-who-col{width:150px}.share-grid th.today,.share-grid td.today{background:var(--subtle)}.share-grid thead th.today{color:var(--accent-hover)}.share-grid td .share-tile+.share-tile{margin-top:4px}.cell.share-tile{cursor:default}.cell.share-tile small{opacity:.85;font-size:11px}.share-days{flex-direction:column;margin:0;padding:0;list-style:none;display:none}.share-days.always{display:flex}.share-days li{border-top:1px solid var(--track);flex-direction:column;gap:8px;padding:12px 0;display:flex}.share-days li:first-child{border-top:0}.share-days h3{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:650;display:flex}.share-day-shifts{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;display:grid}.share-foot{flex-wrap:wrap;gap:4px 14px;padding:0 4px;display:flex}.share-lock{gap:14px;width:100%;max-width:440px;margin:8vh auto 0;padding:28px}.share-lock h1{margin:0;font-size:22px;font-weight:650}.share-lock p{margin:0}.share-lock-form{flex-direction:column;gap:8px;display:flex}.share-sheet .seg{flex-wrap:wrap}.share-picks{border:0;min-width:0;margin:0;padding:0}.share-form{flex-direction:column;gap:22px;display:flex}.share-made{background:var(--accent-soft);border-radius:14px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.share-made-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.share-made-row .input{flex:240px;min-width:0;font-size:13px}.share-code,.share-code-input{letter-spacing:.04em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.share-code{background:var(--surface);color:var(--ink);border-radius:6px;margin:0 4px;padding:2px 6px}.share-check{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:flex}.share-date,.share-person{max-width:260px}@media (max-width:760px){.share-grid-wrap{display:none}.share-days{display:flex}.share-week{justify-content:space-between;width:100%}.share-week b{min-width:0}.share-title h1{font-size:22px}}.pp{z-index:180;background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;width:min(340px,100vw - 16px);display:flex;position:fixed;overflow:hidden;box-shadow:0 16px 40px #12191b2e}.pp-head{border-bottom:1px solid var(--track);flex-direction:column;gap:8px;padding:12px 12px 10px;display:flex}.pp-head b{font-size:14px}.pp-search{height:38px}.pp-list{flex:1;min-height:0;padding:6px;overflow-y:auto}.pp-group{flex-direction:column;display:flex}.pp-group-title{letter-spacing:.02em;text-transform:uppercase;color:var(--ink-muted);padding:8px 8px 4px;font-size:11px;font-weight:650}.pp-item{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:8px;display:flex}.pp-item:hover:not(:disabled){background:var(--accent-soft);outline:none}.pp-item:focus-visible{background:var(--accent-soft);outline:none}.pp-item.off{cursor:default;color:var(--ink-muted)}.pp-item.off .avatar{opacity:.6}.pp-item .avatar{flex:none;width:30px;height:30px;font-size:11px}.pp-text{flex-direction:column;gap:1px;min-width:0;display:flex}.pp-text b{font-size:13px;font-weight:600}.pp-text small{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.pp-item.off .pp-text small{color:var(--hard);opacity:.85}.pp-empty{padding:12px;display:block}.roster button.add-here{width:100%;min-height:36px;font:inherit;color:var(--ink-faint);cursor:pointer;background:0 0;border:1.5px dashed #0000;border-radius:9px}:is(.roster button.add-here:hover,.roster button.add-here:focus-visible){border-color:var(--line-control);color:#0000;background:linear-gradient(var(--ink-muted), var(--ink-muted)) center / 12px 1.5px no-repeat, linear-gradient(var(--ink-muted), var(--ink-muted)) center / 1.5px 12px no-repeat;outline:none}.cell-add{border:1.5px dashed var(--line);width:100%;font:inherit;color:var(--ink-muted);text-align:left;cursor:pointer;background:0 0;border-radius:9px;margin-top:4px;padding:5px 8px;font-size:12px;font-weight:600;display:block}:is(.cell-add:hover,.cell-add:focus-visible){border-color:var(--accent);color:var(--accent-hover);outline:none}.panel-links{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.whatif-bar{z-index:20;background:color-mix(in srgb, var(--surface) 78%, var(--warn-soft) 22%);border:1.5px dashed var(--warn);box-shadow:var(--shadow-float);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:12px 16px;display:flex;position:sticky;top:8px}.whatif-text{flex-direction:column;flex:260px;gap:2px;min-width:200px;display:flex}.whatif-stats{flex-wrap:wrap;gap:4px 18px;margin:0;display:flex}.whatif-stats>div{flex-direction:column;display:flex}.whatif-stats dt{color:var(--ink-muted);font-size:11px}.whatif-stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:14px;font-weight:650}.whatif-stats .was{color:var(--ink-muted);font-weight:500;text-decoration:line-through}.whatif-stats .better dd{color:var(--accent-hover)}.whatif-stats .worse dd{color:var(--hard)}.whatif-actions{gap:8px;margin-left:auto;display:flex}.grid-card.whatif-on{box-shadow:0 0 0 2px color-mix(in srgb, var(--warn) 55%, transparent)}.cell.tried{outline:2px dashed var(--warn);outline-offset:1px}.chip.whatif-chip{background:var(--warn-soft);color:var(--warn-ink);border:1px dashed var(--warn)}.pp:focus{outline:none}.pp-item.off:hover{background:0 0}.pp-item.off:focus-visible{background:var(--subtle)}.pp.pp-sheet{width:100%;max-height:72dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:18px 18px 0 0;inset:auto 0 0}@media (hover:none){.roster button.add-here{color:#0000;border-color:var(--line);background:linear-gradient(var(--ink-faint), var(--ink-faint)) center / 10px 1.5px no-repeat, linear-gradient(var(--ink-faint), var(--ink-faint)) center / 1.5px 10px no-repeat}}@media (max-width:780px){.whatif-bar{gap:8px 12px;padding:10px 12px;top:64px}.whatif-text .small,.whatif-stats>div:nth-child(2),.whatif-stats>div:nth-child(3){display:none}.whatif-actions{width:100%}.whatif-actions .btn{flex:1}}.hl .hl-k{color:#f2a6c4}.hl .hl-s{color:#a8dbaa}.hl .hl-n{color:#ffcf8f}.hl .hl-c{color:#8fa6a1;font-style:italic}.hl .hl-p{color:#8fcdfa}.hl .hl-f{color:#7fe0c6;font-weight:600}.hl .hl-v{color:#f9bf7c}.hl .hl-u{color:#b9c9ff}.hl .hl-o{color:#9fb0ac}.hl.light .hl-k{color:#a3265f}.hl.light .hl-s{color:#1d6b2a}.hl.light .hl-n{color:#8a4b00}.hl.light .hl-c{color:#5f6d6a}.hl.light .hl-p{color:#0b5a8c}.hl.light .hl-f{color:#0e6e5a}.hl.light .hl-v{color:#8a4b00}.hl.light .hl-u{color:#2e4bb0}.hl.light .hl-o{color:#5f6d6a}.demo-picker{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:22px;display:flex}.demo-scenarios{border:0;flex-wrap:wrap;justify-content:center;gap:6px;min-width:0;margin:0;padding:0;display:flex;position:relative}.demo-scenarios label{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--ink-muted);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;padding:0 14px;font-size:13px;font-weight:600;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.demo-scenarios label:hover{color:var(--ink);border-color:var(--ink-muted)}.demo-scenarios label.on{background:var(--ink);border-color:var(--ink);color:var(--surface)}.demo-scenarios label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.demo-country{color:var(--ink-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.demo-country select{border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center;-webkit-appearance:none;appearance:none;height:32px;font:inherit;color:var(--ink);cursor:pointer;border-radius:8px;padding:0 28px 0 10px;font-weight:600}.demo-picker.is-compact{flex-flow:wrap;justify-content:flex-start;margin-top:0}.demo-flag{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--ink-muted);cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:0 10px 0 12px;display:inline-flex;position:relative}.demo-flag>span{font-size:18px;line-height:1}.demo-flag:hover{border-color:var(--ink-muted)}.demo-flag select{opacity:0;width:100%;font:inherit;cursor:pointer;font-size:14px;position:absolute;inset:0}.demo-flag:has(select:focus-visible){outline:2px solid var(--accent);outline-offset:2px}@media (max-width:640px){.demo-flag{box-shadow:-10px 0 10px -2px var(--ground,#f4f5f2);flex:none;position:sticky;right:0}.demo-scenarios{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;max-width:calc(100vw - 32px);padding:2px 2px 6px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 12px);mask-image:linear-gradient(90deg,#0000 0,#000 12px)}}.demo-sentence{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:14px 0 0;font-size:13px;display:flex}.demo-sentence select{border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 8px center;-webkit-appearance:none;appearance:none;height:30px;font:inherit;color:var(--ink);cursor:pointer;border-radius:8px;padding:0 26px 0 10px;font-weight:600}.consent{z-index:80;border:1px solid var(--line);background:var(--surface);width:min(380px,100vw - 32px);color:var(--ink-muted);border-radius:14px;flex-direction:column;gap:12px;padding:16px;font-size:13.5px;line-height:1.5;animation:.4s cubic-bezier(.2,.8,.2,1) both consent-in;display:flex;position:fixed;bottom:16px;left:16px;box-shadow:0 12px 32px #12191b29}.consent p{margin:0}.consent b{color:var(--ink);margin-bottom:2px;font-size:14.5px;display:block}.consent a{color:var(--accent)}.consent-actions{gap:8px;display:flex}.consent-actions button{border:1px solid var(--line);background:var(--surface);height:38px;font:inherit;color:var(--ink);cursor:pointer;border-radius:10px;flex:1;font-weight:600}.consent-actions .consent-yes{border-color:var(--accent);background:var(--accent);color:#fff}.consent-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.consent-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.consent-link{font:inherit;color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;cursor:pointer;background:0 0;border:0;padding:0}@keyframes consent-in{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.consent{animation:none}}
