:root{color-scheme:light;--ink:#141a22;--muted:#5f6b78;--line:#e4e8ed;--line-2:#eef1f5;--paper:#f3f5f8;--card:#ffffff;--card-2:#f7f9fb;--hover:#f0f3f6;--tint:#edf4f5;--teal:#0e7c86;--teal-d:#0a5f67;--on-teal:#fff;--indigo:#2c4593;--saffron:#c78a1e;--saffron-soft:#f7eed7;--warn:#b8480f;--warn-soft:#f8ece3;--danger:#bd4a40;--tint-teal-bg:#eef6f6;--tint-teal-bd:#cfe6e6;--tint-danger-bg:#fdeceb;--tint-danger-bd:#f2cdc8;--tint-danger-fg:#b0473c;--tint-indigo-bg:#eef3fb;--tint-indigo-bd:#cdd9ef;--tint-indigo-fg:#2563a8;--tint-ok-bg:#e6f3ec;--tint-ok-bd:#c2e6cd;--tint-ok-fg:#256b52;--tint-saffron-bg:#fdf6e4;--tint-saffron-bd:#e7cf95;--tint-saffron-fg:#8a6a15;--tint-amber-bd:#f4d3bd;--tint-amber-fg:#7a3312;--purple:#6d5bb5;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-pill:999px;--fs-2xs:11px;--fs-xs:12.5px;--fs-sm:13px;--fs-md:14px;--fs-lg:15px;--fs-xl:17px;--fs-2xl:20px;--fs-3xl:26px;--t-fast:120ms cubic-bezier(.2,.6,.35,1);--t-med:200ms cubic-bezier(.2,.6,.35,1);--shadow-sm:0 1px 2px rgba(20,32,48,.05);--shadow-md:0 1px 2px rgba(20,32,48,.05),0 8px 22px rgba(20,32,48,.06);--shadow-lg:0 10px 30px rgba(20,32,48,.13),0 2px 8px rgba(20,32,48,.07);--font:var(--font-manrope,"Manrope"),-apple-system,system-ui,"Segoe UI",Roboto,sans-serif;--wordmark:var(--font);--display:var(--font)}:root[data-theme=dark]{color-scheme:dark;--ink:#e7edf3;--muted:#8a95a2;--line:#262e38;--line-2:#1d242c;--paper:#0d1117;--card:#171d25;--card-2:#12181f;--hover:#1f2630;--tint:#132630;--teal:#39b3be;--teal-d:#74d0d8;--on-teal:#0b1418;--indigo:#8098e8;--saffron:#e6c079;--saffron-soft:#2c2410;--warn:#e79a6a;--warn-soft:#2d2013;--danger:#e58b80;--tint-teal-bg:#12262b;--tint-teal-bd:#244a4f;--tint-danger-bg:#2b1310;--tint-danger-bd:#5c2822;--tint-danger-fg:#ec8f84;--tint-indigo-bg:#182135;--tint-indigo-bd:#2e3d5e;--tint-indigo-fg:#8fa6ee;--tint-ok-bg:#112619;--tint-ok-bd:#24492f;--tint-ok-fg:#6fce9d;--tint-saffron-bg:#2a2510;--tint-saffron-bd:#4c4020;--tint-saffron-fg:#e6c079;--tint-amber-bd:#4a3319;--tint-amber-fg:#e7a877;--purple:#a898e8;--shadow-sm:0 1px 2px rgba(0,0,0,.35);--shadow-md:0 1px 2px rgba(0,0,0,.35),0 8px 22px rgba(0,0,0,.4);--shadow-lg:0 12px 34px rgba(0,0,0,.5),0 2px 8px rgba(0,0,0,.35)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--ink:#e7edf3;--muted:#8a95a2;--line:#262e38;--line-2:#1d242c;--paper:#0d1117;--card:#171d25;--card-2:#12181f;--hover:#1f2630;--tint:#132630;--teal:#39b3be;--teal-d:#74d0d8;--on-teal:#0b1418;--indigo:#8098e8;--saffron:#e6c079;--saffron-soft:#2c2410;--warn:#e79a6a;--warn-soft:#2d2013;--danger:#e58b80;--tint-teal-bg:#12262b;--tint-teal-bd:#244a4f;--tint-danger-bg:#2b1310;--tint-danger-bd:#5c2822;--tint-danger-fg:#ec8f84;--tint-indigo-bg:#182135;--tint-indigo-bd:#2e3d5e;--tint-indigo-fg:#8fa6ee;--tint-ok-bg:#112619;--tint-ok-bd:#24492f;--tint-ok-fg:#6fce9d;--tint-saffron-bg:#2a2510;--tint-saffron-bd:#4c4020;--tint-saffron-fg:#e6c079;--tint-amber-bd:#4a3319;--tint-amber-fg:#e7a877;--purple:#a898e8;--shadow-sm:0 1px 2px rgba(0,0,0,.35);--shadow-md:0 1px 2px rgba(0,0,0,.35),0 8px 22px rgba(0,0,0,.4);--shadow-lg:0 12px 34px rgba(0,0,0,.5),0 2px 8px rgba(0,0,0,.35)}}*{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body,html{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--fs-xl);padding:18px 18px 70px;-webkit-print-color-adjust:exact;print-color-adjust:exact}button{font-family:inherit}.sched.daymode .weekonly,.sched:not(.daymode) .dayonly,.sched:not(.editing) .edit-only,.sched:not(.owner) .owner-only{display:none!important}.sched.daymode #sheet{min-width:0;width:auto}.sched.daymode td.cell,.sched.daymode th.day{min-width:170px}.appbar{max-width:none;margin:0 auto 16px;position:relative;flex-wrap:wrap;gap:14px 18px;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 20px;box-shadow:var(--shadow-md)}.appbar,.brand{display:flex;align-items:center}.brand{gap:14px;min-width:0}.mark{width:52px;height:52px;border-radius:var(--r-md);flex:none;object-fit:cover;background:#000;box-shadow:0 2px 8px rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--fs-2xl)}.brand-title,.mark{font-family:var(--wordmark);font-weight:700}.brand-title{font-size:var(--fs-3xl);line-height:1.05;letter-spacing:-.5px;outline:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw}.brand-sub{font-size:var(--fs-md);color:var(--muted);font-weight:700;margin-top:2px}.weeknav{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.nav{width:44px;height:44px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);cursor:pointer;font-size:var(--fs-xl);color:var(--teal-d);font-weight:700;transition:background .15s ease,border-color .15s ease}.nav:hover{background:var(--hover)}input[type=date]{font:inherit;font-weight:600;font-size:var(--fs-lg);padding:9px 11px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink);background:var(--card)}.range{font-weight:700;font-size:var(--fs-lg);color:var(--teal-d);padding-left:4px}.range,.weektag{white-space:nowrap}.weektag{display:inline-flex;align-items:baseline;gap:8px;padding:6px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card-2);color:var(--muted);transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}.weektag .wt-rel{font-family:var(--display);font-weight:800;font-size:var(--fs-lg);letter-spacing:-.2px}.weektag .range{color:inherit;padding-left:0;font-size:var(--fs-sm);opacity:.85}.weektag .wt-worked{font-size:var(--fs-2xs);font-weight:800;text-transform:uppercase;letter-spacing:.5px}.weektag.now{background:var(--tint-teal-bg);border-color:var(--tint-teal-bd);color:var(--teal-d)}.weektag.next{background:var(--tint-indigo-bg);border-color:var(--tint-indigo-bd);color:var(--tint-indigo-fg)}.weektag.past{background:var(--warn-soft);border-color:var(--tint-amber-bd);color:var(--tint-amber-fg)}.weektag.future{background:var(--card-2);border-color:var(--line);color:var(--muted)}.weektag.worked{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);color:var(--tint-danger-fg)}.modeswitch{overflow:hidden}.branchbar,.modeswitch{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-sm)}.branchbar{align-items:center;gap:8px;background:var(--hover);padding:5px 6px 5px 12px}.branchlab{font-size:var(--fs-sm);font-weight:700;color:var(--muted);white-space:nowrap}.branchsel{font:inherit;font-weight:700;font-size:var(--fs-lg);padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--teal-d)}.branchsel,.modeswitch button{background:var(--card);cursor:pointer}.modeswitch button{font:inherit;font-weight:700;font-size:var(--fs-sm);padding:9px 13px;border:0;color:var(--muted)}.modeswitch button.on{background:var(--teal);color:var(--on-teal)}.tlab{font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{font:inherit;font-weight:700;font-size:var(--fs-md);cursor:pointer;padding:10px 15px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);color:var(--ink);text-decoration:none;display:inline-block;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease}.btn:hover{background:var(--hover);box-shadow:var(--shadow-sm)}.btn.ghost{color:var(--muted)}.btn.primary{background:var(--teal);color:var(--on-teal);border-color:transparent}.btn.primary:hover{background:var(--teal-d);box-shadow:none}.btn.owner{border-color:var(--tint-saffron-bd);background:var(--tint-saffron-bg);color:var(--tint-saffron-fg)}.btn:disabled{opacity:.5;cursor:not-allowed}.iconbtn{padding:10px 14px;font-size:var(--fs-2xl);letter-spacing:1px;line-height:1}.menu-wrap{position:relative}.menu{position:absolute;top:calc(100% + 8px);right:0;z-index:35;min-width:214px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:8px;display:none;flex-direction:column;gap:3px}.menu.open{animation:fadeIn .14s ease;display:flex}.menu .btn{width:100%;text-align:left;border:0;background:transparent;padding:10px 12px;border-radius:var(--r-sm);font-weight:600}.menu .btn:hover{background:var(--hover);box-shadow:none}.menu-lab{font-size:var(--fs-2xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;padding:6px 12px 2px}.menu-sep{height:1px;background:var(--line);margin:5px 6px}.saved{font-size:var(--fs-sm);font-weight:700;color:var(--teal);min-width:74px;text-align:right}.pubmsg{color:var(--ink);background:var(--warn-soft);border:1px solid var(--tint-amber-bd);padding:6px 12px;white-space:nowrap}.pubmsg,.rolebadge{font-size:var(--fs-sm);font-weight:700;border-radius:var(--r-pill)}.rolebadge{padding:7px 12px;background:var(--tint-teal-bg);color:var(--teal-d);border:1px solid var(--tint-teal-bd)}.rolebadge.owner{background:var(--tint-saffron-bg);color:var(--tint-saffron-fg);border-color:var(--tint-saffron-bd)}.rolebadge.badmin,.utable .tag.BRANCH_ADMIN{background:var(--tint-indigo-bg);border-color:var(--tint-indigo-bd);color:var(--tint-indigo-fg)}.warnbar{max-width:none;margin:14px auto 0;background:var(--warn-soft);border:1px solid var(--tint-amber-bd);border-left:5px solid var(--warn);border-radius:var(--r-md);padding:12px 16px;display:none}.warnbar.show{display:block}.warnbar h4{margin:0 0 6px;font-size:var(--fs-md);font-weight:700;color:var(--warn)}.warnbar ul{margin:0;padding-left:18px}.warnbar li{font-size:var(--fs-md);font-weight:700;color:var(--tint-amber-fg);margin:2px 0}.availbar{max-width:none;margin:14px auto 0;background:var(--tint-indigo-bg);border:1px solid var(--tint-indigo-bd);border-left:5px solid var(--indigo);border-radius:var(--r-md);padding:12px 16px}.availbar h4{margin:0 0 6px;font-size:var(--fs-md);font-weight:700;color:var(--indigo)}.availbar ul{margin:0;padding-left:18px;column-count:2;column-gap:28px}.availbar li{font-size:var(--fs-md);font-weight:700;color:var(--tint-indigo-fg);margin:2px 0;break-inside:avoid}.availbar li.conflict{color:var(--danger)}.availbar li.declined{opacity:.55}.av-st,.availbar .cf{font-weight:700}.av-st{margin-left:8px;font-size:var(--fs-2xs);padding:1px 8px;border-radius:var(--r-pill);white-space:nowrap}.av-st.pend{background:var(--warn-soft);color:var(--warn)}.av-st.ok{background:var(--tint-ok-bg);color:var(--tint-ok-fg)}.av-st.no{background:var(--tint-danger-bg);color:var(--tint-danger-fg)}.av-actions{margin-left:10px;display:inline-flex;gap:6px}.av-btn{font:inherit;font-size:var(--fs-2xs);font-weight:700;padding:2px 9px;border-radius:var(--r-pill);cursor:pointer;border:1px solid var(--line);background:var(--card)}.av-btn.ok{color:var(--tint-ok-fg);border-color:var(--tint-ok-bd)}.av-btn.ok:hover{background:var(--tint-ok-bg)}.av-btn.no{color:var(--tint-danger-fg);border-color:var(--tint-danger-bd)}.av-btn.no:hover{background:var(--tint-danger-bg)}@media (max-width:720px){.availbar ul{column-count:1}}.weeknotice{max-width:none;margin:0 auto 16px;display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;background:var(--card-2);border:1px solid var(--line);border-left:5px solid var(--muted);border-radius:var(--r-md);padding:12px 16px}.weeknotice .wn-ico{flex:none;display:flex;align-items:center;margin-top:3px}.weeknotice .wn-body{flex:1 1 320px;min-width:0}.weeknotice .wn-body b{display:block;font-family:var(--display);font-weight:800;font-size:var(--fs-lg);letter-spacing:-.2px}.weeknotice .wn-body p{margin:3px 0 0;font-size:var(--fs-md);font-weight:600;line-height:1.5}.weeknotice .wn-acts{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.weeknotice .wn-acts .btn{white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.weeknotice.worked{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);border-left-color:var(--danger);color:var(--tint-danger-fg)}.weeknotice.next{border-color:var(--tint-teal-bd);border-left-color:var(--teal)}.clipnote,.weeknotice.next{background:var(--tint-teal-bg);color:var(--teal-d)}.clipnote{max-width:none;margin:0 auto 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--tint-teal-bd);font-weight:600;font-size:var(--fs-md);border-radius:var(--r-md);padding:11px 16px}.clipnote .kbd{background:var(--card);border:1px solid var(--tint-teal-bd);border-radius:var(--r-xs);padding:2px 8px;font-weight:700}.clipnote button{margin-left:auto;font:inherit;font-weight:700;font-size:var(--fs-sm);padding:7px 14px;border:1px solid var(--tint-teal-bd);background:var(--card);color:var(--muted);border-radius:var(--r-sm);cursor:pointer}.scroll{max-width:none;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);overflow-x:auto;overflow-y:visible;max-height:none;-webkit-overflow-scrolling:touch}@media (min-width:1600px){.scroll{overflow:visible}}@media (min-width:1440px){html[data-nav=collapsed] .scroll{overflow:visible}}@media (hover:none){.row-ctl{opacity:1}.sched.editing .cin.empty{opacity:.4}}table{border-collapse:separate;border-spacing:0;width:100%;min-width:1160px}thead th{z-index:3;border-bottom:1px solid var(--line)}th.corner,thead th{position:sticky;top:0;background:var(--card-2)}th.corner{left:0;z-index:4;width:210px;text-align:left;padding:15px 18px;font-family:var(--display);font-weight:700;font-size:var(--fs-md);color:var(--muted);letter-spacing:.3px;border-right:1px solid var(--line)}th.day{padding:13px 10px;text-align:center;min-width:150px}th.day .dname{font-weight:700;font-size:var(--fs-2xl)}th.day .ddate{font-weight:600;font-size:var(--fs-sm);color:var(--muted);margin-top:2px}th.day .dcov{font-weight:700;font-size:var(--fs-xs);color:var(--teal-d);margin-top:5px;background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);border-radius:var(--r-pill);padding:2px 9px;display:inline-block}th.day .dcov.zero{color:var(--tint-danger-fg);background:var(--tint-danger-bg);border-color:var(--tint-danger-bd)}th.day .wflag{color:var(--warn);font-weight:700;font-size:var(--fs-sm);margin-top:2px;display:none}th.day.warn .wflag{display:block}th.corner .cornerTot{font-family:var(--font);font-weight:700;font-size:var(--fs-xs);color:var(--teal-d);margin-top:4px}tr.section td{padding:0}.band{display:flex;align-items:center;gap:11px;padding:11px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.band .dot{width:13px;height:13px;border-radius:var(--r-xs);flex:none;box-shadow:0 0 0 3px rgba(0,0,0,.04)}.sched.editing .band .dot{cursor:pointer}.band .sname{font-size:var(--fs-xl);letter-spacing:.2px}.band .sdesc,.band .sname{font-weight:700;outline:none}.band .sdesc{font-size:var(--fs-sm);opacity:.75}.band .sp{flex:1}.band-hrs{margin-left:4px;font-weight:700;font-size:var(--fs-sm);white-space:nowrap;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.28);padding:3px 10px;border-radius:var(--r-pill)}.band-dept{font:inherit;font-weight:600;font-size:var(--fs-xs);padding:5px 8px;border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.14);color:#fff;cursor:pointer}.band-dept option{color:var(--ink);background:var(--card)}.depttabs{display:flex;flex-wrap:wrap;margin:0 0 12px}.depttab,.depttabs{gap:8px;align-items:center}.depttab{font:inherit;font-weight:700;font-size:var(--fs-lg);cursor:pointer;padding:10px 16px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);color:var(--muted);white-space:nowrap;display:inline-flex;transition:background .15s ease,color .15s ease}.depttab:hover{background:var(--hover);color:var(--ink)}.depttab.on{background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.depttab .dt-h{font-weight:600;font-size:var(--fs-xs);opacity:.8}tr.deptrow td{padding:0}.dband{display:flex;align-items:center;gap:12px;padding:13px 18px;background:var(--card-2);border-top:2px solid var(--line);border-bottom:1px solid var(--line)}.dband .dname{font-family:var(--display);font-weight:700;font-size:var(--fs-xl);letter-spacing:.6px;text-transform:uppercase;color:var(--ink);outline:none}.dband-hrs{font-weight:700;font-size:var(--fs-sm);white-space:nowrap;color:var(--teal-d);background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);padding:3px 10px;border-radius:var(--r-pill)}.dband-sub{font-weight:600;font-size:var(--fs-xs);color:var(--muted);white-space:nowrap}.dband .ctl{opacity:.45}.dband .add{border-color:var(--muted);color:var(--muted);opacity:.9}.dband .add:hover{background:var(--hover)}.ctl{font:inherit;font-weight:700;cursor:pointer;border:0;background:transparent;opacity:.55;padding:2px 5px;font-size:var(--fs-lg);color:inherit}.ctl:hover{opacity:1}.band .add{font:inherit;font-size:var(--fs-sm);font-weight:700;cursor:pointer;padding:6px 12px;border-radius:var(--r-pill);border:1px dashed;background:transparent;opacity:.85;color:inherit}.band .add:hover{opacity:1;background:rgba(255,255,255,.5)}tr.emp td{border-bottom:1px solid var(--line)}td.emp-name{position:sticky;left:0;z-index:2;padding:12px 18px;border-right:1px solid var(--line);white-space:nowrap;font-weight:700;font-size:var(--fs-xl);background:var(--card)}td.emp-name .nm{outline:none}td.emp-name.isslot .nm{opacity:.68;font-style:italic}td.emp-name .hrs{font-weight:600;font-size:var(--fs-xs);color:var(--muted);margin-top:3px}.nm-row{display:flex;align-items:center;gap:4px}.nm{overflow:hidden;text-overflow:ellipsis}.role-edit{font-weight:600;font-size:var(--fs-xs);color:var(--muted);margin-top:2px}.role-edit::placeholder{color:var(--muted)}.row-ctl{position:absolute;top:8px;right:6px;z-index:3;display:inline-flex;gap:2px;opacity:0;background:var(--card);box-shadow:-12px 0 10px 3px var(--card);border-radius:var(--r-xs);padding-left:4px}.sched.pasting tr.emp .row-ctl,tr.emp:hover .row-ctl{opacity:1}.ctl.pst{color:var(--on-teal);background:var(--teal);border-color:transparent;font-weight:700;padding:2px 8px;white-space:nowrap;border-radius:var(--r-xs)}.ctl.pst:hover{background:var(--teal-d)}td.emp-name .rd{color:var(--danger)}tr.emp:last-child td{border-bottom:0}td.cell{padding:7px;text-align:center;border-right:1px solid var(--line-2)}td.cell:last-child{border-right:0}.sched.editing td.cell{cursor:pointer}.sched.editing td.cell:hover .cin{outline:2px solid var(--teal);outline-offset:1px}.cin{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:48px;border-radius:var(--r-sm);padding:7px 5px}.cin .t{font-weight:700;font-size:var(--fs-2xl);letter-spacing:.1px;font-variant-numeric:tabular-nums;white-space:nowrap}.pill{font-weight:700;font-size:var(--fs-sm);letter-spacing:.5px;padding:3px 11px;border-radius:var(--r-pill)}.cin.off{background:var(--hover)}.cin.off .t{color:var(--muted);letter-spacing:2px;font-size:var(--fs-xl)}.cin.night{background:#111318}.cin.night .t{color:#f2f5ff}.cin .seg-div{width:58%;height:1px;background:currentColor;opacity:.22;margin:2px auto}.cin.empty{opacity:0}.sched.editing td.cell:hover .cin.empty{opacity:1}.cin.empty .t{color:var(--muted);font-weight:600;font-size:var(--fs-2xl)}.cin.over12{background:var(--tint-danger-bg);box-shadow:inset 0 0 0 2px var(--danger)}.cin.over12 .t{color:var(--tint-danger-fg)}.cin.night.over12{background:#2a0f0d}.cin.night.over12 .t{color:#ffd9d4}.over12-tag{font-size:var(--fs-2xs);font-weight:700;color:#fff;background:var(--danger);padding:1px 7px;border-radius:var(--r-pill);letter-spacing:.3px;line-height:1.5}.cin.conflict{background:var(--warn-soft);box-shadow:inset 0 0 0 2px var(--warn)}.cin.conflict .t{color:var(--tint-amber-fg)}.cin.night.conflict{background:#3a2410}.cin.night.conflict .t{color:#ffe1bf}.conflict-tag{font-size:var(--fs-2xs);font-weight:700;color:#fff;background:var(--warn);padding:1px 7px;border-radius:var(--r-pill);letter-spacing:.3px;line-height:1.5}.cin.conflict-hard{background:var(--tint-danger-bg);box-shadow:inset 0 0 0 2px var(--danger)}.cin.conflict-hard .t{color:var(--tint-danger-fg)}.cin.night.conflict-hard{background:#2a0f0d}.cin.night.conflict-hard .t{color:#ffd9d4}.conflict-tag.hard{background:var(--danger)}.addsec{max-width:none;margin:10px auto 0}.addsec .mini{font:inherit;font-size:var(--fs-md);font-weight:700;cursor:pointer;padding:10px 17px;border-radius:var(--r-sm);border:1px dashed var(--line);background:var(--card);color:var(--teal-d)}.addsec .mini:hover{background:var(--hover)}.addsec .mini.primary{border-style:solid;border-color:var(--teal);color:var(--on-teal);background:var(--teal);display:inline-flex;align-items:center;gap:7px}.addsec .mini.primary:hover{background:var(--teal-d)}.notes{background:var(--saffron-soft);border:1px solid var(--tint-saffron-bd);border-left:5px solid var(--saffron);border-radius:var(--r-md);font-weight:700;font-size:var(--fs-xl);line-height:1.55;color:var(--tint-saffron-fg);white-space:pre-wrap;outline:none}.notes,.policy{max-width:none;margin:14px auto 0;padding:16px 18px}.policy{background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);border-left:5px solid var(--teal);border-radius:var(--r-md)}.policy .ptitle{font-family:var(--display);font-size:var(--fs-lg);margin-bottom:8px}.policy .ptext,.policy .ptitle{font-weight:700;color:var(--teal-d)}.policy .ptext{font-size:var(--fs-xl);line-height:1.6;white-space:pre-wrap;outline:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.backdrop{position:fixed;inset:0;background:rgba(16,24,34,.4);backdrop-filter:blur(3px);display:none;z-index:70}.backdrop.show{display:block;animation:fadeIn .16s ease}.modal{position:fixed;z-index:71;display:none;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 26px));max-height:calc(100vh - 34px);overflow:auto;background:var(--card);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:20px}.modal.show{display:block;animation:fadeIn .2s ease}.modal.sm{width:min(430px,calc(100vw - 26px))}.m-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:15px}.m-title{font-family:var(--display);font-weight:700;font-size:var(--fs-2xl)}.m-title small{display:block;font-family:var(--font);font-weight:600;color:var(--muted);font-size:var(--fs-sm);margin-top:3px}.m-x{border:0;width:34px;height:34px;border-radius:var(--r-sm);font-size:var(--fs-2xl);cursor:pointer;color:var(--muted)}.m-x,.m-x:hover{background:var(--hover)}.seg{display:flex;gap:9px;margin-bottom:16px}.seg-btn{flex:1;font:inherit;font-weight:700;font-size:var(--fs-lg);cursor:pointer;padding:13px 8px;border:2px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--muted);display:flex;align-items:center;justify-content:center;gap:8px}.seg-btn .d{width:9px;height:9px;border-radius:50%}.seg-btn.work .d{background:var(--teal)}.seg-btn.off .d{background:#a9b2bc}.seg-btn.work.on{border-color:var(--teal);background:var(--tint-teal-bg);color:var(--teal-d)}.seg-btn.off.on{border-color:#8c99a6;background:var(--hover)}.field{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.field>label{width:80px;font-weight:700;font-size:var(--fs-md)}.field.col{flex-direction:column;align-items:stretch;gap:9px}.field.col>label{width:auto}.inp,select{font:inherit;font-weight:700;font-size:var(--fs-lg);padding:11px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);min-width:66px;color:var(--ink)}.inp{font-weight:600;width:100%}.colon{font-weight:700;color:#9aa4ad}.ampm{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}.ampm button{font:inherit;font-weight:700;font-size:var(--fs-md);padding:10px 13px;border:0;background:var(--card);color:var(--muted);cursor:pointer}.ampm button.on{background:var(--teal);color:var(--on-teal)}.daybtns{display:flex;gap:8px;flex-wrap:wrap}.daybtns button{font:inherit;font-weight:700;font-size:var(--fs-sm);padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card-2);color:var(--teal-d);cursor:pointer}.daybtns button:hover{background:var(--hover)}.cg{margin-bottom:10px}.cg-lab{font-size:var(--fs-xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin:0 0 6px 2px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font:inherit;font-weight:700;font-size:var(--fs-md);cursor:pointer;padding:9px 14px;border:1.5px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--ink);transition:background .15s ease,border-color .15s ease}.chip:hover{border-color:var(--muted)}.chip.on{background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.addcode{display:flex;gap:8px;margin-top:3px}.addcode .inp{flex:1}.addcode button{font:inherit;font-weight:700;padding:10px 14px;border:1px solid var(--teal);background:var(--tint-teal-bg);color:var(--teal-d);border-radius:var(--r-sm);cursor:pointer}.m-foot{gap:9px}.m-foot .sp{flex:1}.err{color:var(--danger);font-weight:600;font-size:var(--fs-md);min-height:18px;margin-top:6px}.rule{border:1px solid var(--line);border-radius:var(--r-md);padding:13px;margin-bottom:12px;background:var(--card-2)}.rule .rrow{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:9px}.rule .rlab{color:var(--muted)}.hintline,.rule .rlab{font-weight:700;font-size:var(--fs-sm)}.hintline{line-height:1.5}.auth-wrap{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.auth-alt,.auth-foot{color:var(--muted);font-weight:700;font-size:var(--fs-sm)}.auth-alt{margin-top:14px;text-align:center}.auth-alt a{color:var(--teal-d);font-weight:700;text-decoration:none}.auth-alt a:hover{text-decoration:underline}.sub-status{margin:6px 0 14px;padding:10px 14px;border-radius:var(--r-sm);font-weight:700;font-size:var(--fs-md)}.sub-status.ok{background:var(--tint-ok-bg);color:var(--tint-ok-fg)}.sub-status.bad{background:var(--warn-soft);color:var(--warn)}.sub-price{font-weight:600;font-size:var(--fs-lg);margin:0 0 4px;color:var(--ink)}.trialbar{display:block;max-width:1680px;margin:0 auto 12px;text-align:center;text-decoration:none;border:1px solid var(--tint-indigo-bd);color:var(--indigo);font-weight:600;font-size:var(--fs-sm);padding:8px 14px;border-radius:var(--r-sm)}.trialbar,.trialbar:hover{background:var(--tint-indigo-bg)}.trialbar.urgent{background:var(--warn-soft);border-color:var(--tint-amber-bd);color:var(--warn)}.trialbar b{font-weight:700}.task-row{display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);margin-bottom:8px;max-width:1100px}.task-row.done{background:var(--card-2);opacity:.75}.task-row.done .task-title{text-decoration:line-through;color:var(--muted)}.task-title{flex:1;min-width:0;overflow-wrap:anywhere}.task-check,.task-title{font-weight:700;font-size:var(--fs-lg)}.task-check{flex:none;width:26px;height:26px;border-radius:var(--r-sm);border:2px solid var(--line);background:var(--card);cursor:pointer;color:var(--on-teal);line-height:1;padding:0}.task-check.on,.task-check:hover{border-color:var(--teal)}.task-check.on{background:var(--teal)}.task-by{font-size:var(--fs-xs);color:var(--muted);font-weight:600;white-space:nowrap}.task-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.task-body .task-title{flex:none}.task-note{color:var(--muted);overflow-wrap:anywhere}.task-note,.task-section{font-size:var(--fs-xs);font-weight:600}.task-section{font-family:var(--display);color:var(--teal-d);text-transform:uppercase;letter-spacing:.5px;margin:10px 0 6px 2px}.task-group,.tpl-bar{max-width:1100px}.tpl-bar{display:flex;align-items:center;gap:12px;margin-bottom:6px;flex-wrap:wrap}.tpl-card{max-width:1100px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;margin-bottom:12px}.tpl-head{gap:12px}.tpl-head,.tpl-id{display:flex;align-items:center;flex-wrap:wrap}.tpl-id{gap:9px;flex:1;min-width:0;font-size:var(--fs-xl)}.tpl-actions{margin-left:auto}.tpl-actions,.tpl-apply{display:flex;align-items:center;gap:8px}.tpl-apply{flex-wrap:wrap;margin-top:10px;padding-top:10px}.tpl-apply,.tpl-edit{border-top:1px solid var(--line)}.tpl-edit{margin-top:12px;padding-top:12px}.tpl-items{display:flex;flex-direction:column;gap:8px;margin:10px 0}.tpl-item{gap:8px;flex-wrap:wrap}.tpl-item,.tpl-num{display:flex;align-items:center}.tpl-num{flex:none;width:24px;height:24px;border-radius:var(--r-xs);background:var(--hover);color:var(--muted);font-weight:700;font-size:var(--fs-xs);justify-content:center}.tpl-edit-actions{display:flex;align-items:center;gap:10px;margin-top:6px}.auth-card{width:min(400px,calc(100vw - 32px));background:var(--card);border:1px solid var(--line);padding:26px;box-shadow:0 14px 34px rgba(20,32,48,.1)}.auth-card h1{font-family:var(--display);margin:0 0 4px}.auth-card .sub{color:var(--muted);font-weight:700;font-size:var(--fs-md);margin:0 0 20px}.auth-card label{display:block;font-weight:700;font-size:var(--fs-sm);margin:0 0 6px}.auth-card .inp{margin-bottom:14px}.hint{margin:0 auto 14px;font-size:var(--fs-sm);color:var(--muted);font-weight:700}.hint,.page{max-width:none}.page{margin:0 auto}.pagehead{display:flex;align-items:center;gap:12px;margin:0 auto 18px;max-width:none;flex-wrap:wrap}.pagehead h1{font-family:var(--display);font-size:var(--fs-3xl);margin:0;flex:1 1 auto;min-width:0;display:inline-flex;align-items:center;gap:9px}.utable{width:100%;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;border-collapse:separate;border-spacing:0;min-width:0}.utable td,.utable th{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-size:var(--fs-md)}.utable th{background:var(--card-2);font-weight:700;color:var(--muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.5px;position:static}.utable tr:last-child td{border-bottom:0}.tag{display:inline-block;white-space:nowrap;font-size:var(--fs-xs);font-weight:700;padding:3px 9px;border-radius:var(--r-pill);background:var(--tint-teal-bg);color:var(--teal-d);border:1px solid var(--tint-teal-bd)}.tag.OWNER{background:var(--tint-saffron-bg);color:var(--tint-saffron-fg);border-color:var(--tint-saffron-bd)}.tag.ADMIN{background:var(--tint-indigo-bg);color:var(--tint-indigo-fg);border-color:var(--tint-indigo-bd)}.tag.off{background:var(--hover);color:var(--muted);border-color:var(--line)}.rowactions{display:flex;gap:6px;flex-wrap:wrap}@media print{:root,:root:not([data-theme=light]),:root[data-theme=dark]{color-scheme:light;--ink:#141a22;--muted:#5f6b78;--line:#e4e8ed;--line-2:#eef1f5;--paper:#f3f5f8;--card:#ffffff;--card-2:#f7f9fb;--hover:#f0f3f6;--tint:#edf4f5;--teal:#0e7c86;--teal-d:#0a5f67;--on-teal:#fff;--indigo:#2c4593;--saffron:#c78a1e;--saffron-soft:#f7eed7;--warn:#b8480f;--warn-soft:#f8ece3;--danger:#bd4a40;--tint-teal-bg:#eef6f6;--tint-teal-bd:#cfe6e6;--tint-danger-bg:#fdeceb;--tint-danger-bd:#f2cdc8;--tint-danger-fg:#b0473c;--tint-indigo-bg:#eef3fb;--tint-indigo-bd:#cdd9ef;--tint-indigo-fg:#2563a8;--tint-ok-bg:#e6f3ec;--tint-ok-bd:#c2e6cd;--tint-ok-fg:#256b52;--tint-saffron-bg:#fdf6e4;--tint-saffron-bd:#e7cf95;--tint-saffron-fg:#8a6a15;--tint-amber-bd:#f4d3bd;--tint-amber-fg:#7a3312;--purple:#6d5bb5}@page{size:landscape;margin:8mm}body{background:var(--card);padding:0}.backdrop,.modal,.no-print,.sidenav,.topbar,.warnbar,.weeknotice{display:none!important}.appshell{margin-left:0!important}.scroll{border:0;box-shadow:none;overflow:visible;max-height:none;max-width:none;border-radius:0}td.emp-name,th.corner,thead th{position:static}.notes{max-width:none;margin:10px 0 0}table{min-width:0}}@media (max-width:640px){body{padding:10px 10px 60px}.appbar{padding:12px;border-radius:var(--r-md);gap:10px}.brand-title{max-width:70vw;font-size:var(--fs-2xl)}.range{display:none}.weeknav{width:100%;justify-content:space-between}.weektag{width:100%;justify-content:center}.weeknav input[type=date]{flex:1}.actions{width:100%;justify-content:flex-start}.actions .btn{flex:1 1 auto;text-align:center}.saved{width:100%;text-align:left;order:-1}.scroll{border-radius:var(--r-sm)}th.corner{width:158px;padding:12px}td.emp-name{padding:11px 12px;font-size:var(--fs-xl)}th.day{min-width:118px;padding:10px 6px}th.day .dname{font-size:var(--fs-xl)}.cin .t{font-size:var(--fs-lg)}.band{padding:11px 12px}.modal{border-radius:var(--r-lg) 18px 0 0;top:auto;bottom:0;left:0;transform:none;width:100%;max-height:88vh}.notes,.policy{border-radius:var(--r-sm);padding:14px}}@media (max-width:720px){.appbar{gap:8px 10px}.actions{gap:7px}.actions .btn{padding:9px 12px}.actions .btn,.brand-sub{font-size:var(--fs-sm)}.sched.daymode table#sheet{table-layout:fixed;width:100%;min-width:0}.sched.daymode td.cell,.sched.daymode th.day{min-width:0}.sched.daymode .scroll{max-height:none;overflow-x:hidden}.sched.daymode th.corner{width:46%}.sched.daymode td.emp-name{white-space:normal;overflow:hidden}.sched.daymode .nm{white-space:nowrap}.sched.daymode .nm-row{flex-wrap:wrap}.sched.daymode .row-ctl{position:static;flex:0 0 100%;box-shadow:none;padding-left:0;margin-top:5px;background:transparent}.sched.daymode th.day .dname{font-size:var(--fs-2xl)}.sched.daymode th.day .ddate{font-size:var(--fs-md)}.sched.daymode td.cell{padding:12px 10px}.sched.daymode td.emp-name{font-size:var(--fs-xl)}.sched.daymode .cin{min-height:58px}.sched.daymode .cin .t{font-size:var(--fs-2xl)}.sched.daymode .cin.off .t{font-size:var(--fs-xl)}.sched.daymode .pill{font-size:var(--fs-md);padding:4px 13px}.weeknav.dayonly{gap:8px;width:100%}.weeknav.dayonly select{flex:1;padding:12px 10px;font-size:var(--fs-xl)}.weeknav.dayonly .nav{width:46px;height:46px;font-size:var(--fs-2xl)}.weeknav.dayonly .tlab{display:none}.modeswitch button{padding:10px 14px}.band .ctl{display:none}.band .add{padding:6px 11px;font-size:var(--fs-xs);white-space:nowrap}}@keyframes kfade{0%{opacity:0}to{opacity:1}}.kiosk,.kiosk *{--ink:#141a22;--muted:#5f6b78;--line:#e4e8ed;--line-2:#eef1f5;--paper:#f3f5f8;--card:#ffffff;--card-2:#f7f9fb;--hover:#f0f3f6;--tint:#edf4f5;--teal:#0e7c86;--teal-d:#0a5f67;--on-teal:#fff;--indigo:#2c4593;--saffron:#c78a1e;--saffron-soft:#f7eed7;--warn:#b8480f;--warn-soft:#f8ece3;--danger:#bd4a40;--tint-teal-bg:#eef6f6;--tint-teal-bd:#cfe6e6;--tint-danger-bg:#fdeceb;--tint-danger-bd:#f2cdc8;--tint-danger-fg:#b0473c;--tint-indigo-bg:#eef3fb;--tint-indigo-bd:#cdd9ef;--tint-indigo-fg:#2563a8;--tint-ok-bg:#e6f3ec;--tint-ok-bd:#c2e6cd;--tint-ok-fg:#256b52;--tint-saffron-bg:#fdf6e4;--tint-saffron-bd:#e7cf95;--tint-saffron-fg:#8a6a15;--tint-amber-bd:#f4d3bd;--tint-amber-fg:#7a3312;--shadow-sm:0 1px 2px rgba(20,32,48,.05);--shadow-md:0 1px 2px rgba(20,32,48,.05),0 8px 22px rgba(20,32,48,.06);--shadow-lg:0 10px 30px rgba(20,32,48,.13),0 2px 8px rgba(20,32,48,.07);--purple:#6d5bb5}.kiosk{position:fixed;inset:0;bottom:auto;height:100vh;padding-bottom:env(safe-area-inset-bottom,0);overflow:hidden;display:flex;flex-direction:column;color:var(--ink);color-scheme:light;background:radial-gradient(1000px 500px at 50% -10%,rgba(14,124,134,.1),transparent 60%),var(--paper)}.kiosk-top{position:relative;flex:none;display:flex;align-items:center;justify-content:space-between;padding:calc(min(16px,2vh) + env(safe-area-inset-top, 0px)) 24px min(16px,2vh);gap:12px}.kiosk-brand{font-family:var(--display);font-weight:800;font-size:min(24px,3vh);color:var(--ink)}.kiosk-top:has(.kiosk-clock){display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:4px 12px;padding:calc(12px + env(safe-area-inset-top,0px)) 24px 12px}.kiosk-top:has(.kc-greet){padding-bottom:30px}.kiosk-top:has(.kiosk-clock) .kiosk-brand{grid-row:1;grid-column:1;min-width:0;max-width:none}.kiosk-top:has(.kiosk-clock)>div:last-child{grid-row:1;grid-column:3;justify-self:end}.kiosk-clock{position:relative;grid-column:2;grid-row:1;text-align:center;white-space:nowrap;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:2px;font-family:var(--display);color:var(--teal-d);font-variant-numeric:tabular-nums}.kiosk-clock .kc-time{font-weight:800;font-size:min(52px,6dvh,8vw);line-height:1;letter-spacing:-.035em}.kiosk-clock .kc-greet{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);font-weight:600;color:var(--muted);letter-spacing:.01em}.kiosk-langs{display:inline-flex;gap:4px;flex-wrap:wrap}.kiosk-langs button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:var(--r-pill);padding:8px 14px;font-weight:700;font-size:min(16px,2vh);cursor:pointer;min-height:44px}.kiosk-langs button.on{background:var(--ink);color:var(--card);border-color:var(--ink)}.kiosk-langs.compact button{padding:5px 10px;font-size:min(14px,1.8vh);min-height:32px}.kiosk-langrow{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap;justify-content:center}.kiosk-langrow.top{margin:0;padding:0 24px}.kiosk-langlabel{font-weight:700;color:var(--muted)}.kiosk-langnote{color:var(--ok,var(--tint-ok-fg))}.kiosk-change{border:1px solid var(--line);background:var(--card);border-radius:var(--r-sm);padding:10px 14px;font:inherit;font-weight:700;cursor:pointer;color:var(--muted)}.kiosk-branches{flex:1;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;padding:24px}.kiosk-branchbtn{width:min(420px,90vw);padding:26px;font-family:var(--display);font-weight:700;font-size:var(--fs-3xl);border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);color:var(--teal-d);cursor:pointer;box-shadow:0 8px 24px rgba(20,32,48,.08)}.kiosk-branchbtn:hover{background:var(--hover)}.kiosk-body{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;overflow-y:auto;gap:min(16px,2vh);padding:10px}.kiosk-body.managerpin .kiosk-pad{--kiosk-key-cap:84;--kkey:var(--kiosk-fit-key,min(84px,19vw,10.6dvh))}.kiosk-body.managerpin{gap:min(12px,1.5vh)}.kiosk-title{font-family:var(--display);font-weight:800;font-size:min(26px,3.4vh);line-height:1.15;text-align:center;overflow-wrap:anywhere}.kiosk-sub{color:var(--warn);font-weight:600;font-size:var(--fs-xl);text-align:center;max-width:440px}.kiosk-dots{flex:none;font-size:min(40px,4.6vh);letter-spacing:14px;color:var(--teal);line-height:1.2}.kiosk-pin-body>*{flex:none}.kiosk-pin-body{gap:min(12px,1.5dvh);padding:8px 12px}.kiosk-pad{display:grid;flex:none;grid-template-columns:repeat(3,var(--kkey));gap:min(16px,1.8dvh)}.kiosk-key{width:var(--kkey);height:var(--kkey);border-radius:calc(var(--kkey) * .26);border:1px solid var(--line);background:var(--card);font-family:var(--font);font-weight:800;font-size:calc(var(--kkey) * .4);color:var(--ink);cursor:pointer;box-shadow:0 6px 18px rgba(20,32,48,.07);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .07s ease,box-shadow .1s ease}.kiosk-key:active{transform:scale(.92);box-shadow:0 2px 8px rgba(20,32,48,.12)}.kiosk-key.ghost{color:var(--muted);border-color:transparent}.kiosk-pad{--kiosk-key-cap:104;--kkey:var(--kiosk-fit-key,min(104px,21vw,13.5dvh))}@media (orientation:portrait){.kiosk-pad{--kiosk-key-cap:150;--kkey:var(--kiosk-fit-key,min(150px,24vw,13.5dvh))}.kiosk-body.managerpin .kiosk-pad{--kiosk-key-cap:130;--kkey:var(--kiosk-fit-key,min(130px,22vw,12dvh))}.kiosk-dots{font-size:min(52px,5.4vh)}}.kiosk-key-spacer{width:var(--kkey);height:var(--kkey)}.kiosk-key:disabled{opacity:.45}.kiosk-hint{color:var(--muted);font-weight:600;font-size:var(--fs-lg)}.kiosk-result{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:60;cursor:pointer;animation:kfade .2s ease}.kiosk-result.in{background:rgba(12,107,115,.97)}.kiosk-result.out{background:rgba(35,58,134,.97)}.kiosk-result.error,.kiosk-result.invalid,.kiosk-result.too_early{background:rgba(178,74,58,.97)}.kiosk-card{text-align:center;color:#fff;padding:24px}.kiosk-emoji{font-size:84px;line-height:1}.kiosk-name{font-family:var(--display);font-weight:800;font-size:42px;margin-top:8px}.kiosk-msg{font-weight:700;font-size:var(--fs-3xl);margin-top:10px}.kiosk-note{font-weight:600;font-size:var(--fs-2xl);margin-top:8px;opacity:.92}.kiosk-result.brk{background:rgba(178,90,45,.97)}.kiosk-dev{color:var(--muted);font-weight:600;font-size:var(--fs-xl)}.pair-card{width:min(500px,92vw);display:flex;flex-direction:column;align-items:center;gap:14px;padding:clamp(24px,4.5vh,42px);text-align:center;background:color-mix(in srgb,var(--card) 94%,transparent);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-lg)}.pair-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);font-size:27px;line-height:1}.pair-card .kiosk-title{font-size:clamp(28px,4vh,40px);line-height:1.08}.pair-sub{color:var(--muted);line-height:1.45}.pair-input{font-family:var(--display);font-weight:700;font-size:clamp(27px,4.2vh,38px);letter-spacing:.22em;text-align:center;border:2px solid var(--line);border-radius:var(--r-md);padding:16px 12px 16px calc(12px + .22em);width:100%;text-transform:uppercase;background:var(--card);color:var(--ink);outline:none;transition:border-color var(--t-fast),box-shadow var(--t-fast)}.pair-input.ready,.pair-input:focus{border-color:var(--teal);box-shadow:0 0 0 4px var(--tint-teal-bg)}.pair-input::placeholder{color:var(--muted);opacity:.68}.pair-error{border-radius:var(--r-sm);padding:9px 12px;background:var(--warn-soft);border:1px solid var(--tint-amber-bd);color:var(--tint-amber-fg);font-size:var(--fs-md);line-height:1.4}.pair-btn,.pair-error{width:100%;font-weight:700}.pair-btn{margin-top:2px;border:none;border-radius:var(--r-md);padding:18px 28px;font-family:var(--display);font-size:var(--fs-2xl);color:#fff;background:var(--teal);cursor:pointer;box-shadow:0 8px 20px rgba(14,124,134,.22);transition:transform var(--t-fast),background var(--t-fast),box-shadow var(--t-fast)}.pair-btn:not(:disabled):active{transform:scale(.98)}.pair-btn:disabled{opacity:.48;box-shadow:none;cursor:not-allowed}.pair-clock-link{margin-top:2px}a.pair-btn{text-decoration:none;display:inline-block}.kiosk-dot{display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid var(--teal);vertical-align:middle}.kiosk-dot.on{background:var(--teal)}.tk-list{width:min(620px,94vw);display:flex;flex-direction:column;gap:10px;margin:6px 0 4px;max-height:52vh;overflow:auto;-webkit-overflow-scrolling:touch}.tk-item{gap:14px;text-align:left;background:var(--card);border:2px solid var(--line);border-radius:var(--r-md);padding:15px 18px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}.tk-item,.tk-item .tk-check{display:flex;align-items:center;font-size:var(--fs-2xl)}.tk-item .tk-check{flex:none;width:30px;height:30px;border-radius:var(--r-sm);border:2px solid var(--line);justify-content:center;color:#fff;line-height:1}.tk-item.done{opacity:.55}.tk-item.done .tk-check{background:var(--teal);border-color:var(--teal)}.tk-item.done .tk-title{text-decoration:line-through}.tk-body,.tk-title{min-width:0}.tk-body{flex:1;display:flex;flex-direction:column;gap:3px}.tk-note{font-size:var(--fs-md);font-weight:700;color:var(--muted)}.tk-section{width:min(620px,94vw);text-align:left;font-family:var(--display);font-weight:700;font-size:var(--fs-lg);color:var(--teal-d);text-transform:uppercase;letter-spacing:.6px;margin:12px 4px 2px}.tk-board{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;align-items:center;gap:14px;padding:min(22px,2.4vh) 10px;overflow:auto;-webkit-overflow-scrolling:touch}.tk-boardhead{width:min(720px,94vw);display:flex;align-items:baseline;justify-content:space-between;gap:12px}.tk-boardtitle{font-family:var(--display);font-weight:700;font-size:min(30px,3.8vh);color:var(--ink)}.tk-boarddate{font-weight:700;color:var(--muted);font-size:min(18px,2.3vh)}.tk-empty{color:var(--muted);font-weight:600;font-size:var(--fs-2xl);margin-top:8vh}.tk-tabs{width:min(940px,96vw);flex-wrap:wrap;justify-content:center}.tk-tab,.tk-tabs{display:flex;gap:10px}.tk-tab{align-items:center;background:var(--card);border:2px solid var(--line);border-radius:var(--r-pill);padding:11px 18px;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.tk-tab .tk-tabname{font-family:var(--display);font-weight:700;font-size:var(--fs-2xl);color:var(--ink)}.tk-tab .tk-tabcount{font-weight:700;font-size:var(--fs-md);color:var(--muted);background:var(--hover);border-radius:var(--r-pill);padding:2px 9px}.tk-tab.all:not(.on){border-color:var(--teal);background:var(--tint-teal-bg)}.tk-tab.on{background:var(--teal);border-color:var(--teal)}.tk-tab.on .tk-tabname{color:#fff}.tk-tab.on .tk-tabcount{color:#fff;background:rgba(255,255,255,.22)}.tk-panel{width:min(720px,94vw);display:flex;flex-direction:column;gap:6px}.tk-panelhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 4px}.tk-panelname{font-family:var(--display);font-weight:700;font-size:var(--fs-3xl);color:var(--teal-d)}.tk-panelcount{font-weight:700;color:var(--muted);font-size:var(--fs-lg)}.tk-panel .tk-list{width:100%;max-height:none;overflow:visible;margin-top:2px}.tk-panel .tk-section{width:100%}.kiosk.sky{background:var(--card)}.sky-head{flex:none;display:flex;align-items:baseline;gap:14px;padding:min(16px,2vh) 22px 8px}.sky-title{font-family:var(--display);font-weight:700;font-size:min(28px,3.6vh);color:var(--ink)}.sky-date{font-size:min(17px,2.2vh)}.sky-date,.sky-empty{font-weight:700;color:var(--muted)}.sky-empty{font-size:var(--fs-2xl);margin:9vh auto 0}.sky-cols{flex:1;gap:16px;align-items:stretch;padding:6px 18px 18px;overflow-x:auto;-webkit-overflow-scrolling:touch}.sky-col,.sky-cols{min-height:0;display:flex}.sky-col{flex:none;width:min(320px,82vw);flex-direction:column;border-radius:var(--r-lg);padding:14px 12px 4px;box-shadow:0 6px 20px rgba(60,40,20,.06)}.sky-colhead{gap:12px;padding:2px 6px 8px}.sky-ava,.sky-colhead{flex:none;display:flex;align-items:center}.sky-ava{width:48px;height:48px;border-radius:50%;justify-content:center;color:#fff;font-family:var(--display);font-weight:700;font-size:var(--fs-2xl);letter-spacing:.5px}.sky-colinfo{display:flex;flex-direction:column;line-height:1.15;min-width:0}.sky-colname{font-family:var(--display);font-weight:700;font-size:var(--fs-2xl);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sky-colcount{font-weight:700;font-size:var(--fs-md);color:var(--muted)}.sky-colbar{flex:none;height:8px;margin:0 6px 8px;background:rgba(90,60,30,.1);overflow:hidden}.sky-colbar,.sky-colfill{border-radius:var(--r-pill)}.sky-colfill{display:block;height:100%;transition:width .35s ease}.sky-coltasks{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2px 6px 12px}.sky-colblock,.sky-coltasks{display:flex;flex-direction:column;gap:10px}.sky-blocklabel{font-family:var(--display);font-weight:700;font-size:var(--fs-sm);color:rgba(70,50,30,.6);text-transform:uppercase;letter-spacing:.6px;margin:8px 2px 0}.sky-card{display:flex;flex-direction:column;gap:10px;text-align:left;border:none;border-radius:var(--r-lg);padding:14px 14px 12px;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .08s ease,opacity .15s ease}.sky-card:active{transform:scale(.98)}.sky-card.done{opacity:.55}.sky-cardemoji{font-size:38px;line-height:1;text-align:center;padding:6px 0 2px}.sky-cardfoot{display:flex;align-items:center;gap:10px}.sky-cardtext{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sky-cardtitle{font-family:var(--display);font-weight:700;font-size:var(--fs-xl);color:var(--ink);line-height:1.2}.sky-card.done .sky-cardtitle{text-decoration:line-through;text-decoration-color:rgba(90,70,50,.5)}.sky-cardnote{font-size:var(--fs-xs);font-weight:700;color:var(--muted);line-height:1.25}.sky-cardcheck{flex:none;width:32px;height:32px;border-radius:50%;border:2.5px solid rgba(90,60,30,.28);background:rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;color:#fff;font-size:var(--fs-2xl);font-weight:700;line-height:1;transition:background .12s ease}.sky-coldone{font-family:var(--display);font-weight:700;font-size:var(--fs-xl);text-align:center;padding:12px 0 6px}.sky-cardreport{font-size:var(--fs-xs);font-weight:700;color:var(--tint-indigo-fg)}.rep-backdrop{position:fixed;inset:0;background:rgba(30,20,10,.45);z-index:80}.rep-modal{position:fixed;z-index:81;left:50%;top:50%;transform:translate(-50%,-50%);width:min(460px,94vw);max-height:88vh;display:flex;flex-direction:column;background:var(--card);border-radius:var(--r-lg);box-shadow:0 24px 70px rgba(20,20,30,.4);overflow:hidden}.rep-head{display:flex;align-items:center;gap:10px;padding:16px 18px 6px}.rep-title{flex:1;font-family:var(--display);font-weight:700;font-size:var(--fs-2xl);color:var(--ink)}.rep-x{border:none;background:transparent;font-size:var(--fs-3xl);line-height:1;cursor:pointer;padding:0 4px}.rep-sub,.rep-x{color:var(--muted)}.rep-sub{padding:0 18px 10px;font-weight:600;font-size:var(--fs-md)}.rep-list{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2px 18px 8px;display:flex;flex-direction:column;gap:8px}.rep-row{display:flex;align-items:center;gap:12px;background:var(--card-2);border-radius:var(--r-md);padding:10px 12px}.rep-name{flex:1;font-family:var(--display);font-weight:700;font-size:var(--fs-xl);color:var(--ink);min-width:0}.rep-inp{flex:none;width:96px;text-align:center;font:inherit;font-weight:700;font-size:var(--fs-2xl);color:var(--ink);border:2px solid var(--line);border-radius:var(--r-sm);padding:9px 8px;background:var(--card)}.rep-foot{display:flex;gap:10px;align-items:center;padding:12px 18px;border-top:1px solid var(--line)}.rep-foot .btn{flex:none}.rep-send{flex:1;border:none;border-radius:var(--r-md);padding:13px;font-family:var(--display);font-weight:700;font-size:var(--fs-xl);background:var(--teal);color:#fff;cursor:pointer}.rep-send:disabled{opacity:.6}.rules-prods{border:1px dashed var(--line);border-radius:var(--r-sm);padding:10px 12px;margin-bottom:10px;background:var(--card-2)}.kiosk-change.store-pause{color:#b25a2d;border-color:var(--tint-saffron-bd);background:var(--tint-saffron-bg)}.kiosk-menu{display:grid;grid-template-columns:1fr 1fr;gap:min(16px,1.8vh);width:min(560px,92vw);margin-top:6px}.menu-btn{border:1px solid var(--line);border-radius:var(--r-lg);padding:min(26px,3vh) 14px;font-family:var(--display);font-weight:700;font-size:min(22px,2.7vh);background:var(--card);color:var(--ink);cursor:pointer;box-shadow:0 4px 14px rgba(20,32,48,.06);touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .07s ease}.menu-btn:active{transform:scale(.96)}.menu-btn.full{grid-column:1/-1}.menu-btn.start{background:var(--tint-ok-bg);border-color:var(--tint-ok-bd);color:var(--tint-ok-fg)}.menu-btn.danger{background:var(--danger);color:#fff;border-color:transparent}.menu-btn.warn{background:var(--saffron);color:#3a2a06;border-color:transparent}.menu-btn.end{background:var(--teal);color:#fff;border-color:transparent}.menu-btn:disabled{opacity:.5}.linkbtn{background:none;border:none;cursor:pointer}.kiosk-result.unpair{background:rgba(20,30,45,.97)}.unpair-box{background:var(--card);border-radius:var(--r-lg);padding:26px;width:min(400px,92vw);display:flex;flex-direction:column;gap:12px;cursor:default}.unpair-title{font-family:var(--display);font-weight:700;font-size:var(--fs-3xl);color:var(--ink)}.unpair-sub{color:var(--muted);font-weight:600;font-size:var(--fs-md);margin-top:-4px}.unpair-inp{border:1px solid var(--line);border-radius:var(--r-sm);padding:14px;font:inherit;font-size:var(--fs-xl);background:var(--card)}.unpair-err{color:var(--warn);font-weight:600;font-size:var(--fs-md)}.unpair-actions{display:flex;gap:10px;margin-top:6px}.unpair-cancel{border:1px solid var(--line);background:var(--card);border-radius:var(--r-sm)}.unpair-cancel,.unpair-go{flex:1;padding:14px;font:inherit;font-weight:700;cursor:pointer}.unpair-go{border:none;border-radius:var(--r-sm);color:#fff;background:var(--teal)}.unpair-go:disabled{opacity:.5}.pin-cell{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.pin-dot{font-size:var(--fs-2xs);color:var(--muted)}.pin-dot.on{color:var(--teal)}.pin-inp{width:64px;border:1px solid var(--line);border-radius:var(--r-sm);padding:8px;font:inherit;font-weight:600;font-size:var(--fs-sm);letter-spacing:2px;text-align:center;background:var(--card);color:var(--ink)}.pin-inp::placeholder{letter-spacing:normal;font-weight:700;color:var(--muted)}.phone-cell{display:inline-flex;align-items:center;gap:6px}.tg-dot{font-size:var(--fs-xs);color:var(--muted)}.tg-dot.on{color:var(--teal)}.phone-inp{width:120px;border:1px solid var(--line);border-radius:var(--r-sm);padding:8px;font:inherit;font-weight:600;font-size:var(--fs-sm);background:var(--card);color:var(--ink)}.phone-inp::placeholder{font-weight:700;color:var(--muted)}.mgr-pin-row{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card-2)}.mgr-lab{font-weight:600;font-size:var(--fs-sm);color:var(--muted)}.dev-mgr>.rule{background:var(--tint-teal-bg);border-color:var(--tint-teal-bd);padding:16px;box-shadow:var(--shadow-sm)}.dev-mgr>.rule .rrow{margin-bottom:12px}.device-row{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--r-md);padding:16px;margin-bottom:10px;background:var(--card);box-shadow:var(--shadow-sm);transition:border-color var(--t-fast),box-shadow var(--t-fast),transform var(--t-fast)}.device-row:hover{border-color:var(--tint-teal-bd);box-shadow:var(--shadow-md);transform:translateY(-1px)}.paircode{margin-top:8px;font-size:var(--fs-sm);color:var(--muted)}.paircode .code{display:inline-block;margin-top:5px;font-family:var(--display);font-weight:700;font-size:var(--fs-3xl);letter-spacing:6px;color:var(--teal-d);background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);padding:7px 14px;border-radius:var(--r-sm)}.hintline{color:var(--muted);padding:10px 2px}.dev-badge{font-size:var(--fs-xs);font-weight:700;padding:2px 9px;border-radius:var(--r-pill);border:1px solid var(--line);color:var(--muted);background:var(--card)}.dev-badge.k-clock{color:var(--teal);background:var(--tint-teal-bg);border-color:var(--tint-teal-bd)}.dev-badge.k-store{color:var(--warn);background:var(--tint-saffron-bg);border-color:var(--tint-saffron-bd)}.dev-badge.k-kitchen{color:var(--tint-ok-fg);background:var(--tint-ok-bg);border-color:var(--tint-ok-bd)}.dev-pick{margin-top:4px}.dev-chips{display:flex;flex-wrap:wrap;gap:7px}.dev-chip{font:inherit;font-weight:600;font-size:var(--fs-sm);padding:6px 12px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}.dev-chip.on{background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.dev-edit{width:100%;border-top:1px dashed var(--line);margin-top:6px;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--card-2);border-radius:var(--r-sm)}.rules-field{display:inline-flex;align-items:center;gap:6px}.rules-lab{font-weight:700;font-size:var(--fs-sm);color:var(--muted)}.rules-check{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:var(--fs-md);color:var(--ink)}.rule-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 14px;margin-bottom:8px;background:var(--card)}.rule-row.off{opacity:.5}.rule-time{font-family:var(--display);font-weight:700;font-size:var(--fs-lg);color:var(--teal-d);min-width:74px}.rule-codes{display:inline-flex;gap:4px;flex-wrap:wrap}.rule-main{flex:1 1 200px;min-width:0;display:flex;flex-direction:column;gap:2px}.rule-ttl{font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tag.rep{background:var(--tint-indigo-bg);color:var(--tint-indigo-fg);border-color:var(--tint-indigo-bd)}.toggle.sm{width:44px;height:26px;flex:none}.toggle.sm .knob{width:20px;height:20px}.wm-accent{color:var(--teal)}.sidenav{position:fixed;left:0;top:0;bottom:0;width:224px;z-index:55;display:flex;flex-direction:column;gap:3px;background:linear-gradient(180deg,var(--card) 0,var(--card-2) 100%);border-right:1px solid var(--line);padding:14px 10px;overflow-y:auto;overscroll-behavior:contain}.sidenav-brand{display:flex;align-items:center;gap:10px;min-width:0;padding:4px 8px 16px;margin-bottom:5px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.sidenav-brand .mark{width:36px;height:36px;border-radius:var(--r-sm);flex:none}.sidenav .wordmark{font-family:var(--wordmark);font-weight:700;font-size:var(--fs-2xl);letter-spacing:-.5px;white-space:nowrap;overflow:hidden;color:var(--ink)}.snav-tab{display:flex;align-items:center;gap:11px;padding:8px 12px;min-height:48px;border-radius:var(--r-sm);border:0;background:transparent;font:inherit;font-weight:700;font-size:var(--fs-md);color:var(--muted);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background var(--t-fast),color var(--t-fast),transform var(--t-fast);text-align:left}.snav-tab:hover{background:var(--hover);color:var(--ink);transform:translateX(2px)}.snav-tab.on{background:var(--teal);color:var(--on-teal);box-shadow:0 5px 14px color-mix(in srgb,var(--teal) 22%,transparent)}.snav-tab .si{font-size:var(--fs-2xl);width:32px;text-align:center;flex:none}.snav-tab .sl{overflow:hidden;text-overflow:ellipsis}.snav-div{height:1px;background:var(--line);margin:10px 8px;flex:none}.snav-sp{flex:1}.snav-collapse{color:var(--muted)}html[data-nav=collapsed] .sidenav{width:72px;padding-left:8px;padding-right:8px;align-items:stretch}html[data-nav=collapsed] .sidenav .wordmark{display:none}html[data-nav=collapsed] .sidenav-brand,html[data-nav=collapsed] .snav-tab{justify-content:center;padding-left:0;padding-right:0}html[data-nav=collapsed] .snav-tab .sl{display:none}.appshell{margin-left:224px;transition:margin-left .18s ease}html[data-nav=collapsed] .appshell{margin-left:72px}.topbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 16px;padding:10px 12px;background:color-mix(in srgb,var(--card) 92%,transparent);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.topbar-brand{display:none}.topbar-brand .mark{width:34px;height:34px;border-radius:var(--r-sm)}.topbar-title{display:flex;flex-direction:column;line-height:1.15;min-width:0;margin-right:2px}.topbar-title b{font-weight:700;font-size:var(--fs-lg);color:var(--ink)}.topbar-title b,.topbar-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:38vw}.topbar-title small{font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.emp-pick{flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;border:1px solid var(--line);padding:6px;background:var(--card-2)}.emp-opt,.emp-pick{display:flex;border-radius:var(--r-sm)}.emp-opt{align-items:center;gap:8px;text-align:left;font:inherit;font-weight:600;font-size:var(--fs-md);padding:9px 11px;border:1px solid transparent;background:transparent;color:var(--ink);cursor:pointer}.emp-opt:hover{background:var(--hover)}.emp-opt.on{background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.emp-opt.dim{opacity:.55}.emp-opt .emp-nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-opt .emp-tag{font-size:var(--fs-2xs);font-weight:700;color:var(--muted);background:var(--hover);border-radius:var(--r-pill);padding:2px 8px}.emp-opt.on .emp-tag{color:var(--on-teal);background:rgba(0,0,0,.18);background:color-mix(in srgb,var(--ink) 18%,transparent)}.ico.t-teal{color:var(--teal)}.ico.t-indigo{color:var(--indigo)}.ico.t-amber{color:var(--warn)}.ico.t-green{color:var(--tint-ok-fg)}.ico.t-purple{color:var(--purple)}.ico.t-rose{color:var(--danger)}.ico.t-saffron{color:var(--saffron)}.ico.t-slate{color:var(--muted)}.btab.on .ico,.btn.primary .ico,.chip.on .ico,.snav-tab.on .ico{color:currentColor}.ico{flex:none;vertical-align:-.16em}.cin .t .ico{margin-right:.28em;vertical-align:-.14em}.btab .bi,.ctl,.m-x,.nav,.pv-link.sm,.rp-del,.snav-tab .si{display:inline-flex;align-items:center;justify-content:center}.ntf-ic.k-late{color:var(--danger)}.ntf-ic.k-unavail{color:var(--indigo)}.ntf-ic.k-forgot,.ntf-ic.k-gap{color:var(--warn)}.today-h.late{color:var(--danger)}.today-h.absent{color:var(--warn)}.ntf-btn,.ntf-wrap{position:relative}.ntf-btn{padding:10px 13px}.ntf-badge{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:var(--r-pill);background:var(--danger);color:#fff;font-weight:700;font-size:var(--fs-2xs);display:flex;align-items:center;justify-content:center;line-height:1}.ntf-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:72;width:min(360px,92vw);max-height:70vh;overflow-y:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:8px;animation:fadeIn .14s ease}.ntf-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--display);font-weight:700;font-size:var(--fs-md);padding:0 2px 6px 10px;color:var(--ink)}.ntf-head .btn{min-width:44px;min-height:44px;padding:8px;flex:none}.ntf-empty{padding:12px 10px 14px;color:var(--muted);font-weight:600;font-size:var(--fs-md)}.ntf-empty .btn{display:block;min-height:44px;margin-top:10px}.ntf-item{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:var(--r-sm);text-decoration:none;color:var(--ink);font-weight:600;font-size:var(--fs-sm);line-height:1.35}.ntf-item:hover{background:var(--hover)}.ntf-item.read{opacity:.62}.ntf-item .ntf-ic{flex:none;font-size:var(--fs-lg);line-height:1.3}.ntf-item .ntf-tx{min-width:0}.appnav-bottom,.mobile-only{display:none}@media (max-width:720px){.sidenav{display:none}.appshell{margin-left:0!important}.topbar{gap:7px;margin-bottom:12px;position:relative}.ntf-wrap{position:static}.ntf-menu{width:min(360px,100%)}.topbar-brand{display:block}.topbar .branchlab,.topbar-title small{display:none}@media (max-width:430px){.topbar-title{display:none}}.topbar-title b{max-width:34vw}.topbar a.rolebadge{display:inline-flex;align-items:center;min-height:41px;padding:0 12px;font-size:var(--fs-xs)}.topbar>.btn,.topbar>.modeswitch{display:none}.mobile-only{display:block}.appnav-bottom{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--card);border-top:1px solid var(--line);box-shadow:0 -6px 22px rgba(20,32,48,.1);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.btab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--muted);font-weight:700;font-size:var(--fs-2xs);letter-spacing:-.2px;padding:5px 1px;border-radius:var(--r-sm);-webkit-tap-highlight-color:transparent}.btab .bi{font-size:var(--fs-2xl);line-height:1}.btab .bl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.btab.on{color:var(--teal-d)}.btab.on .bi{transform:translateY(-1px)}body{padding-bottom:78px}}.dash{max-width:none;margin:0 auto}.dash-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:2px 0 16px}.dash-head h1{font-family:var(--display);font-weight:700;font-size:var(--fs-3xl);color:var(--ink)}.dash-head .sub{color:var(--muted);font-weight:600}.dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;align-items:start}.dcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-md)}.dcard.wide{grid-column:1/-1}.dcard-head{display:flex;align-items:center;gap:9px;padding:14px 16px 12px;color:var(--ink);min-width:0;font-family:var(--display);font-weight:700;font-size:var(--fs-lg);background:var(--card);border-bottom:1px solid var(--line)}.dcard-head .sp{flex:1}.dcard-head>:not(a):not(.sp){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dcard-head a{color:var(--teal-d);font:inherit;font-size:var(--fs-xs);font-weight:650;text-decoration:none;white-space:nowrap;flex:none;opacity:.85;transition:opacity var(--t-fast)}.dcard-head a:hover{opacity:1;text-decoration:underline}.dcard-body{padding:14px 16px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.stat{border:1px solid var(--line);border-radius:var(--r-md);padding:13px 15px;background:var(--card-2);text-decoration:none;display:block;color:inherit;transition:background var(--t-fast),border-color var(--t-fast)}.stat:hover{background:var(--hover);border-color:var(--line)}.stat .n{font-family:var(--display);font-weight:750;font-size:29px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stat .lab{font-weight:600;font-size:var(--fs-xs);color:var(--muted);margin-top:6px;letter-spacing:.01em}.stat.live{border-color:var(--tint-teal-bd);background:var(--tint-teal-bg)}.stat.live .n{color:var(--teal-d)}.stat.attn{border-color:var(--tint-amber-bd);background:var(--warn-soft)}.stat.attn .n{color:var(--warn)}.stat.bad{border-color:var(--tint-danger-bd);background:var(--tint-danger-bg)}.stat.bad .n{color:var(--tint-danger-fg)}.alert-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card-2);margin-bottom:8px;text-decoration:none;color:inherit;font-weight:600;font-size:var(--fs-md)}.alert-row:hover{background:var(--hover)}.alert-row.sev-high{background:var(--warn-soft);border-color:var(--tint-amber-bd);color:var(--tint-amber-fg)}.alert-row.sev-danger{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);color:var(--tint-danger-fg)}.alert-row .sp{flex:1}.covstrip{display:flex;gap:6px;margin-top:4px}.covdot{flex:1;text-align:center;padding:8px 4px;border-radius:var(--r-sm);background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);font-weight:700;font-size:var(--fs-sm);color:var(--teal-d)}.covdot .d{display:block;font-size:var(--fs-2xs);color:var(--muted);font-weight:600;margin-bottom:2px}.covdot.zero{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);color:var(--tint-danger-fg)}.covdot.warn{background:var(--warn-soft);border-color:var(--tint-amber-bd);color:var(--warn)}.dash-actions{display:flex;flex-wrap:wrap;gap:10px}@media (max-width:720px){.dash-head{margin:0 0 12px}.dash-head h1{font-size:var(--fs-2xl)}.dash-grid{grid-template-columns:1fr;gap:12px}.dcard-head{font-size:var(--fs-md)}.dcard-head a{font-size:var(--fs-xs)}.dash-actions .btn{flex:1 1 44%;text-align:center}.dcard-body .utable td{padding:9px 10px;font-size:var(--fs-sm)}.dcard-body .utable .btn{padding:7px 10px;font-size:var(--fs-xs)}.kpi-grid{grid-template-columns:repeat(3,1fr);gap:8px}.stat{padding:10px;border-radius:var(--r-sm)}.stat .n{font-size:var(--fs-3xl)}.stat .lab{font-size:var(--fs-2xs);margin-top:3px}.pagehead{flex-wrap:wrap;gap:8px 10px;margin-bottom:14px}.pagehead h1{font-size:var(--fs-2xl);flex:1 1 100%}.utable td,.utable th{padding:10px;font-size:var(--fs-sm)}}.de-topdept{font-size:var(--fs-xl);color:var(--ink);letter-spacing:.7px;margin:26px 0 2px;padding-top:14px;border-top:2px solid var(--line)}.de-dept,.de-topdept{font-family:var(--display);font-weight:700;text-transform:uppercase}.de-dept{font-size:var(--fs-md);color:var(--teal-d);letter-spacing:.5px;margin:16px 0 8px}.rperson{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card-2);margin-bottom:8px}.rp-del{margin-left:auto;border:0;background:var(--hover);width:30px;height:30px;border-radius:var(--r-sm);cursor:pointer;color:var(--danger);font-size:var(--fs-2xl);font-weight:700;line-height:1}.rp-del:hover{background:var(--tint-danger-bg)}.rp-place{margin-left:auto;font-size:var(--fs-sm);font-weight:700;padding:7px 8px;border-radius:var(--r-sm);max-width:200px}.rp-place+.rp-del{margin-left:0}.rp-off{margin-left:auto;border:1px solid var(--line);background:var(--hover);color:var(--muted);font:inherit;font-size:var(--fs-xs);font-weight:700;padding:6px 10px;border-radius:var(--r-sm);cursor:pointer;white-space:nowrap}.rp-off:hover{background:var(--tint-amber-bd);color:var(--warn);border-color:var(--tint-amber-bd)}.rp-off+.rp-del,.rp-place+.rp-off{margin-left:0}.dupe-warn{display:flex;align-items:flex-start;gap:9px;margin:0 0 14px;padding:11px 14px;font-size:var(--fs-sm);font-weight:600;line-height:1.45;color:var(--tint-amber-fg);background:var(--warn-soft);border:1px solid var(--tint-amber-bd);border-radius:var(--r-md)}.dupe-warn>svg{flex:none;margin-top:2px}.rperson.dupe{border-color:var(--tint-amber-bd)}.resolve,.rperson.dupe{background:var(--warn-soft)}.resolve{margin:0 0 14px;padding:12px 14px;border:1px solid var(--tint-amber-bd);border-radius:var(--r-md)}.rs-head{display:flex;align-items:center;gap:8px;color:var(--tint-amber-fg);font-family:var(--display);font-size:var(--fs-md);font-weight:700}.rs-head>svg{flex:none}.rs-count{margin-left:auto;min-width:22px;padding:1px 8px;border-radius:var(--r-pill);background:var(--tint-amber-bd);font-family:var(--font);font-size:var(--fs-xs);font-weight:700;text-align:center}.rs-count,.rs-sub{color:var(--tint-amber-fg)}.rs-sub{margin:5px 0 11px;font-size:var(--fs-sm);font-weight:600;line-height:1.45}.rs-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:8px 10px;margin-bottom:7px;border:1px solid var(--line);background:var(--card);border-radius:var(--r-sm)}.rs-row:last-child{margin-bottom:0}.rs-who{display:flex;flex-direction:column;gap:2px;flex:1 1 160px;min-width:0}.rs-name{font-weight:700;font-size:var(--fs-md);color:var(--ink);overflow-wrap:anywhere}.rs-where{color:var(--muted)}.rs-note,.rs-where{font-size:var(--fs-xs);font-weight:700}.rs-note{color:var(--warn)}.rs-pick{font:inherit;font-weight:700;padding:7px 8px;max-width:220px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--ink)}.rs-btn,.rs-pick{font-size:var(--fs-sm)}.rs-btn{padding:8px 12px}.rp-linked{display:inline-flex;align-items:center;gap:5px;max-width:170px;padding:4px 8px;border:1px solid var(--tint-teal-bd);background:var(--tint-teal-bg);color:var(--teal-d);font:inherit;font-size:var(--fs-2xs);font-weight:700;border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-linked:hover{border-color:var(--tint-amber-bd);background:var(--warn-soft);color:var(--warn)}.rp-linked>svg{flex:none}@media (max-width:620px){.rp-place,.rs-pick{max-width:none;flex:1 1 100%}.rp-place{margin-left:0}.rp-place+.rp-off{margin-left:auto}}@media (max-width:720px){.de-dept{margin:12px 0 6px}.rperson{gap:5px 7px;padding:5px 7px;margin-bottom:5px}.rperson>input{padding:6px 9px!important;font-size:var(--fs-sm)!important;border-radius:var(--r-sm)!important;flex-basis:74px!important}.rp-name{flex-basis:96px!important}.pin-cell{gap:4px}.pin-inp{padding:6px 8px;letter-spacing:1px}.rp-del{width:27px;height:27px;font-size:var(--fs-xl);border-radius:var(--r-xs)}.rp-off{padding:5px 8px;font-size:var(--fs-2xs)}}.pay-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 10px;max-width:1100px}.pay-bar .sp{flex:1 1 auto}.pay-week{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pay-week b{font-weight:700;min-width:130px;text-align:center}.pay-table{max-width:1100px;margin:0}.pay-table td.num,.pay-table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.pay-table .muted{color:var(--muted)}.pay-name{background:transparent;border:0;cursor:pointer;font:inherit;display:inline-flex;align-items:center;gap:7px;color:inherit;padding:0}.pay-name .tw{color:var(--muted);font-size:var(--fs-xs);width:10px}.pay-badge,.pay-name b{font-weight:700}.pay-badge{display:inline-block;margin-left:8px;font-size:var(--fs-2xs);padding:2px 8px;border-radius:var(--r-pill);background:var(--hover);color:var(--muted);vertical-align:middle}.pay-badge.open{background:var(--warn-soft);color:var(--warn)}.pay-rate{display:inline-flex;align-items:center;gap:2px}.pay-rate .cur{color:var(--muted);font-weight:600}.pay-rate-inp{width:66px;border:1px solid var(--line);border-radius:var(--r-sm);padding:7px 8px;font:inherit;font-weight:600;color:var(--ink)}.pay-gross{font-weight:700}.pay-total td{border-top:2px solid var(--line);background:var(--card-2);font-size:var(--fs-lg)}.pay-detail td{background:var(--card-2);padding-top:8px!important;padding-bottom:10px!important}.pay-days{display:flex;flex-direction:column;gap:5px}.pay-day{display:flex;gap:14px;flex-wrap:wrap;font-size:var(--fs-sm);align-items:baseline}.pay-day .dd{font-weight:700;min-width:74px}.pay-day .tt{color:var(--muted);min-width:150px}.pay-day .hh{font-weight:600}.pay-day.open{color:var(--warn)}.dim{opacity:.55;transition:opacity .15s}.tablescroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0;max-width:1100px}.pay-table td.neg{color:var(--danger);font-weight:600}.pay-table td.pos{color:var(--teal-d);font-weight:600}.neg{color:var(--danger)}.neg,.pos{font-weight:600}.pos{color:var(--teal-d)}@media (max-width:720px){.pay-week b{min-width:0}.pay-table td,.pay-table th{padding:9px 8px;font-size:var(--fs-sm)}.pay-badge{display:block;margin:3px 0 0;width:max-content}}.set-group{max-width:none;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.set-title{font-family:var(--display);font-weight:700;font-size:var(--fs-lg);padding:14px 18px;background:var(--card-2)}.set-row,.set-title{border-bottom:1px solid var(--line)}.set-row{display:flex;align-items:center;gap:16px;padding:16px 18px}.set-row:last-child{border-bottom:0}.set-row.mobile-only{display:none}@media (max-width:720px){.set-row.mobile-only{display:flex}}.set-info{flex:1;min-width:0}.set-name{font-weight:700;font-size:var(--fs-lg);color:var(--ink)}.set-info .hint{margin-top:3px}.dept-row{gap:8px;background:var(--card-2)}.dept-sub{gap:8px;padding-left:38px}.dept-sub select{font-size:var(--fs-md);padding:8px 9px;border-radius:var(--r-sm);max-width:190px}.dept-row .hint,.dept-sub .hint{flex:none;white-space:nowrap}.dept-row .mini,.dept-sub .mini{font:inherit;font-size:var(--fs-sm);font-weight:700;cursor:pointer;padding:8px 12px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);color:var(--ink)}.dept-row .mini:hover:not(:disabled),.dept-sub .mini:hover:not(:disabled){background:var(--hover)}.dept-row .mini:disabled,.dept-sub .mini:disabled{opacity:.4;cursor:default}@media (max-width:620px){.dept-sub{padding-left:20px}.dept-row,.dept-sub{flex-wrap:wrap}}.set-cap{display:inline-flex;align-items:center;gap:8px;font-weight:600;white-space:nowrap}.set-cap select{font:inherit;font-weight:600;border:1px solid var(--line);border-radius:var(--r-sm);padding:7px 8px;background:var(--card);color:var(--ink)}.bot-msg{margin:10px 18px 0;padding:9px 14px;background:var(--warn-soft);border:1px solid var(--tint-amber-bd);border-radius:var(--r-sm);font-weight:600;font-size:var(--fs-sm);overflow-wrap:anywhere}.toggle{flex:none;display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--hover);border-radius:var(--r-pill);padding:5px 12px 5px 6px;cursor:pointer;font:inherit;font-weight:700;font-size:var(--fs-sm);color:var(--muted)}.toggle .knob{width:20px;height:20px;border-radius:50%;background:var(--card);box-shadow:0 1px 3px rgba(20,32,48,.25);transition:transform .16s}.toggle.on{background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.toggle.on .knob{transform:translateX(18px)}.toggle:disabled{opacity:.6}@media (max-width:600px){.set-row{flex-wrap:wrap}}.today-split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.today-h{font-weight:700;margin-bottom:6px}.today-h,.today-row{font-size:var(--fs-sm)}.today-row{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:6px 0;border-top:1px solid var(--line-2);text-decoration:none;color:inherit;font-weight:600;transition:color var(--t-fast)}.today-row:hover .nm{color:var(--teal-d)}.today-row .nm{min-width:0;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-row .muted,.today-row b{flex:none;white-space:nowrap;font-variant-numeric:tabular-nums}@media (max-width:560px){.today-split{grid-template-columns:1fr;gap:10px}}.pv-head{max-width:none;margin:0 auto 12px;gap:10px 18px}.pv-head,.pv-tags{display:flex;flex-wrap:wrap;align-items:center}.pv-tags{gap:8px}.pv-role{font-weight:600;color:var(--muted)}.pv-meta{display:flex;gap:16px;flex-wrap:wrap;font-weight:600;font-size:var(--fs-md);margin-left:auto}.pv-breaks{display:inline-flex;flex-wrap:wrap;gap:5px}.pv-break{font-size:var(--fs-xs);font-weight:600;background:var(--hover);border-radius:var(--r-pill);padding:2px 9px;white-space:nowrap}.pv-empty td{opacity:.7}.warn-tx{color:var(--warn);font-weight:700}.pv-link{color:inherit;text-decoration:none}.pv-link:hover{color:var(--teal-d);text-decoration:underline}.pv-link.sm{margin-left:8px;font-size:var(--fs-sm);color:var(--muted);font-weight:700}.pv-link.sm:hover{color:var(--teal-d)}@media (max-width:600px){.pv-meta{margin-left:0;gap:12px;font-size:var(--fs-sm)}}.rep-card{max-width:1100px;margin:0 0 18px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px;box-shadow:0 1px 2px rgba(20,32,48,.04)}.rep-card>h2{font-family:var(--display);font-weight:700;font-size:var(--fs-xl);color:var(--ink);margin:0 0 10px}.rep-card .utable{border-radius:var(--r-sm)}.rep-print-head{max-width:1100px;margin:0 0 12px;font-size:var(--fs-lg)}.only-print{display:none}.rep-highlights{max-width:1100px;margin:0 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.rep-hi{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px}.rep-hi-h{font-weight:700;font-size:var(--fs-sm);margin-bottom:8px}.rep-hi-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-weight:600;font-size:var(--fs-md);border-top:1px solid var(--line)}.rep-hi-row:first-of-type{border-top:0}.rep-hi-row b{color:var(--danger);white-space:nowrap}.rep-chips{display:flex;flex-wrap:wrap;gap:8px}.rep-over-chip{background:var(--tint-danger-bg);color:var(--tint-danger-fg);border:1px solid var(--tint-danger-bd);border-radius:var(--r-pill);padding:5px 12px;font-size:var(--fs-sm);font-weight:600;white-space:nowrap}@media (max-width:600px){.rep-highlights{grid-template-columns:1fr}}@media (max-width:720px){.rep-card{padding:12px;border-radius:var(--r-md)}}@media print{.rep-card{break-inside:avoid;box-shadow:none;border:1px solid #ddd}.rep-branch{break-before:page}.rep-branch:first-of-type{break-before:auto}.only-print{display:block}}.mk{--mk-max:1080px;color:var(--ink);background:var(--paper);margin:-18px -18px -70px}@media (max-width:640px){.mk{margin:-10px -10px -78px}}.mk-wrap{max-width:var(--mk-max);margin:0 auto;padding:0 24px}.mk-nav{position:sticky;top:0;z-index:20;background:var(--paper);background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:saturate(150%) blur(10px);backdrop-filter:saturate(150%) blur(10px);border-bottom:1px solid var(--line)}.mk-navrow{gap:18px;height:64px}.mk-brand,.mk-navrow{display:flex;align-items:center}.mk-brand{gap:9px;font-family:var(--wordmark);font-weight:700;font-size:var(--fs-2xl)}.mk-brand img{border-radius:var(--r-xs)}.mk-accent{color:var(--teal)}.mk-navlinks{margin-left:auto;display:flex;align-items:center;gap:22px;font-weight:700;font-size:var(--fs-md)}.mk-navlinks a:not(.mk-btn){color:var(--muted);text-decoration:none}.mk-navlinks a:not(.mk-btn):hover{color:var(--ink)}.mk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--teal);color:var(--on-teal);border:1px solid transparent;border-radius:var(--r-md);padding:14px 24px;font-weight:800;font-size:var(--fs-lg);text-decoration:none;box-shadow:var(--shadow-sm);transition:background .15s ease,transform .15s ease}.mk-btn:hover{background:var(--teal-d);transform:translateY(-1px)}.mk-btn.sm{padding:9px 16px;font-size:var(--fs-md)}.mk-btn.ghost{background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none}.mk-btn.ghost:hover{background:var(--hover)}.mk-hero{padding:86px 0 76px;text-align:center;background:radial-gradient(120% 90% at 50% 0,var(--tint) 0,transparent 62%)}.mk-eyebrow{margin:0 0 18px;font-weight:800;font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}.mk-h1{margin:0;font-family:var(--wordmark);font-weight:800;letter-spacing:-.02em;line-height:1.1;font-size:clamp(34px,5.6vw,60px)}.mk-h1-soft,.mk-lead{color:var(--muted)}.mk-lead{max-width:62ch;margin:22px auto 0;font-size:clamp(16px,1.7vw,19px);line-height:1.62}.mk-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:34px}.mk-fine{margin:16px 0 0;font-size:var(--fs-sm);color:var(--muted)}.mk-preview{max-width:760px;margin:50px auto 0;overflow:hidden;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:0 20px}.mk-preview-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 2px;border-bottom:1px solid var(--line)}.mk-preview-bottom span,.mk-preview-status,.mk-preview-title{display:inline-flex;align-items:center;gap:7px}.mk-preview-title{font-family:var(--display);color:var(--ink);font-size:var(--fs-lg);font-weight:800}.mk-preview-status{color:var(--tint-ok-fg);font-size:var(--fs-sm);font-weight:800}.mk-preview-status span{width:8px;height:8px;border-radius:50%;background:var(--tint-ok-fg);box-shadow:0 0 0 4px var(--tint-ok-bg)}.mk-preview-days,.mk-preview-row{display:grid;grid-template-columns:1.45fr repeat(5,1fr);column-gap:8px}.mk-preview-days{padding:13px 2px 8px;color:var(--muted);font-size:var(--fs-2xs);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.mk-preview-days span:first-child{visibility:hidden}.mk-preview-row{align-items:center;min-height:46px;border-top:1px solid var(--line-2)}.mk-preview-person{padding-right:10px;color:var(--ink);font-size:var(--fs-sm);font-weight:800}.mk-preview-row .shift{display:flex;align-items:center;justify-content:center;min-width:0;height:27px;border-radius:var(--r-xs);font-style:normal;font-size:var(--fs-2xs);font-weight:800;white-space:nowrap}.mk-preview-row .shift.teal{background:var(--tint-teal-bg);color:var(--teal-d)}.mk-preview-row .shift.indigo{background:var(--tint-indigo-bg);color:var(--tint-indigo-fg)}.mk-preview-row .shift.saffron{background:var(--tint-saffron-bg);color:var(--tint-saffron-fg)}.mk-preview-bottom{display:flex;gap:18px;flex-wrap:wrap;padding:14px 2px 16px;color:var(--muted);font-size:var(--fs-xs);font-weight:800}.mk-h2{font-family:var(--wordmark);font-weight:700;letter-spacing:-.01em;font-size:clamp(23px,2.8vw,30px);margin:0 0 30px;text-align:center}.mk-feat{padding:76px 24px}.mk-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.mk-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px;box-shadow:var(--shadow-sm)}.mk-ico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r-md);background:var(--card-2);border:1px solid var(--line);margin-bottom:16px}.mk-card h3{margin:0 0 9px;font-size:var(--fs-xl);font-weight:800;letter-spacing:-.01em}.mk-card p{margin:0;color:var(--muted);font-size:var(--fs-md);line-height:1.62}.mk-band{background:var(--card-2);border-block:1px solid var(--line);padding:66px 0}.mk-steps ol{max-width:64ch;margin:0 auto;padding-left:22px;display:grid;gap:15px}.mk-steps li{font-size:var(--fs-xl);line-height:1.62;color:var(--muted)}.mk-steps li b{color:var(--ink)}.mk-price{padding:76px 24px}.mk-plan{max-width:460px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px;box-shadow:var(--shadow-md);text-align:center}.mk-plan-head{display:grid;gap:6px;margin-bottom:22px}.mk-plan-name{font-weight:800;font-size:var(--fs-md);letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.mk-plan-price{font-family:var(--wordmark);font-weight:800;font-size:30px;letter-spacing:-.02em;line-height:1.2}.mk-plan-price span{font-family:var(--font);font-size:var(--fs-xl);font-weight:700;color:var(--muted)}.mk-plan ul{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:11px;text-align:left}.mk-plan li{position:relative;padding-left:26px;color:var(--muted);font-size:var(--fs-lg);line-height:1.5}.mk-plan li:before{content:"✓";position:absolute;left:0;top:-1px;color:var(--teal);font-weight:800}.mk-foot{border-top:1px solid var(--line);padding:30px 0;margin-top:10px}.mk-footrow{display:flex;gap:18px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:var(--fs-md)}.mk-footlinks{margin-left:auto;display:flex;gap:20px}.mk-footrow a{color:var(--muted);text-decoration:none;font-weight:700}.mk-footrow a:hover{color:var(--ink)}@media (max-width:640px){.mk-navrow{gap:10px}.mk-brand{gap:7px;font-size:18px}.mk-brand img{width:27px;height:27px}.mk-navlinks{gap:10px;font-size:var(--fs-sm)}.mk-navlinks a{white-space:nowrap}.mk-btn.sm{padding:9px 13px}.mk-navlinks a[href^="#"]{display:none}.mk-hero{padding:60px 0 54px}.mk-feat,.mk-price{padding:56px 20px}.mk-preview{margin-top:38px;padding:0 12px;border-radius:var(--r-md)}.mk-preview-days,.mk-preview-row{grid-template-columns:1.2fr repeat(5,1fr);column-gap:4px}.mk-preview-person{font-size:var(--fs-xs)}.mk-preview-row .shift{height:25px;font-size:10px}.mk-preview-bottom{gap:10px;font-size:var(--fs-2xs)}}.auth-wrap{min-height:100vh;padding:32px 0;background:radial-gradient(120% 70% at 50% 0,var(--tint) 0,transparent 60%)}.auth-card{border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.auth-card h1{font-family:var(--wordmark);font-weight:700;letter-spacing:-.01em;font-size:var(--fs-3xl)}.auth-card .sub{margin-bottom:22px;line-height:1.5}.auth-card label{color:var(--muted);letter-spacing:.01em}.auth-card .inp{margin-bottom:16px;padding:12px}.auth-card .btn.primary{padding:13px 16px;font-size:var(--fs-lg);border-radius:var(--r-md)}.auth-home{display:inline-flex;align-items:center;gap:7px;margin-bottom:18px;font-weight:700;font-size:var(--fs-sm);color:var(--muted);text-decoration:none}.auth-home:hover{color:var(--ink)}.kiosk-brand{letter-spacing:-.01em}.kiosk-brand,.kiosk-clock{font-family:var(--wordmark)}.kiosk-clock{letter-spacing:-.02em}.kiosk-title{font-family:var(--wordmark);letter-spacing:-.01em}.kiosk-brand{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kiosk-clock .kc-greet{font-size:min(15px,1.9vh)}.pagehead h1{font-family:var(--wordmark);font-weight:700;letter-spacing:-.015em}.page>.hint{max-width:78ch;line-height:1.55;margin-inline:0}.set-title{letter-spacing:-.005em}.set-group+.set-group{margin-top:18px}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body{font-size:11.5pt}.pagehead{border-bottom:1.5px solid var(--ink);padding-bottom:8px;margin-bottom:14px}.pagehead h1{font-size:17pt;letter-spacing:-.01em}.pagehead .btn,.pagehead .saved{display:none!important}.mk-card,.resolve,.rperson,.rs-row,.set-row,tr{break-inside:avoid}.rp-linked,.rs-btn,.rs-pick{display:none!important}thead{display:table-header-group}tfoot{display:table-footer-group}.de-dept,.de-topdept,.deptrow,.set-title,h1,h2,h3{break-after:avoid}.page.report,.page.reports{page-break-inside:auto}a[href]{text-decoration:none;color:inherit}.depttabs,.dev-chips,.modeswitch,.pv-link.sm,.rowactions{display:none!important}}.ts-person{border:1px solid var(--line);border-radius:var(--r-md);padding:14px;margin-bottom:14px;background:var(--card-2)}.ts-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}.ts-name{font-size:var(--fs-xl);letter-spacing:-.01em}.ts-info{font-weight:700}.ts-info,.ts-total{color:var(--muted);font-size:var(--fs-sm)}.ts-total{margin-left:auto;white-space:nowrap}.ts-total b{color:var(--ink);font-size:var(--fs-lg)}.ts-table tfoot td{border-top:2px solid var(--line);background:var(--card-2)}.ts-table tr.ts-empty td{color:var(--muted);opacity:.65}@media print{.ts-person{break-inside:avoid;page-break-inside:avoid;background:transparent}.ts-card h2{break-after:avoid}}.kiosk{height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.kiosk input{-webkit-user-select:text;user-select:text}.btn.sm{padding:6px 12px;font-size:var(--fs-sm);border-radius:var(--r-sm)}.pv-edited{margin-left:8px;font-size:var(--fs-2xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--tint-saffron-fg);background:var(--tint-saffron-bg);border:1px solid var(--tint-saffron-bd);border-radius:var(--r-xs);padding:1px 6px;white-space:nowrap}.m-foot{display:flex;align-items:center;gap:8px;margin-top:18px}.pv-fixes{display:inline-flex;gap:6px;flex-wrap:wrap}.pv-prev{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.pv-prev input{width:auto}.pv-removed{max-width:1100px;margin:18px 0 0;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--tint-danger-bd);border-radius:var(--r-lg);padding:14px 16px}.pv-removed>h2{font-family:var(--display);font-weight:700;font-size:var(--fs-xl);color:var(--ink);margin:0 0 4px}.pv-rm-list{list-style:none;margin:12px 0 0;padding:0;flex-direction:column}.pv-rm,.pv-rm-list{display:flex;gap:10px}.pv-rm{align-items:center;flex-wrap:wrap;padding-top:10px;border-top:1px solid var(--line-2)}.pv-rm:first-child{padding-top:0;border-top:0}.pv-rm-day{min-width:150px;font-size:var(--fs-md)}.pv-rm-times{color:var(--muted);font-weight:700;font-variant-numeric:tabular-nums}.pv-rm-tag{font-size:var(--fs-2xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--tint-danger-fg);background:var(--tint-danger-bg);border:1px solid var(--tint-danger-bd);border-radius:var(--r-xs);padding:1px 6px;white-space:nowrap}.pv-rm-why{flex:1 1 240px;font-size:var(--fs-sm);color:var(--ink)}.pv-rm .btn{margin-left:auto}.att-pick{width:38px;text-align:center}.att-pick input{width:18px;height:18px;accent-color:var(--teal)}.att-bar,.utable tr.att-on{background:var(--tint-teal-bg)}.att-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding:11px 14px;border:1px solid var(--tint-teal-bd);border-radius:var(--r-md);font-weight:700;font-size:var(--fs-md)}.att-bar span{margin-right:auto}.print-only{display:none}@media print{.screen-only{display:none!important}.report-page>.pagehead{display:none}.print-only{display:block}.p1{font-size:8pt;line-height:1.28}.p1-head{font-size:10pt;margin:0 0 8px;padding-bottom:5px;border-bottom:1.5px solid var(--ink)}.p1-sub{font-weight:800;font-size:8.5pt;margin:10px 0 3px}.p1-tbl{width:100%;border-collapse:collapse;table-layout:auto}.p1-tbl th{text-align:left;font-size:7pt;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink);padding:3px 5px;white-space:nowrap}.p1-tbl td{padding:2.5px 5px;border-bottom:1px solid var(--line)}.p1-tbl .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.p1-tot td{border-top:1.2px solid var(--ink);border-bottom:0;padding-top:4px}.p1-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:4px}.p1 .neg{color:var(--danger)}.p1 .pos{color:var(--tint-ok-fg)}.ts-card>.hint,.ts-card>h2{display:none}.ts-person{break-before:page;page-break-before:always;break-inside:avoid;page-break-inside:avoid;border:0;background:transparent;padding:0;margin:0}.ts-head{border-bottom:1.5px solid var(--ink);padding-bottom:5px;margin-bottom:10px}.ts-name{font-size:13pt}.ts-person .utable{font-size:9.5pt}.ts-person .utable td,.ts-person .utable th{padding:5px 7px}.ts-table tfoot td{border-top:1.5px solid var(--ink)}}.sk-line{height:14px;border-radius:var(--r-xs);margin:14px 0;width:100%;background:linear-gradient(90deg,var(--line) 25%,var(--card) 50%,var(--line) 75%);background-size:200% 100%;animation:sk 1.2s ease-in-out infinite}.sk-title{height:26px;width:220px;margin:6px 0 22px}@keyframes sk{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.sk-line{animation:none}}.err-box{max-width:460px;margin:56px auto;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px 24px}.err-emoji{font-size:40px;line-height:1;margin-bottom:12px}.err-title{font-family:var(--display);font-weight:800;font-size:var(--fs-2xl);margin-bottom:6px}.err-acts{display:flex;gap:10px;justify-content:center;margin-top:18px}.savefail{font-size:var(--fs-sm);min-width:0}.savefail,.savefail .linkbtn{color:var(--danger);font-weight:700}.savefail .linkbtn{text-decoration:underline}.acct-grid{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;padding:14px 18px 4px;align-items:center}.acct-k{color:var(--muted);font-weight:600;font-size:var(--fs-sm)}.acct-v{font-weight:700;font-size:var(--fs-md);overflow-wrap:anywhere}@media (max-width:480px){.acct-grid{grid-template-columns:1fr;gap:2px 0}.acct-v{margin-bottom:8px}}a.rolebadge{text-decoration:none;transition:filter var(--t-fast)}a.rolebadge:hover{filter:brightness(1.08)}a.rolebadge.on{box-shadow:0 0 0 2px var(--teal)}.auth-or{display:flex;align-items:center;gap:12px;margin:18px 0 14px;color:var(--muted);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.auth-or:after,.auth-or:before{content:"";flex:1;height:1px;background:var(--line)}.btn.wide{width:100%;justify-content:center;gap:9px}.pk-list{padding:12px 18px 0;display:flex;flex-direction:column;gap:8px}.pk-row{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card-2)}.pk-ic{display:inline-flex;color:var(--muted)}.pk-name{font-weight:700;font-size:var(--fs-md)}.pk-when{margin-left:auto;color:var(--muted);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}@media (max-width:520px){.pk-when{display:none}}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--teal);outline-offset:2px}.alert-row,.btab,.btn,.chip,.dev-chip,.kiosk-key,.menu-btn,.pk-row,.rperson,.seg-btn,.stat,.tab,.today-row{-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled),.chip:active,.dev-chip:active:not(:disabled),.rp-del:active,.rp-off:active,.seg-btn:active{transform:scale(.975)}.btn,.chip,.dev-chip,.rp-del,.rp-off{transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast),transform var(--t-fast)}.inp,.phone-inp,.pin-inp,input.inp,select,textarea{transition:border-color var(--t-fast),box-shadow var(--t-fast)}.inp:focus,input.inp:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--tint-teal-bg)}.u-name{font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:var(--fs-sm);font-weight:700}.pw-reveal{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}.utable td:last-child,.utable th:last-child{white-space:nowrap;width:1%}.utable .rowactions{flex-wrap:nowrap}.pw-reveal code{font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:var(--fs-sm);font-weight:700;background:var(--hover);border:1px solid var(--line);border-radius:var(--r-xs);padding:4px 8px;user-select:all}.xk-wrap{flex:1;gap:min(18px,2.2vh);padding:0 min(24px,3vw) min(18px,2.2vh)}.xk-pane,.xk-wrap{min-height:0;display:flex}.xk-pane{overflow:hidden;flex-direction:column;gap:min(15px,1.9vh);background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:min(18px,2.2vh) min(18px,2vw);box-shadow:var(--shadow-sm)}.xk-pane>*{flex:none}.xk-pane>.xk-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:min(15px,1.9vh)}.xk-ask{flex:1 1 58%}.xk-recent{flex:1 1 42%}@media (max-width:900px){.xk-wrap{flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.xk-pane{flex:none}.xk-pane,.xk-pane>.xk-scroll{overflow:visible}}.xk-panehead{display:flex;align-items:baseline;gap:10px}.xk-panetitle{font-family:var(--display);font-weight:700;font-size:min(23px,2.8vh);color:var(--ink)}.xk-headcount{margin-left:auto;font-weight:700;font-size:var(--fs-md);color:var(--muted);background:var(--hover);border-radius:var(--r-pill);padding:3px 11px;white-space:nowrap}.xk-field{display:flex;flex-direction:column;gap:min(9px,1.2vh)}.xk-label{font-family:var(--display);font-weight:700;font-size:min(15px,1.9vh);color:var(--muted);text-transform:uppercase;letter-spacing:.7px}.xk-inp{width:100%;min-width:0;font:inherit;font-weight:700;font-size:min(21px,2.6vh);color:var(--ink);background:var(--card);border:2px solid var(--line);border-radius:var(--r-md);padding:min(15px,1.9vh) 15px}.xk-inp::placeholder{color:var(--muted);font-weight:600}.xk-inp:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--tint-teal-bg)}.xk-two{display:grid;grid-template-columns:1fr 1fr;gap:min(14px,1.7vh)}.xk-big{display:flex;align-items:center;justify-content:center;gap:10px;border:2px solid var(--line);background:var(--card);border-radius:var(--r-lg);padding:min(20px,2.5vh) 12px;font-family:var(--display);font-weight:700;font-size:min(21px,2.6vh);color:var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .07s ease,background var(--t-fast),border-color var(--t-fast)}.xk-big:active{transform:scale(.97)}.xk-big.on{background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.xk-bigemoji{font-size:min(28px,3.2vh);line-height:1}.xk-results{display:flex;flex-wrap:wrap;gap:min(10px,1.3vh)}.xk-pick{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;font:inherit;border:2px solid var(--line);background:var(--card-2);border-radius:var(--r-md);padding:min(13px,1.6vh) 15px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .07s ease,background var(--t-fast),border-color var(--t-fast)}.xk-pick:active{transform:scale(.97)}.xk-pickname{font-family:var(--display);font-weight:700;font-size:min(19px,2.3vh);color:var(--ink)}.xk-pickunit{font-weight:700;font-size:var(--fs-sm);color:var(--muted)}.xk-pick.section{background:var(--tint-teal-bg);border-color:var(--tint-teal-bd)}.xk-pick.other{background:var(--tint-saffron-bg);border-color:var(--tint-saffron-bd)}.xk-pick.other .xk-pickname{color:var(--tint-saffron-fg)}.xk-crumb{align-self:flex-start;border:1px solid var(--line);background:var(--card);border-radius:var(--r-pill);padding:8px 15px;font:inherit;font-weight:700;font-size:var(--fs-md);color:var(--teal-d);cursor:pointer}.xk-chosen{display:flex;align-items:center;gap:12px;border:2px solid var(--teal);background:var(--tint-teal-bg);border-radius:var(--r-md);padding:min(12px,1.5vh) 14px}.xk-chosen .xk-inp{flex:1;width:auto;border-color:var(--tint-teal-bd)}.xk-chosenbody{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.xk-chosenname{font-family:var(--display);font-weight:700;font-size:min(21px,2.6vh);color:var(--ink);overflow:hidden;text-overflow:ellipsis}.xk-chosensub{font-weight:700;font-size:var(--fs-sm);color:var(--teal-d)}.xk-x{flex:none;border:none;background:transparent;color:var(--muted);font-size:min(28px,3.2vh);line-height:1;padding:0 6px;cursor:pointer}.xk-qty{display:flex;flex-direction:column;gap:min(10px,1.3vh);border:2px solid var(--line);border-radius:var(--r-lg);background:var(--card-2);padding:min(12px,1.5vh)}.xk-qtyrow{display:flex;align-items:center;gap:min(12px,1.5vh)}.xk-step{flex:none;width:min(62px,7.2vh);height:min(62px,7.2vh);border:1px solid var(--line);background:var(--card);border-radius:var(--r-md);color:var(--teal-d);font-weight:700;font-size:min(28px,3.2vh);line-height:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .07s ease}.xk-step:active{transform:scale(.92)}.xk-qtyval{flex:none;width:min(116px,26vw);text-align:center;font:inherit;font-family:var(--display);font-weight:700;font-size:min(32px,3.8vh);color:var(--ink);background:var(--card);border:2px solid var(--line);border-radius:var(--r-md);padding:min(9px,1.2vh) 6px;font-variant-numeric:tabular-nums}.xk-qtyval:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--tint-teal-bg)}.xk-qtyunit{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.xk-unitname{font-family:var(--display);font-weight:700;font-size:min(21px,2.6vh);color:var(--teal-d)}.xk-unitname.none,.xk-unitpack{color:var(--muted)}.xk-unitpack{font-weight:700;font-size:var(--fs-sm)}.xk-units{display:grid;grid-template-columns:repeat(4,1fr);gap:min(8px,1.1vh)}.xk-unit{border:1px solid var(--line);background:var(--card);border-radius:var(--r-md);padding:min(13px,1.6vh) 4px;font-family:var(--display);font-weight:700;font-size:min(17px,2.1vh);color:var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background var(--t-fast),border-color var(--t-fast)}.xk-unit.on{border-color:var(--teal)}.xk-send,.xk-unit.on{background:var(--teal);color:var(--on-teal)}.xk-send{border:none;border-radius:var(--r-lg);padding:min(20px,2.5vh);font-family:var(--display);font-weight:700;font-size:min(23px,2.8vh);cursor:pointer;box-shadow:var(--shadow-md);touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .07s ease}.xk-send:active{transform:scale(.98)}.xk-send:disabled{opacity:.55}.xk-flash{display:flex;align-items:center;gap:10px;border:1px solid transparent;border-radius:var(--r-md);padding:min(13px,1.6vh) 14px;font-weight:700;font-size:min(18px,2.2vh)}.xk-flashtext{flex:1;min-width:0}.xk-flash.ok{background:var(--tint-ok-bg);border-color:var(--tint-ok-bd);color:var(--tint-ok-fg)}.xk-flash.bad{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd)}.xk-flash.bad,.xk-retry{color:var(--tint-danger-fg)}.xk-retry{flex:none;border:1px solid var(--tint-danger-bd);background:var(--card);border-radius:var(--r-sm);padding:9px 14px;font:inherit;font-weight:700;cursor:pointer}.xk-list{display:flex;flex-direction:column;gap:min(10px,1.3vh)}.xk-row{display:flex;align-items:flex-start;gap:12px;background:var(--card-2);border:1px solid var(--line-2);border-radius:var(--r-md);padding:min(12px,1.5vh) 13px}.xk-row.pending{opacity:.6}.xk-rowemoji{flex:none;font-size:min(24px,2.8vh);line-height:1.15}.xk-rowbody{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.xk-rowname{font-family:var(--display);font-weight:700;font-size:min(18px,2.2vh);color:var(--ink);line-height:1.25}.xk-rowmeta{font-weight:700}.xk-rowmeta,.xk-rownote{font-size:var(--fs-sm);color:var(--muted)}.xk-rownote{font-weight:600;font-style:italic}.xk-rowtime{flex:none;font-weight:700;font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.xk-empty{font-size:min(18px,2.2vh);text-align:center;padding:min(24px,4vh) 4px}.xk-empty,.xr-sub{color:var(--muted);font-weight:700}.xr-sub{font-size:var(--fs-md)}.xr-build{position:sticky;top:0;z-index:20;max-width:1100px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.xr-build .sp{flex:1 1 auto}.xr-sum{font-weight:700;font-size:var(--fs-md);color:var(--muted)}.xr-bad{border-color:var(--danger)}.xr-link{max-width:1100px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);border-radius:var(--r-md)}.xr-link code{flex:1 1 240px;min-width:0;overflow-wrap:anywhere}.xr-link code,.xr-once{font-weight:700;font-size:var(--fs-sm);color:var(--teal-d)}.xr-once{flex:1 1 100%}.xr-line{max-width:1100px;margin:0 0 10px;padding:11px 13px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.xr-line.off{opacity:.55}.xr-line.stray{background:var(--warn-soft);border-color:var(--tint-amber-bd)}.xr-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.xr-name{flex:1 1 190px;min-width:0;font-weight:700;font-size:var(--fs-lg);color:var(--ink);overflow-wrap:anywhere}.xr-name small{display:block;font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.xr-qty{flex:none;width:88px;text-align:center;font-variant-numeric:tabular-nums}.xr-unit{flex:none;max-width:140px;font-weight:600;font-size:var(--fs-md);padding:9px 10px;border-radius:var(--r-sm)}.xr-matchsel{max-width:220px}.xr-asks{display:flex;flex-direction:column;gap:5px;margin-top:9px;padding-top:8px;border-top:1px dashed var(--line)}.xr-ask{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-weight:600;font-size:var(--fs-sm);color:var(--muted)}.xr-ask.off{opacity:.5}.xr-ask .sp{flex:1 1 auto}.xr-ask b{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}.xr-ask .rp-del{margin-left:0;width:26px;height:26px}.xr-was{font-style:italic}.xr-dept{flex:none;font-weight:700;font-size:var(--fs-2xs);padding:2px 9px;border-radius:var(--r-pill);border:1px solid var(--line);white-space:nowrap}.xr-dept.kitchen{background:var(--tint-saffron-bg);border-color:var(--tint-saffron-bd);color:var(--tint-saffron-fg)}.xr-dept.floor{background:var(--tint-indigo-bg);border-color:var(--tint-indigo-bd);color:var(--tint-indigo-fg)}.xr-mixed{display:inline-flex;gap:5px;font-weight:700;font-size:var(--fs-xs);color:var(--tint-amber-fg);border:1px solid var(--tint-amber-bd);border-radius:var(--r-pill);padding:1px 9px}.xr-mixed,.xr-trip{align-items:center;background:var(--card)}.xr-trip{max-width:1100px;display:flex;gap:12px;flex-wrap:wrap;margin:0 0 8px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-sm)}.xr-trip-date{flex:none;min-width:62px;font-weight:700;color:var(--muted)}.xr-trip-main{flex:1 1 150px;min-width:0}.xr-trip-main,.xr-trip-money{display:flex;flex-direction:column;gap:2px}.xr-trip-money{text-align:right;font-variant-numeric:tabular-nums}.xr-trip-main small,.xr-trip-money small{font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.xr-st.shopping{background:var(--tint-teal-bg);border-color:var(--tint-teal-bd);color:var(--teal-d)}.xr-st.reconciling{background:var(--tint-saffron-bg);border-color:var(--tint-saffron-bd);color:var(--tint-saffron-fg)}.xr-st.closed{background:var(--hover);border-color:var(--line);color:var(--muted)}@media (max-width:560px){.xr-build{position:static}}body:has(.shopper){padding:0}.shopper{max-width:640px;margin:0 auto;padding-bottom:calc(48px + env(safe-area-inset-bottom));font-size:var(--fs-md)}.shop-head{position:sticky;top:0;z-index:6;background:var(--card);border-bottom:1px solid var(--line);padding:calc(10px + env(safe-area-inset-top)) 14px 10px;box-shadow:var(--shadow-sm)}.shop-title{display:flex;align-items:center;gap:10px}.shop-titles{flex:1;min-width:0}.shop-h1{margin:0;font-family:var(--display);font-weight:800;font-size:var(--fs-xl);letter-spacing:-.3px}.shop-where{font-size:var(--fs-xs);font-weight:700;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shop-money{display:flex;align-items:baseline;gap:8px;margin-top:6px;flex-wrap:wrap}.shop-lab{font-size:var(--fs-2xs);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}.shop-spent{font-family:var(--display);font-weight:800;font-size:var(--fs-3xl);letter-spacing:-1px;line-height:1}.shop-of{font-size:var(--fs-md);font-weight:700;color:var(--muted)}.shop-count{margin-left:auto;font-size:var(--fs-sm);font-weight:800;color:var(--muted);white-space:nowrap}.shop-bar{height:6px;margin-top:8px;background:var(--line-2);overflow:hidden}.shop-bar,.shop-bar>span{border-radius:var(--r-pill)}.shop-bar>span{display:block;height:100%;background:var(--teal);transition:width var(--t-med)}.shop-bar.over>span{background:var(--danger)}.shop-left{margin-top:5px;font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.shop-left.over{color:var(--tint-danger-fg)}.shop-fail{display:flex;align-items:center;gap:8px;margin-top:8px;padding:9px 10px;font-size:var(--fs-sm);font-weight:800;background:var(--tint-danger-bg)}.shop-fail,.shop-retry{border-radius:var(--r-sm);border:1px solid var(--tint-danger-bd);color:var(--tint-danger-fg)}.shop-retry{margin-left:auto;font:inherit;font-weight:800;font-size:var(--fs-sm);padding:8px 14px;min-height:38px;background:var(--card);cursor:pointer}.shop-saving{margin-top:6px;font-size:var(--fs-xs);font-weight:700;color:var(--muted)}.shop-sec{padding:16px 14px 0}.shop-sec-h{display:flex;align-items:center;gap:10px;margin:0 0 9px;font-family:var(--display);font-weight:800;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.7px;color:var(--teal-d)}.shop-sec-h:after{content:"";flex:1;height:1px;background:var(--line)}.shop-line{display:block;width:100%;margin:0 0 10px;padding:12px;text-align:left;font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}.shop-line.done{cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),transform var(--t-fast)}.shop-line.done:active{transform:scale(.99)}.shop-line.s-BOUGHT{background:var(--tint-ok-bg);border-color:var(--tint-ok-bd)}.shop-line.s-SUBSTITUTED{background:var(--tint-saffron-bg);border-color:var(--tint-saffron-bd)}.shop-line.s-UNAVAILABLE{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd)}.shop-row{display:flex;align-items:flex-start;gap:10px}.shop-item{font-size:var(--fs-xl);line-height:1.25}.shop-done-name,.shop-item{flex:1;min-width:0;font-weight:800}.shop-done-name{font-size:var(--fs-lg);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shop-tick{flex:none;display:inline-flex;padding-top:1px}.shop-line.s-BOUGHT .shop-tick{color:var(--tint-ok-fg)}.shop-line.s-UNAVAILABLE .shop-tick{color:var(--tint-danger-fg)}.shop-line.s-SUBSTITUTED .shop-tick{color:var(--tint-saffron-fg)}.shop-qty{padding:5px 11px;border-radius:var(--r-pill);font-weight:800;font-size:var(--fs-md);white-space:nowrap}.shop-collapse,.shop-qty{flex:none;border:1px solid var(--line);background:var(--card)}.shop-collapse{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-sm);color:var(--muted);cursor:pointer}.shop-meta{display:flex;flex-wrap:wrap;gap:3px 10px;margin-top:5px;font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.shop-total,.shop-word{font-weight:800;color:var(--ink)}.shop-edit{align-items:center;margin-top:10px}.shop-acts,.shop-edit{display:flex;flex-wrap:wrap;gap:8px}.shop-acts{margin-top:8px}.shop-btn{flex:1 1 132px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;font:inherit;font-weight:800;font-size:var(--fs-md);color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast),transform var(--t-fast)}.shop-btn:active:not(:disabled){transform:scale(.97)}.shop-btn:disabled{opacity:.5}.shop-btn.buy{flex:2 1 180px;min-height:58px;font-size:var(--fs-lg);background:var(--teal);border-color:var(--teal);color:var(--on-teal)}.shop-acts .shop-btn{flex:1 1 40%;font-size:var(--fs-sm);line-height:1.2;padding:8px 10px}.shop-btn.got.on{background:var(--tint-ok-bg);border-color:var(--tint-ok-bd);color:var(--tint-ok-fg)}.shop-btn.miss.on{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);color:var(--tint-danger-fg)}.shop-btn.swap.on{background:var(--tint-saffron-bg);border-color:var(--tint-saffron-bd);color:var(--tint-saffron-fg)}.shop-price{flex:1 1 140px;display:inline-flex;align-items:center;gap:6px;height:56px;padding:0 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}.shop-price input{width:100%;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-weight:800;font-size:var(--fs-2xl);color:var(--ink)}.shop-cur{font-weight:800;font-size:var(--fs-xl);color:var(--muted)}.shop-qtyin{flex:0 1 116px;display:inline-flex;align-items:center;gap:6px;height:56px;padding:0 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}.shop-qtyin input{width:100%;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-weight:800;font-size:var(--fs-lg);color:var(--ink)}.shop-price.bad,.shop-qtyin.bad{border-color:var(--danger)}.shop-price:focus-within,.shop-qtyin:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px var(--tint-teal-bg)}.shop-per{font-size:var(--fs-xs);font-weight:700;color:var(--muted)}.shop-paid{flex:1 1 140px;font-weight:800;font-size:var(--fs-lg)}.shop-bad{flex:1 1 100%;font-size:var(--fs-xs);font-weight:700;color:var(--tint-danger-fg)}.shop-note{width:100%;margin-top:8px;min-height:50px;padding:12px;font:inherit;font-weight:700;font-size:var(--fs-md);color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}.shop-done-all{margin:16px 14px 0;padding:14px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--r-md);font-weight:800;font-size:var(--fs-md);background:var(--tint-ok-bg);border:1px solid var(--tint-ok-bd);color:var(--tint-ok-fg)}.shop-empty{max-width:420px;margin:0 auto;padding:72px 24px;text-align:center;color:var(--muted)}.shop-empty h1{margin:14px 0 6px;font-family:var(--display);font-weight:800;font-size:var(--fs-2xl);color:var(--ink)}.shop-empty p{margin:0 0 16px;font-size:var(--fs-md);font-weight:700}.shop-skels{padding:18px 14px;display:flex;flex-direction:column;gap:10px}.shop-skel{display:block;height:96px;border-radius:var(--r-md);background:var(--card-2);border:1px solid var(--line-2);animation:shop-pulse 1.4s ease-in-out infinite}@keyframes shop-pulse{0%,to{opacity:.5}50%{opacity:.95}}.xr-cat-bar{max-width:1100px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px}.xr-cat-bar .sp{flex:1 1 auto}.xr-cat-find{flex:1 1 200px;max-width:320px;display:flex;align-items:center;gap:8px;padding:0 11px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--muted)}.xr-cat-find .inp{border:0;background:transparent;padding-left:0;min-width:0}.xr-cat-count{flex:none;font-weight:700;font-size:var(--fs-sm);color:var(--muted);background:var(--hover);border-radius:var(--r-pill);padding:3px 11px;white-space:nowrap}.xr-cat-sec{max-width:1100px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 8px;padding:9px 13px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}.xr-cat-sec.off{opacity:.55}.xr-cat-sec .inp{flex:1 1 150px;max-width:230px}.xr-cat-ord{flex:none;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);background:var(--hover);color:var(--muted);font-weight:700;font-size:var(--fs-2xs);font-variant-numeric:tabular-nums}.xr-cat-main{flex:1 1 180px;min-width:0;font-weight:700;font-size:var(--fs-lg);color:var(--ink);overflow-wrap:anywhere}.xr-cat-main small{display:block;font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.xr-cat-group{margin-top:16px}.xr-cat-item{max-width:1100px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 8px;padding:10px 13px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}.xr-cat-item.off{opacity:.6}.xr-cat-tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.xr-alias{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:var(--fs-xs);color:var(--teal-d);background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);border-radius:var(--r-pill);padding:2px 5px 2px 10px}.xr-alias.flat{padding:2px 10px}.xr-alias button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-md);line-height:1;padding:0 4px;cursor:pointer;border-radius:var(--r-pill)}.xr-alias button:hover{background:var(--tint-danger-bg);color:var(--tint-danger-fg)}.xr-cat-aliasinp{flex:0 1 180px;min-width:120px;width:auto;padding:6px 10px;font-size:var(--fs-md)}.xr-cat-form{max-width:1100px;margin:0 0 12px;padding:13px;background:var(--card-2);border:1px solid var(--line);border-radius:var(--r-md)}.xr-cat-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.xr-cat-field{flex:1 1 200px;min-width:0;display:flex;flex-direction:column;gap:5px}.xr-cat-field.sm{flex:0 1 130px}.xr-cat-field select{width:100%}.xr-cat-lab{font-weight:700;font-size:var(--fs-sm);color:var(--muted)}.xr-cat-actions{display:flex;align-items:center;gap:9px;margin-top:12px}.xr-cat-actions .sp{flex:1 1 auto}.xr-cat-warn{max-width:1100px;display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:10px 0 0;padding:10px 13px;background:var(--warn-soft);border:1px solid var(--tint-amber-bd);border-radius:var(--r-sm);font-weight:700;font-size:var(--fs-md);color:var(--tint-amber-fg)}.xr-cat-warntext{flex:1 1 220px;min-width:0}.xr-learned{max-width:1100px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 14px;background:var(--tint-ok-bg);border:1px solid var(--tint-ok-bd);border-radius:var(--r-md);font-weight:700;font-size:var(--fs-sm);color:var(--tint-ok-fg)}.xr-learned .sp{flex:1 1 auto}.xr-learned.full{background:var(--warn-soft);border-color:var(--tint-amber-bd);color:var(--tint-amber-fg)}.xr-cat-full{max-width:1100px;flex-wrap:wrap;margin:8px 0 0;font-weight:700;font-size:var(--fs-sm);color:var(--tint-amber-fg)}.xr-cat-full,.xr-fold{display:flex;align-items:center;gap:8px}.xr-fold{width:fit-content;margin:22px 0 8px;padding:0;border:0;background:transparent;font:inherit;font-family:var(--display);font-weight:700;font-size:var(--fs-md);color:var(--teal-d);text-transform:uppercase;letter-spacing:.5px;cursor:pointer}.xr-gone{max-width:1100px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 6px;padding:9px 13px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);font-weight:600;font-size:var(--fs-sm);color:var(--muted)}.xr-gone b{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}.xr-gone .sp{flex:1 1 auto}.xr-gone-what{flex:1 1 140px;min-width:0;font-weight:700;font-size:var(--fs-md);color:var(--ink);overflow-wrap:anywhere}.xrp-bar{max-width:1100px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px}.xrp-bar .sp{flex:1 1 auto}.xrp-search{flex:1 1 170px;max-width:280px}.xrp-sel{flex:none;max-width:190px;font-weight:600;font-size:var(--fs-md);padding:9px 10px;border-radius:var(--r-sm)}.xrp-stat{width:100%;text-align:left;font:inherit;cursor:pointer}.xrp-stat.on{background:var(--tint-teal-bg);border-color:var(--teal)}.xrp-stat.on .n{color:var(--teal-d)}.xrp-row{max-width:1100px;margin:0 0 8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm);overflow:hidden}.xrp-row.retired{opacity:.62}.xrp-main{width:100%;display:flex;align-items:center;gap:12px;flex-wrap:wrap;text-align:left;font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:11px 13px;transition:background var(--t-fast)}.xrp-main:hover{background:var(--hover)}.xrp-name{flex:1 1 180px;min-width:0;font-weight:700;font-size:var(--fs-lg);color:var(--ink);overflow-wrap:anywhere}.xrp-name small{display:block;font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.xrp-move,.xrp-now{flex:none;min-width:124px;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;font-variant-numeric:tabular-nums}.xrp-now b{font-size:var(--fs-xl);color:var(--ink);letter-spacing:-.01em}.xrp-move small,.xrp-now small{font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.xrp-move b{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-lg)}.xrp-move b em{font-style:normal;font-weight:600;font-size:var(--fs-xs);color:var(--muted)}.xrp-move.up b{color:var(--tint-danger-fg)}.xrp-move.down b{color:var(--tint-ok-fg)}.xrp-move.flat b,.xrp-move.none{color:var(--muted)}.xrp-move.none{font-weight:600;font-size:var(--fs-xs)}.xrp-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 13px;font-weight:700;font-size:var(--fs-xs);border-top:1px solid var(--line)}.xrp-note.pack{background:var(--warn-soft);color:var(--tint-amber-fg);border-top-color:var(--tint-amber-bd)}.xrp-note.soft{background:var(--card-2);color:var(--muted);font-weight:600}.xrp-hist{border-top:1px solid var(--line);background:var(--card-2);padding:10px 13px}.xrp-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:5px 0;font-weight:600;font-size:var(--fs-sm);color:var(--muted);font-variant-numeric:tabular-nums}.xrp-h+.xrp-h{border-top:1px dashed var(--line)}.xrp-h .d{flex:none;min-width:84px;font-weight:700;color:var(--ink)}.xrp-h .v{flex:1 1 100px;min-width:0;overflow-wrap:anywhere}.xrp-h .p{flex:none;font-weight:700;color:var(--ink)}.xrp-cap{font-size:var(--fs-2xs);margin-top:8px}.xrp-cap,.xrp-foot{font-weight:600;color:var(--muted)}.xrp-foot{max-width:1100px;margin:16px 0 0;font-size:var(--fs-xs);line-height:1.55}.xrp-flag{display:inline-flex;align-items:center;gap:7px}.xrp-flag b{font-family:var(--display);font-weight:750;font-size:var(--fs-sm)}.xrp-flag.on{background:var(--warn-soft);border-color:var(--warn);color:var(--tint-amber-fg)}.xrp-flagnote{max-width:1100px;margin:-4px 0 12px;color:var(--muted);line-height:1.55}.xrp-flagnote,.xrp-maybe{font-weight:600;font-size:var(--fs-xs)}.xrp-maybe{flex:1 1 100%;line-height:1.5;opacity:.92}@media (max-width:560px){.xrp-move,.xrp-now{min-width:0;flex:1 1 auto;align-items:flex-start;text-align:left}}.xr-alias.clash{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);color:var(--tint-danger-fg)}.xrp-main:focus-visible{outline-offset:-2px}.xr-who{display:inline-flex;align-items:center;gap:4px}.xr-who.tg{color:var(--teal-d)}.remi-page{display:flex;flex-direction:column;gap:12px;height:calc(100vh - 168px);height:calc(100dvh - 168px);min-height:420px}.remi-page .pagehead{flex:none;margin-bottom:0}.remi-sub{flex:1 1 100%;order:3;margin-top:-6px;color:var(--muted);font-weight:700;font-size:var(--fs-md)}.remi-note{flex:none;display:flex;align-items:flex-start;gap:9px;margin:0;padding:11px 14px;background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);border-radius:var(--r-md);color:var(--teal-d);font-weight:650;font-size:var(--fs-sm);line-height:1.5}.remi-note .ico{margin-top:2px}.remi-thread{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:18px 18px 8px}.remi-empty{margin:auto;width:100%;max-width:620px;text-align:center;padding:6px 0 20px}.remi-empty-mark{width:52px;height:52px;margin:0 auto 12px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;background:var(--tint-indigo-bg);border:1px solid var(--tint-indigo-bd)}.remi-empty h2{font-family:var(--display);font-weight:750;font-size:var(--fs-2xl);letter-spacing:-.015em;color:var(--ink);margin:0}.remi-empty-sub{margin:6px 0 16px;color:var(--muted);font-weight:600;font-size:var(--fs-md)}.remi-ex{display:grid;gap:9px;text-align:left}.remi-exbtn{display:flex;align-items:center;gap:11px;width:100%;padding:12px 14px;cursor:pointer;font:inherit;font-weight:650;font-size:var(--fs-md);color:var(--ink);text-align:left;background:var(--card-2);border:1px solid var(--line);border-radius:var(--r-md);transition:background var(--t-fast),border-color var(--t-fast)}.remi-exbtn:hover{background:var(--hover);border-color:var(--tint-indigo-bd)}.remi-exbtn>span{flex:1;min-width:0}.remi-exgo{opacity:0;color:var(--muted);transition:opacity var(--t-fast)}.remi-exbtn:hover .remi-exgo{opacity:.8}.remi-branchnote{margin:16px 0 0;color:var(--muted);font-weight:600;font-size:var(--fs-xs);line-height:1.5}.remi-turn{display:flex;flex-direction:column;gap:8px;min-width:0}.remi-turn.user{align-items:flex-end}.remi-turn.user .remi-bubble{max-width:min(560px,86%);padding:11px 15px;background:var(--tint-teal-bg);border:1px solid var(--tint-teal-bd);color:var(--ink);border-radius:var(--r-lg) var(--r-lg) var(--r-xs) var(--r-lg);font-weight:600;font-size:var(--fs-md);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.remi-who{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-family:var(--display);font-weight:750;font-size:var(--fs-xs);letter-spacing:.02em}.remi-steps{display:flex;flex-wrap:wrap;gap:6px}.remi-step{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--r-pill);background:var(--card-2);border:1px solid var(--line);color:var(--muted);font-weight:700;font-size:var(--fs-2xs)}.remi-step:not(.done){animation:remi-pulse 1.4s ease-in-out infinite}.remi-step.done{background:var(--tint-ok-bg);border-color:var(--tint-ok-bd);color:var(--tint-ok-fg)}.remi-step.failed{background:var(--tint-danger-bg);border-color:var(--tint-danger-bd);color:var(--tint-danger-fg)}@keyframes remi-pulse{0%,to{opacity:1}50%{opacity:.55}}.remi-dots{display:inline-flex;gap:5px;padding:4px 2px}.remi-dots i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:remi-dot 1.1s ease-in-out infinite}.remi-dots i:nth-child(2){animation-delay:.16s}.remi-dots i:nth-child(3){animation-delay:.32s}@keyframes remi-dot{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.remi-md{min-width:0;color:var(--ink);font-size:var(--fs-md);font-weight:500;line-height:1.62}.remi-md>*{margin:0 0 10px}.remi-md>:last-child{margin-bottom:0}.remi-md p{overflow-wrap:anywhere}.remi-mdh{font-family:var(--display);font-weight:750;font-size:var(--fs-lg);color:var(--ink)}.remi-md ol,.remi-md ul{padding-left:20px}.remi-md li{margin:0 0 5px;overflow-wrap:anywhere}.remi-md b{font-weight:750}.remi-md code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;background:var(--hover);border:1px solid var(--line);border-radius:var(--r-xs);padding:1px 5px}.remi-mdpre{background:var(--card-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:11px 13px;overflow-x:auto;-webkit-overflow-scrolling:touch}.remi-mdpre code{background:none;border:0;padding:0;white-space:pre;font-size:var(--fs-sm)}.remi-tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.remi-table{width:100%;min-width:0}.remi-table td,.remi-table th{padding:9px 12px;font-size:var(--fs-sm);white-space:nowrap}.remi-alert{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px 13px;border-radius:var(--r-md);background:var(--tint-danger-bg);border:1px solid var(--tint-danger-bd);color:var(--tint-danger-fg);font-weight:700;font-size:var(--fs-sm);line-height:1.5}.remi-alert>span{flex:1 1 220px;min-width:0}.remi-alert.soft{background:var(--card-2);border-color:var(--line);color:var(--muted)}.remi-rowacts{display:flex;gap:8px}.remi-confirm{margin:10px 0 2px;padding:13px 15px;border-radius:var(--r-md);border:1px solid var(--tint-amber-bd);background:var(--warn-soft)}.remi-confirm-h{display:flex;align-items:center;gap:8px;color:var(--tint-amber-fg);font-size:13px}.remi-confirm-what{margin:8px 0 0;color:var(--ink);font-weight:600;line-height:1.45}.remi-confirm-note{margin:7px 0 0;color:var(--muted);font-size:12.5px;line-height:1.45}.remi-confirm-acts{display:flex;gap:8px;margin-top:11px;flex-wrap:wrap}.remi-confirm.working{opacity:.75}.remi-confirm.done{border-color:var(--tint-ok-bd);background:var(--tint-ok-bg)}.remi-confirm.done .remi-confirm-h{color:var(--tint-ok-fg)}.remi-confirm.failed{border-color:var(--tint-danger-bd);background:var(--tint-danger-bg)}.remi-confirm.failed .remi-confirm-h{color:var(--tint-danger-fg)}.pv-photo{border:1px solid var(--line);background:var(--card);border-radius:var(--r-sm);padding:1px 6px;margin-left:6px;cursor:pointer;font-size:13px;line-height:1.6}.pv-photo:hover{background:var(--hover);border-color:var(--muted)}.pv-photobox{max-width:min(460px,92vw)}.pv-photobox img{display:block;width:100%;height:auto;border-radius:var(--r-md);background:var(--card-2)}.pv-photobox .hint{margin:9px 0 0}.dev-photo{display:flex;gap:10px;align-items:flex-start;margin-top:10px;padding:10px 12px;border:1px solid var(--tint-amber-bd);background:var(--warn-soft);border-radius:var(--r-md);cursor:pointer}.dev-photo input{margin-top:3px;flex:none}.dev-photo>span{display:flex;flex-direction:column;gap:3px}.dev-badge.k-photo{background:var(--warn-soft);border-color:var(--tint-amber-bd);color:var(--tint-amber-fg)}.pv-rates{margin-top:18px}.pv-rates h2{font-family:var(--display);font-size:var(--fs-xl);margin:0 0 8px}.pv-rates ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.pv-rates li{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card-2)}.pv-rates li b{min-width:70px}.pv-rate-by,.pv-rate-note{font-size:var(--fs-2xs);color:var(--muted)}.pv-rate-note{font-style:italic}.pay-rate{position:relative}.pay-rate-when{border:1px solid var(--line);background:var(--card);border-radius:var(--r-sm);padding:0 5px;margin-left:4px;cursor:pointer;font-size:12px;line-height:1.7}.pay-rate-when:hover{background:var(--hover);border-color:var(--muted)}.pay-rate-when.on{background:var(--tint-teal-bg);border-color:var(--tint-teal-bd)}.pay-rate-pop{position:absolute;z-index:5;top:calc(100% + 6px);left:0;display:flex;flex-direction:column;gap:6px;min-width:250px;padding:11px 13px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-lg)}.pay-rate-pop label{font-weight:700;font-size:var(--fs-md)}.pay-rate-pop input{padding:6px 8px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card-2);color:var(--ink)}.pay-rate-pop .hint{margin:0}.pay-ot{white-space:nowrap}.pay-ot-money{display:block;font-size:var(--fs-2xs);color:var(--tint-amber-fg);font-weight:600}.pay-ot-note{display:flex;align-items:flex-start;gap:9px;margin:12px 0 0;padding:11px 14px;border-radius:var(--r-md);border:1px solid var(--tint-amber-bd);background:var(--warn-soft);color:var(--muted);font-size:var(--fs-md);line-height:1.5}.pay-ot-note .ico{margin-top:2px;flex:none}.dev-lang-hint{margin:6px 0 0}.kiosk-photonote{display:flex;align-items:center;gap:8px;margin:-2px 0 2px;padding:8px 14px;border-radius:var(--r-pill);background:var(--card-2);border:1px solid var(--line);color:var(--muted);font-size:min(16px,2vh);font-weight:600}.kiosk-camsrc{position:fixed;width:2px;height:2px;opacity:.01;pointer-events:none;bottom:0;left:0;object-fit:cover}.remi-confirm-retry{color:var(--tint-danger-fg);font-weight:600}.remi-confirm.unknown{border-color:var(--tint-amber-bd);background:var(--warn-soft)}.remi-confirm.cancelled{border-color:var(--line);background:var(--card-2)}.remi-confirm.cancelled .remi-confirm-h{color:var(--muted)}.remi-confirm.cancelled .remi-confirm-what{font-weight:500;color:var(--muted)}.remi-copy{display:inline-flex;align-items:center;gap:6px;padding:2px 0;cursor:pointer;font:inherit;font-weight:700;font-size:var(--fs-2xs);color:var(--muted);background:none;border:0;transition:color var(--t-fast)}.remi-copy:hover{color:var(--teal-d)}.remi-form{flex:none;display:flex;align-items:flex-end;gap:9px;padding:10px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.remi-form:focus-within{border-color:var(--teal)}.remi-input{flex:1;min-width:0;max-height:168px;overflow-y:auto;resize:none;padding:9px 8px;font:inherit;font-weight:600;font-size:var(--fs-md);line-height:1.5;color:var(--ink);background:transparent;border:0;outline:none}.remi-input::placeholder{color:var(--muted)}.remi-send,.remi-stop{flex:none;display:inline-flex;align-items:center;gap:7px}.remi-foot{flex:none;display:flex;align-items:baseline;justify-content:center;gap:6px 14px;flex-wrap:wrap}.remi-caveat{margin:0;font-weight:600}.remi-caveat,.remi-used{color:var(--muted);font-size:var(--fs-2xs)}.remi-used{font-weight:700;font-variant-numeric:tabular-nums}.remi-setup{max-width:620px;padding:20px;background:var(--card);border:1px solid var(--tint-amber-bd);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.remi-setup-h{display:flex;align-items:center;gap:9px;font-family:var(--display);font-weight:750;font-size:var(--fs-xl);color:var(--ink)}.remi-setup p{margin:10px 0 12px;color:var(--muted);font-weight:600;font-size:var(--fs-md);line-height:1.6}.remi-envvar{display:inline-block;padding:4px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-sm);color:var(--ink);background:var(--card-2);border:1px solid var(--line);border-radius:var(--r-xs)}@media (max-width:720px){.remi-page{height:calc(100vh - 176px);height:calc(100dvh - 176px);min-height:340px;gap:10px}.remi-thread{padding:14px 13px 6px}.remi-form,.remi-thread{border-radius:var(--r-md)}.remi-form{padding:8px}.remi-note{padding:9px 11px;font-size:var(--fs-xs)}.remi-turn.user .remi-bubble{max-width:92%}.appnav-bottom{padding-left:2px;padding-right:2px}.btab{padding-left:0;padding-right:0}}@media print{.remi-page{display:block;height:auto;min-height:0}.remi-thread{overflow:visible;border:0;box-shadow:none;padding:0}.remi-dots,.remi-foot,.remi-form,.remi-rowacts,.remi-steps{display:none!important}}.remi-setup-steps{margin:10px 0 0;padding-left:20px;display:grid;gap:7px;font-size:var(--fs-sm);color:var(--ink);line-height:1.5}.remi-setup-steps a{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:2px}.remi-setup-steps a:hover{color:var(--teal-d)}.remi-setup-foot{margin:12px 0 0;font-size:var(--fs-xs);color:var(--muted)}.wr-page .wr-sub{flex:1 1 100%;order:3;margin-top:-6px;color:var(--muted);font-weight:700;font-size:var(--fs-md)}.wr-doc{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:22px 24px;margin:0 0 18px;max-width:1080px;font-size:var(--fs-sm);line-height:1.45}.wr-head{display:flex;align-items:baseline;gap:14px;padding-bottom:10px;margin-bottom:4px;border-bottom:1.5px solid var(--ink)}.wr-who{flex:1 1 0;min-width:0;font-weight:800;font-size:var(--fs-lg)}.wr-name{flex:0 0 auto;font-family:var(--display);font-weight:700;font-size:var(--fs-2xl);letter-spacing:-.01em}.wr-range{flex:1 1 0;min-width:0;text-align:right;font-weight:700;color:var(--muted)}.wr-day{padding:9px 0;border-bottom:1px solid var(--line-2);break-inside:avoid;page-break-inside:avoid}.wr-day:last-of-type{border-bottom:0}.wr-dhead{display:flex;align-items:baseline;flex-wrap:wrap;margin-bottom:3px}.wr-dhead b{font-weight:800}.wr-sched{color:var(--muted);font-weight:700}.wr-offword{font-weight:800;letter-spacing:.06em}.wr-edited{color:var(--muted);font-weight:700;font-size:var(--fs-2xs)}.wr-fixes{margin-left:auto;display:inline-flex;gap:6px;flex-shrink:0}.wr-line.wr-fixable{display:flex;align-items:center;gap:4px;overflow:visible}.wr-weektag{font-weight:600;color:var(--muted)}.wr-sums .wr-period{margin-top:6px;padding-top:6px;border-top:1px solid var(--line-2)}.wr-line.wr-fixable .wr-txt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv-break-fix,.wr-brk-fix{flex:none;margin-left:5px;border:0;background:transparent;color:inherit;opacity:.5;cursor:pointer;font:inherit;padding:0 2px;line-height:1;transition:opacity var(--t-fast)}.pv-break-fix:focus-visible,.pv-break-fix:hover,.wr-brk-fix:focus-visible,.wr-brk-fix:hover{opacity:1}.pv-break-add{margin-left:6px;vertical-align:middle}.wr-dhead{gap:10px}@media (max-width:640px){.wr-fixes{margin-left:0}}.wr-nothing{color:var(--muted);font-weight:700;padding-left:2px}.wr-grid{display:grid;gap:1px 14px;grid-template-columns:.8fr 1.2fr 1.2fr 1.2fr .8fr 2fr}.wr-cell{display:flex;flex-direction:column;min-width:0}.wr-ch{font-size:var(--fs-2xs);font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);min-height:1.25em}.wr-line{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.wr-time{font-weight:800}.wr-min{color:var(--muted);font-weight:600}.wr-sum .wr-line{white-space:normal;overflow:visible}.wr-blank{display:inline-block;width:52px;height:1em;border-bottom:1px dotted var(--muted);vertical-align:-.15em}.wr-foot{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-top:10px;padding-top:12px;border-top:1.5px solid var(--ink)}.wr-sums{display:grid;grid-template-columns:auto auto;gap:3px 16px;margin:0;flex:0 0 auto}.wr-sums dt{color:var(--muted);font-weight:700}.wr-sums dd{margin:0;font-weight:800;font-variant-numeric:tabular-nums}.wr-sums .wr-grand{font-size:var(--fs-lg);margin-top:2px;padding-top:4px;border-top:1px solid var(--line)}.wr-brand{margin-left:auto;text-align:right;font-weight:700}.wr-co{font-weight:800}.wr-addr,.wr-url{color:var(--muted);font-weight:700}.wr-url{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:3px;font-size:var(--fs-xs)}.wr-logo{border-radius:5px;flex:none}.wr-rule{flex:1 1 100%;margin:10px 0 0;color:var(--muted);font-weight:700;font-size:var(--fs-2xs)}@media screen and (max-width:1150px){.wr-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 14px}}@media screen and (max-width:720px){.wr-doc{padding:16px 14px;border-radius:var(--r-md);font-size:var(--fs-md)}.wr-head{flex-wrap:wrap;gap:2px 12px}.wr-name{order:-1;flex:1 1 100%}.wr-range,.wr-who{flex:1 1 100%;text-align:left}.wr-grid{grid-template-columns:1fr 1fr;gap:7px 12px}.wr-sum{grid-column:1/-1}.wr-foot{gap:14px}.wr-brand{margin-left:0;text-align:left;flex:1 1 100%}.wr-url{justify-content:flex-start}}@media print{.wr-doc{break-after:page;page-break-after:always;break-inside:auto;page-break-inside:auto;background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;margin:0;max-width:none;font-size:8.5pt;line-height:1.28}.wr-doc:last-of-type{break-after:auto;page-break-after:auto}.wr-head{padding-bottom:5px;margin-bottom:2px}.wr-who{font-size:11pt}.wr-name{font-size:15pt}.wr-range{font-size:9.5pt}.wr-day{padding:4px 0}.wr-ch{font-size:6pt}.wr-min{font-size:7.5pt}.wr-blank{width:58px}.wr-foot{margin-top:6px;padding-top:8px}.wr-sums{font-size:9.5pt;gap:2px 14px}.wr-sums .wr-grand{font-size:11pt}.wr-rule{margin-top:6px}.wr-rule,.wr-url{font-size:7.5pt}}.wr-none{color:var(--muted)}.wr-missed{font-weight:800;letter-spacing:.04em}.set-row-branch{flex-wrap:wrap}.set-addr{flex:1 1 100%;margin-top:6px;font-size:var(--fs-sm)}.hist-list{display:flex;flex-direction:column;gap:8px}.hist-row{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.hist-row.open{border-color:var(--tint-teal-bd)}.hist-head{width:100%;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;background:transparent;border:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.hist-head:hover{background:var(--card-2)}.hist-kind{font-weight:800;font-size:var(--fs-sm)}.hist-kind.k-carry{color:var(--tint-amber-fg)}.hist-kind.k-restore{color:var(--tint-indigo-fg)}.hist-kind.k-baseline,.hist-when{color:var(--muted)}.hist-when,.hist-who{font-size:var(--fs-sm)}.hist-who{font-weight:700}.hist-rows{color:var(--muted);margin-left:auto}.hist-now,.hist-rows{font-size:var(--fs-2xs)}.hist-now{background:var(--tint-teal-bg);color:var(--teal-d);border-radius:var(--r-pill);padding:2px 8px;font-weight:800;text-transform:uppercase;letter-spacing:.4px}.hist-note{padding:0 16px 10px;color:var(--muted);font-size:var(--fs-sm)}.hist-body{padding:4px 16px 14px;border-top:1px solid var(--line)}.hist-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.hist-diff{display:flex;flex-direction:column;gap:10px;margin-top:8px}.hd-person{border-left:3px solid var(--line);padding-left:10px}.hd-who{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.hd-dept{color:var(--muted)}.hd-dept,.hd-tag{font-size:var(--fs-2xs)}.hd-tag{font-weight:800;text-transform:uppercase;letter-spacing:.4px}.hd-tag.t-added{color:var(--teal-d)}.hd-tag.t-removed{color:var(--danger)}.hd-tag.t-moved{color:var(--tint-indigo-fg)}.hd-tag.t-changed{color:var(--muted)}.hd-line{display:flex;gap:8px;align-items:baseline;font-size:var(--fs-sm);flex-wrap:wrap}.hd-day{min-width:88px}.hd-day,.hd-was{color:var(--muted)}.hd-was{text-decoration:line-through}.hd-arrow{color:var(--muted)}.hd-now{font-weight:700}.hd-add{color:var(--teal-d)}.hd-rm{color:var(--danger)}@media (max-width:640px){.hd-day{min-width:0;font-weight:700}.hist-rows{margin-left:0}}.pin-inp.bad{border-color:var(--danger);outline:2px solid var(--tint-danger-bd);outline-offset:-2px}.pin-err{color:var(--danger);font-size:var(--fs-2xs);font-weight:700;white-space:nowrap}.pin-gen{font:inherit;font-size:var(--fs-2xs);font-weight:700;cursor:pointer;background:var(--card-2);color:var(--muted);border:1px solid var(--line);border-radius:var(--r-sm);padding:3px 8px;transition:color var(--t-fast),border-color var(--t-fast)}.pin-gen:hover{color:var(--teal-d);border-color:var(--tint-teal-bd)}.employee-search{display:flex;flex:1 1 280px;align-items:center;gap:9px;max-width:460px;margin:0;color:var(--muted)}.employee-search .inp{flex:1;min-width:0}.employee-search .linkbtn{flex:none;color:var(--teal-d);font:inherit;font-size:var(--fs-sm);font-weight:700;padding:5px 2px}.de-filter{margin:0 0 12px}.chip .chip-n{opacity:.6;font-size:var(--fs-2xs);margin-left:4px}.rep-who-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.rep-who-bar .inp{max-width:280px;min-width:0}.rep-who-n{font-size:var(--fs-2xs);margin-left:auto}.rep-filter-top{margin-top:-6px}@media (max-width:620px){.employee-search{max-width:none}.rep-who-n{margin-left:0;flex-basis:100%}}.kiosk-menu{gap:min(18px,2vh);width:min(680px,94vw)}.kiosk-menu .menu-btn{padding:min(30px,3.6vh) 16px;min-height:min(128px,16vh);display:flex;align-items:center;justify-content:center;gap:12px;font-size:min(32px,3.9vh);line-height:1.15;border-radius:var(--r-lg);border-width:2px;box-shadow:0 6px 18px rgba(20,32,48,.1)}.kiosk-menu .menu-btn.end,.kiosk-menu .menu-btn.start{background:var(--teal);color:var(--on-teal);border-color:transparent;box-shadow:0 10px 26px rgba(14,124,134,.28)}.kiosk-menu .menu-btn.danger{background:var(--danger);color:#fff;border-color:transparent;box-shadow:0 10px 26px rgba(189,74,64,.26)}.kiosk-menu .menu-btn.warn{background:var(--saffron);color:#3a2a06;border-color:transparent;box-shadow:0 10px 26px rgba(199,138,30,.26)}.kiosk-menu .menu-btn.breakfast{background:var(--tint-saffron-bg);color:var(--tint-saffron-fg);border-color:var(--tint-saffron-bd)}.kiosk-menu .menu-btn.lunch{background:var(--tint-indigo-bg);color:var(--tint-indigo-fg);border-color:var(--tint-indigo-bd)}.kiosk-menu .menu-btn.quiet{background:var(--card);color:var(--muted);border-color:var(--line);box-shadow:none;font-size:min(24px,2.9vh);min-height:min(84px,10vh)}.kiosk-menu .menu-btn.quiet:hover{color:var(--ink);border-color:var(--muted)}.kiosk-body>.kiosk-title{font-size:min(40px,5vh)}.kiosk-body>.kiosk-sub:not(.kiosk-langnote){font-size:min(25px,3.1vh);max-width:min(680px,92vw)}.kiosk-body>.kiosk-title.pinlabel{font-size:min(32px,4dvh)}.kiosk-body.managerpin>.kiosk-sub:not(.kiosk-langnote){font-size:min(21px,2.6vh)}.pv-proposal{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;padding:4px 8px;border-radius:var(--r-sm);background:var(--tint-warn-bg);border:1px solid var(--tint-warn-bd)}.pv-proposal-txt{color:var(--tint-warn-fg)}.pv-decide-err,.pv-proposal-txt{font-weight:600;font-size:var(--fs-sm)}.pv-decide-err{color:var(--danger,var(--warn))}.kiosk-symbol{display:inline-block;flex:none;vertical-align:middle}.kiosk-brand>svg{vertical-align:-.15em;margin-right:4px}.pair-symbol{color:var(--teal)}.kiosk-change,.kiosk-hint.linkbtn,.pair-btn,.pair-clock-link,.pair-error,.xk-crumb,.xk-panetitle,.xk-pick-heading,.xk-retry,.xk-send{display:flex;align-items:center;justify-content:center;gap:8px}.xk-crumb,.xk-panetitle,.xk-pick-heading{justify-content:flex-start}.xk-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.xk-dept-symbol{width:44px;height:44px;flex:none}.xk-row-symbol{width:38px;height:38px;flex:none}.sky-card-symbol{display:flex;justify-content:center;color:inherit}.sky-title{display:inline-flex;align-items:center;gap:10px}.sky-empty{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:0 20px}.sky-colcount,.sky-coldone{display:inline-flex;align-items:center;gap:5px}.sky-feedback,.sky-loading{display:flex;align-items:center;justify-content:center;gap:9px;padding:14px 20px;text-align:center}.sky-feedback{color:var(--danger);background:var(--tint-warn-bg)}.sky-card.busy{opacity:.7;cursor:progress}.sky-card.busy:not(.done) .sky-cardcheck{color:var(--ink)}.kiosk-pin-control{flex:none;display:flex;flex-direction:column;align-items:center;gap:0}.kiosk-pin-dots{display:flex;align-items:center;justify-content:center;gap:.15em;height:1.1em;letter-spacing:0}.kiosk-pin-dot{display:grid;place-items:center;width:.6em;height:.9em;flex:none;position:relative}.kiosk-pin-dot:before{content:"";width:.34em;height:.34em;border-radius:50%;border:2px solid var(--teal);opacity:.4;transition:background .13s ease,opacity .13s ease}.kiosk-pin-dot.filled{animation:kiosk-dot-in .16s ease-out both}.kiosk-pin-dot.filled:before{background:var(--teal);opacity:1}.kiosk-pin-dot.digit:before{display:none}.kiosk-pin-digit{font-family:var(--font);font-size:.68em;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:var(--teal-d)}.kiosk-pin-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:6px 14px;border:0;border-radius:var(--r-pill);background:transparent;color:var(--teal-d);font:inherit;font-weight:700;font-size:var(--fs-lg);cursor:pointer}.kiosk-pin-toggle:disabled{opacity:.5;cursor:default}.kiosk-pin-toggle:active:not(:disabled){background:var(--tint-teal-bg)}.icon-tile{display:inline-block;flex:none;vertical-align:middle;filter:drop-shadow(0 2px 3px rgba(20,32,48,.09))}.snav-tab.on .icon-tile{filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}.kiosk-pin-dots.checking .kiosk-pin-dot{animation:kiosk-dot-wait .9s ease-in-out infinite}.kiosk-action-status,.kiosk-busy-status{color:var(--muted);font-size:var(--fs-md);font-weight:600}.kiosk-action-status,.kiosk-busy-status,.kiosk-hint[role=status]{min-height:24px;display:flex;align-items:center;justify-content:center;gap:8px}.kiosk-key.ghost{display:flex;align-items:center;justify-content:center}.kiosk-action-icon{width:min(56px,6.5vh);height:min(56px,6.5vh)}.kiosk-langs{justify-content:center}.kiosk-menu .menu-btn{padding:min(18px,2.2vh) 16px;overflow-wrap:anywhere}.kiosk-menu .menu-btn:not(.full){flex-direction:column;gap:6px}.kiosk-menu .menu-btn.quiet{padding:min(22px,2.6vh) 18px}.kiosk-menu.kiosk-break-options .menu-btn{min-height:min(100px,12dvh);padding:min(18px,2dvh) 20px;font-size:min(28px,3.5dvh);justify-content:flex-start;gap:16px}.kiosk-menu-footer{display:flex;flex:none;align-items:center;justify-content:center;gap:12px 24px;flex-wrap:wrap}.kiosk-language-control{flex:none}.kiosk-language-trigger{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--muted);font:inherit;font-weight:700;cursor:pointer}.kiosk-language-overlay{position:fixed;inset:0;z-index:75;display:grid;place-items:center;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:rgba(20,32,48,.4);backdrop-filter:blur(8px)}.kiosk-language-dialog{width:min(420px,100%);max-height:100%;overflow-y:auto;padding:24px;border-radius:24px;background:var(--card);color:var(--ink);box-shadow:var(--shadow-lg);text-align:center;animation:kiosk-view-in .18s ease-out}.kiosk-language-title{font-size:26px;font-weight:800;margin:0 0 18px}.kiosk-language-options{display:grid;gap:8px}.kiosk-language-option{min-height:52px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card-2);color:var(--ink);font:inherit;font-size:18px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.kiosk-language-option.on{background:var(--teal);color:#fff;border-color:var(--teal)}.kiosk-language-cancel{min-height:44px;margin-top:14px;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:700;cursor:pointer}.kiosk-result-content{width:min(760px,94vw);max-height:100%;overflow-y:auto;padding:24px 12px;text-align:center;color:#fff}.kiosk-result-symbol{margin-bottom:12px;animation:kiosk-symbol-in .3s cubic-bezier(.2,.8,.2,1) both}.kiosk-result-symbol.success{color:var(--teal)}.kiosk-result-symbol.warning{color:var(--danger)}.kiosk-result-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:26px;min-height:52px;padding:12px 22px;color:inherit;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.4);border-radius:16px;font:inherit;font-weight:700;cursor:pointer}.kiosk-view-enter{animation:kiosk-view-in .22s cubic-bezier(.2,.8,.2,1) both}.kiosk-spinner{animation:kiosk-spin .9s linear infinite;flex:none}.kiosk button,.sky-card{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.kiosk-change,.kiosk-key,.kiosk-menu .menu-btn,.kiosk-result-back,.pair-btn,.sky-card,.xk-big,.xk-pick,.xk-retry,.xk-send{transition:transform .12s ease,box-shadow .16s ease,background-color .16s ease,opacity .16s ease}.kiosk-change:active:not(:disabled),.kiosk-key:active:not(:disabled),.kiosk-menu .menu-btn:active:not(:disabled),.kiosk-result-back:active,.pair-btn:active:not(:disabled),.sky-card:active:not(:disabled),.xk-big:active:not(:disabled),.xk-pick:active:not(:disabled),.xk-retry:active:not(:disabled),.xk-send:active:not(:disabled){transform:scale(.97);box-shadow:0 2px 5px rgba(20,32,48,.08)}.kiosk a:focus-visible,.kiosk button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.kiosk-result-back:focus-visible{outline-color:#fff!important}.kiosk-change,.kiosk-hint.linkbtn,.xk-x{min-height:44px;min-width:44px}@media(max-width:560px){.kiosk-top:has(.kiosk-clock){padding-left:16px;padding-right:16px;column-gap:8px}.kiosk-top .kiosk-brand{flex:1;min-width:0;max-width:none;font-size:18px}.kiosk-top .kiosk-dev{font-size:14px}.kiosk-top>div:last-child:not(.kiosk-brand):not(.kiosk-clock){flex:none}.kiosk-menu{gap:12px}.kiosk-menu .menu-btn{font-size:clamp(22px,6vw,28px)}.kiosk-body>.kiosk-title:not(.pinlabel){font-size:clamp(26px,7vw,36px);text-align:center;overflow-wrap:anywhere}.kiosk-name{font-size:clamp(26px,7vw,42px);overflow-wrap:anywhere}.xk-big{flex-direction:column;gap:4px;font-size:18px}}@keyframes kiosk-view-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes kiosk-symbol-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes kiosk-dot-in{0%{transform:scale(.65)}to{transform:scale(1)}}@keyframes kiosk-dot-wait{0%,70%,to{opacity:.4;transform:scale(.85)}35%{opacity:1;transform:scale(1)}}@keyframes kiosk-spin{to{transform:rotate(1turn)}}.kiosk{--ink:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--line-2:#e5e5ea;--paper:#f5f5f7;--card:#fff;--card-2:#fbfbfd;--hover:#f0f0f2;--teal:#007aff;--teal-d:#0066cc;--on-teal:#fff;--indigo:#5856d6;--saffron:#ff9f0a;--danger:#ff3b30;background:radial-gradient(900px 420px at 50% -12%,rgba(0,122,255,.11),transparent 66%),var(--paper)}.kiosk-top{background:rgba(245,245,247,.78);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid rgba(210,210,215,.72)}.kiosk-clock-split{gap:min(8px,1dvh);color:var(--ink)}.kiosk-clock-split .kc-time{display:flex;align-items:center;gap:.14em;letter-spacing:-.035em}.kiosk-clock-split .kc-tile{position:relative;display:grid;place-items:center;flex:none;width:1.62em;height:1.35em;border:1px solid #dce1e9;border-radius:.26em;background:#e9edf3;color:var(--ink);box-shadow:0 1px 2px rgba(20,32,48,.04)}.kiosk-clock-split .kc-tile:after{content:"";position:absolute;inset:50% 0 auto;height:1px;background:rgba(125,140,162,.15);pointer-events:none}.kiosk-clock-split .kc-separator{font-size:.62em;color:var(--muted)}.kiosk-clock-split .kc-period{min-width:2.3ch;font-size:clamp(11px,1.7dvh,15px);font-weight:700}.kiosk-clock-split .kc-date,.kiosk-clock-split .kc-period{font-family:var(--font);letter-spacing:0;color:var(--muted)}.kiosk-clock-split .kc-date{font-size:clamp(11px,1.6dvh,14px);font-weight:600;line-height:1.3}.kiosk-key{border-color:rgba(210,210,215,.9);border-radius:22%;background:rgba(255,255,255,.96);box-shadow:0 5px 14px rgba(0,0,0,.07),0 1px 2px rgba(0,0,0,.05)}.kiosk-key:hover:not(:disabled){background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.1)}.kiosk-key.ghost{background:transparent;box-shadow:none}.kiosk-menu .menu-btn{border-radius:20px}.kiosk-menu .menu-btn.end,.kiosk-menu .menu-btn.start{background:#007aff;box-shadow:0 8px 20px rgba(0,122,255,.24)}.kiosk-menu .menu-btn.danger{background:#ff3b30;box-shadow:0 8px 20px rgba(255,59,48,.22)}.kiosk-change,.kiosk-language-trigger{background:rgba(255,255,255,.72);border-color:rgba(210,210,215,.9);border-radius:14px}.kiosk-pin-dot:before{border-color:#007aff}.kiosk-pin-dot.filled:before{background:#007aff}.kiosk-pin-digit{color:#0066cc}.kiosk-result.in{background:rgba(0,122,255,.97)}.appshell,.dash,.dcard,.page,.rep-card,.set-info{min-width:0}.tablescroll{max-width:min(1100px,100%);overscroll-behavior-x:contain}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr))}.acct-v,.hint,.rep-hi-row>span,.set-info{overflow-wrap:anywhere}.schedule-day-count{display:flex;align-items:center;gap:8px}.schedule-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0 0 14px;max-width:760px}.schedule-day-strip button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:9px 3px;min-height:64px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--muted);cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}.schedule-day-strip span{font-size:var(--fs-xs);font-weight:700}.schedule-day-strip b{font-size:var(--fs-xl);font-weight:800;font-variant-numeric:tabular-nums}.schedule-day-strip button.on{background:var(--teal);color:var(--on-teal);border-color:var(--teal)}.schedule-touch-hint{font-size:var(--fs-sm);color:var(--muted);line-height:1.5;margin:0 0 10px}.schedule-cell-button{display:block;width:100%;padding:0;background:transparent;border:0;color:inherit;font:inherit;cursor:pointer;border-radius:var(--r-sm);touch-action:manipulation}.schedule-row-tools{flex:none}.schedule-band-tools summary,.schedule-row-tools summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:7px;border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:700;background:var(--hover);color:var(--muted)}.schedule-band-tools summary::-webkit-details-marker,.schedule-row-tools summary::-webkit-details-marker{display:none}.schedule-row-tools[open]{flex:1 1 100%}.schedule-row-tools[open] summary{width:max-content;margin-left:auto}.schedule-row-actions{display:flex;gap:5px;flex-wrap:wrap;padding-top:6px}.sched .band,.sched .dband,.sched .nm-row{flex-wrap:wrap}.schedule-band-tools{flex:none;max-width:100%}.schedule-band-tools[open]{flex:1 1 100%}.schedule-band-tools summary{width:max-content;margin-left:auto}.schedule-tool-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:10px}.schedule-tool-actions .sdesc{flex:1 1 180px;padding:10px!important;border:1px solid!important;border-radius:var(--r-sm)}.schedule-tool-actions .band-dept{max-width:100%}.sched .band .sname,.sched .dband .dname{min-width:0!important;flex:0 1 220px;width:220px!important}.sched .band .sp,.sched .dband .sp{display:none}.schedule-shift-modal .m-title{overflow-wrap:anywhere;min-width:0}.schedule-shift-modal .m-x{flex:none;margin-left:10px}.appnav-more-overlay{display:none}.appnav-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.appnav-more-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.appnav-more-head h2{font-size:var(--fs-2xl);font-weight:800;margin:0}.appnav-more-link{display:flex;align-items:center;gap:10px;min-height:64px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);text-decoration:none;font-size:var(--fs-md);font-weight:700;overflow-wrap:anywhere}.appnav-more-link.on{background:var(--tint-teal-bg);border-color:var(--tint-teal-bd);color:var(--teal-d)}.appnav-more-divider{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}@media screen{.sched .schedule-cell-button{min-height:56px}.sched.daymode #sheet{width:100%}.sched.editing .schedule-cell-button .cin.empty{opacity:.5}.sched:not(.daymode) td.emp-name,.sched:not(.daymode) th.corner{width:230px;min-width:230px}.modal{max-height:calc(100dvh - 34px);overscroll-behavior:contain}.appshell :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--teal);outline-offset:3px}}@media screen and (pointer:coarse){.appshell :is(.btn,.chip,.mini,.m-x,.rp-del,.rp-off,.pin-gen,.task-check,.av-btn,.pv-link.sm,.modeswitch button,.ctl,.add,.linkbtn,.schedule-row-tools summary,.schedule-band-tools summary){min-height:44px;touch-action:manipulation}.appshell :is(.rp-del,.m-x,.ctl,.task-check,.pv-link.sm){min-width:44px}}@media screen and (max-width:720px){body:has(.appshell){padding:12px 12px calc(96px + env(safe-area-inset-bottom))}.appshell :is(input,select,textarea){font-size:16px;max-width:100%;min-width:0}.appshell :is(.btn,.chip,.mini,.m-x,.rp-del,.rp-off,.pin-gen,.task-check,.av-btn,.pv-link.sm,.modeswitch button,.ctl,.add,.linkbtn){min-height:44px;touch-action:manipulation}.appshell :is(.rp-del,.m-x,.ctl,.task-check,.pv-link.sm){min-width:44px}.appshell :is(.rrow,.rowactions,.dash-actions){gap:8px;flex-wrap:wrap}.appshell .rrow>:is(input,select){min-width:0}.appshell .pagehead{align-items:center}.appshell .pagehead>.btn{white-space:normal}.topbar{padding:10px;gap:8px}.topbar .branchsel{max-width:42vw;min-height:44px}.btab-more{border:0;background:none;font-family:inherit;cursor:pointer}.appnav-more-overlay{display:flex;position:fixed;inset:0;z-index:80;align-items:flex-end;background:rgba(16,24,34,.42);backdrop-filter:blur(3px)}.appnav-more-sheet{width:100%;max-height:calc(100dvh - 20px - env(safe-area-inset-top));overflow:auto;overscroll-behavior:contain;border-radius:24px 24px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));background:var(--card);box-shadow:var(--shadow-lg);animation:fadeIn .16s ease}.sched .appbar{padding:12px;gap:10px;display:flex}.schedule-view-switch{flex:1;align-self:stretch}.schedule-view-switch button{flex:1;min-height:44px}.sched .appbar>.actions{width:auto;flex:1;justify-content:flex-end}.sched .appbar>.actions .saved{min-width:0;width:100%;order:2;text-align:right;font-size:var(--fs-xs)}.sched .appbar>.actions>.btn{flex:none;min-height:44px}.sched .schedule-weeknav{order:3;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;width:100%}.sched .schedule-weeknav input{width:100%;text-align:center}.sched .schedule-weeknav .weektag{grid-column:1/-1;flex-wrap:wrap;white-space:normal;gap:4px 8px;padding:6px 10px}.sched .schedule-weeknav .range{display:inline;font-size:var(--fs-xs);white-space:normal}.sched .schedule-day-count{display:none}.sched .appbar .menu{max-width:calc(100vw - 48px);width:250px}.sched .appbar .menu .btn{text-align:left}.sched .pubmsg,.sched .savefail{white-space:normal;overflow-wrap:anywhere;max-width:100%}.schedule-day-strip{gap:4px}.schedule-day-strip button{border-radius:var(--r-sm);min-height:62px}.schedule-day-strip span{font-size:11px}.sched .depttabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;gap:6px;overscroll-behavior-x:contain}.sched .depttab{flex:none;min-height:44px;padding:9px 13px;font-size:var(--fs-md)}.sched.daymode th.corner{width:50%}.sched:not(.daymode) td.emp-name,.sched:not(.daymode) th.corner{width:180px;min-width:180px}.sched.daymode #sheet>tbody,.sched.daymode #sheet>thead,.sched.daymode table#sheet{display:block}.sched.daymode #sheet>thead>tr{display:grid;grid-template-columns:1fr 1fr;background:var(--card-2);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.sched.daymode #sheet>thead th{width:auto;position:static}.sched.daymode #sheet>tbody>tr,.sched.daymode #sheet>tbody>tr>td{display:block;width:100%}.sched.daymode #sheet>tbody>tr.emp{margin:10px 0;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--card)}.sched.daymode .scroll{border:0;background:transparent;box-shadow:none}.sched.daymode #sheet td.emp-name{position:static;border-right:0;border-bottom:0}.sched.daymode .schedule-cell-button .cin{flex-direction:row;flex-wrap:wrap;gap:10px;background:var(--tint-teal-bg)}.sched.daymode .schedule-cell-button .cin.off{background:var(--hover)}.sched.daymode .schedule-cell-button .cin.night{background:#111318}.sched.daymode .schedule-cell-button .cin.over12{background:var(--tint-danger-bg)}.sched.daymode .schedule-cell-button .cin.conflict{background:var(--warn-soft)}.sched.daymode .schedule-cell-button .cin.conflict-hard{background:var(--tint-danger-bg)}.sched.daymode .schedule-cell-button .cin .seg-div{flex-basis:100%;margin:0}.sched.daymode td.emp-name{padding:10px;overflow:visible}.sched.daymode .nm-row{gap:4px}.sched.daymode .nm-row .nm{font-size:16px!important;font-weight:800!important}.sched .role-edit{font-size:16px!important;padding:7px 0!important}.sched.daymode td.cell{padding:8px}.sched.daymode .cin .t{font-size:clamp(15px,4vw,20px);white-space:normal;overflow-wrap:anywhere}.sched.daymode .cin .conflict-tag{white-space:normal}.sched .band,.sched .dband{padding:10px;gap:8px}.sched .band .sname,.sched .dband .dname{flex:1 1 120px;width:0!important}.sched .band .ctl{display:inline-flex}.sched .band .add{font-size:var(--fs-sm);padding:8px 10px}.schedule-band-tools summary,.schedule-row-tools summary{min-height:44px;min-width:44px}.sched .addsec{display:flex;gap:8px;flex-wrap:wrap}.sched .notes,.sched .policy .ptext{font-size:16px}.appshell .modal,.appshell .modal.sm{width:100%;max-height:calc(100dvh - 16px - env(safe-area-inset-top));left:0;top:auto;bottom:0;transform:none;border-radius:22px 22px 0 0;padding:20px 16px max(20px,env(safe-area-inset-bottom))}.appshell .modal .m-foot{position:sticky;bottom:-20px;background:var(--card);padding:12px 0 max(12px,env(safe-area-inset-bottom));z-index:2;flex-wrap:wrap}.schedule-time-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:8px}.schedule-time-row>label{grid-column:1/-1;width:auto}.schedule-time-row .ampm button{min-width:44px;min-height:44px;padding:10px}.schedule-shift-modal .chips .chip{padding:9px 11px;min-width:44px}.appshell .set-row{flex-wrap:wrap;padding:14px;gap:12px}.set-row>.set-info{flex:1 1 100%}.rep-who-bar .inp{max-width:none;flex:1 1 100%}.rep-who>.chips{max-height:220px;overflow-y:auto;padding:3px}.pay-bar{gap:10px}.pay-week{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px}.pay-week b{min-width:0;white-space:normal;font-size:var(--fs-sm)}.pay-week>:nth-child(n+4){grid-column:1/-1}.pay-week .btn{padding:9px 10px;font-size:var(--fs-sm)}.appshell .utable .rowactions{flex-wrap:wrap}.appshell .utable td:last-child,.appshell .utable th:last-child{white-space:normal}.appshell .xr-ask .rp-del{min-height:44px;min-width:44px}.employees-page .rperson{padding:14px;gap:10px;margin-bottom:12px;background:var(--card);border-radius:var(--r-md)}.employees-page .rperson>input{min-height:44px;padding:10px 12px!important;font-size:16px!important;flex-basis:100%!important}.employees-page .rperson>.rp-name-input{font-size:18px!important;font-weight:800!important}.employees-page .pin-cell{gap:8px;flex-wrap:wrap;min-height:44px}.employees-page .pin-inp{padding:10px}.employees-page .phone-inp,.employees-page .pin-inp,.employees-page .rp-place{min-height:44px;font-size:16px}.employees-page .rp-place{flex-basis:100%;max-width:100%}.employees-page .rp-off{font-size:var(--fs-sm);padding:9px 12px}.employees-page .rp-linked{min-height:44px;max-width:100%;white-space:normal;font-size:var(--fs-xs)}.employee-name-fields{flex-direction:column}.pv-photobox .modal-h{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.pv-photobox .modal-h h2{flex:1;min-width:0;overflow-wrap:anywhere;margin:0;font-size:var(--fs-xl)}.pv-photobox img{max-width:100%;max-height:65dvh;object-fit:contain}.person-page :is(.pv-photo,.pv-break-fix){min-height:44px;min-width:44px}.appshell :is(.pay-rate-when,.remi-copy,.hist-head,.wr-brk-fix){min-height:44px}.appshell :is(.pay-rate-when,.wr-brk-fix){min-width:44px}.hd-line,.hd-who,.hist-note,.hist-who{overflow-wrap:anywhere}.wr-line,.wr-line.wr-fixable .wr-txt{white-space:normal;overflow:visible;overflow-wrap:anywhere}}@media screen and (max-width:480px){.wr-grid{grid-template-columns:minmax(0,1fr);gap:10px}}@media screen and (max-width:640px){.person-table-scroll{overflow:visible}.person-table,.person-table tbody,.person-table tfoot{display:block;width:100%;border:0;background:transparent}.person-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.person-table tbody tr,.person-table tfoot tr{display:block;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);margin-bottom:12px;overflow:hidden}.person-table td,.person-table td.num,.person-table td:last-child{display:block;width:100%;text-align:left;padding:10px 14px;border-bottom:1px solid var(--line-2);white-space:normal}.person-table td[data-label]:before{content:attr(data-label);display:block;font-size:var(--fs-xs);color:var(--muted);font-weight:700;margin-bottom:5px}.person-table td.pv-day-cell{background:var(--card-2);font-size:var(--fs-lg);font-weight:800}.person-table td.pv-day-cell:before,.person-table td.pv-total-spacer{display:none}.person-table .pv-empty{opacity:1}}.kiosk-face-start{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:11px 18px;border:1px solid color-mix(in srgb,#007aff 28%,var(--line));border-radius:999px;background:color-mix(in srgb,#007aff 9%,var(--card));color:#0066cc;font:800 15px/1 var(--font);box-shadow:0 8px 22px rgba(0,60,150,.08);cursor:pointer;transition:transform .16s ease,background .16s ease}.kiosk-face-start:active:not(:disabled){transform:scale(.97);background:color-mix(in srgb,#007aff 15%,var(--card))}.kiosk-face-start:disabled{opacity:.5;cursor:default}.kiosk-face-layer{position:fixed;inset:0;z-index:75;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:rgba(6,13,24,.72);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);animation:kfade .18s ease}.kiosk-face-card{width:min(560px,100%);max-height:100%;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:16px;padding:clamp(18px,4vw,30px);border:1px solid rgba(255,255,255,.62);border-radius:30px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 30px 90px rgba(0,0,0,.35);color:var(--ink)}.kiosk-face-heading{display:flex;align-items:center;justify-content:center;gap:10px;font-size:clamp(22px,3.2vw,29px);font-weight:850;letter-spacing:-.03em}.kiosk-face-frame{position:relative;width:min(390px,82vw,47dvh);aspect-ratio:1;overflow:hidden;border-radius:34%;background:#101722;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 16px 42px rgba(0,0,0,.18)}.kiosk-face-frame video{width:100%;height:100%;display:block;object-fit:cover;transform:scaleX(-1)}.kiosk-face-guide{position:absolute;inset:10%;border:3px solid rgba(255,255,255,.94);border-radius:46% 46% 42% 42%;box-shadow:0 0 0 999px rgba(5,12,22,.18),0 0 25px rgba(0,122,255,.26)}.kiosk-face-status{display:flex;align-items:center;justify-content:center;gap:9px;min-height:28px;text-align:center;color:var(--ink);font-size:clamp(15px,2vw,18px);font-weight:750}.kiosk-face-notice{max-width:470px;margin:0;text-align:center;color:var(--muted);font-size:13px;line-height:1.45}.kiosk-face-confirm,.kiosk-face-error{display:flex;flex-direction:column;align-items:center;gap:18px;padding:24px 4px 4px;text-align:center;font-size:clamp(24px,4vw,34px);font-weight:850;letter-spacing:-.03em}.kiosk-face-error{font-size:clamp(18px,3vw,24px);color:var(--danger)}.kiosk-face-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:min(420px,100%);margin-top:4px}.kiosk-face-actions .menu-btn{min-height:58px;border-radius:18px;font-size:16px;padding:12px 18px}.employee-face-enrollment{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--card-2)}.employee-face-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.employee-face-summary>span:first-child{display:flex;align-items:center;gap:9px}.employee-face-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:11px}.employee-face-layer{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:rgba(8,15,28,.7);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.employee-face-capture{width:min(590px,100%);max-height:100%;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:15px;padding:24px;border:1px solid rgba(255,255,255,.55);border-radius:26px;background:var(--card);box-shadow:0 26px 80px rgba(0,0,0,.32)}.employee-face-capture-head{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.employee-face-capture-head>div{display:flex;flex-direction:column;gap:4px}.employee-face-capture-head strong{font-size:22px}.employee-face-capture-head small{color:var(--muted)}.employee-face-consent-copy{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:470px;padding:14px;text-align:center;color:var(--muted);line-height:1.45}.employee-face-consent{display:flex;align-items:flex-start;gap:11px;max-width:500px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--card-2);line-height:1.4}.employee-face-consent input{width:20px;height:20px;flex:none;margin-top:1px}.employee-face-video{position:relative;width:min(390px,78vw,46dvh);aspect-ratio:1;overflow:hidden;border-radius:32%;background:#101722}.employee-face-video video{width:100%;height:100%;display:block;object-fit:cover;transform:scaleX(-1)}.employee-face-guide{position:absolute;inset:10%;border:3px solid rgba(255,255,255,.95);border-radius:46% 46% 42% 42%;box-shadow:0 0 0 999px rgba(4,10,20,.16)}.employee-face-progress{display:flex;align-items:center;gap:8px}.employee-face-progress span{width:30px;height:6px;border-radius:999px;background:var(--line)}.employee-face-progress span.now{background:#9ecaff}.employee-face-progress span.done{background:#007aff}.employee-face-instruction{display:flex;align-items:center;justify-content:center;gap:8px;min-height:28px;text-align:center;font-size:17px;font-weight:800}.hint.danger{color:var(--danger)}@media(max-height:700px),(max-width:520px){.kiosk-face-card{gap:11px;border-radius:24px;padding:16px}.kiosk-face-frame{width:min(300px,72vw,40dvh)}.kiosk-face-heading{font-size:21px}.kiosk-face-notice{font-size:12px}.employee-face-capture{padding:16px;border-radius:22px}.employee-face-video{width:min(300px,72vw,38dvh)}}@media(prefers-reduced-motion:reduce){.kiosk-face-layer,.kiosk-language-dialog,.kiosk-pin-dot,.kiosk-pin-dots.checking .kiosk-pin-dot,.kiosk-result-symbol,.kiosk-spinner,.kiosk-view-enter{animation:none!important}.kiosk button,.sky-card{transition:none!important}}.payroll-formula-note{padding:16px 20px;border:1px solid var(--line,#dce4e8);border-radius:16px;margin:12px 0;background:var(--card,#fff)}.payroll-formula-note p{margin:6px 0 0;color:var(--muted)}.payroll-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0;max-width:1100px}.payroll-summary>div{padding:18px;border:1px solid var(--line,#dce4e8);border-radius:16px;background:var(--card,#fff)}.payroll-summary small,.payroll-summary span,.payroll-summary strong{display:block}.payroll-summary strong{font-size:24px;margin:8px 0;font-variant-numeric:tabular-nums}.payroll-summary small,.payroll-summary span{color:var(--muted)}.payroll-error{color:#b42318;font-weight:700}.payroll-lock{max-width:520px;margin:8vh auto;padding:28px;background:var(--card);border:1px solid var(--line);border-radius:20px}.payroll-lock form{display:grid;gap:16px;margin-top:20px}.payroll-lock input{display:block;width:100%;font-size:24px;letter-spacing:.3em;margin:8px 0;padding:12px}.payroll-security-bar{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 16px}.payroll-access{padding:20px;background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:18px}.payroll-access label{display:flex;align-items:center;gap:12px;padding:10px}.payroll-workspace{width:100%;min-width:0}.payroll-workspace .pay-bar,.payroll-workspace .payroll-summary,.payroll-workspace .tablescroll{width:100%;max-width:none}.payroll-workspace .tablescroll{min-width:0}.payroll-workspace .pay-table{width:100%;max-width:none;min-width:1000px}.payroll-workspace .pay-table th{white-space:normal;overflow-wrap:break-word}.payroll-workspace .payroll-table-scroll{max-height:75vh;max-height:75dvh;overflow:auto;isolation:isolate;scrollbar-gutter:stable}.payroll-workspace .pay-table{overflow:visible}.payroll-workspace .pay-table thead th{position:sticky;top:0;z-index:2;background:var(--card-2);box-shadow:0 1px 0 var(--line)}.payroll-table-scroll:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media print{.payroll-workspace .payroll-table-scroll{max-height:none;overflow:visible}.payroll-workspace .pay-table thead th{position:static}.payroll-workspace .pay-table{min-width:0}}.payroll-workspace .pay-bar{flex-wrap:wrap}@media(max-width:600px){.payroll-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-summary>div{padding:12px}.payroll-summary strong{font-size:20px}}