@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/93a6e477e1480c92-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c7e0cf6c760983e7-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/9d5a263311222317-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/93a6e477e1480c92-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c7e0cf6c760983e7-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/9d5a263311222317-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Bricolage Grotesque Fallback;src:local("Arial");ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.00%;size-adjust:105.43%}.__className_cb0b0d{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.__variable_cb0b0d{--font-display:"Bricolage Grotesque","Bricolage Grotesque Fallback"}@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Public Sans Fallback;src:local("Arial");ascent-override:90.59%;descent-override:21.46%;line-gap-override:0.00%;size-adjust:104.87%}.__className_6f3782{font-family:Public Sans,Public Sans Fallback;font-style:normal}.__variable_6f3782{--font-body:"Public Sans","Public Sans Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_7b888a{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_7b888a{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root{--paper:#F5F7F4;--surface:#FFFFFF;--sunk:#EEF2EF;--ink:#17232A;--muted:#5A6A70;--line:#D9E0DC;--accent:#1E6B58;--accent-ink:#FFFFFF;--accent-soft:#E2EFEA;--towel:#9A6414;--towel-soft:#F7ECD9;--bad:#AE3D2B;--bad-soft:#F6E1DC;--info:#2F5D8A;--info-soft:#E1EAF4;--violet:#7A4A8C;--violet-soft:#EFE5F3;--z1:#1E6B58;--z2:#2F5D8A;--z3:#8A4E9C;--z4:#9A6414;--z5:#AE3D2B;--z6:#4E7A1E;--shadow:0 12px 40px rgba(23,35,42,.18);--shadow-sm:0 1px 2px rgba(23,35,42,.05),0 2px 6px rgba(23,35,42,.04);--shadow-md:0 2px 4px rgba(23,35,42,.05),0 8px 24px rgba(23,35,42,.07);--display:var(--font-display),"Avenir Next",system-ui,sans-serif;--body:var(--font-body),"Helvetica Neue",Arial,sans-serif;--mono:var(--font-mono),ui-monospace,Menlo,monospace;color-scheme:light}:root[data-theme=dark]{--paper:#0E1416;--surface:#162024;--sunk:#111A1D;--ink:#E4EBE8;--muted:#93A3A6;--line:#2A373B;--accent:#5CC2A2;--accent-ink:#0B1F19;--accent-soft:#163229;--towel:#E3AC52;--towel-soft:#33281A;--bad:#F0826E;--bad-soft:#3A211C;--info:#86B3E0;--info-soft:#1B2B3B;--violet:#C99ADB;--violet-soft:#2E2236;--z1:#5CC2A2;--z2:#86B3E0;--z3:#C99ADB;--z4:#E3AC52;--z5:#F0826E;--z6:#A6CF6E;--shadow:0 12px 40px rgba(0,0,0,.5);--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 18px rgba(0,0,0,.35);color-scheme:dark}*{box-sizing:border-box}body,html{margin:0}body{background:var(--paper);color:var(--ink);font:15px/1.55 var(--body);padding:env(safe-area-inset-top,0) 16px calc(env(safe-area-inset-bottom,0px) + 40px)}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;letter-spacing:-.01em}h1{font-size:1.3rem}h1,h2{font-weight:700}h2{font-size:1.6rem;line-height:1.15}h3{font-size:1.05rem;font-weight:700}p{margin:0}a{color:var(--accent)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.mono{font-family:var(--mono);font-size:.9em}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.wrap{max-width:1400px;margin:0 auto}.narrow{max-width:460px;margin:8vh auto 0}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;min-width:0}.brand small{color:var(--muted);font-size:.78rem}.brand b,.brand h1,.brand small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(140deg,var(--accent),color-mix(in oklab,var(--accent) 70%,#000));display:grid;place-items:center;color:var(--accent-ink);flex:none;box-shadow:var(--shadow-sm)}.mark svg{width:19px;height:19px}.logo{width:36px;height:36px;object-fit:contain;border-radius:9px;flex:none}.logo,.switch{background:var(--surface)}.switch{width:100%;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:.88rem;font-weight:600}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:14px 12px;max-width:1400px;margin:0 auto}.top .switch{width:auto;max-width:46vw}.nav{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.nav a,.nav button{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--muted);font-weight:600;font-size:.88rem;border:0;background:none;cursor:pointer}.nav a[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--line)}.appnav{display:none}.appnav nav,.moresheet,.navgroup{display:flex;flex-direction:column;gap:2px}.navgroup>span{font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:14px 10px 4px}.appnav nav a,.moregrid a,.navfoot button{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--muted);font-weight:600;font-size:.9rem;border:0;background:none;cursor:pointer;transition:background .12s,color .12s}.appnav nav a:hover,.navfoot button:hover{background:var(--sunk);color:var(--ink)}.appnav nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.navfoot{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--line)}.who{display:flex;align-items:center;gap:8px;padding:4px 6px}.who small{color:var(--muted);font-size:.78rem;line-height:1.3}@media (min-width:1000px){.appnav{display:flex;flex-direction:column;gap:12px;position:fixed;top:0;left:0;bottom:0;width:244px;padding:18px 14px;background:var(--surface);border-right:1px solid var(--line);overflow-y:auto;z-index:5}.appnav .brand{padding:2px 6px 6px}body:has(.appnav){padding-left:276px;padding-right:28px;padding-top:22px}body:has(.appnav) .tabbar,body:has(.appnav) .top{display:none}}.tabbar{display:none}@media (max-width:999px){body:has(.tabbar){padding-bottom:calc(env(safe-area-inset-bottom,0px) + 86px)}body:has(.tabbar) .top{position:-webkit-sticky;position:sticky;top:0;z-index:6;margin:0 -16px 12px;padding:10px 16px;background:color-mix(in oklab,var(--paper) 86%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line);flex-wrap:nowrap}body:has(.tabbar) .top h1{font-size:1.05rem}.tabbar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:0;right:0;bottom:0;z-index:7;background:color-mix(in oklab,var(--surface) 92%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-top:1px solid var(--line);padding:6px 6px calc(env(safe-area-inset-bottom,0px) + 6px)}.tabbar a,.tabbar button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:12px;text-decoration:none;color:var(--muted);font-size:.68rem;font-weight:600;border:0;background:none;cursor:pointer;min-height:52px;justify-content:center}.tabbar a span,.tabbar button span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.tabbar a[aria-current=page]{color:var(--accent);background:var(--accent-soft)}body:has(.tabbar) .toast{bottom:calc(env(safe-area-inset-bottom,0px) + 92px)}}.moresheet{position:fixed;left:0;right:0;bottom:0;z-index:11;background:var(--surface);border-radius:20px 20px 0 0;padding:8px 16px calc(env(safe-area-inset-bottom,0px) + 16px);box-shadow:var(--shadow);max-height:85vh;overflow-y:auto;gap:6px}.moresheet .grab{width:40px;height:4px;border-radius:2px;background:var(--line);margin:4px auto}.moregrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px}.moregrid a{background:var(--sunk);color:var(--ink);padding:12px}.moregrid a[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;min-width:0}@media (max-width:560px){.panel{padding:18px}}.eyebrow{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:6px}.lede{color:var(--muted);max-width:62ch;margin-top:8px}.section{display:flex;flex-direction:column;gap:14px;padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}.section.first{border-top:0;margin-top:12px;padding-top:12px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:14px 16px;gap:14px 16px}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field.wide{grid-column:1/-1}.lbl,label{font-size:.84rem;font-weight:600}.hint{font-size:.8rem;color:var(--muted);font-weight:400}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],select,textarea{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:0}textarea{font:13px/1.5 var(--mono);resize:vertical}.suffix{display:flex;align-items:center;gap:6px}.suffix span{font-size:.82rem;color:var(--muted);white-space:nowrap}.choice{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:10px;gap:10px}.opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:12px;cursor:pointer;background:var(--paper)}.opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.opt input{margin-top:3px;accent-color:var(--accent)}.opt b{display:block;font-size:.9rem}.opt span{font-size:.8rem;color:var(--muted)}.check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;font-weight:400}.check input{margin-top:4px;accent-color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:6px;border-radius:8px;padding:8px 14px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-weight:600;font-size:.88rem;text-decoration:none;color:inherit}.btn:hover{background:var(--sunk)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.08)}.btn.danger{background:var(--bad);border-color:var(--bad);color:var(--surface)}.btn.small{padding:4px 9px;font-size:.8rem}.linkish{background:none;border:0;padding:0;font:inherit;color:var(--accent);text-decoration:underline;cursor:pointer}.btn[disabled]{opacity:.45;cursor:not-allowed}.x{border:0;background:none;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:4px 6px;border-radius:6px}.x:hover{background:var(--bad-soft);color:var(--bad)}.foot{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.err{background:var(--bad-soft);color:var(--ink);border-radius:8px;padding:10px 12px}.callout,.err{font-size:.88rem}.callout{border-radius:10px;padding:12px 14px;display:flex;gap:10px;align-items:flex-start}.callout.info{background:var(--info-soft)}.callout.warn{background:var(--towel-soft)}.callout.bad{background:var(--bad-soft)}.callout.ok{background:var(--accent-soft)}.tw{overflow-x:auto;border:1px solid var(--line);border-radius:10px}table{border-collapse:collapse;width:100%;font-size:.88rem}th{font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;text-align:left;background:var(--sunk)}td,th{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}td input,td select{padding:5px 7px}td input[type=number]{width:76px}.r{text-align:right}.pill{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}.p-bad,.p-dep{background:var(--bad-soft);color:var(--bad)}.p-stay{background:var(--info-soft);color:var(--info)}.p-arr,.p-ok{background:var(--accent-soft);color:var(--accent)}.p-grey,.p-none{background:var(--sunk);color:var(--muted)}.p-towel,.p-wait{background:var(--towel-soft);color:var(--towel)}.rm{font:500 .78rem var(--mono);padding:2px 6px;border-radius:5px;background:var(--surface);border:1px solid var(--line)}.kv{display:grid;grid-template-columns:1fr auto;grid-gap:6px 12px;gap:6px 12px;font-size:.88rem;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.big{font:700 2rem/1 var(--display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.big small{font:500 .8rem var(--body);color:var(--muted);margin-left:4px}.shell{display:grid;grid-template-columns:220px minmax(0,1fr) 300px;grid-gap:24px;gap:24px;max-width:1320px;margin:0 auto;align-items:start}@media (max-width:1100px){.shell{grid-template-columns:200px minmax(0,1fr)}.shell .side{grid-column:1/-1}}@media (max-width:760px){.shell{grid-template-columns:minmax(0,1fr)}}.steps{position:-webkit-sticky;position:sticky;top:12px;display:flex;flex-direction:column;gap:2px}.steps .group{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:12px 10px 4px}.steps button{display:flex;align-items:center;gap:10px;text-align:left;background:none;border:0;border-radius:8px;padding:7px 10px;cursor:pointer;color:var(--muted)}.steps button:hover{background:var(--sunk);color:var(--ink)}.steps button[aria-current=step]{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--line)}@media (max-width:760px){.steps{position:static;flex-direction:row;overflow-x:auto;padding-bottom:4px}.steps .group{display:none}.steps button{flex:none;font-size:.85rem}}.dot{width:20px;height:20px;border-radius:50%;flex:none;display:grid;place-items:center;font:600 .7rem var(--mono);border:1.5px solid var(--line)}.dot.ok{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.side{position:-webkit-sticky;position:sticky;top:12px;display:flex;flex-direction:column;gap:12px}@media (max-width:1100px){.side{position:static}}.glance{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:14px}.zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px}.zone{border:1px solid var(--line);border-radius:10px;padding:12px;flex-direction:column;background:var(--paper)}.zone,.zone header{display:flex;gap:8px}.zone header{align-items:center}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:4px;padding:4px 6px 4px 10px;border-radius:999px;background:var(--sunk);border:1px solid var(--line);font-size:.84rem}.days{display:flex;gap:3px}.days label{font:600 .7rem var(--mono);width:24px;height:24px;display:grid;place-items:center;border-radius:6px;border:1px solid var(--line);cursor:pointer;color:var(--muted)}.days input{position:absolute;opacity:0;pointer-events:none}.days label:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.order{display:flex;flex-direction:column;gap:6px;padding:0;margin:0;counter-reset:o}.order li{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--paper);list-style:none}.order li:before{counter-increment:o;content:counter(o);font:600 .75rem var(--mono);color:var(--accent);width:16px}.order li span{flex:1 1}.alloc{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:10px;gap:10px}.card{border:1px solid var(--line);border-radius:10px;padding:12px;flex-direction:column;background:var(--paper)}.card,.card header{display:flex;gap:8px}.card header{justify-content:space-between;align-items:baseline}.bar{height:6px;border-radius:3px;background:var(--sunk);overflow:hidden}.bar i{display:block;height:100%;background:var(--accent)}.bar.over i{background:var(--bad)}.pins{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:8px;gap:8px}.pins div{border:1px solid var(--line);border-radius:8px;padding:8px 10px;display:flex;justify-content:space-between;gap:8px;background:var(--paper)}.pins b{font:600 1.05rem var(--mono);letter-spacing:.1em}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:8px;gap:8px;margin-bottom:14px}.stat{display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);cursor:pointer;position:relative}.stat:hover{border-color:var(--muted)}.stat[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:-1px}.stat b{font:700 1.6rem/1.1 var(--display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat span{font-size:.78rem;color:var(--muted)}.stat:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--c,transparent)}.cols{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:18px;gap:18px;align-items:start}@media (max-width:1000px){.cols{grid-template-columns:minmax(0,1fr)}}.tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.tools input[type=search]{width:180px;background:var(--surface)}.tools input[type=date]{width:auto;background:var(--surface)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}.seg button{border:0;background:none;padding:6px 10px;cursor:pointer;font-size:.82rem;color:var(--muted)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.floor{margin-bottom:16px}.floor h2{font-size:.8rem;font-family:var(--body);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;display:flex;gap:8px;align-items:baseline}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.tile{position:relative;text-align:left;display:flex;flex-direction:column;gap:4px;padding:10px 10px 9px 13px;border-radius:10px;background:var(--surface);border:1px solid var(--line);cursor:pointer;min-height:104px;overflow:hidden}.tile:hover{border-color:var(--muted)}.tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--c)}.tile .row{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.tile .no{font:600 1.15rem var(--mono)}.tile .ty{font-size:.74rem;color:var(--muted)}.tile .st{font-size:.8rem;font-weight:600;color:var(--c)}.tile .sub{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile.dim{opacity:.35}.flags{display:flex;gap:3px;flex-wrap:wrap;margin-top:auto}.f{font-size:.66rem;font-weight:600;padding:1px 5px;border-radius:4px;background:var(--sunk);color:var(--muted);white-space:nowrap}.f.red{background:var(--bad-soft);color:var(--bad)}.f.amb{background:var(--towel-soft);color:var(--towel)}.f.blu{background:var(--info-soft);color:var(--info)}.f.vio{background:var(--violet-soft);color:var(--violet)}.prog{height:3px;background:var(--sunk);border-radius:2px;overflow:hidden}.prog i{display:block;height:100%;background:var(--c)}.s-dueout{--c:var(--violet)}.s-dirty{--c:var(--bad)}.s-progress{--c:var(--towel)}.s-cleaned{--c:var(--info)}.s-ready{--c:var(--accent)}.s-nodata,.s-occ,.s-occdone{--c:var(--muted)}.s-ooo{--c:var(--ink)}.s-na{--c:var(--bad);background:var(--bad-soft)}.legend{display:flex;gap:10px;flex-wrap:wrap;font-size:.76rem;color:var(--muted);margin-left:auto}.legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px}.rail{display:flex;flex-direction:column;gap:14px;position:-webkit-sticky;position:sticky;top:12px}@media (max-width:1000px){.rail{position:static}}.box{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.box h3{font-size:.95rem;display:flex;justify-content:space-between;align-items:baseline;gap:8px}.arr{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;padding:6px 0;border-top:1px solid var(--line);font-size:.84rem}.arr:first-of-type{border-top:0}.arr .eta{font:600 .84rem var(--mono)}.arr button{background:none;border:0;padding:0;cursor:pointer;text-align:left;min-width:0}.feed{display:flex;flex-direction:column;gap:7px;max-height:340px;overflow:auto;font-size:.82rem}.feed div,.timeline div{display:grid;grid-template-columns:42px 1fr;grid-gap:6px;gap:6px}.feed .t,.timeline .t{font:500 .75rem var(--mono);color:var(--muted);padding-top:1px}.timeline{display:flex;flex-direction:column;gap:6px;font-size:.82rem}.scrim{position:fixed;inset:0;background:rgba(10,16,18,.35);z-index:10}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);background:var(--surface);z-index:11;box-shadow:var(--shadow);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0)}@media (max-width:600px){.drawer{top:auto;height:88%;width:100%;border-radius:16px 16px 0 0;padding-bottom:env(safe-area-inset-bottom,0)}}.dh{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.dh .no{font:600 1.9rem/1 var(--mono)}.db{padding:16px 18px;overflow:auto;display:flex;flex-direction:column;gap:18px}.close{border:0;background:var(--sunk);border-radius:8px;width:32px;height:32px;cursor:pointer;font-size:1.1rem}.dkv{display:grid;grid-template-columns:auto 1fr;grid-gap:4px 14px;gap:4px 14px;font-size:.86rem;margin:0}.dkv dt{color:var(--muted)}.dkv dd{margin:0}.cap{font-size:.74rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:8px}.acts{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.act{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--paper);cursor:pointer}.act:hover{border-color:var(--muted)}.act b{font-size:.88rem}.act span{font-size:.75rem;color:var(--muted)}.act.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.act.primary span{color:inherit;opacity:.85}.act.on{border-color:var(--bad);background:var(--bad-soft)}.act.wide{grid-column:1/-1}.act[disabled]{opacity:.5;cursor:wait}.form{gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.form,.form label{display:flex;flex-direction:column}.form label{gap:4px}.form input[type=text],.form select,.form textarea{background:var(--surface)}.form .chk{flex-direction:row;align-items:center;gap:8px;font-weight:500}.btns{gap:8px;justify-content:flex-end;flex-wrap:wrap}.btns,.job{display:flex}.job{border:1px solid var(--line);padding:8px 10px;font-size:.84rem;flex-direction:column;gap:2px}.job,.toast{border-radius:8px}.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 20px);transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:9px 16px;font-size:.88rem;font-weight:600;z-index:20;max-width:calc(100% - 32px)}.empty{padding:40px 20px;text-align:center;gap:12px;align-items:center}.empty,.my{display:flex;flex-direction:column}.my{max-width:560px;margin:0 auto;gap:16px}.hello h2{font-size:1.5rem}.now{background:var(--surface);border:2px solid var(--towel);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:10px}.now.up{border-color:var(--accent)}.now-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.now-no{font:600 3.2rem/1 var(--mono);letter-spacing:-.02em}.now-btns{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:4px}.now-btns .big:first-child{grid-column:1/-1}.big{min-height:52px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-weight:700;font-size:1rem;cursor:pointer;padding:10px 14px}.big.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.big.ghost{background:none}.big[disabled]{opacity:.5;cursor:not-allowed}.timer{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.timer .mono{font-size:2rem;font-weight:600}.todo{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px;font-weight:600}.list-h{font-size:.85rem;font-family:var(--body);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.list-h,.rooms{display:flex;gap:8px}.rooms{list-style:none;margin:0;padding:0;flex-direction:column}.room{width:100%;display:grid;grid-template-columns:64px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;cursor:pointer;min-height:64px}.room[aria-expanded=true]{border-color:var(--accent);border-bottom-left-radius:0;border-bottom-right-radius:0}.room-no{font:600 1.4rem var(--mono)}.room-main{display:flex;flex-direction:column;gap:4px;min-width:0}.room-main .flags{margin:0}.room-min{color:var(--muted);font-weight:600}.room-more{border:1px solid var(--accent);border-top:0;border-radius:0 0 12px 12px;padding:12px;flex-direction:column}.duty,.room-more{background:var(--surface);display:flex;gap:10px}.duty{justify-content:space-between;border:1px solid var(--line);border-radius:10px;padding:10px 12px}.thumbs{display:flex;flex-wrap:wrap;gap:8px}.thumb{position:relative;width:84px;height:84px;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--sunk);display:grid;place-items:center;font-size:.78rem;font-weight:600;text-align:center;color:var(--muted)}.thumb img{width:100%;height:100%;object-fit:cover}.thumb .x{position:absolute;top:2px;right:2px;background:var(--surface)}.thumb.add{cursor:pointer;border-style:dashed;padding:6px}.chip.pick{cursor:pointer;padding:6px 12px;font:inherit;font-size:.86rem}.chip.pick.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.avatar{position:relative;width:44px;height:44px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font:700 1.1rem var(--display);overflow:hidden;flex:none}.avatar.big{width:84px;height:84px;font-size:2rem}.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gcard{display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px}.gcard-body{flex-direction:column;min-width:0;flex:1 1}.gcard-body,.tips{display:flex;gap:8px}.tips{flex-direction:column;margin-top:4px}.tip{display:flex;align-items:center;justify-content:center;text-decoration:none}@media (max-width:420px){.gcard{flex-direction:column;align-items:center;text-align:center}}.guest{max-width:520px;margin:0 auto;padding-block:24px;display:flex;flex-direction:column;gap:16px}.guest-head h1{font-size:2rem}.stars{display:flex;gap:6px;justify-content:center}.stars button{font-size:2.6rem;line-height:1;background:none;border:0;cursor:pointer;color:var(--line);padding:4px}.stars button.on,.stars-sm{color:var(--towel)}.stars-sm{letter-spacing:1px}.qr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:12px;gap:12px}.qr-card{background:#fff;color:#17232A;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:.86rem;page-break-inside:avoid;break-inside:avoid}.qr-card .cap{color:#5A6A70}.qr-room{font:700 1.4rem var(--display)}.photos{display:flex;gap:6px;flex-wrap:wrap}.photos a{display:block;width:72px;height:72px;border-radius:8px;overflow:hidden;border:1px solid var(--line)}.photos img{width:100%;height:100%;object-fit:cover}@media print{body{background:#fff;padding:0}.noprint{display:none!important}.qr-grid{grid-template-columns:repeat(2,1fr);gap:10mm}.qr-card{border:1px dashed #999;border-radius:0;padding:8mm}}.jobcard{list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;position:relative}.jobcard:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--line)}.jobcard.pr-urgent:before{background:var(--bad)}.jobcard.pr-normal:before{background:var(--towel)}.jobcard.pr-low:before{background:var(--muted)}.jobhead{width:100%;display:grid;grid-gap:6px;gap:6px;text-align:left;background:none;border:0;padding:12px 12px 12px 17px;cursor:pointer}.jobwhere{font-size:1rem}.jobdesc{font-size:.92rem}.jobcard .room-more{border:0;border-top:1px solid var(--line);border-radius:0;padding-left:17px}.seg button[aria-selected=true]{background:var(--ink);color:var(--paper)}.rota table{font-size:.84rem}.rota td,.rota th{padding:5px 4px}.rota-name{position:-webkit-sticky;position:sticky;left:0;background:var(--surface);min-width:120px;text-align:left;z-index:1}.rota thead th.rota-name{background:var(--sunk)}.rota-today{color:var(--accent)!important}.rota-need td{background:var(--sunk)}.rota-cell{width:64px;min-height:40px;border-radius:8px;border:1px solid var(--line);background:var(--paper);font-weight:600;font-size:.78rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;margin-left:auto}.rota-cell small{font-weight:500;font-size:.66rem;color:var(--muted)}.rota-cell[disabled]{cursor:default}.rota-cell.c-in{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.rota-cell.c-off{color:var(--muted)}.rota-cell.c-linen,.rota-cell.c-porter,.rota-cell.c-supervisor{background:var(--violet-soft);color:var(--violet);border-color:var(--violet)}.rota-cell.c-holiday{background:var(--info-soft);color:var(--info);border-color:var(--info)}.rota-cell.c-sick{background:var(--bad-soft);color:var(--bad);border-color:var(--bad)}.rota-cell.open{outline:2px solid var(--ink)}.rota-cell .stranded{color:var(--bad);font-weight:700}.rota-cell[disabled]{opacity:.45}.rota-edit{max-width:560px}.rota-cell.usual{opacity:.55;border-style:dashed}.rota-cell.changed{box-shadow:0 0 0 2px var(--towel)}.rota-week-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.rota-fnb{overflow-x:auto}.rota-fnb table{table-layout:fixed;width:100%;min-width:680px}.rota-fnb .rota-namecol{width:120px}.rota-fnb th{text-align:center}.rota-fnb .rota-cell{width:100%;margin:0}.rota-evs{font-size:.72rem;vertical-align:top}.rota-ev{margin-bottom:6px;min-width:0}.rota-ev .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rota-ev .needs{display:flex;flex-wrap:wrap;gap:2px;margin-top:2px}.f.grn{background:var(--accent-soft);color:var(--accent)}.rota-cell.c-fnb,.rota-cell.c-other{background:var(--towel-soft);color:var(--towel);border-color:var(--towel)}.rota-cell small.also{color:var(--towel);font-weight:600}.rota-quick{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--sunk);margin:6px 0}.rota-quick.live{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rota-sheet{position:-webkit-sticky;position:sticky;bottom:10px;z-index:5;margin-top:12px;box-shadow:0 6px 24px rgba(0,0,0,.18);display:flex;flex-direction:column;gap:10px}.myweek{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.mw{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;border-radius:8px;border:1px solid var(--line);background:var(--surface);font-size:.74rem;color:var(--muted)}.mw b{font-size:.8rem}.mw.st-on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.mw.st-holiday{background:var(--info-soft);color:var(--info)}.mw.st-sick{background:var(--bad-soft);color:var(--bad)}.offer{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}.offer-head{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;text-align:left;background:none;border:0;padding:12px 14px;cursor:pointer}.offer-head[aria-expanded=true]{border-bottom:1px solid var(--line)}.offer-price{display:flex;flex-direction:column;align-items:flex-end;text-align:right;white-space:nowrap}.offer-price b{font-size:1.15rem}.offer-body{padding:12px 14px}.daybars{display:flex;align-items:flex-end;gap:4px;height:140px;overflow-x:auto;padding-bottom:18px}.daybar{flex:1 0 14px;max-width:32px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative}.daybar i{display:block;width:100%;border-radius:4px 4px 0 0;min-height:2px}.daybar span{position:absolute;bottom:-17px;font:500 .66rem var(--mono);color:var(--muted)}.guest-row{width:100%;display:grid;grid-template-columns:56px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 12px;cursor:pointer}.guest-row:hover{border-color:var(--muted)}.acct{display:flex;flex-direction:column;align-items:flex-end;text-align:right;min-width:72px}.stat[disabled]{cursor:default}.box,.glance,.panel{border-radius:16px}.box,.card,.duty,.gcard,.glance,.guest-row,.jobcard,.now,.panel,.room,.stat,.tile{box-shadow:var(--shadow-sm)}.act,.guest-row,.room,.stat,.tile{transition:transform .12s ease,box-shadow .12s ease,border-color .12s}@media (hover:hover){.guest-row:hover,.room:hover,.stat:hover,.tile:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}}.tile{border-radius:12px}.btn{min-height:38px;border-radius:10px;box-shadow:var(--shadow-sm);transition:filter .12s,background .12s}.btn.small{min-height:30px;border-radius:8px}.btn.primary{box-shadow:0 1px 2px rgba(0,0,0,.08),inset 0 1px 0 rgba(255,255,255,.12)}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],select,textarea{min-height:40px;border-radius:10px;transition:border-color .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 22%,transparent)}td input,td select{min-height:34px}.hello h2,.panel>h2{letter-spacing:-.02em}.eyebrow{font-weight:700}.callout{border:1px solid color-mix(in oklab,currentColor 6%,transparent)}.stat b{font-size:1.75rem}@media (max-width:640px){.strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.stat{padding:8px 9px 8px 11px}.stat b{font-size:1.25rem}.stat span{font-size:.7rem;line-height:1.2}.tiles{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}h2{font-size:1.35rem}}.ct{display:inline-flex;align-items:center;gap:4px;font:700 .64rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;padding:4px 6px;border-radius:6px;white-space:nowrap;align-self:flex-start}.ct small{font:600 .66rem/1 var(--body);letter-spacing:0;text-transform:none;opacity:.85}.ct-co{background:var(--violet);color:#fff}.ct-stay{background:var(--info-soft);color:var(--info);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--info) 35%,transparent)}.ct-arr{background:var(--accent-soft);color:var(--accent)}.tile .ct{margin-top:1px}.rooming{display:flex;flex-direction:column;gap:6px}.rl-floor{margin:10px 0 6px;font-size:.95rem}.rl-chips{display:flex;flex-wrap:wrap;gap:8px}.rl-chip{min-width:52px;padding:9px 12px;border:0;border-radius:10px;font:700 .95rem/1 var(--body);color:#fff;cursor:pointer}.rl-done{background:#22c55e}.rl-prog{background:#8b5cf6}.rl-todo{background:#9ca3af}.rl-key{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-size:.85rem;color:var(--muted)}.rl-key span{display:flex;align-items:center;gap:8px}.rl-key i{width:12px;height:12px;border-radius:50%;display:inline-block}.allow-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px;margin-top:10px}.allow-card{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);display:flex;flex-direction:column;gap:8px}.allow-card.due{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.allow-due{background:var(--bad);color:var(--surface);font-weight:700;border-radius:8px;padding:8px 10px;letter-spacing:.02em}.allow-room{font:600 1.2rem var(--mono)}.allow-figs{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px}.allow-figs>div{display:flex;flex-direction:column}.allow-figs b{font-size:1.05rem}.allow-figs b.bad{color:var(--bad)}.allow-days{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:.8rem}.allow-days span.on{color:var(--accent)}.allow-line{border-top:1px solid var(--line);padding-top:8px}.allow-line.void>div:first-child{text-decoration:line-through;color:var(--muted)}.rota-name .linkish{border:0;background:none;padding:0;margin-left:0;color:var(--accent);font-size:.72rem;text-decoration:underline;cursor:pointer;display:block}.rota-teams{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-weight:400;min-width:170px}.rota-teams .chk{font-size:.8rem;display:flex;gap:6px;align-items:center}