#root,body,html{margin:0;padding:0}:root{--ui:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}body{-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-family:var(--ui);font-size:13px;line-height:1.4}button,input,optgroup,select,textarea{font-family:inherit}html{color-scheme:light}body,html{height:100%}#root{min-height:100%}canvas,img,video{height:auto;max-width:100%}.ant-layout,.ant-layout-content{min-width:0}.ant-table-wrapper{max-width:100%}.ant-table-body,.ant-table-content{overflow-x:auto}.rm{color:#9aa1b0;font-size:.65em;font-weight:600;letter-spacing:.02em;margin-right:.28em;vertical-align:.3em}.amt.neg .rm,.amt.pos .rm,.bal-due .rm,.owe-pill .rm,.paid-pill .rm,.rm-inherit .rm,.status-chip .rm,.tagchip .rm,b.neg .rm,b.pos .rm{color:currentColor;opacity:.7}.docno{background:#f1f3f7;background:var(--surface-2,#f1f3f7);border-radius:5px;color:#4b5563;color:var(--ink-2,#4b5563);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-family:var(--mono);font-size:11.5px;padding:2px 7px;white-space:nowrap}.docno.lg{font-size:14px;padding:3px 9px}.docno.link{cursor:pointer}.docno.link:hover{background:#e8edff;background:var(--primary-soft,#e8edff);color:#1d4ed8;color:var(--primary-d,#1d4ed8)}.ccs-topbar2:empty{display:none}.ccs-topbar2{align-items:center;display:flex;gap:10px;overflow-x:auto;padding:8px 24px;scrollbar-width:none}.ccs-topbar2::-webkit-scrollbar{display:none}.wa-inline-btn,.wa-row-btn{color:#25d366}.wa-inline-btn:hover:not(:disabled),.wa-row-btn:hover:not(:disabled){background:#e7f7ee;color:#128c7e}.wa-inline-btn:disabled,.wa-row-btn:disabled{color:#c8cdd6;cursor:not-allowed}.wa-inline-btn{background:none;border:0;cursor:pointer;font-size:16px;line-height:1;padding:0 0 0 8px;vertical-align:-1px}.cprof .wa-inline-btn:hover{background:none;color:#5df08d}.ccs-menubtn{background:#fff;border:1px solid #e3e6ec;border:1px solid var(--line,#e3e6ec)}body.ccs-flat .ccs-shellbar{border:none!important;box-shadow:none!important}body.ccs-flat .ccs-menubtn{background:#0000;border:none}body.ccs-tinted .ccs-shellbar{background:var(--ccs-topbar-bg)!important}body.ccs-tinted .ccs-menubtn{background:#0000}:root{--ccs-topbar-vpad:8px;--ccs-topbar-h:58px;--ccs-shell-gap:10px;--ccs-shell-pad-x:10px;--stat-invitation:#ff0;--stat-waiting:#cff;--stat-booked:#2563eb;--stat-reminded:#0f0;--stat-confirmed:#090;--stat-arrived:#7c3aed;--stat-billed:#f0f;--stat-late:#fcf;--stat-noshow:red;--stat-waiting_list:#ffa800;--stat-cancelled:#737a89}.stpill{border-radius:4px;color:#fff;flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase;white-space:nowrap}.stpill.invitation{background:#ff0;background:var(--stat-invitation);color:#191c24}.stpill.waiting_approval{background:#cff;background:var(--stat-waiting);color:#191c24}.stpill.waiting_list{background:#ffa800;background:var(--stat-waiting_list);color:#191c24}.stpill.booked{background:#2563eb;background:var(--stat-booked)}.stpill.reminded{background:#0f0;background:var(--stat-reminded);color:#191c24}.stpill.confirmed{background:#090;background:var(--stat-confirmed)}.stpill.arrived{background:#7c3aed;background:var(--stat-arrived)}.stpill.billed{background:#f0f;background:var(--stat-billed)}.stpill.late{background:#fcf;background:var(--stat-late);color:#191c24}.stpill.noshow{background:red;background:var(--stat-noshow)}.stpill.cancelled{background:#737a89;background:var(--stat-cancelled)}.ccs-shellbar{align-items:center;background:#fff;border:1px solid #e3e6ec;border:1px solid var(--line,#e3e6ec);border-radius:12px;box-shadow:0 1px 2px #1418280d;box-sizing:border-box;display:flex;gap:14px;min-height:58px;min-height:var(--ccs-topbar-h,58px);padding:8px 14px;padding:var(--ccs-topbar-vpad,8px) 14px}.ccs-shellframe{display:flex;flex-direction:column;gap:10px;gap:var(--ccs-shell-gap,10px);padding:10px;padding:var(--ccs-shell-gap,10px) var(--ccs-shell-pad-x,10px)}.ccs-shellframe--sticky{padding-top:0}.ccs-shellsticky{background:#eef0f4;background:var(--ccs-shell-bg,#eef0f4);margin-bottom:-10px;margin-bottom:calc(var(--ccs-shell-gap, 10px)*-1);padding:10px 0;padding:var(--ccs-shell-gap,10px) 0;position:-webkit-sticky;position:sticky;top:0;z-index:800}.ccs-reportpage{min-width:0}.ccs-date.ant-picker .ant-picker-input>input,.ccs-date.ant-picker .ant-picker-input>input:focus{background:#0000;border:0;border-radius:0;box-shadow:none;color:inherit;font-family:inherit;font-size:inherit;height:auto;line-height:inherit;margin:0;min-width:0;outline:none;padding:0;width:100%}.hp-launch{align-items:center;background:#1d4ed8;background:var(--ccs-primary,#1d4ed8);border:0;border-radius:22px;bottom:22px;box-shadow:0 6px 20px #1d4ed857;color:#fff;cursor:pointer;display:flex;font-size:13.5px;font-weight:500;gap:8px;height:44px;padding:0 18px 0 14px;position:fixed;right:22px;transition:transform .15s,opacity .15s;z-index:900}.hp-launch:hover{transform:translateY(-1px)}.hp-hide{opacity:0;pointer-events:none;transform:translateY(8px)}.hp-mark{background:#ffffff38;border-radius:50%;display:grid;font-size:13px;font-weight:700;height:21px;place-items:center;width:21px}.hp-scrim{background:#0f142047;inset:0;position:fixed;z-index:950}.hp-panel{background:#fff;bottom:0;box-shadow:0 12px 40px #10182829;display:flex;flex-direction:column;max-width:100vw;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .24s cubic-bezier(.32,.72,.3,1);width:392px;z-index:960}.hp-panel.hp-on{transform:none}.hp-head{border-bottom:1px solid #e3e6ec;flex-shrink:0;padding:13px 16px 12px}.hp-head-row{align-items:center;display:flex;gap:8px}.hp-head-row h2{flex:1 1;font-size:14.5px;font-weight:600;margin:0}.hp-icon{background:none;border:0;border-radius:6px;color:#8a92a6;cursor:pointer;font-size:15px;padding:4px 6px}.hp-icon:hover{background:#f2f4f8;color:#3b4150}.hp-ctx{align-items:center;background:#eff4ff;border-radius:20px;color:#1d4ed8;color:var(--ccs-primary,#1d4ed8);display:inline-flex;font-size:11.5px;font-weight:500;gap:6px;margin-top:11px;padding:4px 11px}.hp-searchwrap{position:relative}.hp-search{border:1px solid #e3e6ec;border-radius:9px;font-size:13px;margin-top:10px;padding:10px 42px 10px 12px;width:100%}.hp-search:focus{border-color:#1d4ed8;border-color:var(--ccs-primary,#1d4ed8);box-shadow:0 0 0 3px #1d4ed81a;outline:none}.hp-mic{background:none;border:0;border-radius:8px;color:#8a92a6;cursor:pointer;font-size:15px;height:30px;line-height:1;position:absolute;right:6px;top:16px;width:30px}.hp-mic:hover{background:#f2f4f8;color:#3b4150}.hp-mic.hp-live{animation:hp-pulse 1.1s infinite;background:#fef2f2;color:#dc2626}@keyframes hp-pulse{0%,to{box-shadow:0 0 0 0 #dc262659}50%{box-shadow:0 0 0 6px #dc262600}}.hp-hearing{align-items:center;color:#dc2626;display:flex;font-size:11.5px;gap:6px;margin-top:7px}.hp-hearing i{animation:hp-pulse 1.1s infinite;background:#dc2626;border-radius:50%;height:6px;width:6px}.hp-fb{align-items:center;border-top:1px solid #e3e6ec;display:flex;gap:8px;margin-top:18px;padding-top:14px}.hp-fb>span:first-child{color:#8a92a6;font-size:12.5px;margin-right:auto}.hp-fb-btn{background:#fff;border:1px solid #e3e6ec;border-radius:7px;cursor:pointer;font-size:13px;line-height:1;padding:5px 12px}.hp-fb-btn:hover{border-color:#c9cfdb}.hp-fb-done{color:#1d4ed8;color:var(--ccs-primary,#1d4ed8);font-size:12.5px;font-weight:500}.hp-body{flex:1 1;overflow-y:auto;padding:14px 16px 24px}.hp-group{color:#8a92a6;font-size:10.5px;font-weight:600;letter-spacing:.07em;margin:16px 0 7px;text-transform:uppercase}.hp-group:first-child{margin-top:0}.hp-row{align-items:flex-start;background:#fff;border:1px solid #e3e6ec;border-radius:9px;color:#1a1f2b;cursor:pointer;display:flex;font-size:13px;gap:9px;line-height:1.45;margin-bottom:6px;padding:10px 12px;text-align:left;width:100%}.hp-row:hover{background:#eff4ff;border-color:#1d4ed8;border-color:var(--ccs-primary,#1d4ed8)}.hp-row em{color:#8a92a6;display:block;font-size:11px;font-style:normal;margin-top:2px}.hp-arrow{color:#8a92a6;flex-shrink:0;margin-left:auto}.hp-empty{color:#8a92a6;font-size:13px;line-height:1.6;padding:34px 12px;text-align:center}.hp-empty b{color:#3b4150;display:block;font-size:13.5px;margin-bottom:5px}.hp-q{font-size:15px;font-weight:600;line-height:1.4;margin:0 0 3px}.hp-where{color:#8a92a6;font-size:11.5px;margin:0 0 15px}.hp-steps{counter-reset:s;list-style:none;margin:0;padding:0}.hp-steps li{color:#3b4150;counter-increment:s;font-size:13px;line-height:1.55;padding:0 0 15px 32px;position:relative}.hp-steps li:before{background:#eff4ff;border-radius:50%;color:#1d4ed8;color:var(--ccs-primary,#1d4ed8);content:counter(s);display:grid;font-size:11px;font-weight:600;height:21px;left:0;place-items:center;position:absolute;top:-1px;width:21px}.hp-steps li:after{background:#e3e6ec;bottom:2px;content:"";left:10px;position:absolute;top:22px;width:1px}.hp-steps li:last-child{padding-bottom:0}.hp-steps li:last-child:after{display:none}.hp-steps b{color:#1a1f2b;font-weight:600}.hp-go{background:#1d4ed8;background:var(--ccs-primary,#1d4ed8);border:0;border-radius:8px;color:#fff;cursor:pointer;font-size:13.5px;font-weight:500;margin-top:18px;padding:11px;width:100%}@media print{.hp-launch,.hp-panel,.hp-scrim{display:none}}.hp-icon-on{background:#eff4ff;color:#1d4ed8;color:var(--ccs-primary,#1d4ed8)}.dashchip{background:#fff;background:var(--ccs-surface,#fff);border:1px solid #e3e6ec;border:1px solid var(--ccs-line,#e3e6ec);border-radius:999px;color:inherit;cursor:pointer;font-size:12.5px;line-height:1.5;padding:4px 13px;transition:background .12s,border-color .12s,color .12s}.dashchip:hover,.dashchip[data-active]{border-color:#2e46e8;border-color:var(--ccs-primary,#2e46e8)}.dashchip[data-active]{background:#2e46e8;background:var(--ccs-primary,#2e46e8);color:#fff;font-weight:600}.dashkpis{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.dashkpi{background:#fff;background:var(--ccs-surface,#fff);border:1px solid #eef0f4;border:1px solid var(--ccs-line,#eef0f4);border-radius:10px;min-width:0;padding:10px 12px}.dashkpi-l{color:#8a90a0;color:var(--ccs-muted,#8a90a0);font-size:11px;letter-spacing:.03em;text-transform:uppercase}.dashkpi-l,.dashkpi-v{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashkpi-v{font-size:20px;font-weight:700;line-height:1.25;margin-top:2px}.dashkpi-s{color:#8a90a0;color:var(--ccs-muted,#8a90a0);font-size:11px;margin-top:1px}.dashcard{border-radius:10px}.dashcard .ant-card-body{padding:8px 10px 10px}.dashgrid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:12px}.dashgrid.wide{grid-template-columns:repeat(auto-fit,minmax(460px,1fr))}.dashbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.dashscroll{overflow-x:auto}.dashpage{overflow-x:hidden;padding:16px}.dashgrid>*,.dashkpis>*,.dashpage{min-width:0}.dashreport-btn{align-items:flex-start;background:#fff;background:var(--ccs-surface,#fff);border:1px solid #eef0f4;border-left:4px solid #2e46e8;border:1px solid var(--ccs-line,#eef0f4);border-left:4px solid var(--ccs-primary,#2e46e8);border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:3px;min-width:0;padding:11px 13px;text-align:left;transition:background .12s,border-color .12s}.dashreport-btn:hover{background:#f6f7fb;background:var(--ccs-hover,#f6f7fb)}.dashreport-btn:focus-visible{outline:2px solid #2e46e8;outline:2px solid var(--ccs-primary,#2e46e8);outline-offset:2px}.dashreport-btn .drb-t{color:#1d2233;color:var(--ccs-ink,#1d2233);font-size:13px;font-weight:600}.dashreport-btn .drb-h{color:#8a90a0;color:var(--ccs-muted,#8a90a0);font-size:11.5px;line-height:1.35;white-space:normal}.ovhead{align-items:center;display:flex;flex-wrap:wrap;gap:14px;margin-bottom:12px}.ovhead-t{align-items:baseline;gap:10px}.ovhead-t,.ovreports{display:flex;flex-wrap:wrap;min-width:0}.ovreports{gap:8px;margin-left:auto}.dashreport-btn.compact{align-items:center;flex-direction:row;padding:7px 12px}.dashreport-btn.compact .drb-t{font-size:12.5px;white-space:nowrap}.sapx{align-items:center;background:#1418286b;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1200}.sapx .sap-modal{--p:#5547e8;--pd:#4438d0;--psoft:#eef0fb;--line:#e8eaf1;--line2:#d9dce8;--surf2:#f7f8fc;--ink:#1b1f33;--ink2:#454a66;--muted:#767c96;--faint:#a3a8bd;--green:#12a150;--amber:#c08b00;--rose:#d92d20;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;border-radius:16px;box-shadow:0 12px 40px #1418282e;color:var(--ink);display:flex;flex-direction:column;height:min(620px,92vh);overflow:hidden;width:min(980px,96vw)}.sapx .sap-head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:15px 20px}.sapx .sap-head h2{font-size:15px;font-weight:600;margin:0}.sapx .sap-head h2 span{color:var(--muted);font-weight:500}.sapx .sap-x{background:#0000;border:none;border-radius:8px;color:var(--muted);cursor:pointer;font-size:18px;height:30px;width:30px}.sapx .sap-x:hover{background:var(--surf2);color:var(--ink)}.sapx .sap-roletabs{background:var(--surf2);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px}.sapx .sap-roletab{align-items:center;background:#fff;border:1px solid var(--line2);border-radius:9px;color:var(--ink2);cursor:pointer;display:flex;font-size:12.5px;font-weight:600;gap:7px;padding:7px 14px}.sapx .sap-roletab.on{background:var(--p);border-color:var(--p);color:#fff}.sapx .sap-roletab .cnt{background:#00000014;border-radius:5px;font-family:var(--mono);font-size:10px;padding:1px 5px}.sapx .sap-roletab.on .cnt{background:#ffffff40}.sapx .sap-body{display:flex;flex:1 1;min-height:0}.sapx .sap-left{border-right:1px solid var(--line);display:flex;flex:1 1;flex-direction:column;min-width:0;padding:14px 18px}.sapx .sap-depts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.sapx .sap-dt{background:#fff;border:1px solid var(--line2);border-radius:8px;color:var(--ink2);cursor:pointer;font-size:11.5px;font-weight:500;padding:5px 11px}.sapx .sap-dt.on{background:var(--p);border-color:var(--p);color:#fff}.sapx .sap-search input{background:var(--surf2);border:1px solid var(--line2);border-radius:9px;font-size:12.5px;height:38px;margin-bottom:12px;padding:0 12px;width:100%}.sapx .sap-search input:focus{background:#fff;border-color:var(--p);box-shadow:0 0 0 3px var(--psoft);outline:none}.sapx .sap-grid{grid-gap:8px;align-content:start;display:grid;flex:1 1;gap:8px;grid-template-columns:1fr 1fr;overflow-y:auto}.sapx .sap-none{color:var(--faint);grid-column:1/-1;padding:24px;text-align:center}.sapx .sap-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:9px 11px}.sapx .sap-card.sel,.sapx .sap-card:hover{border-color:var(--p)}.sapx .sap-card.sel{background:var(--psoft)}.sapx .sap-box{border:1.8px solid var(--line2);border-radius:5px;color:#fff;display:grid;flex-shrink:0;font-size:11px;height:18px;place-items:center;width:18px}.sapx .sap-card.sel .sap-box{background:var(--p);border-color:var(--p)}.sapx .sap-av{background:#eef0fb;border-radius:9px;color:var(--p);display:grid;flex-shrink:0;font-size:13px;font-weight:700;height:34px;place-items:center;width:34px}.sapx .sap-nm{font-size:12.5px;font-weight:600;line-height:1.2}.sapx .sap-cd{color:var(--muted);font-family:var(--mono);font-size:10.5px}.sapx .sap-right{background:var(--surf2);display:flex;flex-direction:column;flex-shrink:0;gap:12px;overflow-y:auto;padding:14px 16px;width:340px}.sapx .sap-selhd{align-items:center;display:flex;justify-content:space-between}.sapx .sap-selhd .t{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.sapx .sap-selhd .tot{font-family:var(--mono);font-size:12px;font-weight:700}.sapx .sap-selhd .tot.ok{color:var(--green)}.sapx .sap-selhd .tot.warn{color:var(--amber)}.sapx .sap-empty{color:var(--faint);font-size:11.5px}.sapx .sap-picks{display:flex;flex-direction:column;gap:8px}.sapx .sap-pick{align-items:center;display:flex;gap:8px}.sapx .sap-pick .pa{background:#eef0fb;border-radius:7px;color:var(--p);display:grid;font-size:11px;font-weight:700;height:26px;place-items:center;width:26px}.sapx .sap-pick .pn{flex:1 1;font-size:12px;font-weight:600;min-width:0}.sapx .sap-pick .pn .pc{color:var(--muted);font-family:var(--mono);font-size:10.5px;font-weight:500;margin-left:4px}.sapx .ratew{align-items:center;background:#fff;border:1px solid var(--line2);border-radius:7px;display:flex;height:28px;padding:0 6px 0 8px;width:78px}.sapx .ratew:focus-within{border-color:var(--p);box-shadow:0 0 0 2px var(--psoft)}.sapx .ratew input{background:#0000;border:none;font-family:var(--mono);font-size:12px;outline:none;width:100%}.sapx .ratew .pct{color:var(--muted);font-family:var(--mono);font-size:11px}.sapx .ptrash{background:#0000;border:none;border-radius:6px;color:var(--faint);cursor:pointer;height:24px;width:24px}.sapx .ptrash:hover{background:#fde7e7;color:var(--rose)}.sapx .sap-foot{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;padding:12px 20px}.sapx .sap-btn{background:#fff;border:1px solid var(--line2);border-radius:9px;color:var(--ink2);cursor:pointer;font-size:13px;font-weight:600;height:38px;padding:0 18px}.sapx .sap-btn:hover{background:var(--surf2)}.sapx .sap-btn.primary{background:var(--p);border:none;box-shadow:0 4px 14px #5547e852;color:#fff;padding:0 26px}.sapx .sap-btn.primary:hover{background:var(--pd)}.sapx .sap-btn:disabled{cursor:not-allowed;opacity:.55}@media (max-width:760px){.sapx .sap-body{flex-direction:column}.sapx .sap-right{border-top:1px solid var(--line);width:auto}.sapx .sap-grid{grid-template-columns:1fr}}.bkapp{--bg:#eef0f4;--surface:#fff;--surface-2:#f7f8fa;--ink:#191c24;--ink-2:#3b4150;--muted:#737a89;--faint:#9aa1b0;--line:#e3e6ec;--line-strong:#d3d8e0;--primary:#5547e8;--primary-d:#4438c9;--primary-soft:#ecebfd;--green:#0e9f6e;--green-soft:#e3f6ee;--blue:#2563eb;--blue-soft:#e6efff;--violet:#7c3aed;--violet-soft:#f0e9ff;--amber:#c2730b;--amber-soft:#fcf0db;--rose:#e02424;--rose-soft:#fde7e7;--teal:#0f9488;--teal-soft:#d6f3ef;--orange:#dd6b1f;--orange-soft:#fce8d6;--pink:#c72d84;--pink-soft:#fbe3f0;--cyan:#0e7fa8;--cyan-soft:#d7edf6;--yellow:#ca8a04;--yellow-soft:#fef3c7;--lgreen:#65a30d;--lgreen-soft:#ecfccb;--lred:#ef4444;--lred-soft:#fee2e2;--red:#b91c1c;--red-soft:#fecaca;--mono:"JetBrains Mono",ui-monospace,monospace;--ui:"Inter",system-ui,-apple-system,sans-serif;--shadow:0 1px 2px #1418280d,0 1px 3px #1418280f;--shadow-lg:0 12px 40px #14182829}.bkapp *{box-sizing:border-box;margin:0;padding:0}.bkapp{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--ink);font-family:var(--ui);font-size:13px;height:100%;line-height:1.4}.bkapp button{cursor:pointer}.bkapp button,.bkapp input,.bkapp select,.bkapp textarea{font-family:inherit}.bkapp .mono{font-feature-settings:"tnum";font-family:var(--mono);font-variant-numeric:tabular-nums}.bkapp .app{display:flex;flex-direction:column;gap:10px;gap:var(--ccs-shell-gap,10px);height:100vh;padding:10px;padding:var(--ccs-shell-gap,10px) var(--ccs-shell-pad-x,10px)}.bkapp .topbar{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);flex-wrap:wrap;gap:8px 14px;min-height:58px;min-height:var(--ccs-topbar-h,58px);padding:8px 14px;padding:var(--ccs-topbar-vpad,8px) 14px}.bkapp .brand,.bkapp .topbar{align-items:center;display:flex}.bkapp .brand{flex-shrink:0;gap:10px}.bkapp .logo{background:linear-gradient(135deg,var(--primary),#8b7cff);background:linear-gradient(135deg,var(--ccs-primary,var(--primary)),#8b7cff);border-radius:9px;color:#fff;display:grid;flex-shrink:0;font-size:15px;font-weight:700;height:34px;letter-spacing:-.5px;place-items:center;width:34px}.bkapp .brand .name{font-size:14px;font-weight:600;line-height:1.1;white-space:nowrap}.bkapp .brand .branch{align-items:center;color:var(--muted);display:flex;font-size:11px;gap:5px;margin-top:2px;white-space:nowrap}.bkapp .branch .dot{background:var(--green);border-radius:50%;flex-shrink:0;height:6px;width:6px}.bkapp .spacer{flex:1 0;min-width:0}.bkapp .pill-btn{align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:9px;color:var(--ink-2);display:flex;flex-shrink:0;font-size:12px;font-weight:500;gap:7px;height:34px;padding:0 13px;white-space:nowrap}.bkapp .pill-btn:hover{background:var(--surface-2)}.bkapp .tbtn{align-items:center;border:none;border-radius:9px;display:flex;flex-shrink:0;font-size:12.5px;font-weight:600;gap:6px;height:34px;padding:0 14px;white-space:nowrap}.bkapp .tbtn-book{background:var(--green-soft);color:var(--green)}.bkapp .tbtn-book:hover{background:#cdeee1}.bkapp .cashier{align-items:center;border-left:1px solid var(--line);display:flex;flex-shrink:0;gap:9px;padding-left:14px;white-space:nowrap}.bkapp .cashier .av{background:#ffe4d4;border-radius:50%;color:#c2410c;display:grid;font-size:12px;font-weight:700;height:30px;place-items:center;width:30px}.bkapp .cashier .t{font-size:12px;font-weight:600;line-height:1.1}.bkapp .cashier .s{color:var(--muted);font-size:10px}.bkapp .datenav{align-items:center;border-left:1px solid var(--line);display:flex;flex-shrink:0;gap:8px;margin-left:4px;padding-left:16px}.bkapp .datenav button:not(.today){background:#fff;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink-2);display:grid;flex-shrink:0;height:30px;place-items:center;width:30px}.bkapp .datenav button:not(.today):hover{background:var(--surface-2);border-color:var(--primary);color:var(--primary)}.bkapp .datenav .dlabel{min-width:118px;text-align:center}.bkapp .datenav .dlabel .dd{font-family:var(--mono);font-size:13.5px;font-weight:700;line-height:1.1}.bkapp .datenav .dlabel .wd{color:var(--muted);font-size:10px}.bkapp .datenav .today{align-items:center;background:var(--primary);border:1px solid #0000;border-radius:8px;box-shadow:var(--shadow);box-sizing:border-box;color:#fff;display:inline-flex;flex-shrink:0;font-size:11.5px;font-weight:700;height:30px;line-height:28px;padding:0 15px;white-space:nowrap;width:auto}.bkapp .datenav .today:hover{background:var(--primary-d)}.bkapp .dlabel{border-radius:8px;cursor:pointer;padding:2px 8px;position:relative}.bkapp .dlabel:hover{background:var(--surface-2)}.bkapp .tbtn-pos{background:var(--primary-soft);color:var(--primary);text-decoration:none}.bkapp .tbtn-pos:hover{background:#e0deff}.bkapp .datepicker-pop{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);cursor:default;display:none;left:50%;padding:12px;position:absolute;top:calc(100% + 8px);transform:translateX(-50%);width:250px;z-index:30}.bkapp .datepicker-pop.open{display:block}.bkapp .dp-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.bkapp .dp-head button{background:#fff;border:1px solid var(--line-strong);border-radius:7px;color:var(--ink-2);display:grid;flex-shrink:0;height:26px;place-items:center;width:26px}.bkapp .dp-head button:hover{background:var(--surface-2)}.bkapp .dp-title{color:var(--ink);font-size:12px;font-weight:700}.bkapp .dp-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.bkapp .dp-wd{color:var(--faint);font-size:9px;font-weight:600;padding:3px 0;text-align:center}.bkapp .dp-day{align-items:center;border-radius:7px;color:var(--ink-2);cursor:pointer;display:flex;font-family:var(--mono);font-size:11px;height:27px;justify-content:center}.bkapp .dp-day:hover{background:var(--primary-soft)}.bkapp .dp-day.sel{background:var(--primary);color:#fff;font-weight:700}.bkapp .dp-day.today-mark{border:1.5px solid var(--primary)}.bkapp .dp-day.blank{cursor:default;visibility:hidden}.bkapp .appt-error{background:var(--rose-soft);color:var(--rose);font-size:12px;gap:8px;padding:9px 12px}.bkapp .appt-error,.bkapp .dur-suggest{align-items:center;border-radius:9px;display:none;font-weight:600}.bkapp .dur-suggest{background:var(--amber-soft);color:var(--amber);font-size:11.5px;gap:10px;justify-content:space-between;margin-top:-8px;padding:8px 10px 8px 12px}.bkapp .dur-suggest.show{display:flex}.bkapp .dur-suggest span{line-height:1.35}.bkapp .dur-suggest button{background:#fff;border:1px solid var(--amber);border-radius:7px;color:var(--amber);flex-shrink:0;font-size:11px;font-weight:700;height:28px;padding:0 12px;white-space:nowrap}.bkapp .dur-suggest button:hover{background:var(--amber);color:#fff}.bkapp .nowctrl{align-items:center;color:var(--muted);display:flex;flex-shrink:0;font-size:11px;gap:7px;margin-left:14px}.bkapp .nowctrl input{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:8px;font-family:var(--mono);font-size:12px;height:30px;padding:0 8px;width:92px}.bkapp .nowctrl input:focus{background:#fff;border-color:var(--primary);outline:none}.bkapp .footbar{align-items:center;background:none;border:none;box-shadow:none;display:flex;flex-shrink:0;flex-wrap:wrap;gap:12px;margin-top:auto;padding:8px 2px}.bkapp .footbar .legend{flex:1 1}.bkapp .footbar .pill-btn{margin-left:auto}.bkapp .footbar .pill-btn+.foot-new{margin-left:0}.bkapp .footbar .foot-new{background:var(--primary);border:none;border-radius:9px;color:#fff;cursor:pointer;font-size:12.5px;font-weight:600;height:32px;margin-left:auto;padding:0 18px;white-space:nowrap}.bkapp .footbar .foot-new:hover{background:#4438c9;background:var(--primary-dark,#4438c9)}.bkapp .legend{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:6px 20px}.bkapp .legend .lg{align-items:center;color:var(--ink-2);display:flex;font-size:12px;font-weight:600;gap:6px;white-space:nowrap}.bkapp .dot{border-radius:50%;display:inline-block;flex-shrink:0;height:8px;width:8px}.bkapp .legend .dot{box-shadow:0 0 0 1px #0000000f}.bkapp .legend .dot,.bkapp .status-banner .dot{height:11px;width:11px}.bkapp .bsearch{margin-left:auto;min-width:220px;position:relative}.bkapp .bsearch input{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:9px;color:var(--ink);font-size:12.5px;height:34px;padding:0 12px 0 32px;width:100%}.bkapp .bsearch input:focus{background:#fff;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.bkapp .bsearch svg{color:var(--faint);left:10px;position:absolute;top:50%;transform:translateY(-50%)}.bkapp .body,.bkapp .cal-card{display:flex;flex:1 1;min-height:0}.bkapp .cal-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);flex-direction:column;overflow:hidden}.bkapp .cal-scroll{flex:1 1;overflow:auto;position:relative}.bkapp .cal-grid{display:grid;position:relative;-webkit-user-select:none;user-select:none}.bkapp .cal-corner{border-right:1px solid var(--line-strong);left:0;z-index:8}.bkapp .cal-colhead,.bkapp .cal-corner{background:var(--surface-2);border-bottom:1px solid var(--line-strong);height:58px;position:-webkit-sticky;position:sticky;top:0}.bkapp .cal-colhead{align-items:center;border-right:1px solid var(--line);display:flex;gap:8px;min-width:152px;padding:8px 10px;z-index:7}.bkapp .cal-colhead .av{background:#eef0fb;border-radius:9px;color:var(--primary);display:grid;flex-shrink:0;font-size:12px;font-weight:700;height:30px;place-items:center;width:30px}.bkapp .cal-colhead .nm{font-size:13.5px;font-weight:600;line-height:1.2}.bkapp .cal-colhead .dp{color:var(--faint);font-size:10px}.bkapp .cal-colhead.is-off{background:#f4f5f7;background:var(--surface-3,#f4f5f7)}.bkapp .cal-colhead.is-off .nm{color:var(--faint);font-weight:500}.bkapp .cal-colhead.is-off .av{background:#eceef1;color:var(--faint)}.bkapp .cal-colhead.is-off .dp{font-style:italic}.bkapp .timegutter-wrap{background:var(--surface);border-right:1px solid var(--line-strong);grid-column:1;grid-row:2/-1;left:0;position:-webkit-sticky;position:sticky;z-index:6}.bkapp .cal-timecell{color:var(--faint);font-family:var(--mono);font-size:10px;height:16px;line-height:16px;padding:0 8px;position:relative;text-align:right}.bkapp .cal-timecell.hr{color:var(--ink-2);font-size:11px;font-weight:600}.bkapp .cal-timecell.hr:before{border-top:1px solid var(--line-strong);content:"";left:0;position:absolute;right:0;top:0}.bkapp .cal-timecell.hf:before{border-top:1px dashed var(--line);content:"";left:0;position:absolute;right:0;top:0}.bkapp .staffcol-wrap{border-right:1px solid var(--line);position:relative}.bkapp .cal-cell{border-top:1px solid #f1f2f5;border-top:1px solid var(--line-faint,#f1f2f5);cursor:pointer;height:16px;position:relative}.bkapp .cal-cell.hr{border-top:1px solid var(--line-strong)}.bkapp .cal-cell.hf{border-top:1px dashed var(--line)}.bkapp .cal-cell:hover{background:var(--primary-soft)}.bkapp .staffcol-wrap:after{background:repeating-linear-gradient(180deg,#0000 0 15px,#ffffff29 15px 16px);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:3}.bkapp .leave-overlay{background:repeating-linear-gradient(135deg,var(--rose-soft),var(--rose-soft) 8px,#fdf0f0 8px,#fdf0f0 16px);cursor:not-allowed;inset:0;pointer-events:none;position:absolute;z-index:1}.bkapp .leave-overlay.offday{background:repeating-linear-gradient(135deg,#e9eaee,#e9eaee 8px,#f4f5f7 0,#f4f5f7 16px)}.bkapp .leave-banner{background:var(--rose);border-radius:20px;box-shadow:var(--shadow);color:#fff;font-size:11px;font-weight:700;margin:6px auto 0;padding:5px 12px;pointer-events:auto;position:-webkit-sticky;position:sticky;top:6px;width:-webkit-fit-content;width:fit-content;z-index:4}.bkapp .leave-banner.offday{background:#6b7280}.bkapp .drag-preview{align-items:center;background:var(--primary-soft);border:1.5px dashed var(--primary);border-radius:8px;color:var(--primary-d);display:flex;font-family:var(--mono);font-size:11.5px;font-weight:700;justify-content:center;left:3px;pointer-events:none;position:absolute;right:3px;z-index:4}.bkapp .now-line{border-top:2px solid var(--rose);height:0;left:0;pointer-events:none;position:absolute;right:0;z-index:5}.bkapp .now-line:before{background:var(--rose);border-radius:50%;content:"";height:8px;left:-5px;position:absolute;top:-4px;width:8px}.bkapp .book-block{border-left:3px solid;border-radius:8px;box-shadow:var(--shadow),0 0 0 1.5px #fff;cursor:pointer;display:flex;flex-direction:column;gap:1px;overflow:hidden;padding:4px 8px 5px;position:absolute;transition:.12s;z-index:2}.bkapp .book-block:hover{box-shadow:var(--shadow-lg);z-index:3}.bkapp .book-block.dimmed{filter:grayscale(.4);opacity:.2}.bkapp .book-block.compact{justify-content:center}.bkapp .book-block .bnm{color:var(--ink);flex-shrink:0;font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bkapp .book-block .btm{align-items:center;color:var(--muted);display:flex;flex-shrink:0;flex-wrap:wrap;font-family:var(--mono);font-size:9px;gap:4px;margin-top:auto}.bkapp .note-flag{font-size:9px;line-height:1;opacity:.85;pointer-events:none;position:absolute;right:5px;top:3px}.bkapp .book-block .bnote{-webkit-box-orient:vertical;color:var(--ink-2);display:-webkit-box;flex-shrink:0;font-size:9.5px;font-weight:500;line-height:12px;opacity:.85;overflow:hidden;white-space:normal}.bkapp .stpill{border-radius:4px;color:#fff;flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.bkapp .book-block.st-invitation{background:var(--stat-invitation);border-left-color:var(--stat-invitation)}.bkapp .book-block.st-waiting_approval{background:repeating-linear-gradient(135deg,var(--stat-waiting),var(--stat-waiting) 7px,#ffffff73 7px,#ffffff73 14px);border-left-color:var(--stat-waiting);outline:1px dashed #00000047;outline-offset:-3px}.bkapp .book-block.st-waiting_list{background:repeating-linear-gradient(135deg,var(--stat-waiting_list),var(--stat-waiting_list) 7px,#ffffff80 7px,#ffffff80 14px);border-left-color:var(--stat-waiting_list);outline:1px dashed #00000047;outline-offset:-3px}.bkapp .book-block.st-booked{background:var(--stat-booked);border-left-color:var(--stat-booked)}.bkapp .book-block.st-reminded{background:var(--stat-reminded);border-left-color:var(--stat-reminded)}.bkapp .book-block.st-confirmed{background:var(--stat-confirmed);border-left-color:var(--stat-confirmed)}.bkapp .book-block.st-arrived{background:var(--stat-arrived);border-left-color:var(--stat-arrived)}.bkapp .book-block.st-billed{background:var(--stat-billed);border-left-color:var(--stat-billed)}.bkapp .book-block.st-late{animation:latepulse 1.4s ease-in-out infinite;background:var(--stat-late);border-left-color:var(--stat-late)}.bkapp .book-block.st-noshow{background:var(--stat-noshow);border-left-color:var(--stat-noshow)}.bkapp .book-block.st-arrived .bnm,.bkapp .book-block.st-billed .bnm,.bkapp .book-block.st-booked .bnm,.bkapp .book-block.st-confirmed .bnm,.bkapp .book-block.st-noshow .bnm{color:#fff}.bkapp .book-block.st-arrived .btm,.bkapp .book-block.st-billed .btm,.bkapp .book-block.st-booked .btm,.bkapp .book-block.st-confirmed .btm,.bkapp .book-block.st-noshow .btm{color:#ffffffd9}.bkapp .book-block.st-arrived .bnote,.bkapp .book-block.st-billed .bnote,.bkapp .book-block.st-booked .bnote,.bkapp .book-block.st-confirmed .bnote,.bkapp .book-block.st-noshow .bnote{color:#ffffffe6}.bkapp .book-block.st-cancelled{background:repeating-linear-gradient(135deg,#f3f4f7,#f3f4f7 6px,#eaecf0 0,#eaecf0 12px);border-left-color:var(--line-strong);opacity:.7}.bkapp .book-block.st-cancelled .bnm{text-decoration:line-through}@keyframes latepulse{0%,to{box-shadow:0 0 0 0 #ff96dc80}50%{box-shadow:0 0 0 5px #ff96dc00}}.bkapp .dot.invitation{background:var(--stat-invitation)}.bkapp .dot.waiting_approval{background:var(--stat-waiting)}.bkapp .dot.waiting_list{background:var(--stat-waiting_list)}.bkapp .dot.booked{background:var(--stat-booked)}.bkapp .dot.reminded{background:var(--stat-reminded)}.bkapp .dot.confirmed{background:var(--stat-confirmed)}.bkapp .dot.arrived{background:var(--stat-arrived)}.bkapp .dot.billed{background:var(--stat-billed)}.bkapp .dot.late{background:var(--stat-late)}.bkapp .dot.noshow{background:var(--stat-noshow)}.bkapp .dot.cancelled{background:var(--muted)}.bkapp .overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1418286b;display:none;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.bkapp .overlay.open{display:flex}.bkapp #delConfirmOverlay,.bkapp #delLogOverlay,.bkapp #sendMsgOverlay,.bkapp #simOverlay{z-index:60}.bkapp .modal{background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden}.bkapp .m-head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:16px 22px}.bkapp .m-head h2{font-size:15px;font-weight:600}.bkapp .m-head h2 span{color:var(--muted);font-size:12.5px;font-weight:500}.bkapp .m-close{background:#0000;border:none;border-radius:8px;color:var(--muted);display:grid;font-size:18px;height:30px;place-items:center;width:30px}.bkapp .m-close:hover{background:var(--surface-2);color:var(--ink)}.bkapp .m-foot{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;padding:14px 22px}.bkapp .m-confirm{background:var(--primary);border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:600;height:40px;min-width:90px;padding:0 22px}.bkapp .m-confirm:disabled{cursor:not-allowed;opacity:.45}.bkapp .m-confirm:hover{background:var(--primary-d)}.bkapp .m-confirm.ghost{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-2)}.bkapp .m-confirm.rose-solid{background:var(--rose)}.bkapp .m-confirm.rose-solid:hover{background:#c01f1f}.bkapp .m-confirm.pos-btn{align-items:center;background:var(--primary-soft);color:var(--primary);display:inline-flex;gap:6px;justify-content:center;text-decoration:none}.bkapp .m-confirm.pos-btn:hover{background:#e0deff}.bkapp .m-confirm.pos-btn.disabled{opacity:.45;pointer-events:none}.bkapp .modal.appt,.bkapp .modal.bdetail{max-height:92vh;width:min(640px,96vw)}.bkapp .modal.sim{width:min(420px,94vw)}.bkapp .appt-body,.bkapp .step-body{display:flex;flex:1 1;flex-direction:column;gap:16px;min-height:0;overflow-y:auto;padding:18px 22px;scrollbar-gutter:stable}.bkapp .fld{display:flex;flex-direction:column;gap:6px}.bkapp .fld>label{color:var(--ink-2);font-size:11.5px;font-weight:600}.bkapp .req{color:var(--rose);font-size:11px;margin-left:2px}.bkapp .row2{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.bkapp .row-datetime{align-items:flex-start;display:flex;gap:14px}.bkapp .row-datetime .dt-date{flex:0 0 150px}.bkapp .row-datetime .dt-time{flex:1 1;min-width:0}.bkapp .d-text,.bkapp .sel-field{background:#fff;border:1px solid var(--line-strong);border-radius:9px;color:var(--ink);font-size:13px;height:42px;padding:0 12px;width:100%}.bkapp .d-text:focus,.bkapp .sel-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.bkapp .time-range{align-items:center;display:flex;gap:10px}.bkapp .time-range input[type=time]{background:#fff;border:1px solid var(--line-strong);border-radius:9px;flex:1 1;font-family:var(--mono);font-size:13px;height:42px;padding:0 12px}.bkapp .time-range input[type=time]:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.bkapp .time-range .arrow{color:var(--faint);flex-shrink:0}.bkapp .dur-badge{background:var(--primary-soft);border-radius:999px;color:var(--primary);flex-shrink:0;font-family:var(--mono);font-size:11px;font-weight:700;padding:4px 10px;white-space:nowrap}.bkapp .dur-badge.bad{background:var(--rose-soft);color:var(--rose)}.bkapp .d-note{border:1px solid var(--line-strong);border-radius:9px;font-size:13px;min-height:60px;padding:9px 12px;resize:vertical;width:100%}.bkapp .d-note:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.bkapp .combo-wrap{position:relative}.bkapp .combo-wrap .clr{align-items:center;background:#0000;border:none;border-radius:7px;color:var(--faint);display:none;height:24px;justify-content:center;position:absolute;right:8px;top:50%;transform:translateY(-50%);width:24px}.bkapp .combo-wrap.picked .clr{display:flex}.bkapp .combo-panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);display:none;left:0;max-height:260px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:20}.bkapp .combo-panel.open{display:block}.bkapp .combo-item{align-items:center;cursor:pointer;display:flex;gap:9px;padding:9px 12px}.bkapp .combo-item .cr-av,.bkapp .combo-item:hover{background:var(--primary-soft)}.bkapp .combo-item .cr-av{border-radius:50%;color:var(--primary);display:grid;flex-shrink:0;font-size:11px;font-weight:700;height:28px;place-items:center;width:28px}.bkapp .combo-item .cr-nm{font-size:12.5px;font-weight:600}.bkapp .combo-item .cr-mt{color:var(--muted);font-family:var(--mono);font-size:10.5px}.bkapp .combo-walkin{border-bottom:1px solid var(--line);color:var(--primary);font-weight:600}.bkapp .combo-none{color:var(--faint);font-size:12px;padding:14px;text-align:center}.bkapp .tier{background:linear-gradient(135deg,#b8860b,#e0a000);border-radius:5px;color:#fff;font-size:9px;font-weight:700;letter-spacing:.4px;margin-left:6px;padding:1px 6px}.bkapp .notify-box{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:12px 14px}.bkapp .notify-title{color:var(--faint);font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.bkapp .status-banner{align-items:center;border-radius:9px;display:flex;font-size:14px;font-weight:700;gap:9px;padding:11px 14px}.bkapp .d-readbar{grid-row-gap:10px;display:grid;flex-shrink:0;grid-auto-rows:1fr;grid-template-columns:1fr 1fr;row-gap:10px}.bkapp .d-readbar>div{background:var(--surface-2);border:1px solid var(--line);display:flex;flex-direction:column;gap:5px;justify-content:center;min-width:0;padding:13px 18px}.bkapp .d-readbar>div:nth-child(odd){border-radius:10px 0 0 10px;border-right:none}.bkapp .d-readbar>div:nth-child(2n){border-radius:0 10px 10px 0}.bkapp .d-readbar .dk{color:var(--faint);font-size:10px;letter-spacing:.5px;text-transform:uppercase}.bkapp .d-readbar .dv{font-family:var(--mono);font-size:13px;font-weight:600;line-height:1.45;overflow-wrap:anywhere;white-space:normal}.bkapp .sess-meta{align-items:center;display:flex;gap:11px}.bkapp .sess-meta .av{background:#eef0fb;border-radius:9px;color:var(--primary);display:grid;flex-shrink:0;font-size:13px;font-weight:700;height:36px;place-items:center;width:36px}.bkapp .sess-meta .info{flex:1 1;min-width:0}.bkapp .sess-meta .nm{font-size:13px;font-weight:600;line-height:1.2}.bkapp .sess-meta .mt{color:var(--muted);font-family:var(--mono);font-size:10.5px;margin-top:2px}.bkapp .pending-box{background:var(--orange-soft);border:1px solid var(--orange);border-radius:10px;display:flex;flex-direction:column;gap:8px;padding:12px 14px}.bkapp .pending-box .pk{color:var(--orange);font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.bkapp .pending-box .pv{color:var(--ink);font-family:var(--mono);font-size:13px;font-weight:600}.bkapp .detail-actions{display:flex;flex-wrap:wrap;gap:8px}.bkapp .action-group{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.bkapp .action-group:last-child{margin-bottom:0}.bkapp .mark-pill.stpill{border:2px solid #0000;border-radius:7px;cursor:pointer;font-size:11px;font-weight:700;letter-spacing:.2px;padding:7px 13px;text-transform:none;transition:.12s}.bkapp .mark-pill.stpill:disabled{cursor:default;filter:grayscale(.4);opacity:.32}.bkapp .mark-pill.stpill.current{border-color:#000;cursor:default}.bkapp .mark-pill.stpill:hover:not(:disabled):not(.current){filter:brightness(1.08)}.bkapp .dbtn.sel-btn{border-width:2px;cursor:pointer}.bkapp .dbtn.sel-btn.selected{border-color:#000}.bkapp .mark-pill.stpill.sel-btn{cursor:pointer;filter:none;opacity:1}.bkapp .mark-pill.stpill.sel-btn:hover:not(.current){filter:brightness(1.08)}.bkapp .dbtn{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:9px;color:var(--ink-2);display:flex;font-size:12.5px;font-weight:600;gap:6px;height:38px;padding:0 15px}.bkapp .dbtn:hover{background:var(--surface-2)}.bkapp .dbtn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.bkapp .dbtn.primary:hover{background:var(--primary-d)}.bkapp .dbtn.green{background:var(--green-soft);border-color:#0000;color:var(--green)}.bkapp .dbtn.violet{background:var(--violet-soft);border-color:#0000;color:var(--violet)}.bkapp .dbtn.rose{background:var(--rose-soft);border-color:#0000;color:var(--rose)}.bkapp .dbtn.rose-outline{background:#fff;border-color:var(--rose);color:var(--rose)}.bkapp .dbtn.rose-outline:hover{background:var(--rose-soft)}.bkapp .dbtn.cyan{background:var(--cyan-soft);border-color:#0000;color:var(--cyan)}.bkapp .sec-title{color:var(--faint);font-size:10px;font-weight:700;letter-spacing:.7px;margin-bottom:10px;text-transform:uppercase}.bkapp .note-txt{color:var(--ink-2);font-size:12.5px;line-height:1.5}.bkapp .sim-link-card{background:var(--surface-2);border:1px dashed var(--line-strong);border-radius:10px;color:var(--muted);font-family:var(--mono);font-size:11px;padding:10px 12px;word-break:break-all}.bkapp .sim-appt-card{background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:14px}.bkapp .sim-appt-card .svc{font-size:15px;font-weight:700}.bkapp .sim-appt-card .mt{color:var(--muted);font-family:var(--mono);font-size:12px}.bkapp .sim-actions{display:flex;gap:10px}.bkapp .sim-btn{align-items:center;border:none;border-radius:10px;display:flex;flex:1 1;font-size:13px;font-weight:700;gap:6px;height:44px;justify-content:center}.bkapp .sim-btn.accept{background:var(--green);color:#fff}.bkapp .sim-btn.accept:hover{background:#0c8a5f}.bkapp .sim-btn.resched{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-2)}.bkapp .sim-btn.resched:hover{background:#eef0f3}.bkapp ::-webkit-scrollbar{height:9px;width:9px}.bkapp ::-webkit-scrollbar-thumb{background:#cdd2dc;background-clip:padding-box;border:2px solid #0000;border-radius:6px}.bkapp ::-webkit-scrollbar-thumb:hover{background:#b4bbc7;background-clip:padding-box}@media (max-width:1400px){.bkapp .cal-colhead{min-width:132px}}@media (max-width:820px){.bkapp .topbar{height:auto}.bkapp .datenav{margin-left:0;padding-left:8px}.bkapp .nowctrl{margin-left:8px}.bkapp .bsearch{min-width:140px}}@media (max-width:560px){.bkapp .app{gap:8px;padding:6px}.bkapp .topbar{flex-wrap:wrap;gap:8px 10px;padding:7px 10px}.bkapp .cashier,.bkapp .nowctrl{display:none}.bkapp .datenav{border-left:none;margin-left:0;padding-left:0}.bkapp .modal.appt,.bkapp .modal.bdetail{max-height:90vh;width:96vw}.bkapp .d-readbar,.bkapp .row2{grid-template-columns:1fr}.bkapp .d-readbar>div:nth-child(2n){border-left:none}.bkapp .d-readbar>div:nth-child(n+2){border-top:1px solid var(--line)}.bkapp .row-datetime{flex-direction:column}.bkapp .row-datetime .dt-date{flex:0 0 auto}.bkapp .m-head{padding:12px 14px}.bkapp .m-foot{flex-wrap:wrap;padding:10px 14px}.bkapp .appt-body,.bkapp .step-body{padding:14px}}.bkapp button:focus-visible,.bkapp select:focus-visible{box-shadow:0 0 0 3px var(--primary-soft);outline:none}.bkapp input:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.bkapp .sim-optout{color:var(--faint);cursor:pointer;font-size:11px;margin-top:2px;text-align:center;text-decoration:underline}.bkapp .sim-optout:hover{color:var(--muted)}.bkapp .sim-optout-note{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;color:var(--ink-2);font-size:11.5px;padding:10px 12px;text-align:center}.bkapp .app-toast{background:var(--ink);border-radius:11px;bottom:26px;box-shadow:var(--shadow-lg);color:#fff;font-size:12.5px;font-weight:600;left:50%;opacity:0;padding:11px 18px;pointer-events:none;position:fixed;transform:translateX(-50%) translateY(12px);transition:opacity .2s,transform .2s;z-index:200}.bkapp .app-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.bkapp .tbtn-wait{background:#fff8ec;border-color:#c2730b;border-color:var(--amber,#c2730b);color:#c2730b;color:var(--amber,#c2730b)}.bkapp .wait-n{background:#c2730b;background:var(--amber,#c2730b);border-radius:9px;color:#fff;display:inline-block;font-size:11px;font-weight:700;margin-left:6px;min-width:18px;padding:0 5px;text-align:center}.bkapp .wait-card{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;padding:12px 14px}.bkapp .wait-card .sess-meta{align-items:flex-start;display:flex;gap:11px;margin-bottom:10px}.bkapp .wait-card .av{background:#eef0fe;border-radius:50%;color:#5547e8;display:grid;flex-shrink:0;font-weight:700;height:36px;place-items:center;width:36px}.bkapp .wait-card .info{flex:1 1;min-width:0}.bkapp .wait-card .nm{font-size:13.5px;font-weight:600}.bkapp .wait-card .mt{color:var(--muted);font-size:11.5px;margin-top:2px}.bkapp .wait-kind{background:#eef0fe;border-radius:6px;color:#5547e8;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.3px;margin-left:8px;padding:1px 7px}.bkapp .wait-kind.resched{background:#fff8ec;color:#c2730b;color:var(--amber,#c2730b)}.bkapp .book-block .broom{background:#00000014;border-radius:4px;font-family:var(--font);font-weight:600;max-width:100%;overflow:hidden;padding:0 5px;text-overflow:ellipsis;white-space:nowrap}.bkapp .book-block.st-arrived .broom,.bkapp .book-block.st-billed .broom,.bkapp .book-block.st-booked .broom,.bkapp .book-block.st-confirmed .broom,.bkapp .book-block.st-noshow .broom{background:#ffffff38;color:#fff}.bkapp .book-gap{background:repeating-linear-gradient(135deg,#94a3b84d,#94a3b84d 4px,#94a3b81a 0,#94a3b81a 8px);border:1px solid #94a3b859;border-radius:0 0 8px 8px;border-top:0;pointer-events:none;position:absolute;z-index:2}.bkapp .summary-col{display:flex;flex-direction:column;flex-shrink:0;gap:10px;overflow-y:auto;width:300px}.bkapp .sum-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:12px}.bkapp .sum-trays{flex-direction:column}.bkapp .sum-stats,.bkapp .sum-trays{display:flex;gap:8px}.bkapp .sum-stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);flex:1 1;min-width:0;padding:10px 12px}.bkapp .sum-stat .k{color:var(--muted);font-size:10.5px;letter-spacing:.4px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.bkapp .sum-stat .v{font-family:ui-monospace;font-family:var(--mono,ui-monospace);font-size:22px;font-weight:700;margin-top:2px}.bkapp .sum-stat .v.accent{color:var(--primary)}.bkapp .sum-head{align-items:center;color:var(--muted);display:flex;font-size:10.5px;font-weight:700;justify-content:space-between;letter-spacing:.5px;padding:2px 2px 8px;text-transform:uppercase}.bkapp .sum-list{display:flex;flex-direction:column;gap:6px}.bkapp .sum-row{align-items:center;background:var(--surface-2);border:1px solid #0000;border-radius:9px;cursor:pointer;display:flex;font:inherit;gap:10px;padding:8px 10px;text-align:left;width:100%}.bkapp .sum-row:hover{background:#fff;border-color:var(--line-strong)}.bkapp .sum-row .tm{color:var(--ink);flex-shrink:0;font-family:ui-monospace;font-family:var(--mono,ui-monospace);font-size:12px;font-weight:700;width:44px}.bkapp .sum-row .who{display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:0}.bkapp .sum-row .who .n{color:var(--ink);font-size:12.5px;font-weight:600}.bkapp .sum-row .who .n,.bkapp .sum-row .who .s{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bkapp .sum-row .who .s{color:var(--muted);font-size:11px}.bkapp .sum-row .stpill{flex-shrink:0}.bkapp .sum-empty{color:var(--faint);font-size:12px;padding:16px 6px;text-align:center}.bkapp .sum-modes{display:flex;gap:6px}.bkapp .sum-modes button{background:#fff;border:1px solid var(--line-strong);border-radius:9px;color:var(--ink-2);cursor:pointer;flex:1 1;font-size:12px;font-weight:600;height:32px}.bkapp .sum-modes button.on{background:var(--primary);border-color:var(--primary);color:#fff}.bkapp .sum-modes .today{color:var(--muted);flex:0 0 auto;padding:0 12px}.bkapp .sum-modes .today:hover{border-color:var(--ink-2);color:var(--ink)}.bkapp .sum-trayrow{display:flex;gap:6px}.bkapp .sum-trayrow>*{flex:1 1;justify-content:center;min-width:0;text-align:center}.bkapp .mgrid{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:auto;padding:12px}.bkapp .mgrid-wd{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.bkapp .mgrid-wd div{color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.5px;text-align:center;text-transform:uppercase}.bkapp .mgrid-days{grid-gap:8px;display:grid;flex:1 1;gap:8px;grid-template-columns:repeat(7,1fr)}.bkapp .mcell{background:var(--surface-2);border:1px solid #0000;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;font:inherit;gap:4px;min-height:72px;padding:8px 10px;text-align:left}.bkapp .mcell:hover{border-color:var(--line-strong)}.bkapp .mcell.out{opacity:.45}.bkapp .mcell.sel{background:var(--primary);color:#fff}.bkapp .mcell .dnum{font-family:ui-monospace;font-family:var(--mono,ui-monospace);font-size:13px;font-weight:700}.bkapp .mcell .cnt{align-self:flex-start;background:var(--primary-soft);border-radius:6px;color:var(--primary);font-size:11px;font-weight:700;padding:1px 7px}.bkapp .mcell.sel .cnt{background:#ffffff38;color:#fff}@media (max-width:1100px){.bkapp .summary-col{width:100%}}.bkapp .fld>label.lbl-row{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between}.bkapp .lbl-act{background:#0000;border:none;color:var(--primary);cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:700;padding:0}.bkapp .lbl-act:hover{text-decoration:underline}.bkapp .combo-none .lbl-act{margin-top:8px}.bkbranch{align-items:center;border-left:1px solid #e8eaef;border-left:1px solid var(--line,#e8eaef);color:#737a89;color:var(--muted,#737a89);display:flex;flex-shrink:0;font-size:11.5px;gap:6px;margin-left:4px;padding-left:12px}.bkbranch>span{font-size:10px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.bkbranch select{background:#fff;border:1px solid #e3e6ec;border:1px solid var(--line,#e3e6ec);border-radius:8px;color:#1f2430;color:var(--ink,#1f2430);cursor:pointer;font-size:12px;font-weight:600;max-width:160px;padding:3px 8px}.bkbranch em{background:#2e46e814;border-radius:999px;color:#2e46e8;color:var(--ccs-primary,#2e46e8);font-size:10.5px;font-style:normal;font-weight:700;padding:2px 8px;white-space:nowrap}.invapp{--bg:#eef0f4;--surface:#fff;--surface-2:#f7f8fa;--ink:#191c24;--ink-2:#3b4150;--muted:#737a89;--faint:#9aa1b0;--line:#e3e6ec;--line-strong:#d3d8e0;--primary:#5547e8;--primary-d:#4438c9;--primary-soft:#ecebfd;--green:#0e9f6e;--green-soft:#e3f6ee;--blue:#2563eb;--blue-soft:#e6efff;--violet:#7c3aed;--violet-soft:#f0e9ff;--amber:#c2730b;--amber-soft:#fcf0db;--rose:#e02424;--rose-soft:#fde7e7;--teal:#0f9488;--teal-soft:#d6f3ef;--orange:#dd6b1f;--orange-soft:#fce8d6;--pink:#c72d84;--pink-soft:#fbe3f0;--cyan:#0e7fa8;--cyan-soft:#d7edf6;--mono:"JetBrains Mono",ui-monospace,monospace;--ui:"Inter",system-ui,-apple-system,sans-serif;--shadow:0 1px 2px #1418280d,0 1px 3px #1418280f;--shadow-lg:0 12px 40px #14182829}.invapp *{box-sizing:border-box;margin:0;padding:0}.invapp{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--ink);font-family:var(--ui);font-size:13px;height:100%;line-height:1.4}.invapp button{cursor:pointer}.invapp button,.invapp input,.invapp select,.invapp textarea{font-family:inherit}.invapp .mono{font-feature-settings:"tnum";font-family:var(--mono);font-variant-numeric:tabular-nums}.invapp .app{display:flex;flex-direction:column;gap:10px;gap:var(--ccs-shell-gap,10px);height:100vh;padding:10px;padding:var(--ccs-shell-gap,10px) var(--ccs-shell-pad-x,10px)}.invapp .topbar{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);flex-shrink:0;gap:14px;height:58px;height:var(--ccs-topbar-h,58px);padding:8px 14px;padding:var(--ccs-topbar-vpad,8px) 14px}.invapp .brand,.invapp .topbar{align-items:center;display:flex}.invapp .brand{gap:10px}.invapp .logo{background:linear-gradient(135deg,var(--primary),#8b7cff);background:linear-gradient(135deg,var(--ccs-primary,var(--primary)),#8b7cff);border-radius:9px;color:#fff;display:grid;font-size:15px;font-weight:700;height:34px;letter-spacing:-.5px;place-items:center;width:34px}.invapp .brand .name{font-size:14px;font-weight:600;line-height:1.1}.invapp .brand .branch{align-items:center;color:var(--muted);display:flex;font-size:11px;gap:5px;margin-top:2px}.invapp .branch .dot{background:var(--green);border-radius:50%;height:6px;width:6px}.invapp .inv{align-items:center;border-left:1px solid var(--line);display:flex;gap:18px;margin-left:6px;padding-left:18px}.invapp .inv .k{color:var(--faint);font-size:10px;letter-spacing:.6px;text-transform:uppercase}.invapp .inv .v{font-family:var(--mono);font-size:13px;font-weight:600}.invapp .spacer{flex:1 1}.invapp .pill-btn{align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:9px;color:var(--ink-2);display:flex;font-size:12px;font-weight:500;gap:7px;height:38px;padding:0 14px;position:relative}.invapp .pill-btn:hover{background:var(--surface-2)}.invapp .badge{background:var(--amber-soft);border-radius:6px;color:var(--amber);font-family:var(--mono);font-size:11px;font-weight:700;padding:1px 6px}.invapp .cashier{align-items:center;border-left:1px solid var(--line);display:flex;gap:9px;padding-left:14px}.invapp .cashier .av{background:#ffe4d4;border-radius:50%;color:#c2410c;display:grid;font-size:12px;font-weight:700;height:30px;place-items:center;width:30px}.invapp .cashier .t{font-size:12px;font-weight:600;line-height:1.1}.invapp .cashier .s{color:var(--muted);font-size:10px}.invapp .tabbar{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);flex-shrink:0;padding:13px 14px}.invapp .tabs{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;gap:0}.invapp .tab,.invapp .tabs{display:flex;overflow:hidden}.invapp .tab{align-items:center;-webkit-appearance:none;appearance:none;background:none;border:none;border-right:1px solid var(--line);color:var(--muted);cursor:pointer;flex:1 1;font-size:12.5px;font-weight:600;gap:7px;justify-content:center;letter-spacing:-.1px;min-height:44px;min-width:0;padding:11px 8px;position:relative;text-overflow:ellipsis;white-space:nowrap}.invapp .tab:last-child{border-right:none}.invapp .tab.active{background:var(--primary-soft);color:var(--primary)}.invapp .tab .badge{background:var(--surface);color:var(--muted)}.invapp .tab.active .badge{background:#fff;color:var(--primary-d)}.invapp .subtabs{margin-top:0;min-width:0}.invapp .subtabs .tabs{background:#0000;border:none;gap:6px;width:-webkit-fit-content;width:fit-content}.invapp .subtabs .tab{border:1px solid var(--line-strong);border-radius:8px;flex:0 0 auto;min-height:40px;padding:9px 15px}.invapp .subtabs .tab.active{border-color:var(--primary)}.invapp .view{display:none;flex:1 1;flex-direction:column;gap:10px;min-height:0}.invapp .view.active{display:flex}.invapp .panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.invapp .panel-head{align-items:center;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px;padding:13px 16px}.invapp .panel-head .hint{flex:1 1;text-align:right}.invapp .panel-body{flex:1 1;overflow-y:auto;padding:14px 16px}.invapp .list-col{display:flex;flex-direction:column;gap:10px}.invapp .sess-card{border:1px solid var(--line);border-radius:11px;padding:13px 14px}.invapp .sess-card.selectable{cursor:pointer}.invapp .sess-card.selectable:hover{border-color:var(--blue)}.invapp .sess-card.done{background:var(--surface-2);cursor:not-allowed;opacity:.6}.invapp .sess-line{align-items:center;display:flex;gap:8px}.invapp .sess-meta{align-items:center;display:flex;gap:11px}.invapp .sess-meta .av{background:#eef0fb;border-radius:9px;color:var(--primary);display:grid;flex-shrink:0;font-size:15px;font-weight:700;height:36px;place-items:center;position:relative;width:36px}.invapp .disc-badge{border:2px solid #fff;border:2px solid var(--surface,#fff);border-radius:50%;font-size:10px;height:15px;line-height:15px;position:absolute;right:-5px;text-align:center;top:-5px;width:15px}.invapp .disc-badge,.invapp .disc-badge-inline{background:var(--rose);color:#fff;font-weight:800}.invapp .disc-badge-inline{align-items:center;border-radius:50%;display:inline-flex;font-size:9px;height:14px;justify-content:center;margin-left:5px;vertical-align:middle;width:14px}.invapp .sess-meta.kv .av{background:var(--amber-soft);color:var(--amber)}.invapp .sess-meta.cs .av{background:var(--blue-soft);color:var(--blue)}.invapp .sess-meta.du .av{background:var(--rose-soft);color:var(--rose)}.invapp .sess-meta.ok .av{background:var(--green-soft);color:var(--green)}.invapp .sess-meta .info{flex:1 1;min-width:0}.invapp .sess-meta .nm{font-size:13px;font-weight:600;line-height:1.2}.invapp .sess-meta .mt{color:var(--muted);font-family:var(--mono);font-size:10.5px;margin-top:3px}.invapp .sess-meta .big-tag{font-family:var(--mono);font-size:15px;font-weight:700}.invapp .sess-meta .big-tag.due{color:var(--rose)}.invapp .sess-empty{color:var(--faint);font-size:12px;padding:34px 10px;text-align:center}.invapp .chev{color:var(--faint);flex-shrink:0}.invapp .kbadge{border-radius:5px;font-size:9px;font-weight:700;letter-spacing:.4px;padding:2px 7px;white-space:nowrap}.invapp .kbadge.dep{background:var(--green-soft);color:var(--green)}.invapp .kbadge.kiv{background:var(--amber-soft);color:var(--amber)}.invapp .kbadge.crs{background:var(--blue-soft);color:var(--blue)}.invapp .kbadge.due{background:var(--rose-soft);color:var(--rose)}.invapp .kbadge.approved{background:var(--blue-soft);color:var(--blue)}.invapp .kbadge.arrived{background:var(--amber-soft);color:var(--amber)}.invapp .kbadge.partial{background:var(--orange-soft);color:var(--orange)}.invapp .kbadge.completed{background:var(--green-soft);color:var(--green)}.invapp .kbadge.intransit{background:var(--violet-soft);color:var(--violet)}.invapp .kbadge.requested{background:var(--cyan-soft);color:var(--cyan)}.invapp .kbadge.discrepancy{background:var(--rose-soft);color:var(--rose)}.invapp .kbadge.matched{background:var(--green-soft);color:var(--green)}.invapp .kbadge.variance{background:var(--amber-soft);color:var(--amber)}.invapp .kbadge.adjusted{background:var(--teal-soft);color:var(--teal)}.invapp .btn{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:9px;color:var(--ink-2);display:inline-flex;font-size:12.5px;font-weight:600;gap:7px;height:38px;padding:0 15px}.invapp .btn:hover{background:var(--surface-2)}.invapp .btn.primary{background:var(--primary);border:none;color:#fff}.invapp .btn.primary:hover{background:var(--primary-d)}.invapp .btn:disabled{cursor:not-allowed;opacity:.45}.invapp table.grid{border-collapse:collapse;font-size:12px;width:100%}.invapp table.grid thead th{background:var(--surface-2);border-bottom:1px solid var(--line-strong);color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.5px;padding:8px 10px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap;z-index:2}.invapp table.grid td.num,.invapp table.grid th.num{text-align:right}.invapp table.grid tbody td{border-bottom:1px solid var(--line);padding:0;vertical-align:middle}.invapp table.grid tbody tr:last-child td{border-bottom:none}.invapp table.grid tbody tr:hover{background:#fafbff}.invapp .cell{align-items:center;display:flex;min-height:50px;padding:10px}.invapp .cell.num{font-feature-settings:"tnum";font-family:var(--mono);font-variant-numeric:tabular-nums;justify-content:flex-end}.invapp .code{color:var(--ink-2);font-family:var(--mono);font-size:11.5px}.invapp .desc{color:var(--ink);display:block;font-weight:500}.invapp .sub{color:var(--faint);font-size:10.5px;margin-top:2px}.invapp .qstep{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:9px;display:inline-flex;height:40px;overflow:hidden}.invapp .qstep-btn{background:#fff;border:none;color:var(--ink-2);display:grid;flex-shrink:0;font-size:19px;height:38px;line-height:1;place-items:center;width:38px}.invapp .qstep-btn:hover{background:var(--surface-2);color:var(--primary)}.invapp .qstep-btn:active{background:var(--primary-soft)}.invapp .qty-in{background:#0000;border:none;border-left:1px solid var(--line);border-right:1px solid var(--line);font-family:var(--mono);font-size:14px;font-weight:600;height:38px;padding:0;text-align:center;width:58px}.invapp .qty-in:focus{background:var(--primary-soft);outline:none}.invapp .ma-qty-plain{font-family:var(--mono);font-weight:600;text-align:center}.invapp .ma-qty-plain:focus{background:var(--primary-soft);border-color:var(--primary);outline:none}.invapp .fpill{border-radius:4px;font-size:8.5px;font-weight:700;letter-spacing:.4px;padding:1px 5px}.invapp .fpill.over{background:var(--orange-soft);color:var(--orange)}.invapp .fpill.short{background:var(--rose-soft);color:var(--rose)}.invapp .fpill.ok{background:var(--green-soft);color:var(--green)}.invapp .overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1418286b;display:none;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.invapp .overlay.open{display:flex}.invapp .modal{background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}.invapp .m-head{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:16px 22px}.invapp .m-head h2{font-size:15px;font-weight:600}.invapp .m-head h2 span{color:var(--muted);font-weight:500}.invapp .m-close{background:#0000;border:none;border-radius:8px;color:var(--muted);display:grid;font-size:18px;height:36px;place-items:center;width:36px}.invapp .m-close:hover{background:var(--surface-2);color:var(--ink)}.invapp .m-foot{align-items:center;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:space-between;padding:14px 22px}.invapp .m-confirm{background:var(--primary);border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:600;height:44px;min-width:120px;padding:0 24px}.invapp .m-confirm:disabled{cursor:not-allowed;opacity:.45}.invapp .m-confirm:hover{background:var(--primary-d)}.invapp .m-confirm.sm{border-radius:9px;font-size:12px;height:40px;min-width:96px;padding:0 16px}.invapp .m-confirm.ghost{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-2)}.invapp .m-confirm.danger{background:var(--rose)}.invapp .m-confirm.danger:hover{background:#c31c1c}.invapp .d-body{overflow-y:auto;padding:16px 22px}.invapp .d-readbar{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;margin-bottom:14px;overflow:hidden}.invapp .d-readbar>div{display:flex;flex-direction:column;gap:3px;padding:11px 14px}.invapp .d-readbar>div+div{border-left:1px solid var(--line)}.invapp .d-readbar .dk{color:var(--faint);font-size:10px;letter-spacing:.5px;text-transform:uppercase}.invapp .d-readbar .dv{font-family:var(--mono);font-size:13px;font-weight:600}.invapp .modal.narrow{max-height:80vh;width:min(400px,94vw)}.invapp .modal.detail{max-height:92vh;width:min(560px,96vw)}.invapp .modal.session{max-height:90vh;width:min(660px,96vw)}.invapp .modal.wide{max-height:92vh;width:min(820px,96vw)}.invapp .sess-body{gap:13px;overflow-y:auto;padding:18px 22px}.invapp .fld,.invapp .sess-body{display:flex;flex-direction:column}.invapp .fld{gap:6px;margin-bottom:14px}.invapp .fld>label{align-items:center;color:var(--muted);display:flex;font-size:11px;font-weight:500}.invapp .req{color:var(--rose);font-size:10px;font-weight:600;margin-left:5px}.invapp .d-text{background:#fff;border:1px solid var(--line-strong);border-radius:9px;font-size:13px;height:40px;padding:0 12px;width:100%}.invapp .d-text:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.invapp .d-note{border:1px solid var(--line-strong);border-radius:9px;font-size:13px;min-height:64px;padding:9px 12px;resize:vertical;width:100%}.invapp .d-note:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.invapp .policy-warn{color:var(--rose);display:none;font-size:11px;font-weight:500;margin-top:6px}.invapp .policy-warn.show{display:block}.invapp .policy-ok{color:var(--green);display:none;font-size:11px;font-weight:500;margin-top:6px}.invapp .policy-ok.show{display:block}.invapp .hint{color:var(--faint);font-size:10.5px}.invapp .note-box{align-items:flex-start;border-radius:9px;display:flex;font-size:11.5px;gap:9px;line-height:1.5;margin-bottom:12px;padding:10px 12px}.invapp .note-box.info{background:var(--blue-soft);color:#1d4ed8}.invapp .note-box.warn{background:var(--amber-soft);color:var(--amber)}.invapp .note-box.good{background:var(--green-soft);color:var(--green)}.invapp .addline{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px}.invapp .addline .fld{flex:1 1 220px;margin-bottom:0;min-width:180px}.invapp .addline .qty-fld{flex:0 0 auto;margin-bottom:0}.invapp .addline .btn{flex-shrink:0;height:38px;padding:0 20px}.invapp .addline .ccs-date.d-text,.invapp .addline input.d-text,.invapp .addline select.d-text{height:38px}.invapp .ssel-wrap{position:relative;width:100%}.invapp .ssel-input{cursor:text}.invapp .ssel-dropdown{background:var(--surface);border:1px solid var(--line-strong);border-radius:9px;box-shadow:0 8px 24px #14182824;display:none;left:0;max-height:230px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:60}.invapp .ssel-dropdown.show{display:block}.invapp .ssel-opt{color:var(--ink-2);cursor:pointer;font-size:12.5px;padding:8px 12px}.invapp .ssel-opt.hi,.invapp .ssel-opt:hover{background:var(--primary-soft);color:var(--primary-d)}.invapp .ssel-empty{color:var(--faint);font-size:12px;font-style:italic;padding:9px 12px}.invapp .pickline{align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;display:flex;gap:12px;margin-top:10px;padding:12px 14px}.invapp .pickline .code{flex-shrink:0;width:56px}.invapp .pickline .nm2{flex:1 1;font-size:12px}.invapp .pickline .onhand{color:var(--muted);font-family:var(--mono);font-size:10.5px}.invapp .pickline .del{background:#0000;border:none;border-radius:7px;color:var(--faint);display:grid;flex-shrink:0;height:26px;place-items:center;width:26px}.invapp .pickline .del:hover{background:var(--rose-soft);color:var(--rose)}.invapp .stat-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin-top:14px}.invapp .stat-box{border-radius:9px;padding:10px;text-align:center}.invapp .stat-box .n{font-family:var(--mono);font-size:15px;font-weight:700}.invapp .stat-box .l{color:var(--muted);font-size:9.5px;letter-spacing:.4px;margin-top:2px;text-transform:uppercase}.invapp .ma-wrap{margin:0 auto;max-width:680px}.invapp .ma-card{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:22px 24px}.invapp .ma-card .note-box{margin-bottom:16px}.invapp .ma-section+.ma-section{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.invapp .ma-row2{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.invapp .ma-row2 .fld{margin-bottom:0}.invapp .ma-qty-block{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.invapp .ma-qty-block .fld{flex-shrink:0;margin-bottom:0}.invapp .ma-foot{display:flex;justify-content:flex-end;margin-top:18px}@media (max-width:560px){.invapp .ma-row2{grid-template-columns:1fr}.invapp .ma-card{padding:16px}}.invapp .history-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(240px,300px));justify-content:start}.invapp .catchips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.invapp .catchip{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-2);display:inline-flex;font-size:11.5px;font-weight:600;gap:6px;height:34px;padding:0 14px}.invapp .catchip:hover{background:var(--surface-2)}.invapp .catchip .dot{border-radius:50%;flex-shrink:0;height:7px;width:7px}.invapp .catchip .n{color:var(--faint);font-family:var(--mono);font-weight:600}.invapp .catchip.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-d)}.invapp .catchip.active .n{color:var(--primary-d)}.invapp .log-dir{font-size:10.5px;font-weight:700;white-space:nowrap}.invapp .adjtbl{border-collapse:collapse;font-size:11.5px;width:100%}.invapp .adjtbl th{border-bottom:1px solid var(--line-strong);color:var(--faint);font-size:9.5px;letter-spacing:.4px;padding:8px 9px;text-align:left;text-transform:uppercase}.invapp .adjtbl td{border-bottom:1px solid var(--line);padding:9px}.invapp .adjtbl tr:hover td{background:var(--surface-2)}.invapp .adjtbl .num{font-family:var(--mono);text-align:right}.invapp .adjtbl .num.neg{color:var(--rose);font-weight:700}.invapp .adjtbl .num.pos{color:var(--green);font-weight:700}.invapp .toast{background:var(--ink);border-radius:10px;bottom:24px;box-shadow:var(--shadow-lg);color:#fff;font-size:12.5px;font-weight:600;left:50%;opacity:0;padding:11px 20px;pointer-events:none;position:fixed;transform:translateX(-50%) translateY(20px);transition:.22s;z-index:80}.invapp .toast.show{opacity:1;transform:translateX(-50%) translateY(0)}@media (max-width:1180px){.invapp .d-readbar{grid-template-columns:1fr 1fr}.invapp .inv{gap:12px}}@media (max-width:900px){.invapp .cashier .s,.invapp .cashier .t,.invapp .inv{display:none}.invapp .history-grid{grid-template-columns:1fr 1fr}.invapp .panel-head{gap:10px}.invapp .panel-head .hint{flex-basis:100%;order:3;text-align:left}.invapp table.grid thead th{font-size:9px;padding:7px 6px}.invapp .cell{min-height:46px;padding:8px 6px}.invapp .qstep{height:44px}.invapp .qstep-btn{font-size:21px;height:42px;width:42px}.invapp .qty-in{font-size:15px;height:42px;width:52px}.invapp .d-readbar{grid-template-columns:1fr 1fr}}@media (max-width:560px){.invapp .app{gap:8px;padding:6px}.invapp .topbar{flex-wrap:wrap;height:auto;padding:8px 10px}.invapp .cashier{display:none}.invapp .tabbar{padding:8px}.invapp .tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.invapp .tabs::-webkit-scrollbar{display:none}.invapp .tab{border-bottom:none;border-right:1px solid var(--line);flex:0 0 auto;font-size:11.5px;padding:10px 13px;white-space:nowrap;width:auto}.invapp .tab:last-child{border-right:none}.invapp .panel-head{align-items:stretch;flex-direction:column;flex-wrap:nowrap}.invapp .subtabs .tabs{flex-wrap:wrap;max-width:100%;overflow-x:visible;width:auto}.invapp .subtabs .tab{flex:0 0 auto}.invapp .history-grid,.invapp .stat-grid{grid-template-columns:1fr}.invapp .modal.detail,.invapp .modal.session,.invapp .modal.wide{max-height:90vh;width:96vw}.invapp .d-readbar{grid-template-columns:1fr 1fr}.invapp .m-foot{flex-wrap:wrap}.invapp .m-foot .m-confirm,.invapp .m-foot .m-confirm.ghost{flex:1 1}.invapp #mainTabs.tabs{flex-wrap:wrap;overflow-x:visible}.invapp #mainTabs .tab{flex:1 1 50%;font-size:11px;line-height:1.25;padding:9px 4px;text-align:center;white-space:normal;width:auto}.invapp #mainTabs .tab:nth-child(-n+2){border-bottom:1px solid var(--line)}.invapp #mainTabs .tab:nth-child(odd){border-right:1px solid var(--line)}.invapp #mainTabs .tab:nth-child(2n){border-right:none}}@media (prefers-reduced-motion:reduce){.invapp *{transition:none!important}}.invapp button:focus-visible,.invapp input:focus-visible,.invapp select:focus-visible,.invapp textarea:focus-visible{outline:2px solid var(--primary);outline-offset:1px}