@font-face{font-family:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/db9bfcd87f1d73a3-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4e2312c98e240c05-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/feed52454563c595-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f83e5507ec3854fa-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8934311971e59087-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/bfdf244a9384e8b2-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b10e9fa1144bb4fb-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d13ab8ed065835e4-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d8c0f620f258dcc1-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5fcb63deed33aab6-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e595057e1ab84c19-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:__IBM_Plex_Sans_Thai_6cf037;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/861fabf8a4ffc042-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:__IBM_Plex_Sans_Thai_Fallback_6cf037;src:local("Arial");ascent-override:110.31%;descent-override:52.78%;line-gap-override:0.00%;size-adjust:101.17%}.__className_6cf037{font-family:__IBM_Plex_Sans_Thai_6cf037,__IBM_Plex_Sans_Thai_Fallback_6cf037;font-style:normal}.__variable_6cf037{--font-body:"__IBM_Plex_Sans_Thai_6cf037","__IBM_Plex_Sans_Thai_Fallback_6cf037"}@font-face{font-family:__Bai_Jamjuree_848477;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/36eb08c333fd876e-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:__Bai_Jamjuree_848477;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d3d40dfafe168921-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/257a6a4ad8e88015-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/dcb7dbe335a6f155-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/346ee2e552632e34-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:__Bai_Jamjuree_848477;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/18302be3738c81c5-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/f3bb21e89cf2f112-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/62f8ef394edf20f4-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c746c9eb8f9978c2-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:__Bai_Jamjuree_848477;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/2b72e4f74070c77f-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/87e817c59b3ec25d-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:__Bai_Jamjuree_848477;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b682ab4e94fdbfaf-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:__Bai_Jamjuree_Fallback_848477;src:local("Arial");ascent-override:96.70%;descent-override:24.18%;line-gap-override:0.00%;size-adjust:103.41%}.__className_848477{font-family:__Bai_Jamjuree_848477,__Bai_Jamjuree_Fallback_848477;font-style:normal}.__variable_848477{--font-display:"__Bai_Jamjuree_848477","__Bai_Jamjuree_Fallback_848477"}:root{--bg:#f2f5f4;--surface:#fff;--sunken:#e7eeeb;--fg:#14201c;--muted:#5a6a65;--line:#d3dcd9;--accent:#1e6a5a;--accent-ink:#fff;--accent-soft:#d9ebe5;--good:#18794a;--good-soft:#dcf0e4;--warn:#94560a;--warn-soft:#fbead1;--bad:#b42318;--bad-soft:#f9dfdc;--shadow:rgba(20,32,28,.1);--f-display:var(--font-display),"IBM Plex Sans Thai","Noto Sans Thai",system-ui,sans-serif;--f-body:var(--font-body),"Noto Sans Thai","Leelawadee UI",system-ui,sans-serif;--radius:10px;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1513;--surface:#161e1b;--sunken:#1d2724;--fg:#e3ebe8;--muted:#95a7a1;--line:#2b3833;--accent:#5fbfa6;--accent-ink:#06231c;--accent-soft:#16372f;--good:#5fd093;--good-soft:#12321f;--warn:#f0b35a;--warn-soft:#382811;--bad:#ff8f84;--bad-soft:#3b1a17;--shadow:rgba(0,0,0,.4);color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1513;--surface:#161e1b;--sunken:#1d2724;--fg:#e3ebe8;--muted:#95a7a1;--line:#2b3833;--accent:#5fbfa6;--accent-ink:#06231c;--accent-soft:#16372f;--good:#5fd093;--good-soft:#12321f;--warn:#f0b35a;--warn-soft:#382811;--bad:#ff8f84;--bad-soft:#3b1a17;--shadow:rgba(0,0,0,.4);color-scheme:dark}*{box-sizing:border-box}body,html{margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.55}h1,h2,h3{font-family:var(--f-display);text-wrap:balance;margin:0;line-height:1.25}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.82rem}.shell{max-width:1320px;margin:0 auto;padding-inline:16px;padding-block:16px 64px;display:flex;flex-direction:column;gap:16px}.top{flex-wrap:wrap;gap:12px 20px}.brand,.top{display:flex;align-items:center}.brand{gap:12px;min-width:0}.seal{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-size:19px}.brand-name,.seal{font-family:var(--f-display);font-weight:700}.brand-name{font-size:1.2rem;line-height:1.2}.brand-sub{color:var(--muted);font-size:.8rem}.nav{display:flex;gap:4px;background:var(--sunken);padding:4px;overflow-x:auto;max-width:100%;margin-left:auto}.nav,.nav a{border-radius:999px}.nav a{color:var(--muted);text-decoration:none;font-weight:500;padding:6px 14px;white-space:nowrap}.nav a[aria-current=page]{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px var(--shadow)}.main{display:flex;flex-direction:column;gap:16px;min-width:0}.centered{min-height:100vh;display:grid;place-items:center;padding:16px}.centered .empty{max-width:460px}.monthbar-wrap{display:flex;flex-direction:column;gap:12px}.monthbar{justify-content:space-between;gap:12px;padding-block:10px;border-block:1px solid var(--line)}.monthbar,.mpick{display:flex;flex-wrap:wrap;align-items:center}.mpick{gap:10px}.mpick select{font-family:var(--f-display);font-weight:600;font-size:1.05rem;padding:6px 12px}.btn{font:inherit;font-size:.88rem;font-weight:500;padding:7px 14px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;white-space:nowrap}.btn-primary,.btn:hover:not(:disabled){border-color:var(--accent)}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-quiet{background:transparent;border-color:transparent}.btn-danger{background:var(--bad);border-color:var(--bad);color:#fff}.danger{color:var(--bad)}button:disabled,input:disabled,select:disabled{opacity:.55;cursor:not-allowed}input[type=date],input[type=email],input[type=month],input[type=password],input[type=text],select{font:inherit;font-size:.92rem;padding:6px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--fg);min-width:0}input:focus,select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px var(--accent-soft)}.lbl{font-size:.8rem;color:var(--muted)}.num-in{font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;width:9.5em;text-align:right;padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg)}.num-in:focus{background:var(--surface)}.num-in.small{width:6.5em}.num-in.tiny{width:5em}.seg{display:inline-flex;border:1px solid var(--line);border-radius:7px;overflow:hidden}.seg button{font:inherit;font-size:.8rem;border:0;background:transparent;color:var(--muted);padding:4px 10px;cursor:pointer}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true][data-v="1"]{background:var(--good-soft);color:var(--good);font-weight:600}.seg button[aria-pressed=true][data-v="0"]{background:var(--bad-soft);color:var(--bad);font-weight:600}.icon-btn{font:inherit;border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px 8px;border-radius:6px;font-size:1rem;line-height:1}.icon-btn:hover{color:var(--bad);background:var(--bad-soft)}.chip{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:500;padding:2px 9px;border-radius:999px;background:var(--sunken);color:var(--muted);white-space:nowrap}.chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.chip-good{background:var(--good-soft);color:var(--good)}.chip-warn{background:var(--warn-soft);color:var(--warn)}.chip-bad{background:var(--bad-soft);color:var(--bad)}.page-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}.page-head h1{font-size:1.3rem}.actions,.row-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.panel{background:var(--surface);border:1.5px solid var(--accent);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px}.panel h3{font-size:1rem;font-weight:600}.panel p{margin:0;font-size:.9rem;color:var(--muted)}.panel.danger-panel{border-color:var(--bad)}.empty{background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);padding:28px 20px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}.empty h2{font-size:1.15rem}.empty p{margin:0;color:var(--muted);max-width:60ch}.notein{display:flex;align-items:center;gap:10px}.notein input{flex:1 1}.hint{margin:0;font-size:.8rem;color:var(--muted)}textarea{width:100%;min-height:150px;font:inherit;font-size:.88rem;padding:10px;border:1px solid var(--line);background:var(--bg);color:var(--fg);resize:vertical}.errs,textarea{border-radius:8px}.errs{background:var(--bad-soft);color:var(--bad);padding:10px 12px;font-size:.85rem;margin:0}.errs ul{margin:0;padding-left:18px}.warnbox{font-size:.84rem;padding:8px 12px;border-radius:8px;background:var(--warn-soft);color:var(--warn);margin:0}.figs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.fig{background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:2px;min-width:0}.fig .k{font-size:.78rem;color:var(--muted);letter-spacing:.02em}.fig .v{font-family:var(--f-display);font-size:1.4rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.3}.fig .s{font-size:.76rem;color:var(--muted)}.fig.hl .v{color:var(--accent)}@media (max-width:960px){.figs{grid-template-columns:repeat(2,minmax(0,1fr))}.fig:last-child{grid-column:1/-1}}.split{display:grid;grid-template-columns:minmax(0,1fr) 350px;grid-gap:20px;gap:20px;align-items:start}@media (max-width:1040px){.split{grid-template-columns:minmax(0,1fr)}}.stack{display:flex;flex-direction:column;gap:16px;min-width:0}.grp{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-width:0}.grp-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px;padding:12px 16px;border-bottom:1px solid var(--line)}.grp-h h2{font-size:1.05rem;font-weight:600}.grp-h p{margin:0;color:var(--muted);font-size:.8rem}.grp-f{padding:10px 16px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tbl-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td,th{padding:7px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}th{font-size:.75rem;font-weight:500;color:var(--muted);letter-spacing:.02em;background:var(--sunken)}.n{text-align:right}tfoot td{font-weight:600;border-bottom:0;background:var(--sunken)}td.name{font-weight:500}tr.dim td{color:var(--muted)}td.strong{font-weight:600}tr.click{cursor:pointer}tr.click:hover td{background:var(--sunken)}.ledger{position:-webkit-sticky;position:sticky;top:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;min-width:0}@media (max-width:1040px){.ledger{position:static}}.ledger h2{font-size:1rem;font-weight:600;margin-bottom:8px}.lg-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0;align-items:baseline}.lg-l{min-width:0;font-size:.9rem}.lg-l small{display:block;color:var(--muted);font-size:.75rem;line-height:1.4}.lg-v{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.lg-sum{border-top:1.5px solid var(--fg);margin-top:2px;padding-top:7px}.lg-sum .lg-v{font-weight:600}.lg-strong .lg-v{font-family:var(--f-display);font-size:1.18rem;color:var(--accent);font-weight:600}.lg-div{height:1px;background:var(--line);margin:8px 0}.verdict{font-size:.82rem;padding:8px 10px;border-radius:8px;background:var(--accent-soft);margin:6px 0}.neg{color:var(--bad)}.bar{height:4px;background:var(--accent-soft);margin-top:4px;min-width:80px}.bar,.bar>i{display:block;border-radius:2px}.bar>i{height:100%;background:var(--accent)}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:start}@media (max-width:860px){.cards{grid-template-columns:minmax(0,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}.card h2{font-size:1.05rem;font-weight:600}.card .help{margin:0;color:var(--muted);font-size:.84rem}.card.wide{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:4px}.fields{gap:16px}.fields,.savebar{display:flex;flex-wrap:wrap}.savebar{gap:8px;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px}.savebar p{margin:0;font-size:.86rem;color:var(--muted)}.login{width:min(380px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px}.login input{width:100%}.score{display:inline-block;min-width:2.6em;text-align:center;font-size:.74rem;font-weight:600;padding:1px 6px;border-radius:6px;margin-left:6px}.score-100{background:var(--good-soft);color:var(--good)}.score-75{background:var(--accent-soft);color:var(--accent)}.score-50{background:var(--warn-soft);color:var(--warn)}.score-25{background:var(--bad-soft);color:var(--bad)}.kpi-total{font-family:var(--f-display);font-weight:600;font-size:1.05rem}th.metric{white-space:normal;min-width:130px;max-width:170px;line-height:1.35}th.metric small{display:block;font-weight:400}.palette{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.brush{--c:var(--muted);font:inherit;font-size:.86rem;padding:6px 12px;border-radius:8px;border:1.5px solid var(--line);background:color-mix(in srgb,var(--c) 16%,var(--surface));color:var(--fg);cursor:pointer;display:inline-flex;gap:6px;align-items:baseline}.brush b{font-weight:700}.brush small{color:var(--muted)}.brush[aria-pressed=true]{border-color:var(--c);box-shadow:0 0 0 2px color-mix(in srgb,var(--c) 35%,transparent)}.brush.eraser{--c:var(--bad);background:var(--surface)}.sched-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.sched{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sched td,.sched th{padding:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center;white-space:nowrap}.sched thead th{padding:4px 0;font-size:.72rem;line-height:1.2;min-width:36px}.sched thead th b{display:block;font-size:.84rem;color:var(--fg)}.sched .namecol{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:var(--surface);text-align:left;padding:4px 12px;min-width:120px;font-weight:500}.sched .we,.sched thead .namecol{background:var(--sunken)}.sched .sumcol{padding:4px 10px;font-size:.8rem;color:var(--muted)}.cell{--c:transparent;display:block;width:100%;min-width:36px;height:34px;border:0;background:transparent;font:inherit;font-size:.74rem;font-weight:600;cursor:pointer;color:var(--fg);padding:0}.cell[data-set]{background:color-mix(in srgb,var(--c) 26%,var(--surface));box-shadow:inset 0 -3px 0 var(--c)}.cell:hover{outline:2px solid var(--accent);outline-offset:-2px}.cell:disabled{cursor:default}.sched tfoot td{font-size:.74rem;color:var(--muted);padding:4px 0;font-weight:500}.sched tfoot .namecol,.sched tfoot td{background:var(--sunken)}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom, 0px) + 20px);background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:10px;font-size:.9rem;max-width:calc(100% - 32px);box-shadow:0 8px 24px var(--shadow);z-index:10}.toast[hidden]{display:none}@media (prefers-reduced-motion:no-preference){.btn,.cell,.nav a{transition:background-color .12s,border-color .12s}}.section-title{font-size:1.1rem;font-weight:600;margin-top:8px}.sched tr.me .namecol,.sched tr.me td{background:var(--accent-soft)}.sched tr.me .namecol{font-weight:700}.myshifts{list-style:none;margin:0;padding:12px 16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.myshifts li{--c:var(--muted);display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding:8px 10px;border-radius:8px;border-left:4px solid var(--c);background:color-mix(in srgb,var(--c) 12%,var(--surface))}.myshifts li.past{opacity:.55}.myshifts li.today{outline:2px solid var(--accent)}.myshifts .md{font-size:.8rem;color:var(--muted);min-width:3.2em}.myshifts small{color:var(--muted);width:100%}.panel.inset{margin:12px}.issued{margin:0;padding:10px 12px;background:var(--bg);border:1px solid var(--line);border-radius:8px;white-space:pre-wrap;-webkit-user-select:all;-moz-user-select:all;user-select:all}.issued,code{font-size:.88rem}.theme-toggle{display:inline-flex;gap:2px;padding:3px;background:var(--sunken);border-radius:999px}.theme-toggle button{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;padding:0}.theme-toggle button:hover{color:var(--fg)}.theme-toggle button[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px var(--shadow)}.theme-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.login-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-foot p{margin:0}