:root{color-scheme:dark;--navy-900:#0b1526;--navy-800:#0e1f33;--navy-700:#0a2432;--navy-600:#1d3a5c;--teal-500:#2dd4bf;--teal-400:#5eead4;--gold-400:#e7c76a;--cyan-400:#38d6f5;--text-100:#ffffff;--text-300:rgba(255,255,255,0.5);--text-500:rgba(255,255,255,0.35);--danger-400:#f87171;--success-400:#34d399;--warning-400:#fbbf24;--card-bg:rgba(255,255,255,0.055);--card-border:rgba(255,255,255,0.12);--glass-soft-bg:rgba(255,255,255,0.035);--glass-soft-border:rgba(255,255,255,0.08);--radius-lg:1.1rem;--radius-md:0.9rem;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Sarabun","Noto Sans Thai",Arial,sans-serif;--font-display:var(--font-body);--bg-image:radial-gradient(1200px 700px at 85% -10%,rgba(45,212,191,0.22),transparent 60%),radial-gradient(1000px 600px at -10% 110%,rgba(212,175,55,0.16),transparent 55%),linear-gradient(160deg,#0b1526,#0e1f33 45%,#0a2432);--glass-blur:18px;--glass-soft-blur:12px;--glass-shadow:0 8px 32px rgba(0,0,0,0.35);--modal-bg:rgba(11,21,38,0.82);--modal-shadow:0 8px 32px rgba(0,0,0,0.35);--overlay-bg:rgba(3,9,20,0.72);--well-bg:rgba(255,255,255,0.05);--seg-bg:rgba(255,255,255,0.07);--scrollbar-thumb:rgba(255,255,255,0.15);--ring-track:rgba(255,255,255,0.12);--divider:rgba(255,255,255,0.12);--chart-track:rgba(255,255,255,0.08);--chart-1:#5eead4;--chart-2:#e7c76a;--chart-3:#38d6f5;--chart-4:#a78bfa;--chart-5:#fbbf24;--chart-6:#f87171;--chart-7:#34d399;--chart-8:#93c5fd;--btn-accent-bg:linear-gradient(135deg,#5eead4,#14b8a6);--btn-accent-bg-hover:linear-gradient(135deg,#7df0dd,#1ac7b6);--btn-accent-text:#062a26;--btn-accent-shadow:0 6px 22px rgba(45,212,191,0.35);--btn-accent-shadow-hover:0 8px 28px rgba(45,212,191,0.45);--collect-shadow:0 8px 28px rgba(45,212,191,0.4);--seg-active-bg:linear-gradient(135deg,#5eead4,#2dd4bf);--seg-active-text:#062a26;--focus-ring:rgba(45,212,191,0.22);--pay-active-bg:linear-gradient(135deg,#f3d98b,#d4af37);--pay-active-text:#221a05;--pay-active-border:rgba(231,199,106,0.6);--option-active-border:rgba(94,234,212,0.5);--option-active-bg:rgba(45,212,191,0.16);--option-active-bg-soft:rgba(45,212,191,0.14);--kiosk-active-bg:linear-gradient(160deg,#2dd4bf,#0e8f89);--kiosk-active-text:#04202c;--kiosk-active-border:var(--teal-400);--room-hover-shadow:0 14px 40px rgba(0,0,0,0.5);--room-panorama-bg:linear-gradient(160deg,rgba(167,139,250,0.12),rgba(255,255,255,0.03));--room-panorama-border:rgba(167,139,250,0.45);--room-free-status:var(--success-400);--room-free-border:rgba(52,211,153,0.45);--room-occupied-border:rgba(131,149,173,0.45);--room-occupied-bg:linear-gradient(160deg,rgba(131,149,173,0.08),rgba(255,255,255,0.03));--room-occupied-status:#8395ad;--room-prep-status:var(--warning-400);--room-prep-border:rgba(251,191,36,0.45);--room-hold-status:#7db8f0;--room-hold-border:rgba(125,184,240,0.45);--room-cleaning-border:rgba(251,191,36,0.4);--room-cleaning-status:var(--warning-400);--room-maint-border:rgba(255,255,255,0.18);--room-maint-status:var(--text-300);--room-reserved-border:rgba(183,156,255,0.45);--room-reserved-status:#b79cff;--room-over-border:rgba(255,95,115,0.7);--room-over-status:#ff5f73;--room-selected-border:rgba(231,199,106,0.6);--room-selected-shadow:0 0 0 1px rgba(231,199,106,0.4);--timer-color:#5eead4;--timer-glow-static:0 0 14px rgba(94,234,212,0.65);--timer-glow-lo:rgba(94,234,212,0.45);--timer-glow-hi:rgba(94,234,212,0.8);--ring-a:#5eead4;--ring-b:#e7c76a;--ring-pulse-border:rgba(94,234,212,0.5);--price-color:var(--gold-400);--paid-border:rgba(67,217,163,0.45);--paid-bg:linear-gradient(160deg,rgba(67,217,163,0.12),rgba(10,28,51,0.6));--busy-color:var(--danger-400);--busy-glow:rgba(248,113,113,0.7);--pulse-ring:rgba(94,234,212,0.45);--pulse-ring-0:rgba(94,234,212,0);--hdr-clock-color:var(--teal-400);--avatar-bg:linear-gradient(135deg,#5eead4,#e7c76a);--avatar-text:#062a26;--bar-fill:linear-gradient(90deg,#2dd4bf,#5eead4);--peak-fill:linear-gradient(180deg,#5eead4,#2dd4bf);--summary-border:rgba(94,234,212,0.3);--summary-bg:rgba(45,212,191,0.07)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{background:radial-gradient(1200px 800px at 80% -10%,rgba(23,184,176,.14),transparent 60%),radial-gradient(900px 700px at -10% 110%,rgba(23,184,176,.08),transparent 55%),var(--navy-900);color:var(--text-100);font-family:var(--font-body);-webkit-font-smoothing:antialiased}a{color:var(--teal-400)}button{font:inherit;cursor:pointer}.page-center{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.card{width:100%;max-width:420px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:36px 32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 24px 60px rgba(0,0,0,.45)}@media (min-width:768px){.card{max-width:440px;padding:44px 40px}}@media (min-width:1200px){.card{max-width:520px;padding:52px 48px}.login-logo{width:220px}.login-title{font-size:1.7rem}.login-tagline{font-size:1rem}.card .field input{min-height:56px;font-size:1.05rem}.card .btn-primary{min-height:58px;font-size:1.1rem}}.login-logo{display:block;margin:0 auto 18px;width:180px;height:auto}.login-title{margin:0;text-align:center;font-size:1.45rem;font-weight:700;letter-spacing:.04em}.login-tagline{margin:8px 0 28px;text-align:center;color:var(--text-300);font-size:.92rem;line-height:1.45}.lang-toggle{display:flex;justify-content:center;gap:8px;margin-bottom:24px}.lang-toggle button{border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-100);border-radius:999px;padding:8px 18px;min-height:40px;font-size:.9rem;transition:all .15s ease}.lang-toggle button[aria-pressed=true]{background:var(--teal-500);border-color:var(--teal-500);color:var(--navy-900);font-weight:700}.field{margin-bottom:18px}.field label{display:block;margin-bottom:8px;font-size:.88rem;color:var(--text-300)}.field input{width:100%;min-height:52px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-800);color:var(--text-100);font-size:1rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field input:focus{border-color:var(--teal-500);box-shadow:0 0 0 3px rgba(23,184,176,.22)}.btn-primary{width:100%;min-height:54px;margin-top:6px;border:none;border-radius:var(--radius-md);background:var(--teal-500);color:var(--navy-900);font-size:1.05rem;font-weight:700;letter-spacing:.02em;transition:background .15s ease,transform .05s ease}.btn-primary:hover:not(:disabled){background:var(--teal-400)}.btn-primary:active:not(:disabled){transform:scale(.99)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.form-error{margin:0 0 16px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid rgba(242,112,138,.4);background:rgba(242,112,138,.12);color:var(--danger-400);font-size:.92rem;text-align:center}.login-footer{margin-top:28px;text-align:center}.login-divider,.login-footer{color:var(--text-500);font-size:.78rem}.login-divider{display:flex;align-items:center;gap:12px;margin:18px 0 12px;text-transform:uppercase;letter-spacing:.08em}.login-divider:after,.login-divider:before{content:"";flex:1 1;height:1px;background:var(--navy-600,rgba(255,255,255,.12))}.btn-primary.login-quiet-btn{background:transparent;border:1px solid var(--navy-600,rgba(255,255,255,.18));box-shadow:none;color:var(--text-100)}.login-password-link{background:none;border:none;padding:6px 0 0;margin-top:10px;color:var(--text-500);font-size:.8rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.login-password-link:hover{color:var(--text-300)}.btn-primary.login-quiet-btn:hover:not(:disabled){background:var(--glass-soft-bg,rgba(255,255,255,.06));box-shadow:none}.btn-secondary{display:block;width:100%;min-height:50px;border:1px solid var(--navy-600);border-radius:var(--radius-md);background:transparent;color:var(--text-100);font-size:1rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.btn-secondary:hover{border-color:var(--teal-500);background:rgba(23,184,176,.08)}.app-shell{min-height:100dvh;width:100%;max-width:1200px;margin:0 auto;padding:20px 16px 48px}.app-header{flex-wrap:wrap;gap:14px 20px;padding:14px 18px;margin-bottom:20px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-header,.app-header-brand{display:flex;align-items:center}.app-header-brand{gap:14px;margin-right:auto}.app-header-logo{height:44px;width:auto}.app-header-title{margin:0;font-size:1.2rem;font-weight:700;letter-spacing:.02em}.app-header-date{margin:2px 0 0;color:var(--text-300);font-size:.85rem}.app-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.app-header .lang-toggle{margin-bottom:0}.app-header .lang-toggle button{padding:8px 14px}.outlet-tabs{display:flex;gap:8px}.outlet-tabs button{border:1px solid var(--card-border);background:transparent;color:var(--text-300);border-radius:999px;padding:10px 26px;min-height:46px;font-size:1rem;font-weight:600;transition:all .15s ease}.outlet-tabs button[aria-pressed=true]{background:var(--teal-500);border-color:var(--teal-500);color:var(--navy-900);font-weight:700}.admin-tabs{flex-wrap:wrap;margin-bottom:18px}.admin-tabs button{padding:10px 20px;font-size:.95rem}.today-chip{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px 14px;max-width:100%;padding:8px 16px;border-radius:999px;border:1px solid var(--card-border);background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-100);font-size:.85rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-decoration:none;transition:border-color .15s ease,background .15s ease}.today-chip:hover{border-color:var(--teal-500);background:rgba(23,184,176,.08)}.today-chip-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-400)}.btn-small{min-height:44px;padding:8px 16px;border:1px solid var(--navy-600);border-radius:var(--radius-md);background:transparent;color:var(--text-100);font-size:.92rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.btn-small:hover:not(:disabled){border-color:var(--teal-500);background:rgba(23,184,176,.08)}.btn-small:disabled{opacity:.6;cursor:not-allowed}.btn-action{min-height:52px;padding:10px 24px;border:none;border-radius:var(--radius-md);background:var(--teal-500);color:var(--navy-900);font-size:1rem;font-weight:700;transition:background .15s ease}.btn-action:hover:not(:disabled){background:var(--teal-400)}.btn-action:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{min-height:52px;padding:10px 24px;border:1px solid var(--navy-600);border-radius:var(--radius-md);background:transparent;color:var(--text-100);font-size:1rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.btn-ghost:hover:not(:disabled){border-color:var(--teal-500);background:rgba(23,184,176,.08)}.btn-ghost:disabled{opacity:.6;cursor:not-allowed}.panel{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:22px 20px;margin-bottom:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.panel-heading--controls-only{justify-content:flex-end}.section-title{margin:0;font-size:.8rem;font-weight:600;color:var(--text-300);text-transform:uppercase;letter-spacing:.08em}.section-hint{margin:0;color:var(--text-500);font-size:.85rem}.subsection-title{margin:18px 0 10px;font-size:.95rem;font-weight:600;color:var(--text-100)}.subsection-title:first-of-type{margin-top:0}.muted-text{color:var(--text-500);font-size:.92rem}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px}@media (max-width:768px){.room-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}}.room-card{min-height:120px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-800);color:var(--text-100);text-align:left;transition:border-color .15s ease,transform .05s ease}.room-card:not(:disabled):active{transform:scale(.98)}.room-card:disabled,.room-card[aria-disabled=true]{cursor:not-allowed}.room-card[role=button]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-card[role=button]:focus-visible{outline:2px solid var(--teal-500);outline-offset:2px}.room-card .room-name{font-size:1.1rem;font-weight:700}.room-badge{display:inline-flex;align-items:center;vertical-align:middle;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 10px}.room-badge.bath{background:rgba(212,175,106,.14);border:1px solid rgba(212,175,106,.45);color:var(--gold-400)}.room-badge.shower{background:rgba(56,214,245,.12);border:1px solid rgba(56,214,245,.4);color:var(--cyan-400)}.room-badge.panorama{background:rgba(177,140,255,.14);border:1px solid rgba(177,140,255,.45);color:#c4a8ff}.room-feats{flex-wrap:wrap;gap:4px;margin-left:6px}.room-feat,.room-feats{display:inline-flex;vertical-align:middle}.room-feat{align-items:center;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:2px 8px;border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-300)}.room-feat.is-glory{color:var(--gold-400);border-color:rgba(212,175,106,.4)}.room-feat.is-nuru{color:var(--teal-500);border-color:rgba(56,214,245,.3)}.room-feat.is-stool{color:#c4a8ff;border-color:rgba(177,140,255,.35)}.room-feat.is-love_chair{color:#ff8fb2;border-color:rgba(255,143,178,.35)}.room-feat.is-dr_chair{color:#7dd3fc;border-color:rgba(125,211,252,.35)}.room-resv{vertical-align:middle;margin-left:6px;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:2px 8px;border:1px solid rgba(245,158,11,.45);background:rgba(245,158,11,.14);color:var(--warning-400,#fbbf24);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.room-feat-checks,.room-resv{display:inline-flex;align-items:center}.room-feat-checks{gap:14px;flex-wrap:wrap}.room-card .room-status{margin-top:auto;font-size:.9rem;font-weight:700}.room-card.status-free{border-color:rgba(67,217,163,.55)}.room-card.status-free .room-status{color:var(--success-400)}.room-card.status-cleaning{border-color:rgba(242,185,80,.55)}.room-card.status-cleaning .room-status{color:#f2b950}.room-card.status-occupied{border-color:rgba(242,112,138,.55)}.room-card.status-occupied .room-status{color:var(--danger-400)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--card-border);border-radius:999px;padding:8px 16px;background:var(--navy-800);font-weight:600;font-size:.95rem}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-green{box-shadow:0 0 6px rgba(67,217,163,.7)}.entry-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.entry-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--card-border);border-radius:var(--radius-md);background:rgba(10,28,51,.6)}.entry-muted{opacity:.45}.entry-name{font-weight:700;font-size:1rem}.dir-list .entry-item.is-view{display:grid;grid-template-columns:1fr auto;grid-template-areas:"top status" "note note" "left left" "actions actions";grid-row-gap:8px;row-gap:8px;align-items:center}.dir-list .dir-top{grid-area:top;display:flex;align-items:center;gap:10px;min-width:0}.dir-list .entry-item.is-view>.status-badge{grid-area:status;justify-self:end}.dir-list .entry-item.is-view>.entry-note{grid-area:note}.dir-list .entry-item.is-view>.entry-left-date{grid-area:left}.dir-list .entry-item.is-view>.entry-actions{grid-area:actions;justify-self:end;display:flex;gap:8px;flex-wrap:nowrap}.dir-list .entry-actions .btn-small{min-width:104px;justify-content:center;text-align:center}.entry-note{color:var(--text-300);font-size:.88rem}.entry-actions{margin-left:auto;display:flex;gap:8px}.entry-actions-danger{width:100%;margin-top:10px;padding-top:10px;border-top:1px dashed var(--card-border);justify-content:flex-end}.entry-actions .btn-small{min-height:40px;padding:6px 14px;font-size:.85rem}.status-badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;border-radius:999px;padding:4px 12px;border:1px solid transparent;white-space:nowrap}.status-badge-btn{cursor:pointer;min-height:36px;font:inherit;font-size:.82rem;background:transparent}.status-badge.expected{background:rgba(45,212,203,.12);border-color:rgba(45,212,203,.4);color:var(--teal-400)}.status-badge.no_show{background:rgba(242,112,138,.12);border-color:rgba(242,112,138,.4);color:var(--danger-400)}.status-badge.left_for_day{background:rgba(110,134,163,.14);border-color:rgba(110,134,163,.4);color:var(--text-500)}.status-badge.note{background:rgba(212,175,106,.14);border-color:rgba(212,175,106,.4);color:var(--gold-400)}.status-badge.awaiting{background:rgba(251,191,36,.14);border-color:rgba(251,191,36,.5);color:var(--warning-400)}.bk-contact{margin-left:6px;padding:2px 8px;border-radius:999px;border:1px dashed var(--card-border);color:var(--text-300);font-size:.72rem;white-space:nowrap}.bk-contact-reminder{margin:10px 0 0;padding:8px 12px;border-radius:10px;border:1px solid rgba(224,184,104,.45);background:rgba(224,184,104,.08);color:var(--gold-300,#e0b868);font-size:.82rem;line-height:1.45}.form-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.field-inline{margin-bottom:0;flex:1 1 220px}.field select,.inline-input{width:100%;min-height:52px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-800);color:var(--text-100);font:inherit;font-size:1rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field select:focus,.inline-input:focus{border-color:var(--teal-500);box-shadow:0 0 0 3px rgba(23,184,176,.22)}select option{background:var(--navy-800);color:var(--text-100)}.inline-input{min-height:44px;flex:1 1 160px}input[type=date],input[type=month]{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}input[type=date]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.75}.modal-overlay{position:fixed;inset:0;z-index:60;background:var(--overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex}.modal-overlay.sheet-side{justify-content:flex-end}.modal-overlay.sheet-center{justify-content:center;align-items:center;padding:20px 14px}.booking-sheet{width:min(580px,100%);height:100dvh;border-left:1px solid var(--card-border);padding:22px 20px 48px;box-shadow:-24px 0 60px rgba(0,0,0,.45)}.booking-sheet,.modal-card{overflow-y:auto;background:var(--navy-800)}.modal-card{width:100%;max-width:520px;max-height:calc(100dvh - 40px);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:22px 20px 28px;box-shadow:0 24px 60px rgba(0,0,0,.5)}.confirm-dialog{max-width:360px;text-align:center}.confirm-dialog-message{margin:4px 0 18px;font-size:1.05rem;font-weight:600;color:var(--text-100);line-height:1.5}.confirm-dialog-title{margin:0 0 10px;font-size:1.05rem;font-weight:700;color:var(--text-100);line-height:1.4}.confirm-dialog-actions{gap:10px}.confirm-dialog-actions .btn-danger,.confirm-dialog-actions .btn-secondary{flex:1 1;min-height:48px}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.sheet-title{margin:0;font-size:1.2rem;font-weight:700}.sheet-fixed-room{margin:0 0 4px;font-size:1.15rem;font-weight:700;color:var(--teal-400)}.option-group,.sheet-picked{margin-bottom:12px}.option-group-title{margin:0 0 8px;font-size:.8rem;font-weight:600;color:var(--text-500);text-transform:uppercase;letter-spacing:.06em}.option-grid{display:flex;flex-wrap:wrap;gap:10px}.option-btn{min-height:52px;padding:10px 18px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-100);font-size:1rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.option-btn[aria-pressed=true]{border-color:var(--teal-500);background:rgba(23,184,176,.16)}.option-btn:disabled{opacity:.45;cursor:not-allowed}.option-btn-price{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.option-btn-price small{color:var(--text-300);font-weight:600}.option-btn-price[aria-pressed=true] small{color:var(--teal-400)}.lady-chip{padding:4px 6px 4px 14px;gap:6px}.lady-chip-main{display:inline-flex;align-items:center;gap:8px;border:none;background:transparent;color:var(--text-100);font:inherit;font-weight:600;padding:6px 0;min-height:40px}.lady-chip-remove{border:1px solid var(--navy-600);background:transparent;color:var(--text-300);border-radius:999px;width:36px;height:36px;font-size:1.1rem;line-height:1}.lady-chip-remove:hover{border-color:var(--danger-400);color:var(--danger-400)}.primary-badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 9px;background:rgba(212,175,106,.16);border:1px solid rgba(212,175,106,.5);color:var(--gold-400)}.addon-list{display:flex;flex-direction:column;gap:8px}.addon-row{gap:10px}.addon-row,.addon-toggle{display:flex;align-items:center}.addon-toggle{flex:1 1;gap:12px;min-height:52px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-100);text-align:left;transition:border-color .15s ease,background .15s ease}.addon-toggle[aria-pressed=true]{border-color:var(--teal-500);background:rgba(23,184,176,.1)}.addon-check{flex-shrink:0;width:26px;height:26px;border-radius:8px;border:1px solid var(--navy-600);display:inline-flex;align-items:center;justify-content:center;color:var(--teal-400);font-weight:700}.addon-toggle[aria-pressed=true] .addon-check{border-color:var(--teal-500);background:rgba(23,184,176,.18)}.addon-name{flex:1 1;font-weight:600}.addon-price{color:var(--text-300);font-weight:600;white-space:nowrap}.qty-stepper{display:inline-flex;align-items:center;gap:8px}.qty-stepper button{width:44px;height:44px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-100);font-size:1.2rem;font-weight:700}.qty-stepper button:disabled{opacity:.4;cursor:not-allowed}.qty-value{min-width:24px;text-align:center;font-weight:700;font-size:1.05rem}.fallback-notice{margin-top:18px;padding:14px 16px;border-radius:var(--radius-md);border:1px solid rgba(212,175,106,.5);background:rgba(212,175,106,.1)}.fallback-notice-text{margin:0 0 12px;color:var(--gold-400);font-weight:600;font-size:.95rem;line-height:1.45}.field-hint{margin:8px 0 0;color:var(--text-500);font-size:.85rem;line-height:1.4}.summary-box{margin-top:18px;padding:16px;border-radius:var(--radius-md);border:1px solid rgba(45,212,203,.35);background:rgba(23,184,176,.07)}.summary-box .subsection-title{margin-top:0}.summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;color:var(--text-300)}.excuse-btn{width:100%;padding:9px 14px;border:1.5px solid var(--warning-400,#fbbf24);border-radius:12px;background:transparent;color:var(--warning-400,#fbbf24);font-size:14px;font-weight:800;cursor:pointer}.excuse-btn.on{background:var(--warning-400,#fbbf24);color:#1a1207}.summary-row{font-size:.95rem}.summary-row>span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.summary-total{margin-top:8px;padding-top:12px;border-top:1px solid rgba(45,212,203,.25);color:var(--text-100);font-weight:800;font-size:1.4rem}.summary-total span:last-child{color:var(--teal-400)}.room-live{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:auto}.room-service{font-size:.85rem;font-weight:600;color:var(--text-300)}.room-ladies{font-size:.88rem;font-weight:700}.room-elapsed{font-size:1.15rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-100);display:inline-flex;align-items:baseline;gap:8px;flex-wrap:wrap}.room-ends{font-size:.84rem;font-weight:600;color:var(--text-500)}.overtime-badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;border-radius:999px;padding:3px 10px;background:rgba(242,112,138,.16);border:1px solid rgba(242,112,138,.5);color:var(--danger-400)}.detail-list{margin:0 0 4px}.detail-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;border-bottom:1px solid rgba(45,212,203,.1)}.detail-row dt{color:var(--text-500);font-size:.88rem;flex-shrink:0}.detail-row dd{margin:0;text-align:right;font-weight:600;display:flex;flex-wrap:wrap;gap:6px 10px;justify-content:flex-end}.detail-lady{display:inline-flex;align-items:center;gap:6px}.modal-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}.btn-danger,.modal-actions .btn-secondary{min-height:54px}.btn-danger{padding:10px 24px;border:none;border-radius:var(--radius-md);background:var(--danger-400);color:var(--navy-900);font-size:1rem;font-weight:700;transition:filter .15s ease}.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.main-nav{display:flex;gap:6px;flex-wrap:wrap}.app-header .main-nav{order:5;width:100%}.main-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 20px;border-radius:999px;border:1px solid var(--card-border);color:var(--text-300);text-decoration:none;font-weight:600;font-size:.95rem;transition:all .15s ease}.main-nav a:hover{border-color:var(--teal-500);color:var(--text-100)}.main-nav a[aria-current=page]{background:var(--teal-500);border-color:var(--teal-500);color:var(--navy-900);font-weight:700}.home-wrap .main-nav{justify-content:center;margin-bottom:24px}.room-card{position:relative}.room-wrench{position:absolute;top:8px;right:8px;z-index:2;min-width:40px;min-height:40px;padding:4px 8px;border-radius:10px;border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);font-size:.95rem;line-height:1;transition:border-color .15s ease,color .15s ease}.room-wrench.is-confirm,.room-wrench:hover{border-color:var(--gold-400);color:var(--gold-400)}.room-wrench.is-confirm{background:rgba(212,175,106,.16);font-size:.78rem;font-weight:700;min-width:64px}.room-card.status-maintenance{border-color:rgba(110,134,163,.4);opacity:.55;filter:grayscale(.5)}.room-card.status-maintenance .room-status{color:var(--text-500)}.premier-badge{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.deposit-badge,.premier-badge{display:inline-flex;align-items:center;margin-left:8px;font-weight:700;border-radius:999px;padding:2px 9px;background:rgba(212,175,106,.16);border:1px solid rgba(212,175,106,.55);color:var(--gold-400);vertical-align:middle}.deposit-badge{font-size:.78rem;white-space:nowrap}.bk-history{margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.bk-history-title{margin:0 0 8px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,rgba(255,255,255,.55))}.bk-history-list{list-style:none;margin:0;padding:0;gap:6px}.bk-history-item,.bk-history-list{display:flex;flex-direction:column}.bk-history-item{font-size:.82rem;line-height:1.35}.bk-history-action{font-weight:600}.bk-history-meta{font-size:.74rem;color:var(--muted,rgba(255,255,255,.55))}.activity-feed{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.activity-row{display:flex;align-items:baseline;gap:10px;padding:8px 10px;border-radius:8px;background:rgba(255,255,255,.03)}.activity-kind{flex:0 0 auto;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:2px 8px;border:1px solid rgba(255,255,255,.18);color:var(--muted,rgba(255,255,255,.6))}.activity-kind-booking{border-color:rgba(126,182,255,.5);color:#7eb6ff}.activity-kind-money{border-color:rgba(212,175,106,.55);color:var(--gold-400,#d4af6a)}.activity-kind-addon{border-color:rgba(150,220,150,.45);color:#96dc96}.activity-kind-void{border-color:rgba(255,120,120,.5);color:#ff9090}.activity-kind-admin{border-color:rgba(200,160,255,.5);color:#c8a0ff}.bk-avail-src{font-size:.72rem}.bk-avail-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:16px;gap:16px;margin-top:4px}.bk-avail-sub{display:flex;align-items:center;gap:6px;margin:10px 0 6px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,rgba(255,255,255,.55))}.bk-avail-chips{display:flex;flex-wrap:wrap;gap:6px}.bk-avail-chip{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px 6px;border-radius:10px;padding:4px 11px;font-size:.78rem;font-weight:500;border:1px solid transparent}.bk-avail-times{flex-basis:100%;font-size:.66rem;font-weight:500;line-height:1.4;color:var(--gold-400,#e7c76a);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-avail-chip.is-on{background:rgba(52,211,153,.12);border-color:rgba(52,211,153,.4);color:#a7f3d0}.bk-avail-chip.is-expected{background:rgba(45,212,191,.07);border-color:rgba(45,212,191,.28);color:rgba(167,243,208,.75)}.bk-avail-dot.is-expected{background:rgba(45,212,191,.5)}.bk-avail-groups{display:flex;flex-direction:column;gap:8px}.bk-avail-group{display:flex;align-items:baseline;gap:10px}.bk-avail-group-label{flex:0 0 auto;font-size:.72rem;font-weight:600;color:var(--muted,rgba(255,255,255,.55));min-width:64px}.bk-avail-booked{font-size:.64rem;font-weight:700;background:rgba(45,212,191,.22);color:var(--gold-400,#e7c76a);border-radius:999px;padding:0 6px;line-height:1.5}.bk-avail-until{font-size:.68rem;font-weight:600;color:#fbbf24;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-avail-chip.is-off{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);color:var(--muted,rgba(255,255,255,.45))}.bk-avail-offname{text-decoration:line-through;-webkit-text-decoration-color:rgba(248,113,113,.6);text-decoration-color:rgba(248,113,113,.6)}.bk-avail-hrs{font-size:.66rem;opacity:.75;font-weight:400}.bk-avail-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex:0 0 auto}.bk-avail-dot.is-free{background:#34d399}.bk-avail-dot.is-busy{background:#fbbf24}.bk-avail-dot.is-off{background:#f87171}.bk-avail-legend{margin-top:12px;font-size:.68rem;color:var(--muted,rgba(255,255,255,.45))}.bk-lady-off-warn{margin:6px 0 0;font-size:.76rem;color:#fbbf24}.activity-main{flex:1 1 auto;display:flex;flex-direction:column;min-width:0}.activity-text{font-size:.86rem;line-height:1.35}.activity-meta{font-size:.74rem}.activity-meta,.activity-time{color:var(--muted,rgba(255,255,255,.55))}.activity-time{flex:0 0 auto;font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lady-chip-main .premier-badge,.option-btn .premier-badge{margin-left:0;margin-right:6px}.tag-badge{display:inline-flex;align-items:center;margin-left:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:2px 9px;background:rgba(167,139,250,.14);border:1px solid rgba(167,139,250,.55);color:#b79ffb;vertical-align:middle}.lady-chip-main .tag-badge,.option-btn .tag-badge{margin-left:0;margin-right:6px}.check-inline{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:10px 16px;border:1px solid var(--navy-600);border-radius:var(--radius-md);background:var(--navy-800);color:var(--text-100);font-size:.95rem;font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.check-inline input[type=checkbox]{width:22px;height:22px;accent-color:var(--gold-400);cursor:pointer}.field label.check-inline{display:inline-flex;margin-bottom:0;color:var(--text-100)}.room-confirm-veil{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:14px;border-radius:var(--radius-md);background:var(--navy-900);border:1px solid rgba(212,175,106,.55);color:var(--gold-400);font-size:1rem;font-weight:700;text-align:center;line-height:1.35;pointer-events:none}.room-wrench{z-index:4}.room-wrench.is-confirm{min-width:40px;font-size:1.05rem}.chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px}.chip-grid .chip{padding:6px 12px;min-height:40px;font-size:.9rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.entry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:8px;gap:8px}.entry-grid .entry-item{position:relative;flex-direction:column;align-items:stretch;gap:6px;padding:8px 12px}.entry-top{display:flex;align-items:center;gap:8px;min-height:32px}.entry-grid .entry-item:has(.entry-remove) .entry-top{padding-right:44px}.entry-grid .entry-name{font-size:.95rem;display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px}.entry-bottom{display:flex;align-items:center;gap:8px}.entry-grid .entry-bottom .status-badge-btn{min-height:40px}.entry-grid .entry-note{font-size:.82rem;line-height:1.35}.entry-remove{position:absolute;top:6px;right:6px;width:40px;height:40px;border-radius:10px;border:1px solid var(--navy-600);background:transparent;color:var(--text-500);font-size:1.15rem;line-height:1;transition:border-color .15s ease,color .15s ease}.entry-remove:hover{border-color:var(--danger-400);color:var(--danger-400)}.dir-search-row{margin-bottom:10px}.dir-search{width:100%;max-width:420px}.dir-filter-tabs{margin-bottom:14px}@media (min-width:1200px){.roster-columns .dir-rows{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px 24px;gap:6px 24px;align-items:start}.roster-columns .dir-rows>li{min-width:0}.roster-columns .dir-rows .roster-row-actions{flex-shrink:1}.roster-columns .dir-rows .is-editing{grid-column:1/-1}}.dir-filter-tabs button{min-height:44px;padding:8px 20px;font-size:.92rem}.entry-left-date{flex-basis:100%;margin-top:2px;color:var(--text-500);font-size:.84rem;font-weight:500}.btn-danger-outline{border-color:rgba(242,112,138,.5);color:var(--danger-400)}.btn-danger-outline:hover:not(:disabled){border-color:var(--danger-400);background:rgba(242,112,138,.1)}.btn-danger-outline.is-armed{background:var(--danger-400);border-color:var(--danger-400);color:var(--navy-900);font-weight:700}.history-note{flex-basis:100%;color:var(--text-500);font-size:.82rem;font-style:italic}.receipt-card{max-width:420px}.receipt-print,.receipt-screen{border:1px dashed var(--navy-600);border-radius:var(--radius-md);padding:18px 16px;background:rgba(10,28,51,.6)}.receipt-cut{text-align:center;margin:4mm 0;padding-top:4mm;border-top:1px dashed #000000;font-size:.75rem;letter-spacing:.12em}.receipt-copy{page-break-inside:avoid}.receipt-copy:not(:last-child){page-break-after:always;break-after:page}.receipt-header{text-align:center;margin-bottom:12px}.receipt-logo{height:40px;width:auto;margin-bottom:6px}.receipt-company{margin:0;font-weight:800;letter-spacing:.08em;font-size:1rem}.statement-lady-name{margin:3px 0 1px;font-size:1.6rem;font-weight:800;letter-spacing:.04em;line-height:1.1}.receipt-outlet{margin:2px 0 0;color:var(--text-300);font-size:.9rem}.receipt-hero{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:2px 0 4px}.receipt-room-big{margin:0;font-size:2rem;font-weight:800;letter-spacing:.04em;text-align:center;border:2px solid;border-radius:8px;padding:4px 10px;flex-shrink:0}.receipt-lady-big{margin:0;font-size:1.8rem;font-weight:800;letter-spacing:.03em;line-height:1.05;text-align:right;overflow-wrap:anywhere}.receipt-meta{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px dashed var(--navy-600);border-bottom:1px dashed var(--navy-600);color:var(--text-300);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.receipt-lines{padding:8px 0}.receipt-line{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:.92rem}.receipt-line span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.receipt-line-muted{color:var(--text-500);font-size:.85rem}.receipt-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-top:2px solid var(--navy-600);font-weight:800;font-size:1.35rem}.receipt-total span:last-child{color:var(--teal-400);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.receipt-payment{padding:4px 0 10px;border-bottom:1px dashed var(--navy-600);font-size:.92rem;color:var(--text-300)}.receipt-thanks{margin:12px 0 0;text-align:center;color:var(--text-300);font-size:.9rem}.settle-date{display:flex;align-items:center;gap:10px}.settle-date .inline-input{flex:0 1 180px}.settle-note{margin:0 0 14px;font-size:.85rem}.settle-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px;margin-bottom:18px}.settle-section-head{grid-column:1/-1;display:flex;align-items:baseline;gap:12px;margin-top:10px;padding-bottom:6px;border-bottom:1px solid var(--card-border)}.settle-section-head:first-child{margin-top:0}.settle-section-head h2{font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#9aa08b)}.settle-section-cross h2{color:#8fd0a8}.settle-section-count{font-size:.75rem;font-weight:600;padding:2px 10px;border-radius:999px;background:var(--card-border);color:var(--text-muted,#9aa08b)}.settle-section-cross .settle-section-count{background:#1e3a2b;color:#8fd0a8}.settle-section-hint{font-size:.75rem;color:var(--text-muted,#9aa08b);margin-left:auto}.settle-exp-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.settle-exp-add input{min-width:0;flex:1 1 140px}.settle-exp-add .settle-exp-amount{flex:0 1 90px}.settle-exp-list{display:flex;flex-direction:column;gap:4px;max-width:520px}.settle-exp-row-amt{display:inline-flex;align-items:center;gap:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.settle-card{border:1px solid var(--card-border);border-radius:var(--radius-md);background:rgba(10,28,51,.6);padding:16px;display:flex;flex-direction:column}.settle-card .summary-total{margin-top:auto}.summary-row:has(.settle-taxi-input){align-items:center}.settle-card:not(:has(.summary-total)) .settle-actions{margin-top:auto}.settle-card.settle-card-paid{border-color:var(--paid-border);background:var(--paid-bg)}.settle-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid rgba(45,212,203,.15)}.paid-badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;border-radius:999px;padding:4px 12px;background:rgba(67,217,163,.14);border:1px solid rgba(67,217,163,.5);color:var(--success-400);white-space:nowrap}.settle-details{margin-top:10px;border-top:1px dashed var(--navy-600);padding-top:8px}.settle-details summary{cursor:pointer;min-height:40px;display:flex;align-items:center;color:var(--text-300);font-weight:600;font-size:.9rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.settle-details summary::-webkit-details-marker{display:none}.settle-details summary:after{content:"▾";margin-left:auto;font-size:.85rem;color:var(--text-300);transition:transform .15s ease}.settle-details[open] summary:after{transform:rotate(180deg)}.settle-voided-details{border-top:none;margin-top:4px;padding-top:0;margin-left:10px;opacity:.75}.settle-void-pending-note{margin-top:6px;font-size:.85rem;font-weight:600;color:var(--amber-400,#fbbf24)}.settle-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.settle-actions .btn-action,.settle-actions .btn-small{flex:1 1 130px;min-height:48px}.btn-settle{font-size:.95rem;font-weight:600;justify-content:center}.settle-grand{margin-top:0}.print-only{display:none}.statement-sign{display:flex;align-items:flex-end;gap:12px;margin-top:28px;font-size:.9rem}.statement-sign-line{flex:1 1;border-bottom:1px solid;height:28px}@media print{@page{size:80mm auto;margin:0}body :not(:has(.print-only)):not(.print-only):not(.print-only *){display:none!important}.modal-card,.modal-overlay{position:static!important;inset:auto!important;transform:none!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:#ffffff!important;max-width:none!important;width:auto!important;box-shadow:none!important;overflow:visible!important;display:block!important}body:has(.print-only) :has(.print-only):not(.print-only){display:block!important;position:static!important;inset:auto!important;transform:none!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:#ffffff!important;max-width:none!important;width:auto!important;height:auto!important;max-height:none!important;box-shadow:none!important;overflow:visible!important;gap:0!important;grid-template-columns:none!important}.print-only,.receipt-print{display:block!important;position:relative;left:-3mm;box-sizing:border-box;width:72mm;padding:2mm 3mm;background:#ffffff;color:#000000;border:none;border-radius:0}.print-only *,.receipt-print *{color:#000000!important;background:transparent!important;border-color:#000000!important;box-shadow:none!important;text-shadow:none!important}.receipt-logo{filter:grayscale(1) brightness(0)}.receipt-total{border-top:2px solid #000000}.receipt-meta,.receipt-payment{border-color:#000000!important}.receipt-print{padding:1mm 3mm;line-height:1.25}.receipt-header{margin-bottom:2px}.receipt-hero{margin:0 0 2px;gap:6px}.receipt-room-big{font-size:1.6rem;padding:1px 6px}.receipt-lady-big{font-size:1.4rem}.receipt-meta{padding:2px 0;font-size:.8rem}.receipt-lines{padding:2px 0}.receipt-line{padding:1px 0}.receipt-total{padding:4px 0;font-size:1.15rem}.receipt-payment{padding:1px 0 3px}.receipt-cut{margin:2mm 0;padding-top:2mm}}.dot-amber{background:#f2b950;box-shadow:0 0 6px rgba(242,185,80,.7)}.busy-label{font-size:.75rem;font-weight:600;color:#f2b950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jobs-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.jobs-date{flex:0 1 170px}.jobs-lady{flex:0 1 200px}.jobs-summary{margin-top:0;margin-bottom:16px}.jobs-method-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(45,212,203,.15)}.pay-badge{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;border-radius:999px;padding:4px 12px;border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);white-space:nowrap}.pay-badge strong{color:var(--text-100);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pay-badge-source{border-color:rgba(45,212,203,.3)}.pay-badge-cancelled{border-color:rgba(242,112,138,.4);color:var(--danger-400)}.jobs-list{display:flex;flex-direction:column;gap:8px}.jobs-row{border:1px solid var(--card-border);border-radius:var(--radius-md);background:rgba(10,28,51,.6);overflow:hidden}.jobs-row>summary{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;padding:12px 14px;min-height:56px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;list-style:none}.jobs-row>summary::-webkit-details-marker{display:none}.jobs-cell{font-size:.92rem}.jobs-time{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jobs-room{color:var(--text-300);font-weight:600}.jobs-ladies{font-weight:700}.jobs-service{color:var(--text-300)}.jobs-addons-note{margin-left:6px;font-size:.84rem;color:var(--teal-400);font-weight:600}.jobs-total{margin-left:auto;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.jobs-badges{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.status-badge.completed{background:rgba(67,217,163,.12);border-color:rgba(67,217,163,.45);color:var(--success-400)}.status-badge.in_progress{background:rgba(242,185,80,.12);border-color:rgba(242,185,80,.5);color:#f2b950;animation:jobs-pulse 1.6s ease-in-out infinite}.status-badge.cancelled{background:rgba(110,134,163,.12);border-color:rgba(110,134,163,.4);color:var(--text-500)}@keyframes jobs-pulse{0%,to{opacity:1}50%{opacity:.45}}.jobs-cancelled>summary{opacity:.5}.jobs-cancelled .jobs-total{text-decoration:line-through}.jobs-detail{padding:4px 14px 14px;border-top:1px dashed var(--navy-600)}.jobs-detail-total{font-size:1.05rem}.jobs-auto-badge{margin-left:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:2px 8px;background:rgba(212,175,106,.16);border:1px solid rgba(212,175,106,.5);color:var(--gold-400);vertical-align:middle}.jobs-meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--navy-600);color:var(--text-500);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.jobs-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.jobs-group{margin-bottom:18px}.jobs-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 4px 10px}.jobs-group-stats{color:var(--text-300);font-weight:700;font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.kiosk{min-height:100dvh;display:flex;flex-direction:column;padding:20px clamp(16px,4vw,48px) 32px;max-width:1100px;margin:0 auto;width:100%}.kiosk-top{display:flex;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--card-border)}.kiosk-logo{height:56px;width:auto;object-fit:contain}.kiosk-top-text{flex:1 1;min-width:0}.kiosk-top-text h1{margin:0;font-size:1.6rem;letter-spacing:.02em}.kiosk-top-text span{color:var(--text-300);font-size:.95rem}.kiosk-top-actions{display:flex;align-items:center;gap:14px}.kiosk-exit{font-size:.85rem;color:var(--text-500);text-decoration:none}.kiosk-exit:hover{color:var(--teal-400)}.kiosk-notice{margin-top:14px;padding:12px 16px;border-radius:var(--radius-md);font-size:1rem}.kiosk-notice.ok{background:rgba(67,217,163,.12);border:1px solid rgba(67,217,163,.4);color:var(--success-400)}.kiosk-notice.err{background:rgba(242,112,138,.12);border:1px solid rgba(242,112,138,.4);color:var(--danger-400)}.kiosk-body{flex:1 1;display:flex;flex-direction:column;padding-top:18px}.kiosk-modes{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.kiosk-modes button{min-height:72px;font-size:1.5rem;font-weight:700;letter-spacing:.06em;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);color:var(--text-300)}.kiosk-modes button.active{background:var(--kiosk-active-bg);border-color:var(--kiosk-active-border);color:var(--kiosk-active-text)}.kiosk-hint{margin:18px 0 12px;color:var(--text-300);font-size:1.05rem;text-align:center}.kiosk-empty{margin:48px 0;text-align:center;color:var(--text-500);font-size:1.15rem}.kiosk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:14px;gap:14px}.kiosk-tile{min-height:88px;padding:14px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:1.35rem;font-weight:700;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);color:var(--text-100)}.kiosk-tile:hover{border-color:var(--teal-400)}.kiosk-tile:active{transform:scale(.97)}.kiosk-tile-name{font-size:1.35rem}.kiosk-tile-sub{font-size:.85rem;font-weight:400;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kiosk-camera,.kiosk-pin{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:18px;padding-top:28px}.kiosk-camera h2,.kiosk-pin h2{margin:0;font-size:1.4rem}.pin-dots{display:flex;gap:18px}.pin-dots span{width:22px;height:22px;border-radius:50%;border:2px solid var(--text-500);background:transparent}.pin-dots span.on{background:var(--teal-400);border-color:var(--teal-400)}.kiosk-pin-err{margin:0;color:var(--danger-400);font-size:1.05rem}.pin-pad{display:grid;grid-template-columns:repeat(3,96px);grid-gap:12px;gap:12px}.pin-pad button{height:80px;font-size:1.8rem;font-weight:700;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg);color:var(--text-100)}.pin-pad button:hover:not(:disabled){border-color:var(--teal-400)}.pin-pad button:active:not(:disabled){transform:scale(.95);background:var(--navy-600)}.pin-pad button:disabled{opacity:.4;cursor:not-allowed}@keyframes kiosk-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-10px)}40%{transform:translateX(10px)}60%{transform:translateX(-8px)}80%{transform:translateX(8px)}}.kiosk-shake{animation:kiosk-shake .4s ease}.kiosk-preview,.kiosk-video{width:min(480px,90vw);aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:#000}.kiosk-big{min-height:72px;min-width:220px;font-size:1.3rem;font-weight:700}.kiosk-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.kiosk-warn{color:var(--gold-400);font-size:1.1rem;text-align:center;max-width:420px}.kiosk-success{flex:1 1;display:flex;align-items:center;justify-content:center}.kiosk-success-card{padding:40px 56px;font-size:1.8rem;font-weight:700;text-align:center;border-radius:var(--radius-lg);border:1px solid rgba(67,217,163,.5);background:rgba(67,217,163,.12);color:var(--success-400)}.kiosk-success-stack{display:flex;flex-direction:column;align-items:center;gap:22px}.kiosk-declare-reminder{width:min(620px,90vw);padding:22px 28px;border-color:var(--gold-400);background:rgba(212,175,55,.1);color:var(--text-100);font-size:1.15rem;font-weight:600;line-height:1.55}.kiosk-intent-card{border-color:rgba(96,165,250,.55);background:rgba(96,165,250,.1);color:var(--text-100);width:min(560px,90vw);padding:26px 32px}.kiosk-intent-q{font-size:1.5rem;font-weight:700;margin:0 0 18px}.kiosk-intent-btns{display:flex;gap:16px;justify-content:center}.kiosk-big-btn{min-width:180px;padding:16px 26px;font-size:1.25rem;font-weight:700;border-radius:var(--radius-lg);border:1px solid var(--border-soft,rgba(255,255,255,.18));cursor:pointer}.kiosk-intent-yes{background:var(--kiosk-active-bg);border-color:var(--kiosk-active-border);color:var(--kiosk-active-text)}.kiosk-intent-no{background:rgba(255,255,255,.06);color:var(--text-300,#cbd5e1)}.kiosk-big-btn:disabled{opacity:.5;cursor:default}.bonus-card{width:min(560px,90vw);padding:22px 28px 18px;text-align:center;color:var(--text-100);border-radius:var(--radius-lg);border:1px solid rgba(243,217,139,.55);background:rgba(243,217,139,.1)}.bonus-text{font-size:1.35rem;font-weight:700;line-height:1.45}.bonus-bar{margin-top:14px;height:10px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}.bonus-bar-fill{height:100%;border-radius:999px;background:var(--bar-fill);transition:width .5s ease}.bonus-count{margin-top:8px;font-size:.95rem;font-weight:700;letter-spacing:.05em;color:var(--text-300)}.bonus-card.earned{background:linear-gradient(135deg,rgba(243,217,139,.22),rgba(212,175,55,.12));border-color:rgba(243,217,139,.85)}.bonus-card.earned .bonus-bar-fill{background:linear-gradient(90deg,#f3d98b,#d4af37)}.kiosk-choose{align-items:center;justify-content:center;gap:28px}.kiosk-title{margin:0;font-size:1.8rem;text-align:center}.kiosk-choose-row{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}.kiosk-choose-btn{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:240px;min-height:200px;padding:28px;font-size:1.5rem;font-weight:700;color:var(--text-100);border-radius:var(--radius-lg);border:1px solid var(--card-border);background:var(--card-bg)}.kiosk-choose-btn:hover{border-color:var(--teal-400)}.kiosk-choose-btn img{height:72px;width:auto;object-fit:contain}.pin-edit-row{flex-basis:100%;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.pin-input{width:90px;text-align:center;letter-spacing:.3em}.pin-ok{color:var(--success-400);font-size:.85rem}.pin-err{color:var(--danger-400);font-size:.85rem}.pin-note{color:var(--text-500);font-size:.78rem}.kiosk-footer{margin-top:auto;padding-top:24px;display:flex;justify-content:center}.kiosk-signout{background:none;border:none;padding:8px 12px;color:var(--text-500);font-size:.8rem;text-decoration:underline}.kiosk-signout:hover{color:var(--text-300)}.nopin-badge{display:inline-block;margin-left:8px;padding:2px 8px;font-size:.78rem;letter-spacing:.04em;vertical-align:middle}.kiosk-tile-badge,.nopin-badge{border-radius:999px;font-weight:700;color:var(--gold-400);border:1px solid rgba(212,175,106,.55);background:rgba(212,175,106,.12)}.kiosk-tile-badge{padding:4px 14px;font-size:.85rem}.pin-notice{margin:10px 0 0;padding:10px 14px;border-radius:var(--radius-md);font-size:.95rem}.pin-notice.ok{background:rgba(67,217,163,.12);border:1px solid rgba(67,217,163,.4);color:var(--success-400)}.pin-notice.err{background:rgba(242,112,138,.12);border:1px solid rgba(242,112,138,.4);color:var(--danger-400)}.presence-groups{display:flex;gap:24px;flex-wrap:wrap}.presence-group{flex:1 1 260px;min-width:0}.presence-label{margin:0 0 8px;font-size:.85rem;font-weight:700;letter-spacing:.04em;color:var(--text-300)}.line-waived{text-decoration:line-through;color:var(--text-500)}.line-note{font-size:.85rem;font-weight:400;color:var(--text-500);text-decoration:none;display:inline-block}.line-warn{color:var(--warn-400,#fbbf24);font-weight:600}.roster-columns{display:flex;flex-direction:column;gap:24px}.roster-columns>section:first-of-type{order:2}.roster-columns>section:last-of-type{order:1}@media (min-width:1440px){.app-shell{max-width:1760px;padding:24px 32px 64px}.app-header{flex-wrap:nowrap}.board-columns{display:grid;grid-template-columns:7fr 3fr;grid-gap:24px;gap:24px;align-items:start}.room-grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:16px}.room-card{min-height:136px;padding:16px}.room-card .room-name{font-size:1.4rem}.modal-overlay.sheet-side{justify-content:center;align-items:center;padding:32px}.booking-sheet{width:min(1080px,100%);height:auto;max-height:calc(100dvh - 64px);border-left:1px solid var(--card-border);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:0 24px 60px rgba(0,0,0,.5)}.sheet-columns{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 36px;gap:8px 36px;align-items:start}.modal-card{max-width:720px}.modal-card .detail-list{display:grid;grid-template-columns:1fr 1fr;grid-column-gap:28px;column-gap:28px}.jobs-groups{column-count:3;column-gap:24px}.jobs-group{page-break-inside:avoid;break-inside:avoid}.settle-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.roster-columns{display:grid;grid-template-columns:5fr 7fr;grid-gap:24px;gap:24px;align-items:start}.home-wrap{max-width:1100px}}.app-header-cashier{color:var(--text-300);font-size:.85rem;font-weight:600;white-space:nowrap}.pos-grid{display:grid;grid-template-columns:280px minmax(0,1fr) 360px;grid-gap:20px;gap:20px;align-items:start}.pos-pane{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:18px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pos-order,.pos-roster{position:-webkit-sticky;position:sticky;top:20px;max-height:calc(100dvh - 40px);overflow-y:auto}.pos-pane-head{margin-bottom:14px}.pos-pane-head .section-hint{margin-top:4px}.pos-filters{display:flex;gap:8px;margin-bottom:14px}.pos-filters button{flex:1 1;min-height:38px;padding:6px 8px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);font-size:.85rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.pos-filters button[aria-pressed=true]{border-color:var(--teal-500);background:rgba(23,184,176,.16);color:var(--teal-400)}.pos-roster-group{margin-bottom:12px}.pos-roster-group .presence-label{margin:10px 0 8px}.roster-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin-bottom:6px;border-radius:var(--radius-md);border:1px solid var(--navy-600);color:var(--text-100);font-size:.95rem;font-weight:600;text-align:left;transition:border-color .15s ease,background .15s ease}.roster-row:not(:disabled):hover{border-color:var(--teal-500)}.roster-row:disabled{cursor:not-allowed;opacity:.6}.roster-row.is-busy{opacity:.75}.roster-row.is-picked{border-color:var(--teal-500);background:rgba(23,184,176,.16)}.roster-row-name{display:inline-flex;align-items:center;gap:6px}.roster-row-status{font-size:.84rem;font-weight:600;white-space:normal;text-align:right;line-height:1.25;max-width:55%}.roster-row-status.free{color:var(--success-400)}.roster-row-status.busy{color:var(--gold-400)}.pos-room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:14px;gap:14px}.pos-room-grid .room-card{min-height:150px}.room-card.is-selected{outline:2px solid var(--teal-400);outline-offset:2px}.pos-floor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.layout-toggle{display:flex;gap:6px}.layout-toggle button{min-height:34px;padding:4px 14px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);font-size:.82rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.layout-toggle button[aria-pressed=true]{border-color:var(--teal-500);background:rgba(23,184,176,.16);color:var(--teal-400)}.pos-room-strips{display:flex;flex-direction:column}.strip-group-label{margin:12px 0 6px 2px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-500)}.strip-group:first-child .strip-group-label{margin-top:0}.room-strip{position:relative;display:grid;grid-template-columns:124px 1fr 132px;align-items:stretch;min-height:64px;margin-bottom:8px;border:1px solid var(--navy-600);border-radius:var(--radius-md);background:var(--navy-900);overflow:hidden;transition:border-color .15s ease}.room-strip[role=button]{cursor:pointer}.room-strip[role=button]:hover{border-color:var(--teal-500)}.room-strip[aria-disabled=true]{cursor:not-allowed;opacity:.65}.room-strip.is-selected{outline:2px solid var(--teal-400);outline-offset:2px}.room-strip.room-invite{border-color:var(--teal-500)}.strip-num{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 6px 8px 12px;font-weight:800;font-size:1.15rem;box-shadow:inset 4px 0 0 var(--strip-accent,transparent);background:var(--glass-soft-bg)}.strip-num-name{max-width:100%;text-align:center;line-height:1.15;overflow-wrap:anywhere}.strip-num small{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-300)}.strip-mid{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:8px 14px;min-width:0;font-size:.95rem;font-weight:600;color:var(--text-100)}.strip-ladies{font-weight:700}.strip-avail{color:var(--success-400)}.strip-sub{color:var(--text-300);font-weight:500;font-size:.82rem}.strip-timer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:8px 10px;border-left:1px solid var(--navy-600);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.strip-time{font-size:1.45rem;font-weight:800;line-height:1.1}.strip-time.is-idle{color:var(--text-500)}.strip-time.is-prep-text{color:var(--warning-400)}.strip-time.is-hold-text{font-size:.78rem;font-weight:700;color:#7db8f0}.strip-timer small{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-500)}.room-strip.status-free{--strip-accent:var(--room-free-status)}.room-strip.status-free .strip-num{color:var(--room-free-status)}.room-strip.status-occupied{--strip-accent:var(--room-occupied-status)}.room-strip.status-occupied .strip-num,.room-strip.status-occupied .strip-time{color:var(--room-occupied-status)}.room-strip.status-occupied.is-prep{--strip-accent:var(--room-prep-status)}.room-strip.status-occupied.is-prep .strip-num,.room-strip.status-occupied.is-prep .strip-time{color:var(--room-prep-status)}.room-strip.status-occupied.is-hold{--strip-accent:var(--room-hold-status)}.room-strip.status-occupied.is-hold .strip-num,.room-strip.status-occupied.is-hold .strip-time{color:var(--room-hold-status)}.room-strip.status-cleaning{--strip-accent:var(--room-cleaning-status)}.room-strip.status-cleaning .strip-num{color:var(--room-cleaning-status)}.room-strip.status-maintenance{--strip-accent:var(--room-maint-status)}.room-strip.status-maintenance .strip-num{color:var(--room-maint-status)}.room-strip.status-reserved .strip-num{color:var(--room-reserved-status)}.room-strip.status-maintenance{opacity:.55;filter:grayscale(.5)}.room-strip .room-wrench{top:6px;right:6px;min-width:34px;min-height:34px;padding:2px 6px;font-size:.85rem}.room-strip .room-wrench.is-confirm{min-width:52px}.summary-box .refund-row{color:var(--gold-400);font-weight:700}.chip-btn.is-selected,.roster-row.is-awaiting{border-color:var(--option-active-border);background:var(--option-active-bg-soft)}button.chip-btn{font:inherit;color:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease}button.chip-btn:hover{border-color:var(--option-active-border)}.lady-hint{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px;padding:8px 12px;border-radius:var(--radius-md);border:1px solid var(--option-active-border);background:var(--option-active-bg-soft);color:var(--teal-400);font-size:.92rem;font-weight:600}.lady-hint-clear{flex:none;width:28px;height:28px;border-radius:50%;border:1px solid var(--option-active-border);background:transparent;color:var(--teal-400);font-size:1rem;line-height:1;cursor:pointer}.lady-hint-clear:hover{background:var(--option-active-bg)}.room-card.room-invite{animation:room-invite-pulse 1.6s ease-in-out infinite}.room-card.is-reserved,.room-strip.is-reserved{border-color:var(--amber-400,#fbbf24);box-shadow:0 0 0 2px rgba(251,191,36,.55);animation:room-reserved-pulse 1.8s ease-in-out infinite}@keyframes room-reserved-pulse{0%,to{box-shadow:0 0 0 1px rgba(251,191,36,.35)}50%{box-shadow:0 0 0 4px rgba(251,191,36,.6)}}.svc-card-suggested{border-color:var(--amber-400,#fbbf24);background:rgba(251,191,36,.1)}@keyframes room-invite-pulse{0%,to{box-shadow:0 0 0 0 var(--pulse-ring-0)}50%{box-shadow:0 0 0 3px var(--pulse-ring)}}.arrived-badge{margin-left:6px;padding:1px 7px;border-radius:999px;border:1px solid var(--option-active-border);color:var(--teal-400);font-size:.72rem;font-weight:700;white-space:nowrap}.bk-notice{margin:0 0 10px;padding:8px 14px;border-radius:var(--radius-md);border:1px solid var(--option-active-border);background:var(--option-active-bg-soft);color:var(--teal-400);font-size:.9rem;font-weight:600}.bk-head{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin-bottom:12px}.date-nav{display:inline-flex;align-items:center;gap:6px;padding:3px 6px;border-radius:999px;border:1px solid var(--card-border);background:var(--glass-soft-bg)}.date-nav .dn-arrow{width:30px;height:30px;border-radius:50%;border:1px solid var(--glass-soft-border);color:var(--text-300);display:flex;align-items:center;justify-content:center;font-size:.95rem}.date-nav .dn-arrow:hover{border-color:var(--teal-500);color:var(--text-100)}.date-nav .dn-label{font-weight:700;font-size:.88rem;padding:0 4px;white-space:nowrap}.dn-picker{font:inherit;font-size:.82rem;padding:6px 10px}.bk-search,.dn-picker{background:var(--glass-soft-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);color:var(--text-100)}.bk-search{font:inherit;font-size:.88rem;flex:1 1 200px;max-width:340px;padding:8px 12px}.bk-search:focus{outline:none;border-color:var(--teal-500)}.bk-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px;margin-bottom:12px}.bk-stat{display:flex;flex-direction:column;gap:2px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:10px 16px}.bk-stat-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-500);font-weight:700}.bk-stat-value{font-size:1.3rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-stat-value.c-teal{color:var(--teal-400)}.bk-stat-value.c-green{color:var(--success-400)}.bk-stat-value.c-red{color:var(--danger-400)}.bk-stat-value.c-gray{color:var(--text-500)}.bk-stat-sub{font-size:.72rem;color:var(--text-300);min-height:1em}.bk-board{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-gap:16px;gap:16px;align-items:start}.bk-main-col{min-width:0;display:flex;flex-direction:column;gap:14px}.bk-rails-inline{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;align-items:start}.bk-roster-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.bk-roster-link{font-size:.78rem;font-weight:600;color:var(--teal-500);text-decoration:none;white-space:nowrap}.bk-roster-link:hover{text-decoration:underline}.bk-roster-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px}.bk-roster-day{min-width:0}.bk-roster-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.bk-roster-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;padding:6px 10px;border-radius:var(--radius-sm,8px);background:var(--glass-soft-bg);border:1px solid var(--card-border)}.bk-roster-name{flex-shrink:0;font-weight:600;color:var(--text-100);white-space:nowrap}.bk-roster-outlet{flex-shrink:0;padding:1px 7px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-300)}.bk-roster-outlet.is-deep{color:var(--teal-500);border-color:var(--teal-500)}.bk-roster-outlet.is-wonder{color:var(--gold-400);border-color:var(--gold-400)}.bk-roster-hours{flex-shrink:0;font-size:.78rem;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-roster-booked{flex-basis:100%;order:5;white-space:normal;overflow-wrap:anywhere;line-height:1.5;font-size:.75rem;font-weight:600;color:var(--warning-400);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-roster-title-left{display:inline-flex;align-items:center;gap:10px;min-width:0}.bk-roster-toggle{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-300);font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap}.bk-roster-toggle:hover{color:var(--text-100);border-color:var(--teal-500)}.bk-roster-chev{display:inline-block;transition:transform .15s ease}.bk-roster-chev.is-open{transform:rotate(180deg)}.bk-roster-pills{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch}.bk-roster-pill-day{flex-shrink:0;display:inline-flex;align-items:center;gap:6px}.bk-roster-pill-day+.bk-roster-pill-day{margin-left:10px;padding-left:10px;border-left:1px solid var(--card-border)}.bk-roster-pill-day-label{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-300)}.bk-roster-pill,.bk-roster-pill-day-label{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;white-space:nowrap}.bk-roster-pill{padding:5px 10px;border-radius:999px;border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-100);font-size:.8rem;cursor:pointer}.bk-roster-pill:hover{border-color:var(--teal-500)}.bk-roster-pill-name{font-weight:600}.bk-roster-pill-hours{color:var(--text-300);font-size:.75rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-roster-pill-dot{width:7px;height:7px;border-radius:50%;background:var(--text-300)}.bk-roster-pill-dot.is-deep{background:var(--teal-500)}.bk-roster-pill-dot.is-wonder{background:var(--gold-400)}.bk-roster-pill-booked{min-width:16px;padding:0 4px;border-radius:999px;background:var(--warning-400);color:#1a1207;font-size:.68rem;font-weight:700;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-list{display:flex;flex-direction:column;gap:8px}@media (min-width:1440px){section.panel>.bk-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:start}.bk-day-sec{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 20px;gap:12px 20px;align-items:start}.bk-day-sec>.bk-day-head,.bk-day-sec>.bk-lanes,.bk-day-sec>.bk-timeline,.bk-day-sec>.muted-text{grid-column:1/-1}.bk-lady-group+.bk-lady-group{margin-top:0;padding-top:0;border-top:none}.bk-timeline{max-width:880px}}@media (min-width:1900px){.bk-day-sec,section.panel>.bk-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.bk-day-sec+.bk-day-sec{margin-top:18px}.bk-day-head{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.8rem;font-weight:600;color:var(--text-300);text-transform:uppercase;letter-spacing:.08em}.bk-lady-group+.bk-lady-group{margin-top:12px;padding-top:10px;border-top:1px dashed rgba(255,255,255,.08)}.bk-view-toggle{display:inline-flex;gap:6px;margin-bottom:12px}.bk-view-toggle .option-btn{padding:5px 14px;font-size:.8rem}.bk-reserve{margin:10px 0 4px}.bk-reserved-name{align-self:center;font-weight:600;color:var(--text-100)}.bk-auto-tag{margin-left:6px;padding:1px 7px;border-radius:999px;font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-300);border:1px dashed var(--card-border)}.bk-timeline{position:relative;margin-left:58px;padding-left:18px;border-left:2px solid var(--divider);display:flex;flex-direction:column;gap:8px}.bk-tl-toggle{align-self:flex-start;margin-left:-58px}.bk-tl-item{position:relative}.bk-tl-item:before{content:"";left:-24px;width:10px;height:10px;border-radius:50%;background:var(--teal-500);box-shadow:0 0 0 3px var(--bg,rgba(0,0,0,.35))}.bk-tl-item:before,.bk-tl-time{position:absolute;top:50%;transform:translateY(-50%)}.bk-tl-time{left:-76px;width:52px;text-align:right;font-size:.82rem;font-weight:600;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-timeline .bk-card{grid-template-columns:1fr auto;padding:7px 12px}.bk-timeline .bk-time{display:none}@media (max-width:640px){.bk-timeline{margin-left:50px;padding-left:14px}.bk-tl-time{left:-66px;width:44px;font-size:.75rem}}.upgrade-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 4px;font-size:.85rem}.pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1.4;white-space:nowrap}.upgrade-pending .pill{background:rgba(245,158,11,.18);color:#fbbf24}.upgrade-approved .pill{background:rgba(34,197,94,.16);color:#4ade80}.upgrade-rejected .pill{background:rgba(239,68,68,.16);color:#f87171}.upgrade-resolve{display:inline-flex;gap:6px}.upgrade-toggle{margin-left:10px}.upgrade-toggle-on{background:rgba(245,158,11,.2);color:#fbbf24}.svc-card-upgrade{border-style:dashed}.svc-upgrade-tag{display:block;margin-top:2px;font-size:.75rem;font-weight:600;color:#4ade80}.double90-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;margin-top:10px;padding:10px 14px;border-radius:10px;border:1px dashed rgba(255,255,255,.25);background:transparent;color:inherit;cursor:pointer;text-align:left}.double90-on{border-style:solid;border-color:#4ade80;background:rgba(34,197,94,.12)}.now-floor-rows{display:flex;flex-direction:column;gap:10px}.now-floor-row{display:flex;align-items:flex-start;gap:14px}.now-row-label{flex:0 0 108px;padding-top:7px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-500);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.now-floor-row-left .now-row-label{color:#f87171;opacity:.8}.now-row-chips{display:flex;flex-wrap:wrap;gap:8px;flex:1 1;min-width:0}.now-row-divider{border:0;border-top:1px dashed var(--card-border);margin:2px 0 2px 122px}.now-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font-size:.85rem;white-space:nowrap}.now-chip-status{font-size:.78rem;opacity:.85}.now-free{background:rgba(34,197,94,.14)}.now-held{background:rgba(96,165,250,.16)}.now-busy{background:rgba(245,158,11,.14)}.now-chip-outlet{font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:1px 7px;border-radius:999px;background:rgba(148,163,184,.18);color:#cbd5e1}.now-left{background:rgba(239,68,68,.14);padding:3px 10px;font-size:.78rem;opacity:.62}.now-left .now-chip-outlet{background:rgba(239,68,68,.22);color:#fca5a5}[data-theme=aman] .now-free{background:rgba(95,110,80,.16);color:#44523a}[data-theme=aman] .now-held{background:rgba(63,111,125,.16);color:#2f5561}[data-theme=aman] .now-busy{background:rgba(140,95,34,.16);color:#6d4a1c}[data-theme=aman] .now-left{background:rgba(164,74,58,.12);color:#8a3e30}[data-theme=aman] .now-left .now-chip-outlet{background:rgba(164,74,58,.16);color:#8a3e30}[data-theme=aman] .now-chip-outlet{background:rgba(90,70,40,.1);color:var(--text-300)}[data-theme=aman] .now-floor-row-left .now-row-label,[data-theme=aman] .presence-label-left{color:#a44a3a}.roster-sticky-head .outlet-tabs{display:flex;width:100%}.roster-sticky-head .outlet-tabs button{flex:1 1;text-align:center;white-space:nowrap;padding-left:10px;padding-right:10px}.roster-sticky-head .section-hint{min-width:0;flex-shrink:1;text-align:right}.roster-sticky-head .outlet-tabs{padding:6px;gap:6px}.presence-label-left{color:#f87171}.paid-notice{margin:10px 0;padding:12px 16px;background:rgba(34,197,94,.16);color:var(--success-400,#4ade80)}.paid-notice,.settle-error-toast{border-radius:10px;font-weight:600}.settle-error-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:60;margin:0;padding:12px 18px;background:rgba(127,29,29,.95);color:#fecaca;box-shadow:0 8px 24px rgba(0,0,0,.45);max-width:min(92vw,640px)}.settle-inout{font-size:.85rem}@media print{.statement-copy{break-before:page;page-break-before:always}}.mg-upgrade-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.mg-upgrade-main{display:flex;flex-direction:column;gap:2px;min-width:0}.bk-lady-head{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:1.05rem;font-weight:700;color:var(--text-100);letter-spacing:.01em}.bk-lanes{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;align-items:start}.bk-lane{border:1px solid var(--card-border);border-radius:14px;padding:10px 12px;background:rgba(255,255,255,.03);min-width:0;overflow-x:clip}.app-shell:has(.bk-board.is-both){max-width:1680px}.bk-lane-head{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--card-border);font-size:.95rem;font-weight:700}.bk-lane.is-deep .bk-lane-head{color:var(--teal-400)}.bk-lane.is-wonder .bk-lane-head{color:var(--gold-400)}@media (max-width:900px){.bk-lanes{grid-template-columns:1fr}}.bk-lady-head:before{content:"";width:4px;height:1.05em;border-radius:2px;background:var(--teal-500);flex-shrink:0}.count-bubble{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--glass-soft-bg);border:1px solid var(--card-border);font-size:.72rem;font-weight:700;color:var(--text-100);letter-spacing:normal;text-transform:none}.section-title .count-bubble{margin-left:8px;vertical-align:middle}.bk-card{display:grid;grid-template-columns:84px 1fr auto;grid-gap:14px;gap:14px;align-items:center;background:var(--glass-soft-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:9px 14px}.bk-card.is-clickable{cursor:pointer}.bk-card.is-clickable:hover,.bk-card.is-selected{border-color:var(--teal-500)}.bk-card.is-selected{background:var(--option-active-bg-soft)}.bk-card.is-terminal{opacity:.5}.bk-card.is-awaiting{border-color:rgba(251,191,36,.45);background:linear-gradient(180deg,rgba(251,191,36,.06),rgba(251,191,36,.02));box-shadow:inset 3px 0 0 rgba(251,191,36,.7)}.bk-card.is-awaiting.is-clickable:hover{border-color:var(--warning-400,#fbbf24)}.bk-card.is-handled{opacity:.72}.bk-card.is-handled.is-selected,.bk-card.is-handled:hover{opacity:1}.bk-time{text-align:center;border-right:1px solid var(--divider);padding-right:12px}.bk-time-t{display:block;font-size:1.05rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--teal-400)}.bk-outlet{display:inline-flex;margin-top:4px;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 8px;border-radius:999px}.bk-outlet.deep{color:var(--gold-400);background:rgba(231,199,106,.1);border:1px solid rgba(231,199,106,.35)}.bk-outlet.wonder{color:var(--cyan-400);background:rgba(56,214,245,.08);border:1px solid rgba(56,214,245,.35)}.bk-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:1.05rem;font-weight:700;color:var(--text-100)}.bk-ref{font-size:.78rem;font-weight:800;color:var(--gold-400);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em}.bk-ref-inline{margin-left:8px}.bk-sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.84rem;color:var(--text-300);margin-top:2px}.bk-src{font-size:.72rem;color:var(--text-500)}.bk-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.bk-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.bk-actions .bk-act{min-height:32px;padding:3px 12px;font-size:.82rem}.bk-rail-list{margin-top:8px;display:flex;flex-direction:column}.bk-rail-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--divider)}.bk-rail-row.is-clickable{cursor:pointer}.bk-rail-row.is-clickable:hover .bk-rail-name{color:var(--teal-400)}.bk-rail-row:first-child{border-top:none}.bk-rail-row.is-soon{animation:bkSoonPulse 2s ease-in-out infinite;border-radius:8px;padding-left:8px;padding-right:8px;margin-left:-8px;margin-right:-8px}@keyframes bkSoonPulse{0%,to{background:rgba(251,191,36,.05);box-shadow:0 0 0 0 rgba(251,191,36,0)}50%{background:rgba(251,191,36,.13);box-shadow:0 0 14px 0 rgba(251,191,36,.22)}}.bk-rail-time{font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--teal-400);font-size:.92rem;min-width:46px}.bk-rail-main{flex:1 1;min-width:0;display:flex;flex-direction:column}.bk-rail-name{font-weight:700;font-size:.9rem}.bk-rail-sub{font-size:.76rem;color:var(--text-300)}.booking-link-note{margin:0 0 10px;padding:7px 12px;border-radius:var(--radius-md);border:1px solid var(--option-active-border);background:var(--option-active-bg-soft);color:var(--teal-400);font-size:.86rem;font-weight:600}.bk-panel{position:-webkit-sticky;position:sticky;top:12px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:14px 16px;max-height:calc(100vh - 120px);overflow-y:auto}.bk-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.bk-panel-empty{padding:28px 6px;text-align:center}.bk-panel-body{display:flex;flex-direction:column}.bk-detail-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.bk-detail-name{font-size:1.05rem;font-weight:800;margin:6px 0 10px}.bk-detail-rows{display:grid;grid-template-columns:auto 1fr;grid-gap:7px 14px;gap:7px 14px;font-size:.88rem;margin:0 0 4px}.bk-detail-rows dt{color:var(--text-500);font-weight:600;white-space:nowrap}.bk-detail-rows dd{margin:0;min-width:0}.bk-panel-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.bk-conflict-warn{padding:14px 16px;border-radius:var(--radius-md);border:1px solid rgba(212,175,106,.5);background:rgba(212,175,106,.1)}.bk-conflict-title{margin:0 0 4px;color:var(--gold-400);font-weight:700;font-size:1rem}.bk-conflict-hint{margin:0 0 10px;color:var(--gold-400);font-size:.85rem}.bk-conflict-list{margin:0;padding-left:18px;color:var(--text-100);font-size:.9rem;line-height:1.7}.bk-messages{margin-top:14px;border-top:1px solid var(--divider);padding-top:12px}.bk-panel-backdrop{display:none}.bk-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.bk-lady-slot{display:flex;gap:8px;align-items:center;margin-bottom:8px}.bk-lady-slot select{flex:1 1;min-width:0}.bk-lady-remove{flex:none}.bk-lady-add{margin-top:2px}.bk-msg-tabs,.msg-card{margin-bottom:10px}.msg-card{border:1px solid var(--card-border);border-radius:var(--radius-md);background:var(--glass-soft-bg);padding:10px 12px}.msg-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.msg-card-lang{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-500)}.msg-text{font-size:.9rem;line-height:1.5;white-space:pre-wrap}@media (max-width:1280px){.bk-board,.bk-rails-inline{grid-template-columns:1fr}.bk-stats{grid-template-columns:repeat(2,1fr)}.bk-card{grid-template-columns:64px 1fr}.bk-side{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}.bk-panel{display:none;position:fixed;top:0;right:0;bottom:0;left:auto;width:min(440px,94vw);z-index:60;max-height:none;border-radius:0;border:none;border-left:1px solid var(--card-border);box-shadow:-18px 0 48px rgba(0,0,0,.45);background:var(--navy-800)}.bk-panel.is-open{display:block}.bk-panel-backdrop{display:block;position:fixed;inset:0;z-index:55;background:rgba(0,0,0,.5)}}@media (max-width:640px){.bk-panel{top:auto;left:0;right:0;bottom:0;width:auto;max-height:85vh;border-left:none;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -18px 48px rgba(0,0,0,.45)}}.pos-tap-start{margin-top:auto;color:var(--teal-400);font-size:.95rem;font-weight:700}.hold-badge{display:inline-block;padding:4px 12px;border-radius:999px;border:1px solid var(--room-hold-border);color:var(--room-hold-status);font-weight:700;font-size:.85rem;white-space:nowrap}.move-room-box{margin-top:10px;padding:12px;border:1px dashed var(--card-border);border-radius:var(--radius-md)}.pos-remaining{font-size:1.35rem;font-weight:700;color:var(--text-100);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.pos-remaining.is-over{color:var(--danger-400);font-size:1rem}.pos-room-total{color:var(--text-300);font-size:.9rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pos-order-inner{display:flex;flex-direction:column}.pos-order-room{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--card-border)}.pos-order-room-id{display:inline-flex;align-items:center;gap:10px}.pos-order-room-id .room-name{font-size:1.3rem}.pos-order-empty{padding:28px 6px;text-align:center}.pos-empty-title{margin:0 0 8px;font-size:1.05rem;font-weight:700;color:var(--text-100)}.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px}.svc-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:64px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-100);text-align:left;transition:border-color .15s ease,background .15s ease}.svc-card[aria-pressed=true]{border-color:var(--teal-500);background:rgba(23,184,176,.16)}.svc-name{font-size:.92rem;font-weight:700}.svc-card[aria-pressed=true] .svc-name{color:var(--teal-400)}.svc-meta{font-size:.8rem;font-weight:600;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.svc-card[aria-pressed=true] .svc-meta{color:var(--teal-400)}.pos-collect{min-height:58px;font-size:1.05rem}.pos-collect,.pos-session-actions{margin-top:14px}.form-ok{color:var(--success-400);font-size:.92rem;font-weight:600;margin:0 0 12px}.payroll-badge{display:inline-flex;align-items:center;padding:2px 10px;margin-left:8px;border-radius:999px;border:1px solid var(--card-border);color:var(--text-300);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;vertical-align:middle}.payroll-badge.is-live{border-color:var(--teal-500);color:var(--teal-400)}.role-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid var(--navy-600);color:var(--text-500);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.payroll-run-actions{max-width:420px;margin-top:16px}.pay-edit-btn{margin-left:auto;min-width:36px;min-height:36px;padding:4px 8px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);font-size:.95rem;line-height:1;transition:border-color .15s ease,color .15s ease}.pay-edit-btn:hover{border-color:var(--teal-500);color:var(--teal-400)}.pay-current{margin:0 0 10px}.pay-edit .field{margin-bottom:12px}.dash-range-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.dash-range{display:flex;gap:8px;flex-wrap:wrap}.dash-range button{min-height:38px;padding:6px 14px;border-radius:var(--radius-md);border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);font-size:.85rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.dash-range button[aria-pressed=true]{border-color:var(--teal-500);background:rgba(23,184,176,.16);color:var(--teal-400)}.dash-custom{display:flex;align-items:center;gap:8px}.dash-custom .inline-input{flex:0 1 170px}.flag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px}.flag-card{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--navy-900);font-size:.92rem;color:var(--text-100)}.flag-card.sev-warning{border-color:rgba(212,175,106,.55)}.flag-card.sev-alert{border-color:rgba(242,112,138,.6)}.flag-all-clear{color:var(--text-300)}.flag-chip{flex:none;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--teal-500);color:var(--teal-400)}.flag-chip.sev-warning{border-color:var(--gold-400);color:var(--gold-400)}.flag-chip.sev-alert{border-color:var(--danger-400);color:var(--danger-400)}.dash-heat{display:grid;grid-template-columns:2.4em repeat(13,minmax(0,1fr));grid-gap:3px;gap:3px;font-size:.68rem;margin-top:4px}.dash-heat-h{text-align:center;padding-bottom:2px}.dash-heat-dow,.dash-heat-h{color:var(--text-500);font-weight:700}.dash-heat-cell,.dash-heat-dow{display:flex;align-items:center}.dash-heat-cell{min-height:26px;border-radius:5px;justify-content:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-100);background:color-mix(in srgb,var(--text-500) 7%,transparent)}@media (max-width:560px){.dash-heat-cell{min-height:22px;font-size:.6rem}}.dash-grid{display:grid;grid-template-columns:1fr;grid-gap:20px;gap:20px}.dash-bk-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);grid-gap:18px;gap:18px;align-items:start;margin-top:6px}.dash-bk-table{width:100%;border-collapse:collapse;font-size:.86rem}.dash-bk-table td,.dash-bk-table th{padding:7px 8px;text-align:right;border-bottom:1px solid var(--divider);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash-bk-table thead th{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-500);font-weight:700}.dash-bk-table th[scope=row]{text-align:left;font-weight:700}.dash-bk-table .is-total td,.dash-bk-table .is-total th{border-bottom:none;font-weight:800;color:var(--teal-400)}.dash-bk-chart .subsection-title{margin-top:0}@media (max-width:720px){.dash-bk-grid{grid-template-columns:1fr}}@media (min-width:640px) and (max-width:999px){.dash-shell{max-width:780px}}.dash-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:18px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dash-card .section-title{margin-bottom:8px}.bar-row{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:.9rem}.bar-label{flex:0 1 40%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-100);font-weight:600}.bar-track{flex:1 1;height:10px;border-radius:999px;background:var(--navy-900);overflow:hidden}.bar-fill{display:block;height:100%;border-radius:999px;background:var(--teal-500);min-width:2px}.bar-value{flex:none;color:var(--text-300);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.dash-lady-block{border-bottom:1px solid transparent}.bar-row.bar-row-btn{cursor:pointer;border-radius:8px}.bar-row.bar-row-btn:hover{background:var(--glass-soft,rgba(255,255,255,.04))}.dash-bonus-chip{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:700;vertical-align:middle;white-space:nowrap}.dash-bonus-chip.ok{background:rgba(52,211,153,.14);color:var(--success-400,#43d9a3);border:1px solid rgba(52,211,153,.35)}.dash-bonus-chip.gap{background:rgba(251,191,36,.1);color:var(--warn-400,#fbbf24);border:1px solid rgba(251,191,36,.3)}.dash-bonus-chip-row{margin:-2px 0 6px;cursor:pointer;border-radius:8px}.dash-bonus-chip-row .dash-bonus-chip{margin-left:0;white-space:normal;text-align:left}.dash-bonus-detail{margin:2px 0 10px;padding:12px 14px;border-radius:12px;background:var(--glass-soft,rgba(255,255,255,.03));border:1px solid var(--glass-soft-border,rgba(255,255,255,.08))}.dash-premier-line{margin-top:10px}.peak-chart{display:flex;align-items:flex-end;gap:6px;height:120px;margin-bottom:8px}.peak-col{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;min-width:0}.peak-count{font-size:.72rem;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-height:1em}.peak-track{flex:1 1;width:100%;display:flex;align-items:flex-end;border-radius:4px;background:var(--navy-900);overflow:hidden}.peak-fill{display:block;width:100%;background:var(--teal-500);border-radius:4px 4px 0 0;min-height:0}.peak-label{font-size:.72rem;color:var(--text-500);white-space:nowrap}.dash-late-note{margin-top:10px}.dash-footer-note{margin-top:16px}.dash-card-hero{grid-column:1/-1}.chart-svg{width:100%;display:block}.chart-axis-label{fill:var(--text-500);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart-grid-line{stroke:var(--divider);stroke-width:1}.chart-donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.chart-donut{width:150px;height:150px;flex:none}.chart-donut-track{stroke:var(--chart-track)}.chart-donut-value{fill:var(--text-100);font-size:1.05rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart-donut-label{fill:var(--text-500);font-size:.66rem}.chart-legend{list-style:none;margin:0;padding:0;flex:1 1;min-width:160px;display:flex;flex-direction:column;gap:6px;font-size:.85rem}.chart-legend-row{display:flex;align-items:center;gap:8px}.chart-legend-dot{width:10px;height:10px;border-radius:3px;flex:none}.chart-legend-label{color:var(--text-100);font-weight:600}.chart-legend-value{color:var(--text-300);margin-left:auto;padding-left:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.dash-big-stat{font-size:1.9rem;font-weight:800;color:var(--text-100);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15;margin:4px 0 2px}.dash-delta{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dash-delta-up{color:var(--success-400)}.dash-delta-down{color:var(--danger-400)}.nav-group-label{align-self:center;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-500);padding:0 4px 0 2px;white-space:nowrap}.main-nav .nav-group-label+.nav-group-label,.main-nav a+.nav-group-label{margin-left:10px}.home-group-label{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-500);margin:18px 0 10px}.check-row{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--text-100);align-self:center;cursor:pointer}.check-row input[type=checkbox]{width:17px;height:17px;accent-color:var(--gold-400)}.exp-group{margin-bottom:14px}.file-picker{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:44px}.file-picker input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.file-picker-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-100);font-size:.88rem;font-weight:600;white-space:nowrap}.file-picker:hover .file-picker-btn{border-color:var(--teal-500)}.file-picker-name{font-size:.82rem;color:var(--text-300);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.exp-subtotal{color:var(--text-300);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exp-list{display:flex;flex-direction:column;gap:8px}.exp-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-md);background:var(--glass-soft-bg);border:1px solid var(--glass-soft-border)}.exp-row-main{flex:1 1;min-width:220px;display:flex;flex-direction:column;gap:2px}.exp-row-amount{font-weight:800;color:var(--price-color);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exp-row-meta{font-size:.85rem;color:var(--text-300)}.exp-row-deleted{opacity:.55}.exp-row-deleted .exp-row-amount{text-decoration:line-through}.exp-month-total{margin-top:14px;padding-top:12px;border-top:1px solid var(--divider);font-size:1.05rem;color:var(--text-100)}.exp-month-total strong{color:var(--price-color);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exp-deleted{margin-top:18px}.exp-deleted .btn-small{margin-left:10px}.pnl-lines{display:flex;flex-direction:column;gap:7px;margin-top:6px}.pnl-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.92rem}.pnl-row .pnl-label{color:var(--text-300)}.pnl-row .pnl-value{font-weight:600;color:var(--text-100);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.pnl-row.pnl-subtotal{padding-top:7px;border-top:1px solid var(--divider)}.pnl-row.pnl-subtotal .pnl-label,.pnl-row.pnl-subtotal .pnl-value{font-weight:800;color:var(--text-100)}.pnl-row.pnl-net{padding-top:9px;border-top:1px solid var(--divider)}.pnl-row.pnl-net .pnl-label{font-weight:800;color:var(--text-100)}.pnl-row.pnl-net .pnl-value{font-size:1.35rem;font-weight:800;color:var(--gold-400)}.pnl-row.pnl-net.pnl-negative .pnl-value{color:var(--danger-400)}.pnl-est-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--warning-400);border:1px solid var(--warning-400);border-radius:999px;padding:1px 7px;margin-left:6px;white-space:nowrap}.pnl-footnote{margin-top:12px;font-size:.78rem;color:var(--text-500);line-height:1.5}@media (min-width:1000px){.dash-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1440px){.dash-grid{grid-template-columns:repeat(3,1fr)}.dash-card-wide{grid-column:span 1}}@media (min-width:1000px) and (max-width:1439px){.dash-card-wide{grid-column:span 2}}@media (min-width:1000px){.dash-card-x2{grid-column:span 2}}.dash-show-more{margin-top:10px;padding:7px 16px;border-radius:999px;border:1px solid var(--glass-soft-border,rgba(255,255,255,.12));background:var(--glass-soft,rgba(255,255,255,.04));color:var(--text-300);font-size:.85rem;font-weight:600;cursor:pointer}.dash-show-more:hover{color:var(--text-100);border-color:rgba(255,255,255,.25)}@media (max-width:640px){.dash-card-x2 .bar-row{flex-wrap:wrap}.dash-card-x2 .bar-label{flex:0 0 auto;max-width:100%}.dash-card-x2 .bar-track{flex:1 1 60px;min-width:60px}.dash-card-x2 .bar-value{flex:1 1 100%;text-align:left;white-space:normal;font-weight:500}}body{background:var(--bg-image);background-attachment:fixed}.glass{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow)}.glass-soft{background:var(--glass-soft-bg);border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);backdrop-filter:blur(var(--glass-soft-blur));-webkit-backdrop-filter:blur(var(--glass-soft-blur))}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.app-header,.card,.dash-card,.home-wrap,.panel,.pos-pane{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--glass-shadow)}.addon-toggle,.chip,.dash-range button,.entry-item,.flag-card,.jobs-row,.nav-card,.option-btn,.pay-edit-btn,.pos-filters button,.qty-stepper button,.receipt-print,.receipt-screen,.roster-row,.settle-card,.status-card,.svc-card{background:var(--glass-soft-bg);border-color:var(--glass-soft-border)}.entry-item,.flag-card,.jobs-row,.nav-card,.settle-card,.status-card{backdrop-filter:blur(var(--glass-soft-blur));-webkit-backdrop-filter:blur(var(--glass-soft-blur))}.roster-row{background:var(--navy-900)}.kiosk-choose-btn,.kiosk-modes button,.kiosk-tile,.pin-pad button{backdrop-filter:blur(var(--glass-soft-blur));-webkit-backdrop-filter:blur(var(--glass-soft-blur))}.booking-sheet,.modal-card{background:var(--modal-bg);border-color:var(--card-border);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:var(--modal-shadow)}.check-inline,.field input,.field select,.inline-input{background:var(--well-bg);border-color:var(--glass-soft-border)}.field input:focus,.field select:focus,.inline-input:focus{border-color:var(--teal-500);box-shadow:0 0 0 3px var(--focus-ring)}.btn-action,.btn-primary{background:var(--btn-accent-bg);color:var(--btn-accent-text);box-shadow:var(--btn-accent-shadow)}.btn-action:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:var(--btn-accent-bg-hover);box-shadow:var(--btn-accent-shadow-hover)}.pos-collect{box-shadow:var(--collect-shadow)}.outlet-tabs,.seg{background:var(--seg-bg);border-radius:999px;padding:4px;gap:4px}.outlet-tabs button{border-color:transparent;min-height:40px;padding:8px 22px}.lang-toggle button[aria-pressed=true],.main-nav a[aria-current=page],.outlet-tabs button[aria-pressed=true]{background:var(--seg-active-bg);border-color:transparent;color:var(--seg-active-text)}.option-btn.pay-btn[aria-pressed=true]{background:var(--pay-active-bg);border-color:var(--pay-active-border);color:var(--pay-active-text)}.option-btn[aria-pressed=true]{border-color:var(--option-active-border);background:var(--option-active-bg);color:var(--teal-400)}.svc-card[aria-pressed=true]{border-color:var(--option-active-border);background:var(--option-active-bg-soft)}.addon-price,.option-btn-price small,.option-btn-price[aria-pressed=true] small,.svc-card[aria-pressed=true] .svc-meta,.svc-meta{color:var(--gold-400)}.room-card{background:var(--glass-soft-bg);border-color:var(--glass-soft-border);backdrop-filter:blur(var(--glass-soft-blur));-webkit-backdrop-filter:blur(var(--glass-soft-blur));transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.room-card[role=button]:hover,button.room-card:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--room-hover-shadow)}.room-card:has(.room-badge.panorama){background:var(--room-panorama-bg);border-color:var(--room-panorama-border)}.room-card.status-free{border-color:var(--room-free-border)}.room-card.status-free .room-name,.room-card.status-free .room-status{color:var(--room-free-status)}.room-card.status-occupied{border-color:var(--room-occupied-border);background:var(--room-occupied-bg);--timer-color:var(--room-occupied-status);--timer-glow-static:0 0 14px var(--room-occupied-border);--timer-glow-lo:var(--room-occupied-border);--timer-glow-hi:var(--room-occupied-status);--ring-pulse-border:var(--room-occupied-border)}.room-card.status-occupied .pos-remaining,.room-card.status-occupied .room-name,.room-card.status-occupied .room-status{color:var(--room-occupied-status)}.room-card.status-occupied:not(.is-prep):not(.is-hold) .ring-prog{stroke:var(--room-occupied-status)}.room-card.status-occupied.is-hold,.room-card.status-occupied.is-prep{background:var(--glass-soft-bg)}.room-card.status-occupied.is-prep{border-color:var(--room-prep-border)}.room-card.status-occupied.is-prep .pos-remaining,.room-card.status-occupied.is-prep .room-name,.room-card.status-occupied.is-prep .room-status{color:var(--room-prep-status)}.room-card.status-occupied.is-hold{border-color:var(--room-hold-border)}.room-card.status-occupied.is-hold .pos-remaining,.room-card.status-occupied.is-hold .room-name,.room-card.status-occupied.is-hold .room-status{color:var(--room-hold-status)}.room-card.status-cleaning{border-color:var(--room-cleaning-border)}.room-card.status-cleaning .room-name,.room-card.status-cleaning .room-status{color:var(--room-cleaning-status)}.room-card.status-maintenance{border-color:var(--room-maint-border)}.room-card.status-maintenance .room-name,.room-card.status-maintenance .room-status{color:var(--room-maint-status)}.room-card.is-selected,.room-strip.is-selected{outline:none;border-color:var(--room-selected-border);box-shadow:var(--room-selected-shadow)}.room-timer{display:flex;align-items:center;gap:10px}.ring-wrap{position:relative;flex:none}.ring,.ring-wrap{width:52px;height:52px}.ring{transform:rotate(-90deg);display:block}.ring-track{fill:none;stroke:var(--ring-track);stroke-width:4}.ring-prog{fill:none;stroke:url(#gA);stroke-width:4;stroke-linecap:round}.ring-wrap.prep .ring-prog{stroke:var(--warning-400)}.prep-remaining{color:var(--warning-400);font-size:1.05rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.ring-wrap.pulse:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--ring-pulse-border);animation:ripple 2.4s ease-out infinite;pointer-events:none}@keyframes ripple{0%{transform:scale(.85);opacity:.8}to{transform:scale(1.25);opacity:0}}.timer-glow{color:var(--timer-color);text-shadow:var(--timer-glow-static);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;animation:glow 2s ease-in-out infinite}@keyframes glow{0%,to{text-shadow:0 0 10px var(--timer-glow-lo)}50%{text-shadow:0 0 22px var(--timer-glow-hi)}}.pos-room-total{color:var(--price-color)}.summary-box{border-color:var(--summary-border);background:var(--summary-bg)}.receipt-total span:last-child,.summary-total span:last-child{color:var(--price-color)}.dot{width:8px;height:8px}.dot-green{background:var(--success-400);box-shadow:0 0 6px rgba(52,211,153,.7)}.dot-amber{background:var(--busy-color);box-shadow:0 0 6px var(--busy-glow);animation:beat 1.6s ease-in-out infinite}.busy-label{color:var(--busy-color)}@keyframes beat{0%,to{opacity:1}50%{opacity:.45}}.roster-row-status.busy{color:var(--busy-color)}.roster-row.is-picked{border-color:var(--option-active-border);background:var(--option-active-bg-soft)}.dash-range button[aria-pressed=true],.pos-filters button[aria-pressed=true]{border-color:var(--option-active-border);background:var(--option-active-bg);color:var(--teal-400)}.bar-track,.peak-track{background:var(--chart-track)}.bar-fill{background:var(--bar-fill)}.peak-fill{background:var(--peak-fill)}.pulse-once{animation:pulse-once .6s ease-out}@keyframes pulse-once{0%{transform:scale(1);box-shadow:0 0 0 0 var(--pulse-ring-0)}40%{transform:scale(1.02);box-shadow:0 0 0 2px var(--pulse-ring)}to{transform:scale(1);box-shadow:0 0 0 0 var(--pulse-ring-0)}}@media (prefers-reduced-motion:reduce){.dot-amber,.kiosk-shake,.pulse-once,.ring-wrap.pulse:after,.room-card.room-invite,.status-badge.in_progress,.timer-glow{animation:none!important}.ring-wrap.pulse:after{opacity:0}}.app-header-actions{flex-wrap:nowrap;gap:14px}.hdr-clock{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}.hdr-clock-time{font-size:1.05rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--hdr-clock-color)}.hdr-clock-date{font-size:.72rem;color:var(--text-300);white-space:nowrap}.hdr-divider{width:1px;align-self:stretch;margin:4px 0;background:var(--divider)}.user-chip{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border-radius:999px;background:var(--glass-soft-bg);border:1px solid var(--glass-soft-border)}.user-avatar{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:.85rem;font-weight:800;color:var(--avatar-text);background:var(--avatar-bg)}.user-chip-text{display:flex;flex-direction:column;line-height:1.2;min-width:0}.user-chip-name{font-size:.88rem;font-weight:700;white-space:nowrap}.user-chip-role{font-size:.78rem;color:var(--text-300);white-space:nowrap}.btn-icon{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--glass-soft-border);background:var(--glass-soft-bg);color:var(--text-300);font-size:1.1rem;transition:border-color .15s ease,color .15s ease}.btn-icon:hover:not(:disabled){border-color:var(--danger-400);color:var(--danger-400)}.btn-icon:disabled{opacity:.6;cursor:not-allowed}body,html{overflow-x:clip}img,svg{max-width:100%}.chip-grid .chip,.dash-range button,.entry-actions .btn-small,.lang-toggle button,.pos-filters button,.room-wrench,.settle-details summary,.status-badge-btn{min-height:44px}.lady-chip-remove{width:44px;height:44px}.pay-edit-btn,.room-wrench{min-width:44px;min-height:44px}.entry-remove{width:44px;height:44px}@media (max-width:1439px){.flag-grid,.settle-list{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}.entry-grid{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}.kiosk-grid{grid-template-columns:repeat(auto-fill,minmax(min(180px,100%),1fr))}.chip-grid,.svc-grid{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr))}}@media (min-width:641px) and (max-width:1439px){.room-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.room-grid{grid-template-columns:1fr}}.chart-wrap,.dash-card{min-width:0}.dash-custom{flex-wrap:wrap}.dash-custom .inline-input{flex:1 1 130px;min-width:0}.summary-row>span:first-child{min-width:0}@media (max-width:1000px){.app-header .main-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.app-header .main-nav::-webkit-scrollbar{display:none}.app-header .main-nav a{flex:none}.outlet-tabs{max-width:100%;overflow-x:auto;scrollbar-width:none}.outlet-tabs::-webkit-scrollbar{display:none}.outlet-tabs button{flex:none}}@media (max-width:720px){.app-header{gap:10px 12px;padding:12px 14px}.app-header-actions{width:100%;justify-content:flex-end;gap:8px}.hdr-clock-date,.hdr-divider{display:none}.user-chip{padding-right:10px}.user-chip-name{max-width:96px;overflow:hidden;text-overflow:ellipsis}}@media (max-width:640px){.page-center{padding:16px 12px}.card{padding:28px 20px}.app-shell{padding:14px 12px 40px}.panel{padding:18px 14px}.peak-label{font-size:.66rem}.kiosk{padding:14px 14px 24px}.kiosk-logo{height:44px}.kiosk-top-text h1{font-size:1.25rem}.kiosk-modes button{min-height:60px;font-size:1.2rem}.kiosk-tile{font-size:1.15rem}.pin-pad{grid-template-columns:repeat(3,minmax(80px,96px));gap:10px}.pin-pad button{height:72px;font-size:1.5rem}.kiosk-choose-btn{min-height:140px;padding:20px}.kiosk-big,.kiosk-choose-btn{width:100%;min-width:0}}.admin-staff-list{display:flex;flex-direction:column;gap:10px}.admin-staff-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 14px;border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);background:var(--glass-soft-bg);backdrop-filter:blur(var(--glass-soft-blur));-webkit-backdrop-filter:blur(var(--glass-soft-blur))}.admin-staff-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 240px}.admin-staff-row .entry-actions{margin-left:auto;display:grid;grid-template-columns:4rem 10.5rem 10.5rem 6.5rem;grid-gap:8px;gap:8px;align-items:center}.admin-staff-row .entry-actions:has(>:nth-child(5)){grid-template-columns:4rem 10.5rem 10.5rem 6.5rem 10rem}.admin-staff-row .entry-actions .btn-small{width:100%;padding-left:6px;padding-right:6px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width:640px){.admin-staff-row .entry-actions{flex-basis:100%;grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-inline-form{flex-basis:100%;margin-top:8px;padding-top:12px;border-top:1px dashed var(--glass-soft-border)}.admin-inline-actions{flex-direction:row;margin-top:4px}.admin-inline-actions .btn-action,.admin-inline-actions .btn-danger,.admin-inline-actions .btn-secondary{flex:1 1;width:auto}.admin-pin-subsection{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:-4px 0 14px;padding:12px 14px;border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);background:var(--glass-soft-bg)}.admin-pin-subsection .field-inline{flex:1 1 240px}.admin-pin-note{margin-top:6px}.admin-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));grid-gap:4px 20px;gap:4px 20px;margin-bottom:14px}.admin-outlet-chat{margin-bottom:18px}.admin-outlet-chat-head{display:flex;align-items:center;gap:10px;margin:4px 0 10px}.admin-outlet-chat-head h3{margin:0;font-size:.95rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-300,var(--text-500))}.admin-outlet-chat-logo{height:22px;width:auto}.admin-window-row{display:flex;align-items:center;gap:8px}.admin-window-row input{flex:1 1}.admin-outlets{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));grid-gap:14px;gap:14px}.admin-outlet-card{padding:14px 16px;border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);background:var(--glass-soft-bg)}.admin-outlets .att-list{gap:10px}.admin-outlets .att-row{padding:12px 14px}.admin-outlet-card .subsection-title{margin-top:0}.room-status-text{font-size:.78rem;font-weight:700}.room-status-text.free{color:var(--success-400)}.room-status-text.occupied{color:var(--teal-400)}.room-status-text.cleaning{color:var(--warning-400)}.room-status-text.maintenance{color:var(--danger-400)}.admin-window-field{grid-column:1/-1;max-width:460px}.admin-window-row input{min-width:110px}@media (min-width:1440px){.app-header-brand{flex:none;margin-right:0}.app-header-brand>div{min-width:0}.app-header-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.outlet-tabs{flex:none}.app-header .main-nav{order:1;width:auto;flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.app-header .main-nav::-webkit-scrollbar{display:none}.app-header .main-nav a{flex:none}.app-header-actions{order:2;flex:none;margin-left:auto}}.roster-row-name{flex:1 1 auto;min-width:0;overflow:hidden;flex-wrap:wrap}.roster-row-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roster-row-name .premier-badge{flex:none}.roster-row-name .arrived-badge{flex:1 1 100%;order:3;margin-left:0;margin-top:2px;max-width:none;overflow:visible;text-overflow:unset;white-space:normal;line-height:1.35}.roster-row-status{flex:none;max-width:45%}[data-theme=aman]{color-scheme:light;--teal-500:#b3602f;--teal-400:#b3602f;--gold-400:#7d6535;--cyan-400:#3f6f7d;--success-400:#5f6e50;--warning-400:#8c5f22;--warn-400:#8c5f22;--danger-400:#a44a3a;--text-100:#3b332a;--text-300:#5a4f40;--text-500:#7f7460;--navy-900:#faf6ec;--navy-800:#f3ecdc;--navy-700:#f3ecdc;--navy-600:rgba(90,70,40,0.25);--card-bg:#faf6ec;--card-border:rgba(90,70,40,0.14);--glass-soft-bg:#f3ecdc;--glass-soft-border:rgba(90,70,40,0.12);--radius-lg:20px;--radius-md:14px;--bg-image:radial-gradient(1400px 900px at 20% -10%,#e3d7c0,transparent 65%),#ece4d3;--glass-blur:0px;--glass-soft-blur:0px;--glass-shadow:0 10px 30px rgba(90,70,40,0.12);--modal-bg:#faf6ec;--modal-shadow:0 24px 60px rgba(90,70,40,0.22);--overlay-bg:rgba(59,51,42,0.5);--well-bg:rgba(255,255,255,0.45);--seg-bg:rgba(90,70,40,0.08);--scrollbar-thumb:rgba(90,70,40,0.22);--ring-track:rgba(90,70,40,0.15);--divider:rgba(90,70,40,0.18);--chart-track:rgba(90,70,40,0.1);--chart-1:#b3602f;--chart-2:#a9884e;--chart-3:#3f6f7d;--chart-4:#8a7a9a;--chart-5:#c09a3e;--chart-6:#a44a3a;--chart-7:#5f6e50;--chart-8:#6b8291;--btn-accent-bg:#b3602f;--btn-accent-bg-hover:#9a5027;--btn-accent-text:#faf6ec;--btn-accent-shadow:0 6px 22px rgba(179,96,47,0.3);--btn-accent-shadow-hover:0 8px 28px rgba(179,96,47,0.38);--collect-shadow:0 8px 28px rgba(179,96,47,0.32);--seg-active-bg:#3b332a;--seg-active-text:#faf6ec;--focus-ring:rgba(179,96,47,0.22);--pay-active-bg:#7d6535;--pay-active-text:#faf6ec;--pay-active-border:transparent;--option-active-border:rgba(179,96,47,0.45);--option-active-bg:rgba(179,96,47,0.14);--option-active-bg-soft:rgba(179,96,47,0.1);--kiosk-active-bg:linear-gradient(160deg,#b3602f,#8f4a24);--kiosk-active-text:#faf6ec;--kiosk-active-border:#b3602f;--room-hover-shadow:0 14px 34px rgba(90,70,40,0.18);--room-panorama-bg:linear-gradient(140deg,rgba(138,122,154,0.1),rgba(250,246,236,0.4));--room-panorama-border:rgba(138,122,154,0.4);--room-free-status:var(--success-400);--room-free-border:rgba(95,110,80,0.45);--room-occupied-border:rgba(97,117,140,0.45);--room-occupied-bg:linear-gradient(160deg,rgba(97,117,140,0.07),rgba(250,246,236,0.4));--room-occupied-status:#61758c;--room-prep-status:var(--warning-400);--room-prep-border:rgba(140,95,34,0.4);--room-hold-status:#3f6f7d;--room-hold-border:rgba(63,111,125,0.45);--room-cleaning-border:rgba(201,162,39,0.45);--room-cleaning-status:#a9752f;--room-maint-border:rgba(90,70,40,0.25);--room-maint-status:var(--text-500);--room-reserved-border:rgba(138,122,154,0.5);--room-reserved-status:#8a7a9a;--room-over-border:rgba(179,56,47,0.65);--room-over-status:#b3382f;--room-selected-border:#a9884e;--room-selected-shadow:0 0 0 1px rgba(169,136,78,0.55);--timer-color:#b3602f;--timer-glow-static:0 0 12px rgba(179,96,47,0.3);--timer-glow-lo:rgba(179,96,47,0.18);--timer-glow-hi:rgba(179,96,47,0.42);--ring-a:#b3602f;--ring-b:#a9884e;--ring-pulse-border:rgba(179,96,47,0.5);--price-color:#6e5723;--paid-border:rgba(95,110,80,0.55);--paid-bg:linear-gradient(160deg,rgba(95,110,80,0.14),rgba(250,246,236,0.4));--busy-color:#b3602f;--busy-glow:rgba(179,96,47,0.6);--pulse-ring:rgba(179,96,47,0.45);--pulse-ring-0:rgba(179,96,47,0);--hdr-clock-color:#b3602f;--avatar-bg:linear-gradient(135deg,#b3602f,#a9884e);--avatar-text:#faf6ec;--bar-fill:linear-gradient(90deg,#b3602f,#a9884e);--peak-fill:linear-gradient(180deg,#b3602f,#a9884e);--summary-border:rgba(179,96,47,0.3);--summary-bg:rgba(179,96,47,0.06);--font-body:"Mulish",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Sarabun","Noto Sans Thai",Arial,sans-serif;--font-display:"Cormorant Garamond","Sarabun",Georgia,serif}[data-theme=aman] .addon-price,[data-theme=aman] .app-header-title,[data-theme=aman] .hdr-clock-time,[data-theme=aman] .home-title,[data-theme=aman] .jobs-group-stats,[data-theme=aman] .jobs-total,[data-theme=aman] .kiosk-camera h2,[data-theme=aman] .kiosk-pin h2,[data-theme=aman] .kiosk-title,[data-theme=aman] .kiosk-top-text h1,[data-theme=aman] .login-title,[data-theme=aman] .option-btn-price small,[data-theme=aman] .pay-badge strong,[data-theme=aman] .pos-remaining,[data-theme=aman] .pos-room-total,[data-theme=aman] .qty-value,[data-theme=aman] .receipt-company,[data-theme=aman] .receipt-total span:last-child,[data-theme=aman] .room-elapsed,[data-theme=aman] .room-name,[data-theme=aman] .sheet-title,[data-theme=aman] .subsection-title,[data-theme=aman] .summary-total span:last-child,[data-theme=aman] .svc-meta,[data-theme=aman] .timer-glow{font-family:var(--font-display)}[data-theme=aman] .section-title{font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:.12em;color:var(--text-100)}[data-theme=aman] .timer-glow{font-weight:700}[data-theme=aman] .status-badge.expected{background:rgba(179,96,47,.14);border-color:rgba(179,96,47,.4);color:#b3602f}[data-theme=aman] .status-badge.no_show{background:rgba(164,74,58,.12);border-color:rgba(164,74,58,.4);color:#a44a3a}[data-theme=aman] .status-badge.cancelled,[data-theme=aman] .status-badge.left_for_day{background:rgba(90,70,40,.08);border-color:rgba(90,70,40,.18);color:#7a6f5c}[data-theme=aman] .jobs-auto-badge,[data-theme=aman] .kiosk-tile-badge,[data-theme=aman] .nopin-badge,[data-theme=aman] .premier-badge,[data-theme=aman] .primary-badge,[data-theme=aman] .status-badge.note{background:rgba(169,136,78,.2);border-color:rgba(169,136,78,.45);color:#8a6d34}[data-theme=aman] .paid-badge,[data-theme=aman] .status-badge.completed{background:rgba(124,139,106,.18);border-color:rgba(124,139,106,.45);color:#5f6e50}[data-theme=aman] .status-badge.in_progress{background:rgba(169,117,47,.15);border-color:rgba(169,117,47,.45);color:#a9752f}[data-theme=aman] .status-badge.awaiting{background:rgba(140,95,34,.14);border-color:rgba(140,95,34,.45);color:#8c5f22}[data-theme=aman] .overtime-badge{background:rgba(164,74,58,.12);border-color:rgba(164,74,58,.4);color:#a44a3a}[data-theme=aman] .kiosk-notice.ok,[data-theme=aman] .pin-notice.ok{background:rgba(124,139,106,.15);border-color:rgba(124,139,106,.45);color:#5f6e50}[data-theme=aman] .kiosk-notice.err,[data-theme=aman] .pin-notice.err{background:rgba(164,74,58,.12);border-color:rgba(164,74,58,.4);color:#a44a3a}[data-theme=aman] .kiosk-success-card{background:rgba(124,139,106,.15);border-color:rgba(124,139,106,.5);color:#5f6e50}[data-theme=aman] .bonus-card{background:rgba(179,96,47,.08);border-color:rgba(179,96,47,.4);color:#5c4a33}[data-theme=aman] .bonus-bar{background:rgba(92,74,51,.15)}[data-theme=aman] .bonus-count{color:rgba(92,74,51,.6)}[data-theme=aman] .bonus-card.earned{background:linear-gradient(135deg,rgba(212,175,55,.18),rgba(179,96,47,.1));border-color:rgba(179,96,47,.6)}[data-theme=aman] .dot-green{background:#7c8b6a;box-shadow:0 0 6px rgba(124,139,106,.6)}[data-theme=aman] .room-badge.bath{background:rgba(169,136,78,.18);border-color:rgba(169,136,78,.5);color:#8a6d34}[data-theme=aman] .room-badge.shower{background:rgba(63,111,125,.12);border-color:rgba(63,111,125,.4);color:#3f6f7d}[data-theme=aman] .room-badge.panorama{background:rgba(138,122,154,.14);border-color:rgba(138,122,154,.45);color:#6f6180}[data-theme=aman] .btn-secondary:hover,[data-theme=aman] .btn-small:hover:not(:disabled),[data-theme=aman] .nav-card:hover{background:rgba(179,96,47,.08)}[data-theme=aman] .addon-toggle[aria-pressed=true]{background:rgba(179,96,47,.1)}[data-theme=aman] .addon-toggle[aria-pressed=true] .addon-check{background:rgba(179,96,47,.14)}[data-theme=aman] .pay-badge-source{border-color:rgba(179,96,47,.3)}[data-theme=aman] .pay-badge-cancelled{border-color:rgba(164,74,58,.4);color:#a44a3a}[data-theme=aman] .room-confirm-veil{background:#faf6ec;border-color:rgba(169,136,78,.55);color:#8a6d34}[data-theme=aman] .room-wrench.is-confirm{background:rgba(169,136,78,.2)}[data-theme=aman] .bk-conflict-warn,[data-theme=aman] .fallback-notice{border-color:rgba(169,136,78,.45);background:rgba(169,136,78,.12)}[data-theme=aman] .bk-conflict-hint,[data-theme=aman] .bk-conflict-title,[data-theme=aman] .fallback-notice-text{color:#8a6d34}[data-theme=aman] .detail-row{border-bottom-color:rgba(90,70,40,.12)}[data-theme=aman] .jobs-method-row,[data-theme=aman] .settle-card-head{border-bottom-color:rgba(90,70,40,.14);border-top-color:rgba(90,70,40,.14)}[data-theme=aman] .summary-total{border-top-color:rgba(179,96,47,.25)}#gA .ring-stop-a{stop-color:var(--ring-a)}#gA .ring-stop-b{stop-color:var(--ring-b)}[data-theme=noir]{color-scheme:dark;--teal-500:#c9a25e;--teal-400:#e8cf9f;--gold-400:#e8cf9f;--cyan-400:#7aa5d9;--success-400:#7fbf7a;--warning-400:#d9a662;--danger-400:#d97762;--text-100:#f0e9df;--text-300:rgba(240,233,223,0.55);--text-500:rgba(240,233,223,0.38);--navy-900:#12100e;--navy-800:#1c1916;--navy-700:#171310;--navy-600:#332c26;--card-bg:rgba(240,233,223,0.05);--card-border:rgba(201,162,94,0.22);--glass-soft-bg:rgba(240,233,223,0.035);--glass-soft-border:rgba(201,162,94,0.16);--radius-lg:14px;--radius-md:12px;--bg-image:radial-gradient(1200px 700px at 85% -10%,rgba(201,162,94,0.16),transparent 60%),radial-gradient(1000px 600px at -10% 110%,rgba(201,162,94,0.1),transparent 55%),linear-gradient(160deg,#12100e,#1c1916 45%,#171310);--glass-shadow:0 8px 32px rgba(0,0,0,0.5);--modal-bg:rgba(28,25,22,0.92);--modal-shadow:0 8px 32px rgba(0,0,0,0.5);--overlay-bg:rgba(10,9,8,0.75);--well-bg:rgba(240,233,223,0.05);--seg-bg:rgba(240,233,223,0.07);--scrollbar-thumb:rgba(201,162,94,0.25);--ring-track:rgba(240,233,223,0.12);--divider:rgba(201,162,94,0.18);--chart-track:rgba(240,233,223,0.08);--chart-1:#e8cf9f;--chart-2:#c9a25e;--chart-3:#7aa5d9;--chart-4:#b09ac9;--chart-5:#d9a662;--chart-6:#d97762;--chart-7:#7fbf7a;--chart-8:#93a8bd;--btn-accent-bg:linear-gradient(135deg,#e8cf9f,#c9a25e);--btn-accent-bg-hover:linear-gradient(135deg,#f4e2bc,#d8b878);--btn-accent-text:#12100e;--btn-accent-shadow:0 6px 22px rgba(201,162,94,0.35);--btn-accent-shadow-hover:0 8px 28px rgba(201,162,94,0.45);--collect-shadow:0 8px 28px rgba(201,162,94,0.4);--seg-active-bg:linear-gradient(135deg,#e8cf9f,#c9a25e);--seg-active-text:#12100e;--focus-ring:rgba(201,162,94,0.25);--pay-active-bg:linear-gradient(135deg,#e8cf9f,#c9a25e);--pay-active-text:#12100e;--pay-active-border:rgba(232,207,159,0.6);--option-active-border:rgba(232,207,159,0.5);--option-active-bg:rgba(201,162,94,0.16);--option-active-bg-soft:rgba(201,162,94,0.14);--kiosk-active-bg:linear-gradient(160deg,#e8cf9f,#c9a25e);--kiosk-active-text:#12100e;--kiosk-active-border:#e8cf9f;--room-hover-shadow:0 14px 40px rgba(0,0,0,0.6);--room-panorama-bg:linear-gradient(160deg,rgba(176,154,201,0.12),rgba(240,233,223,0.03));--room-panorama-border:rgba(176,154,201,0.45);--room-free-status:var(--success-400);--room-free-border:rgba(127,191,122,0.45);--room-occupied-border:rgba(129,148,181,0.45);--room-occupied-bg:linear-gradient(160deg,rgba(129,148,181,0.08),rgba(240,233,223,0.03));--room-occupied-status:#8194b5;--room-prep-status:var(--warning-400);--room-prep-border:rgba(217,166,98,0.45);--room-hold-status:#93a8bd;--room-hold-border:rgba(147,168,189,0.45);--room-cleaning-border:rgba(217,166,98,0.4);--room-cleaning-status:var(--warning-400);--room-maint-border:rgba(240,233,223,0.18);--room-maint-status:var(--text-300);--room-reserved-border:rgba(176,154,201,0.5);--room-reserved-status:#b09ac9;--room-over-border:rgba(255,139,120,0.7);--room-over-status:#ff8b78;--room-selected-border:rgba(232,207,159,0.6);--room-selected-shadow:0 0 0 1px rgba(232,207,159,0.4);--timer-color:#e8cf9f;--timer-glow-static:0 0 14px rgba(232,207,159,0.55);--timer-glow-lo:rgba(232,207,159,0.35);--timer-glow-hi:rgba(232,207,159,0.7);--ring-a:#e8cf9f;--ring-b:#c9a25e;--ring-pulse-border:rgba(232,207,159,0.5);--price-color:#e8cf9f;--paid-border:rgba(127,191,122,0.45);--paid-bg:linear-gradient(160deg,rgba(127,191,122,0.12),rgba(18,16,14,0.6));--busy-color:#d97762;--busy-glow:rgba(217,119,98,0.7);--pulse-ring:rgba(201,162,94,0.45);--pulse-ring-0:rgba(201,162,94,0);--hdr-clock-color:#e8cf9f;--avatar-bg:linear-gradient(135deg,#e8cf9f,#c9a25e);--avatar-text:#12100e;--bar-fill:linear-gradient(90deg,#c9a25e,#e8cf9f);--peak-fill:linear-gradient(180deg,#e8cf9f,#c9a25e);--summary-border:rgba(201,162,94,0.3);--summary-bg:rgba(201,162,94,0.06)}.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));grid-gap:14px;gap:14px;margin-bottom:16px}.theme-card{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--radius-md);border:1px solid var(--glass-soft-border);background:var(--glass-soft-bg);color:var(--text-100);text-align:left;font:inherit;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.theme-card[aria-pressed=true]{border-color:var(--teal-500);box-shadow:0 0 0 1px var(--teal-500)}.theme-swatch{height:88px;border-radius:10px;padding:10px;display:flex}.theme-swatch.midnight{background:linear-gradient(160deg,#0b1526,#0a2432);border:1px solid rgba(255,255,255,.14)}.theme-swatch.aman{background:radial-gradient(120% 120% at 20% 0,#e3d7c0,#ece4d3);border:1px solid rgba(90,70,40,.2)}.swatch-card{flex:1 1;border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:6px}.theme-swatch.midnight .swatch-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.theme-swatch.aman .swatch-card{background:#faf6ec;border:1px solid rgba(90,70,40,.14);box-shadow:0 4px 12px rgba(90,70,40,.12)}.swatch-pill{display:block;height:8px;border-radius:999px}.theme-swatch.midnight .swatch-pill{background:linear-gradient(135deg,#5eead4,#2dd4bf)}.theme-swatch.midnight .swatch-pill.alt{background:linear-gradient(135deg,#f3d98b,#d4af37);width:60%}.theme-swatch.aman .swatch-pill{background:#b3602f}.theme-swatch.aman .swatch-pill.alt{background:#a9884e;width:60%}.theme-swatch.noir{background:linear-gradient(160deg,#12100e,#241f1b);border:1px solid rgba(201,162,94,.35)}.theme-swatch.noir .swatch-card{background:rgba(232,207,159,.07);border:1px solid rgba(201,162,94,.3)}.theme-swatch.noir .swatch-pill{background:linear-gradient(135deg,#e8cf9f,#c9a25e)}.theme-swatch.noir .swatch-pill.alt{background:#9a8f80;width:60%}.theme-card-name{font-weight:700;font-size:1rem}.theme-card-desc{color:var(--text-300);font-size:.85rem}.kiosk-cam-wrap{position:relative;width:min(480px,90vw)}.kiosk-cam-wrap .kiosk-video{width:100%}.face-guide{position:absolute;inset:0;margin:auto;width:52%;aspect-ratio:3/4;border:3px dashed rgba(255,255,255,.55);border-radius:50%;pointer-events:none;transition:border-color .2s ease}.face-guide.on{border-color:var(--success-400);border-style:solid}.eye-dots{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.face-status{margin:0;font-size:.95rem;font-weight:700;color:var(--text-300)}.face-status.on{color:var(--success-400)}.face-status.bad{color:var(--danger-400)}.debug-overlay{width:min(480px,90vw);padding:8px 10px;border-radius:8px;background:rgba(0,0,0,.75);color:#7ee787;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.5;text-align:left;word-break:break-word}.blink-status{margin:0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.25rem;font-weight:800;color:var(--text-300);min-height:1.6em}.eye-icon{width:30px;height:19px;flex:none;color:var(--success-400);transition:color .15s ease}.eye-icon.closed{color:var(--warning-400)}.eye-icon.none{color:var(--text-500);opacity:.6}.blink-status.live{color:var(--text-100);animation:blink-pulse 1.4s ease-in-out infinite}.blink-status.ok{color:var(--success-400);animation:none}.blink-status.bad{color:var(--danger-400);animation:none;font-size:1rem}@keyframes blink-pulse{0%,to{opacity:1}50%{opacity:.45}}[data-theme=aman] .face-guide{border-color:rgba(90,70,40,.55)}[data-theme=aman] .face-guide.on{border-color:#5f6e50}.att-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));grid-gap:14px;gap:14px}.att-live-card{padding:14px 16px;border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);background:var(--glass-soft-bg)}.att-live-card .subsection-title{margin-top:0}.att-live-group{margin-bottom:12px}.att-live-group:last-child{margin-bottom:0}.att-live-group-title{margin:10px 0 6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-300)}.att-live-empty{margin:0;color:var(--text-500);font-size:.9rem}.att-row{gap:6px 12px;padding:10px 12px;border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);background:var(--glass-soft-bg)}.att-row,.att-row-main{display:flex;flex-wrap:wrap;align-items:center}.att-row-main{gap:8px;min-width:0;flex:1 1 200px}.att-row-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.att-row-meta{flex-wrap:wrap;gap:6px 10px;color:var(--text-300);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.att-row-meta,.att-row-photos{display:flex;align-items:center}.att-row-photos{margin-left:auto;gap:8px}.att-thumb{width:38px;height:38px;flex:0 0 38px;border-radius:50%;overflow:hidden;border:2px solid var(--glass-soft-border);box-shadow:0 0 0 1px var(--glass-soft-bg);cursor:zoom-in;padding:0;background:var(--navy-800);display:inline-flex;align-items:center;justify-content:center}.att-thumb img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.att-thumb.missing{display:inline-flex;align-items:center;justify-content:center;cursor:default;font-size:.6rem;font-weight:700;color:var(--danger-400);border-color:rgba(242,112,138,.5);text-align:center;line-height:1.2}.att-thumb.enrolled{border-color:var(--success-400)}.att-photo{display:inline-flex;flex-direction:column;align-items:center;gap:3px}.att-cap{font-size:.6rem;font-weight:700;letter-spacing:.02em;color:var(--text-500)}.admin-face-none{align-self:center}.admin-face-empty{width:38px;height:38px;flex:0 0 38px;align-self:center;border-radius:50%;border:2px dashed var(--glass-soft-border);display:inline-flex;align-items:center;justify-content:center;color:var(--text-500);font-size:.9rem;line-height:1}.admin-face-context{display:flex;align-items:center;gap:8px;margin:4px 0 10px}.att-zoom{max-width:min(92vw,720px);max-height:88dvh;border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);cursor:zoom-out}.att-type-badge{flex:none;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--teal-500);color:var(--teal-400)}.att-type-badge.lady{border-color:var(--gold-400);color:var(--gold-400)}.att-face-badge{flex:none;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700}.att-face-badge.ok{color:var(--success-400)}.att-face-badge.bad{color:var(--danger-400);border:1px solid rgba(242,112,138,.5);background:rgba(242,112,138,.12)}.att-face-badge.none{color:var(--text-500)}.att-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}.att-filters .field{margin-bottom:0;flex:0 1 200px}.att-tabs{display:flex;gap:8px;margin-bottom:14px}.att-tabs button{min-height:40px;padding:6px 18px;border-radius:var(--radius-md);border:1px solid var(--glass-soft-border);background:var(--glass-soft-bg);color:var(--text-300);font-size:.9rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.att-tabs button[aria-pressed=true]{border-color:var(--option-active-border);background:var(--option-active-bg);color:var(--teal-400)}.att-summary-list{display:flex;flex-direction:column;gap:8px}.att-summary-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;padding:12px 14px;border:1px solid var(--glass-soft-border);border-radius:var(--radius-md);background:var(--glass-soft-bg)}.att-summary-name{font-weight:700;flex:1 1 160px}.att-stat{font-size:.88rem;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.att-stat strong{color:var(--text-100)}.att-stat.warn strong{color:var(--warning-400)}.att-stat.bad strong{color:var(--danger-400)}.att-list{display:flex;flex-direction:column;gap:8px}.status-badge.voided{background:rgba(242,112,138,.18);color:var(--danger-400);border:1px solid rgba(242,112,138,.45);font-weight:800;letter-spacing:.04em}.status-badge.running{background:rgba(251,191,36,.16);color:var(--warn-400,#fbbf24);border:1px solid rgba(251,191,36,.45);font-weight:800;letter-spacing:.04em}.status-badge.bonus-ok{background:rgba(52,211,153,.16);color:var(--ok-400,#34d399);border:1px solid rgba(52,211,153,.45);font-weight:800;letter-spacing:.04em}.status-badge.bonus-no{background:rgba(148,163,184,.12);color:var(--muted-400,#94a3b8);border:1px solid rgba(148,163,184,.35);font-weight:700;letter-spacing:.04em}.running-notice{background:rgba(251,191,36,.14);color:var(--warn-400,#fbbf24)}.pay-badge-voided{border-color:rgba(242,112,138,.45);color:var(--danger-400)}.void-banner{margin:0 0 14px;padding:12px 16px;border-radius:var(--radius-md);background:rgba(242,112,138,.14);border:1px solid rgba(242,112,138,.55);color:var(--danger-400);font-weight:800}.void-stamp{margin-top:10px;padding:10px 12px;border:2px dashed rgba(242,112,138,.6);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;color:var(--danger-400);font-size:.85rem}.void-stamp-title{font-weight:900;font-size:1rem;letter-spacing:.08em}.void-stamp-alert{font-weight:800;text-transform:uppercase;letter-spacing:.04em}.void-stamp.reinstated{border-color:rgba(52,211,153,.55);color:var(--success-400)}.pay-rules-tag{align-self:flex-start;flex-shrink:0;font-size:.72rem;font-style:italic;color:var(--text-500);opacity:.8;padding-top:2px}.admin-group-title{margin:30px 0 6px;padding-bottom:8px;border-bottom:1px solid var(--card-border);font-size:1.2rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--text-300,var(--text-500))}.admin-room-add{margin-bottom:16px;display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;grid-gap:12px;gap:12px}.admin-room-add .field-inline{flex:initial}.admin-room-add .admin-room-feats-field{grid-column:1/-1}.admin-room-add .btn-action{grid-row:1;grid-column:4}@media (max-width:900px){.admin-room-add{grid-template-columns:1fr 1fr}.admin-room-add .btn-action{grid-row:auto;grid-column:auto}}.jobs-row-actions{margin-top:10px;display:flex;justify-content:flex-end}.jobs-addlady-picker{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.void-pending-row{border-color:rgba(242,112,138,.45)}.void-pending-row .att-row-name{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;white-space:normal;overflow:visible;text-overflow:clip}.void-approve-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.void-approve-grid input,.void-approve-grid select{flex:1 1 140px;min-width:120px}.jobs-voided>summary{opacity:.5}.jobs-voided .jobs-total{text-decoration:line-through}.kiosk-modes+.kiosk-modes{margin-top:18px}.shell{display:flex;min-height:100dvh}.shell-side{width:264px;flex:none;height:100dvh;position:-webkit-sticky;position:sticky;top:0;display:flex;flex-direction:column;padding:18px 14px 14px;background:var(--glass-soft-bg);border-right:1px solid var(--glass-soft-border);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.shell-brand{display:flex;align-items:center;gap:10px;padding:2px 8px 16px}.shell-brand img{width:34px;height:34px;object-fit:contain;flex:none}.shell-brand-name{font-size:12px;letter-spacing:.22em;color:var(--text-300);font-weight:600;white-space:nowrap}.shell-drawer-close{margin-left:auto}.shell-outlet{display:flex;background:var(--seg-bg);border-radius:999px;padding:4px;gap:4px;margin:0 4px 12px}.shell-outlet button{flex:1 1;padding:8px 0;border:none;border-radius:999px;background:transparent;color:var(--text-300);font-size:14px;font-weight:600;cursor:pointer}.shell-outlet button[aria-pressed=true]{background:var(--seg-active-bg);color:var(--seg-active-text)}.shell-outlet-mini{display:none}.today-chip-sidebar{display:block;text-decoration:none;margin:0 4px 14px;padding:10px 12px;border-radius:var(--radius-md);background:var(--summary-bg);border:1px solid var(--summary-border);font-size:12px;color:var(--text-300)}.today-chip-sidebar .today-chip-label{display:block;font-size:10px;letter-spacing:.18em;color:var(--teal-400);font-weight:700;margin-bottom:5px}.today-chip-sidebar .today-chip-row{display:flex;justify-content:space-between;padding:1.5px 0}.today-chip-sidebar .today-chip-row b{color:var(--text-100);font-weight:600}.today-chip-sidebar .today-chip-row-total{border-top:1px solid var(--divider);margin-top:4px;padding-top:5px}.today-chip-sidebar .today-chip-row-total b{color:var(--gold-400)}.today-chip-pill{display:inline-flex;align-items:center;text-decoration:none;white-space:nowrap;font-size:12px;color:var(--text-300);border:1px solid var(--summary-border);background:var(--summary-bg);padding:7px 12px;border-radius:999px}.today-chip-pill b{color:var(--gold-400);font-weight:600;margin-left:4px}.shell-nav{flex:1 1;overflow-y:auto;padding:2px 4px;min-height:0}.shell-nav-label{font-size:10px;letter-spacing:.2em;color:var(--text-500);font-weight:700;padding:12px 10px 6px}.shell-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:2px 0;border-radius:var(--radius-md);color:var(--text-300);font-size:14.5px;font-weight:500;text-decoration:none}.shell-nav-item:hover{background:var(--glass-soft-bg)}.shell-nav-item[aria-current=page]{background:var(--option-active-bg);color:var(--teal-400);box-shadow:inset 0 0 0 1px var(--option-active-border)}.shell-nav-item.disabled{color:var(--text-500);opacity:.55}.shell-nav-ic{width:20px;height:20px;flex:none}.shell-soon{margin-left:auto;font-size:9.5px;letter-spacing:.12em;padding:3px 8px;border-radius:999px;border:1px solid var(--glass-soft-border);color:var(--text-500)}.shell-foot{border-top:1px solid var(--divider);padding-top:12px;margin-top:8px}.shell-user{gap:10px;padding:4px 8px 12px}.shell-avatar,.shell-user{display:flex;align-items:center}.shell-avatar{width:36px;height:36px;border-radius:50%;background:var(--avatar-bg);color:var(--avatar-text);justify-content:center;font-weight:700;font-size:14px;flex:none}.shell-user-name{display:block;font-size:14px;font-weight:600}.shell-user-role{display:block;font-size:11.5px;color:var(--text-300)}.shell-foot-row{display:flex;align-items:center;gap:8px;padding:0 4px}.shell-sp{flex:1 1}.shell-lang{display:flex;background:var(--seg-bg);border-radius:999px;padding:3px;gap:3px}.shell-lang button{padding:6px 12px;border:none;border-radius:999px;background:transparent;color:var(--text-300);font-size:12.5px;font-weight:600;cursor:pointer}.shell-lang button[aria-pressed=true]{background:var(--seg-active-bg);color:var(--seg-active-text)}.shell-icon-btn{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--text-300);background:var(--glass-soft-bg);border:1px solid var(--glass-soft-border);cursor:pointer;flex:none}.shell-ic{width:20px;height:20px}.shell-body{flex:1 1;min-width:0;display:flex;flex-direction:column}.shell-topbar{height:66px;flex:none;display:flex;align-items:center;gap:14px;padding:0 26px;border-bottom:1px solid var(--glass-soft-border);overflow:hidden}.shell-topbar-title h1{margin:0;font-size:19px;font-weight:700}.shell-topbar-title p{margin:1px 0 0;font-size:12.5px;color:var(--text-300)}.shell-topbar-logo{display:none;width:28px;height:28px;object-fit:contain}.shell-clock{text-align:right;line-height:1.15}.shell-clock-time{display:block;font-size:19px;font-weight:700;color:var(--hdr-clock-color);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell-clock-date{display:block;font-size:11.5px;color:var(--text-300)}.shell-burger,.shell-outlet-topbar,.shell-topbar-avatar,.shell-topbar-lang,.shell-topbar-pill{display:none}.shell-content{flex:1 1;min-height:0}.shell-collapsed .shell-side{width:78px;padding:18px 10px 14px;align-items:center}.shell-collapsed .shell-side .shell-brand{padding:2px 0 16px}.shell-collapsed .shell-side .shell-brand-name,.shell-collapsed .shell-side .shell-nav-text,.shell-collapsed .shell-side .shell-outlet-full,.shell-collapsed .shell-side .shell-soon,.shell-collapsed .shell-side .shell-sp,.shell-collapsed .shell-side .shell-user-text,.shell-collapsed .shell-side .today-chip-sidebar{display:none}.shell-collapsed .shell-side .shell-nav{width:100%;padding:0}.shell-collapsed .shell-side .shell-nav,.shell-collapsed .shell-side .shell-nav-group{display:flex;flex-direction:column;align-items:center}.shell-collapsed .shell-side .shell-nav-label{font-size:0;padding:10px 0 4px}.shell-collapsed .shell-side .shell-nav-label:after{content:"";display:block;width:26px;height:1px;background:var(--divider)}.shell-collapsed .shell-side .shell-nav-item{justify-content:center;width:46px;height:46px;padding:0;gap:0}.shell-collapsed .shell-side .shell-outlet{flex-direction:column;background:none;padding:0;gap:6px}.shell-collapsed .shell-side .shell-outlet button{flex:none;width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--glass-soft-border);font-size:13px}.shell-collapsed .shell-side .shell-outlet-mini{display:inline}.shell-collapsed .shell-side .shell-foot{width:100%}.shell-collapsed .shell-side .shell-user{justify-content:center;padding:4px 0 12px}.shell-collapsed .shell-side .shell-foot-row{flex-direction:column;gap:8px}.shell-collapsed .shell-side .shell-lang{flex-direction:column}.shell-scrim{position:fixed;inset:0;z-index:90;background:var(--overlay-bg)}.shell-drawer{position:fixed;top:0;left:0;bottom:0;z-index:91;width:298px;max-width:84vw;display:flex;flex-direction:column;padding:16px 14px 14px;background:var(--navy-800);border-right:1px solid var(--glass-soft-border);box-shadow:12px 0 48px rgba(0,0,0,.5)}[data-theme=aman] .shell-drawer{background:var(--card-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}@media (max-width:1024px){.shell-side{display:none}.shell-topbar{height:60px;padding:0 14px;gap:12px;background:var(--glass-soft-bg);-webkit-backdrop-filter:blur(var(--glass-soft-blur));backdrop-filter:blur(var(--glass-soft-blur))}.shell-burger,.shell-outlet-topbar,.shell-topbar-avatar,.shell-topbar-lang{display:flex}.shell-topbar-pill{display:inline-flex}.shell-topbar-logo{display:block}.shell-topbar-title{min-width:0}.shell-topbar-title h1{font-size:16.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-topbar-title p{display:none}.shell-outlet-topbar{margin:0;padding:3px}.shell-outlet-topbar button{padding:7px 14px;font-size:13px}.shell-clock-time{font-size:16px}.shell-clock-date{font-size:10.5px}.shell-topbar-lang button{padding:5px 10px;font-size:11.5px}.shell-topbar-avatar{width:34px;height:34px;font-size:13px}.shell-topbar-textsize{display:none}}@media (max-width:640px){.shell-topbar{gap:10px}.shell-clock-date,.shell-outlet-topbar,.shell-topbar-lang,.shell-topbar-logo{display:none}.shell-topbar-title h1{font-size:15.5px;white-space:nowrap}}@media (max-width:480px){.shell-topbar{gap:8px;padding:0 12px}.shell-clock,.today-chip-pill .today-chip-pill-label{display:none}}.shell-drawer-textsize-row{justify-content:space-between;align-items:center;margin-bottom:8px}.shell-drawer-textsize-label{font-size:11.5px;color:var(--text-300)}.k2{height:100dvh;display:flex;flex-direction:column;padding:18px 22px 20px;max-width:1400px;margin:0 auto;width:100%}.k2-head{gap:14px;flex:none;padding-bottom:14px}.k2-brand,.k2-head{display:flex;align-items:center}.k2-brand{gap:12px}.k2-brand img{width:52px;height:52px;object-fit:contain}.k2-brand .k2-name{font-size:24px;font-weight:800}.k2-brand .k2-sub{font-size:12px;letter-spacing:.24em;color:var(--gold-400);font-weight:700;margin-top:1px}.k2-clock{text-align:right}.k2-clock .k2-time{font-size:30px;font-weight:800;color:var(--hdr-clock-color);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.k2-clock .k2-date{font-size:12px;color:var(--text-300);margin-top:3px}.k2-exit{font-size:13px;color:var(--text-300);text-decoration:none;border:1px solid var(--glass-soft-border);border-radius:999px;padding:8px 14px}.k2-controls{display:flex;gap:14px;flex:none;padding-bottom:16px}.k2-seg{display:flex;background:var(--seg-bg);border-radius:999px;padding:5px;gap:5px;flex:1 1}.k2-seg button{flex:1 1;padding:15px 0;border:none;border-radius:999px;background:transparent;color:var(--text-300);font-size:18px;font-weight:700;cursor:pointer}.k2-seg button[aria-pressed=true].k2-mode-on{background:var(--seg-active-bg);color:var(--seg-active-text);font-weight:800;letter-spacing:.06em}.k2-seg button[aria-pressed=true].k2-who-ladies{background:var(--pay-active-bg);color:var(--pay-active-text)}.k2-seg button[aria-pressed=true].k2-who-staff{background:var(--glass-soft-border);color:var(--text-100)}.k2-seg button[aria-pressed=true].k2-who-customers{background:var(--option-active-border);color:var(--text-100)}.k2-hint{flex:none;text-align:center;font-size:14px;color:var(--text-300);padding-bottom:12px}.k2-passkey-cta{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;padding-bottom:16px}.k2-passkey-btn{width:100%;max-width:560px;padding:22px 0;border:none;border-radius:18px;background:var(--seg-active-bg);color:var(--seg-active-text);font-size:24px;font-weight:800;letter-spacing:.02em;cursor:pointer;box-shadow:0 6px 24px rgba(0,0,0,.35)}.k2-passkey-btn:active:not(:disabled){transform:translateY(1px)}.k2-passkey-btn:disabled{opacity:.55;cursor:default}.k2-passkey-hint{margin:0;font-size:14px;color:var(--text-300);text-align:center}.k2-home{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:0}.k2-home .k2-passkey-cta{padding-bottom:0;width:100%;max-width:560px}.k2-customers-btn{width:100%;max-width:560px;padding:22px 0;border-radius:18px;background:transparent;border:2px solid var(--option-active-border);color:var(--text-100);font-size:24px;font-weight:800;letter-spacing:.02em;cursor:pointer}.k2-customers-btn:active{transform:translateY(1px)}.k2-walkout-btn{margin-top:14px;align-self:center;padding:14px 26px;border-radius:14px;background:transparent;border:1.5px dashed var(--line-strong,rgba(255,255,255,.25));color:var(--text-300,#b8b8b8);font-size:17px;font-weight:700;cursor:pointer}.k2-walkout-btn:active{transform:translateY(1px)}.k2-walkout-panel{margin-top:14px;padding:18px;border-radius:16px;background:var(--panel-2,rgba(255,255,255,.04));display:flex;flex-direction:column;gap:14px}.k2-walkout-q{margin:0;font-size:19px;font-weight:800;color:var(--text-100);text-align:center}.k2-walkout-reasons{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px}.k2-walkout-reason{padding:16px 10px;border-radius:12px;border:1.5px solid var(--option-active-border);background:transparent;color:var(--text-100);font-size:17px;font-weight:700;cursor:pointer}.k2-walkout-reason:active{transform:translateY(1px)}.k2-walkout-cancel{padding:8px 22px;border-radius:10px;border:none;background:transparent;font-size:15px;font-weight:600;cursor:pointer}.k2-walkout-cancel,.walkout-chip{align-self:center;color:var(--text-300,#b8b8b8)}.walkout-chip{padding:4px 12px;border-radius:999px;border:1px solid var(--line-strong,rgba(255,255,255,.25));font-size:13px;font-weight:700;white-space:nowrap}.k2-sp{flex:1 1}.k2-body{flex:1 1;display:flex;flex-direction:column;min-height:0;overflow-y:auto}.k2-grid{flex:1 1;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-auto-rows:minmax(0,1fr);grid-gap:14px;gap:14px;align-content:stretch;min-height:0}.k2-tile{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--text-100);font:inherit;padding:10px}button.k2-tile{cursor:pointer}button.k2-tile:active{transform:scale(.98)}.k2-tile-av{width:58px;height:58px;border-radius:50%;background:var(--avatar-bg);color:var(--avatar-text);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800}.k2-tile-name{font-size:19px;font-weight:700}.k2-tile-st{font-size:12.5px;color:var(--text-500);font-weight:600}.k2-tile.in{border-color:var(--option-active-border);background:var(--room-occupied-bg)}.k2-tile.in .k2-tile-st{color:var(--teal-400)}.k2-tile.busy{border-color:var(--room-cleaning-border)}.k2-tile.busy .k2-tile-st{color:var(--warning-400)}.k2-tile.out{opacity:.62}.k2-tile-prem{font-size:9px;letter-spacing:.14em;font-weight:800;padding:3px 9px;border-radius:999px;border:1px solid var(--pay-active-border);color:var(--gold-400)}.k2-grid-customers{grid-auto-rows:auto;align-content:start;overflow-y:auto}.k2-grid-customers .k2-tile{min-height:132px;justify-content:flex-start;gap:8px}.k2-grid-customers .k2-tile-time{font-size:22px}.k2-grid-customers .k2-tile-st{font-size:21px;font-weight:800;color:var(--text-100);max-width:100%;line-height:1.15;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.k2-grid-customers .k2-tile.in .k2-tile-st{color:var(--teal-400)}.k2-grid-customers .k2-tile-name{font-size:15px;font-weight:600;color:var(--text-300,#b8b8b8);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.k2-grid-customers .k2-tile-ref{font-size:15px;font-weight:800;letter-spacing:.08em;color:var(--gold-400);padding:3px 10px;border-radius:8px;border:1px solid var(--pay-active-border)}.k2-tile-time{font-size:22px;font-weight:800;color:var(--text-100);letter-spacing:.04em}.k2-tile-ref{font-size:11px;letter-spacing:.06em;color:var(--text-500)}.k2-tile.out.k2-tile-armed{opacity:1;border-color:var(--pay-active-border)}.k2-tile-confirm{font-size:13px;font-weight:800;color:var(--gold-400);letter-spacing:.03em}.k2-tile-setpin{font-size:10px;letter-spacing:.1em;font-weight:700;padding:3px 9px;border-radius:999px;border:1px solid var(--pay-active-border);color:var(--gold-400)}@media (max-width:700px){.k2{height:auto;min-height:100dvh;padding:12px 12px 14px}.k2-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-auto-rows:minmax(120px,auto);gap:10px}.k2-tile-av{width:46px;height:46px;font-size:18px}.k2-tile-name{font-size:16px}.k2-seg button{font-size:15px;padding:12px 0}.k2-brand .k2-name{font-size:19px}.k2-clock .k2-time{font-size:22px}}.bk-pinned{margin-bottom:10px}@keyframes arrival-pulse{0%,to{box-shadow:0 0 0 0 rgba(94,234,212,.55);transform:scale(1)}50%{box-shadow:0 0 0 7px rgba(94,234,212,0);transform:scale(1.03)}}.bk-pinned .chip-btn:not(.is-selected):not(:disabled),.roster-row.is-awaiting:not(.is-picked):not(:disabled){animation:arrival-pulse 1.6s ease-in-out infinite;border-color:var(--option-active-border)}@media (prefers-reduced-motion:reduce){.bk-pinned .chip-btn:not(.is-selected):not(:disabled),.roster-row.is-awaiting:not(.is-picked):not(:disabled){animation:none}}.chip.is-busy{opacity:.7}.chip .arrived-badge{font-size:.66rem;flex:none;max-width:100%}.chip .chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mg-wrap{width:100%;max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.mg-card{margin-bottom:0;padding:16px}.mg-error{margin:0 4px;color:var(--danger-400);font-size:.85rem}.mg-total{display:flex;align-items:baseline;gap:12px;margin:8px 0 10px}.mg-total-rev{font-size:1.9rem;font-weight:700;letter-spacing:-.01em}.mg-total-jobs{color:var(--text-300);font-size:.95rem}.mg-rows{display:flex;flex-direction:column}.mg-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;border-top:1px dashed var(--card-border)}.mg-row-name{font-weight:600;min-width:0}.mg-row-sub{color:var(--text-300);font-size:.82rem}.mg-adjust-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin-top:6px}.mg-adjust-row label{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-300)}.dep-method-select,.mg-adjust-row input[type=time]{font:inherit;padding:4px 6px;border-radius:6px;border:1px solid var(--card-border);background:var(--card-bg,transparent);color:inherit}.dep-method-select{font-size:.82rem}.mg-row-val{margin-left:auto;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mg-live-block{padding:8px 0;border-top:1px dashed var(--card-border)}.mg-live-group{display:flex;align-items:baseline;gap:10px;margin-top:6px}.mg-live-label{flex:none;width:92px;color:var(--text-300);font-size:.8rem}.mg-chips{display:flex;flex-wrap:wrap;gap:6px}.mg-chip{padding:3px 10px;border-radius:999px;background:var(--glass-soft-bg);border:1px solid var(--card-border);font-size:.82rem;white-space:nowrap}.mg-chip-staff{border-style:dashed;color:var(--text-300)}.mg-muted{color:var(--text-500);font-size:.85rem;margin:6px 0 2px}.mg-rooms{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.85rem}.mg-room{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.mg-room-busy{color:var(--danger-400)}.mg-room-cleaning{color:var(--warning-400)}.mg-room-free{color:var(--success-400)}.mg-title-link{color:inherit;text-decoration:none}.mg-title-link:hover{text-decoration:underline}.mg-subtitle{margin:8px 0 2px;color:var(--text-300);font-size:.82rem}.mg-bk-time{flex:none;width:44px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mg-bk-main{min-width:0;display:flex;flex-direction:column}.mg-bk-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mg-bk-ref{margin-left:auto;color:var(--text-500);font-size:.78rem;white-space:nowrap}.mg-bubble-alert{background:var(--danger-400);border-color:transparent;color:var(--navy-900);font-weight:700}.mg-alert-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px dashed var(--card-border);color:inherit;text-decoration:none}.mg-alert-count{flex:none;min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--danger-400);color:var(--navy-900);font-size:.82rem;font-weight:700}.mg-alert-label{min-width:0}.mg-alert-chev{margin-left:auto;color:var(--text-300);font-size:1.2rem;line-height:1}.mg-links{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-top:10px}.mg-link{display:flex;align-items:center;justify-content:center;padding:10px 6px;border-radius:var(--radius-md);background:var(--glass-soft-bg);border:1px solid var(--card-border);color:inherit;text-decoration:none;font-size:.85rem;text-align:center}.mg-link:hover{border-color:var(--teal-400)}@media (max-width:420px){.mg-links{grid-template-columns:repeat(2,1fr)}}.my-page{max-width:480px;margin:0 auto;padding:18px 14px 48px;min-height:100dvh}.my-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.my-title{margin:0;font-size:22px;font-weight:800}.my-section{margin:22px 4px 10px;font-size:15px;font-weight:700;color:var(--text-300);text-transform:uppercase;letter-spacing:.06em}.my-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px}.my-card-attention{border-color:rgba(45,212,203,.6);box-shadow:0 0 0 3px rgba(45,212,203,.12)}.my-day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.my-day-label{font-size:17px;font-weight:700}.my-saved{font-size:13px;font-weight:700;color:var(--success-400,#43d9a3)}.my-shift-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.my-shift-btn{padding:16px 8px;border:1px solid var(--card-border);border-radius:14px;background:transparent;color:var(--text-100);font-size:16px;font-weight:700;cursor:pointer;text-align:center}.my-shift-btn.on{background:var(--seg-active-bg);color:var(--seg-active-text);border-color:transparent}.my-shift-btn.off.on{background:var(--danger-400);border-color:var(--danger-400);color:#fff}.my-hours{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.my-hours.is-off .my-hours-field{opacity:.45}.my-hours-field{display:flex;flex-direction:column;gap:6px;flex:1 1 120px}.my-hours-field>span{font-size:13px;font-weight:600;color:var(--text-300)}.my-hours-field select{min-height:52px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--card-border);background:var(--navy-800);color:var(--text-100);font:inherit;font-size:17px;font-weight:700}.my-hours-arrow{padding-bottom:14px;color:var(--text-500);font-weight:700}.my-off-toggle{flex:1 1 100%;min-height:52px;padding:12px 18px;border:1.5px solid var(--danger-400);border-radius:14px;background:transparent;color:var(--danger-400);font-size:16px;font-weight:800;letter-spacing:.02em;cursor:pointer}.my-off-toggle.on{background:var(--danger-400);border-color:var(--danger-400);color:#fff}.my-undeclared{border-color:var(--warning-400,#fbbf24)}.my-declare-reminder{border-color:var(--gold-400);background:rgba(212,175,55,.1);color:var(--text-100);font-weight:600;line-height:1.55}.my-not-confirmed{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--warning-400,#fbbf24);border:1px solid var(--warning-400,#fbbf24);border-radius:999px;padding:3px 10px}.my-confirm-btn{margin-top:10px;width:100%;min-height:52px;border:none;border-radius:14px;background:var(--seg-active-bg);color:var(--seg-active-text);font-size:16px;font-weight:800;cursor:pointer}.my-bonus-line{font-size:15px;font-weight:700;margin-bottom:10px}.my-month-nav{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;grid-gap:10px;gap:10px;margin-bottom:16px}.my-month-btn{width:48px;min-height:48px;border:1px solid var(--card-border);border-radius:12px;background:transparent;color:var(--text-100);font:inherit;font-size:22px;cursor:pointer}.my-month-btn:disabled{opacity:.35;cursor:not-allowed}.my-month-label{display:flex;min-width:0;flex-direction:column;gap:2px;text-align:center}.my-month-label>span{color:var(--text-300);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.my-month-label>strong{font-size:16px;line-height:1.35}.my-month-error{margin:-4px 0 14px;color:var(--warn-400,#fbbf24);font-size:13px;line-height:1.45;text-align:center}.my-bonus-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}.my-bonus-title{font-size:13px;font-weight:600;letter-spacing:.3px;opacity:.7}.my-bonus-amount{color:var(--text-100);font-size:17px;font-weight:800;text-align:right}.my-bonus-amount.met{color:var(--success-400,#43d9a3)}.my-bonus-qualification{display:flex;align-items:flex-start;gap:6px;margin:-6px 0 16px;font-size:12px;font-weight:600;line-height:1.45}.my-bonus-qualification.ok{color:var(--success-400,#43d9a3)}.my-bonus-qualification.risk{color:var(--warn-400,#fbbf24)}.my-bonus-req{margin-bottom:13px}.my-bonus-req .my-bonus-line{display:flex;justify-content:space-between;align-items:baseline;font-size:13.5px;font-weight:400;margin-bottom:5px}.my-bonus-req .my-bonus-line .sub{font-size:12px;opacity:.55;font-weight:400}.my-bonus-req .my-bonus-line .met,.my-bonus-req .my-bonus-line span.met{color:var(--success-400,#43d9a3);font-weight:700}.my-bonus-req .my-bonus-line span.short{color:var(--warn-400,#fbbf24);font-weight:700}.my-bonus-fill.met{background:var(--success-400,#43d9a3)}.my-bonus-fill.short{background:var(--warn-400,#fbbf24)}.my-bonus-note{font-size:12px;margin:4px 0 0;line-height:1.45}.my-bonus-note.ok{color:var(--success-400,#43d9a3)}.my-bonus-note.warn{color:var(--warn-400,#fbbf24)}.my-bonus-status{margin-top:14px;padding:9px 12px;border-radius:10px;font-size:13px;font-weight:600;line-height:1.4}.my-bonus-status.ok{background:rgba(52,211,153,.12);color:var(--success-400,#43d9a3);border:1px solid rgba(52,211,153,.35)}.my-bonus-status.risk{background:rgba(251,191,36,.1);color:var(--warn-400,#fbbf24);border:1px solid rgba(251,191,36,.35)}.my-attendance{margin-top:16px;padding-top:8px;border-top:1px solid var(--glass-soft-border)}.my-attendance summary{display:flex;min-height:44px;align-items:center;gap:8px;color:var(--text-100);font-size:14px;font-weight:700;cursor:pointer;list-style:none}.my-attendance summary::-webkit-details-marker{display:none}.my-attendance summary>span:first-child{flex:1 1}.my-attendance summary:after{content:"›";color:var(--text-300);font-size:22px;font-weight:400;transition:transform .2s ease}.my-attendance[open] summary:after{transform:rotate(90deg)}.my-attendance-count{min-width:26px;padding:2px 8px;border-radius:999px;background:var(--glass-soft);color:var(--text-300);font-size:12px;text-align:center}.my-attendance-list{margin:0;padding:0;list-style:none}.my-attendance-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;padding:12px 0;border-top:1px solid var(--glass-soft-border)}.my-attendance-row>div{display:flex;min-width:0;flex-direction:column;gap:3px}.my-attendance-row span{color:var(--text-300);font-size:11px;font-weight:700;text-transform:uppercase}.my-attendance-row strong{font-size:13px;font-weight:600;line-height:1.45}.my-attendance-empty{margin:0 0 10px;color:var(--text-300);font-size:13px;line-height:1.45}.my-bonus-bar{height:10px;border-radius:999px;background:var(--glass-soft-border);overflow:hidden}.my-bonus-fill{height:100%;border-radius:999px;background:var(--success-400,#43d9a3);transition:width .4s ease}.my-booking-list{list-style:none;margin:0;padding:0;gap:12px}.my-booking,.my-booking-list{display:flex;flex-direction:column}.my-booking{gap:2px;padding-bottom:12px;border-bottom:1px solid var(--glass-soft-border)}.my-booking:last-child{padding-bottom:0;border-bottom:none}.my-booking-when{font-size:16px;font-weight:700}.my-booking-who{font-size:14px;color:var(--text-300)}.avail-declared{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 14px}.avail-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--card-border);border-radius:999px;background:var(--glass-soft-bg);font-size:13px;font-weight:600}.avail-chip.off{opacity:.6}.triage-board{display:block}.coverage-wrap{margin-bottom:14px}.coverage-bar{display:flex;gap:4px;margin-top:6px}.coverage-cell{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:5px 0 6px;border-radius:8px;border:1px solid transparent;min-width:0}.coverage-cell.is-now{border-color:var(--gold-400,#e7c76a);box-shadow:0 0 0 1px var(--gold-400,#e7c76a)}.coverage-hour{font-size:10px;opacity:.65;line-height:1}.coverage-count{font-size:15px;font-weight:800;line-height:1.15}.triage-group{margin-bottom:12px}.triage-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}.triage-label-late{color:var(--amber-400,#f0c06a)}.triage-chips{display:flex;flex-wrap:wrap;gap:8px}.avail-chip.on-floor{border-color:rgba(127,214,164,.45);background:rgba(127,214,164,.1)}.avail-chip.late{border-color:rgba(240,192,106,.65);background:rgba(240,192,106,.12);animation:latePulse 2.2s ease-in-out infinite}@keyframes latePulse{0%,to{box-shadow:0 0 0 0 rgba(240,192,106,.28)}50%{box-shadow:0 0 0 6px rgba(240,192,106,0)}}.chip-overdue{font-size:12px;font-weight:800;color:var(--amber-400,#f0c06a)}.chip-edit{opacity:0;transition:opacity .15s ease}.avail-chip:focus-within .chip-edit,.avail-chip:hover .chip-edit{opacity:1}@media (hover:none){.chip-edit{opacity:.85}}.triage-off{margin-top:10px;font-size:13px;opacity:.75;display:flex;flex-wrap:wrap;gap:4px 14px}.triage-off-came-in{opacity:.55;filter:grayscale(1)}.triage-long-leave{flex-basis:100%;opacity:.95}.triage-off-came-in .off-struck{text-decoration:line-through;text-decoration-thickness:1.5px;margin-right:10px}.avail-time-select{padding:3px 6px;border-radius:8px;border:1px solid var(--card-border);background:var(--card-bg);color:inherit;font:inherit;font-size:12.5px}.early-review-badge{font-size:11px;padding:3px 8px;border-radius:999px;border:1px solid var(--amber-400,#f0b35c);background:rgba(240,179,92,.14);color:var(--amber-400,#f0b35c);white-space:nowrap}.settle-overpaid-pill{display:inline-block;margin:-4px 0 8px}.mg-datebar{display:flex;align-items:center;gap:10px;margin-bottom:12px}.mg-date-input{font:inherit;color:inherit;background:var(--card-bg);border:1px solid var(--line,rgba(255,255,255,.16));border-radius:8px;padding:7px 10px}.cash-count-row{align-items:center;margin-top:10px;padding-top:14px;border-top:2px dashed var(--line,rgba(255,255,255,.16));font-size:1.15rem;font-weight:700}.cash-count-input{width:200px;text-align:right;font:inherit;font-size:1.6rem;font-weight:800;color:inherit;background:var(--card-bg);border:2px solid var(--gold-400,#e7c76a);border-radius:12px;padding:10px 16px;box-shadow:0 0 0 3px rgba(231,199,106,.12)}.cash-count-input:focus{outline:none;border-color:var(--gold-400,#e7c76a);box-shadow:0 0 0 5px rgba(231,199,106,.22)}.cash-var-ok span:last-child{color:var(--green-400,#7fd6a4)}.cash-var-bad span:last-child{color:var(--red-400,#f08a8a)}.cash-var-bad,.cash-var-ok{font-size:1.25rem}.premier-upfront-btn{margin-left:8px;font-size:11px;padding:3px 8px;border-radius:999px;border:1px dashed var(--gold-400,#e7c76a);background:transparent;color:var(--gold-400,#e7c76a);cursor:pointer;font-family:inherit}.premier-upfront-btn.is-upfront{border-style:solid;background:rgba(231,199,106,.12)}.premier-upfront-row{margin:4px 0 8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}@media (min-width:1440px){.shell[data-page="/jobs"] .shell-content,.shell[data-page="/roster"] .shell-content,.shell[data-page="/settle"] .shell-content{font-size:1.08rem}.shell[data-page="/jobs"] .section-title,.shell[data-page="/roster"] .section-title,.shell[data-page="/settle"] .section-title{font-size:1.35rem}.shell[data-page="/jobs"] .jobs-groups{column-count:1}.shell[data-page="/jobs"] .jobs-row>summary{display:grid;grid-template-columns:96px 90px minmax(180px,1.1fr) minmax(220px,2fr) 150px auto;grid-column-gap:20px;column-gap:20px;align-items:center;flex-wrap:nowrap;padding:16px 20px;min-height:66px}.shell[data-page="/jobs"] .jobs-cell{font-size:1.05rem;min-width:0}.shell[data-page="/jobs"] .jobs-time{font-size:1.08rem}.shell[data-page="/jobs"] .jobs-ladies,.shell[data-page="/jobs"] .jobs-service{overflow-wrap:break-word}.shell[data-page="/jobs"] .jobs-addons-note{font-size:.95rem}.shell[data-page="/jobs"] .jobs-total{margin-left:0;justify-self:end;text-align:right;font-size:1.18rem}.shell[data-page="/jobs"] .jobs-summary{position:-webkit-sticky;position:sticky;top:12px;z-index:5;background:var(--navy-800);border:1px solid var(--summary-border,rgba(45,212,203,.35));box-shadow:0 8px 24px rgba(0,0,0,.45)}.shell[data-page="/jobs"] .jobs-badges{justify-self:end;flex-wrap:nowrap}.shell[data-page="/jobs"] .jobs-list{gap:4px}.shell[data-page="/jobs"] .jobs-row:nth-child(2n){background-image:linear-gradient(rgba(255,255,255,.045),rgba(255,255,255,.045))}.shell[data-page="/jobs"] .jobs-detail{padding:6px 20px 18px;font-size:1rem}.shell[data-page="/roster"] .roster-row{padding:15px 18px;margin-bottom:4px;font-size:1.08rem}.shell[data-page="/roster"] .roster-row-status{font-size:.95rem;max-width:220px}.shell[data-page="/settle"] .settle-list{grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:12px}.shell[data-page="/settle"] .settle-card{padding:12px 14px;font-size:.95rem}.shell[data-page="/settle"] .settle-card-head{font-size:1rem;padding-bottom:7px;margin-bottom:7px}.shell[data-page="/settle"] .settle-card .summary-row{padding:3px 0;font-size:.9rem}.shell[data-page="/settle"] .settle-card .summary-total{margin-top:auto;padding-top:8px;font-size:1.1rem}.shell[data-page="/settle"] .paid-badge{font-size:.78rem;padding:3px 10px}.shell[data-page="/settle"] .settle-details summary{min-height:38px;font-size:.92rem}.shell[data-page="/settle"] .settle-actions .btn-action,.shell[data-page="/settle"] .settle-actions .btn-small{min-height:44px;font-size:.95rem}.shell[data-page="/settle"] .excuse-btn{padding:6px 10px;font-size:.85rem}.shell[data-page="/settle"] .settle-sticky{position:-webkit-sticky;position:sticky;bottom:16px;z-index:5;background:var(--navy-800);border:1px solid var(--summary-border,rgba(45,212,203,.35));box-shadow:0 -8px 24px rgba(0,0,0,.45);border-radius:var(--radius-md)}.shell[data-page="/settle"] .cash-count-row{font-size:1.35rem}.shell[data-page="/settle"] .cash-count-input{width:260px;font-size:2rem;padding:12px 20px}.shell[data-page="/settle"] .cash-var-bad,.shell[data-page="/settle"] .cash-var-ok{font-size:1.5rem}.shell[data-page="/roster"] .roster-row-status{max-width:none;white-space:normal;overflow:visible;text-overflow:clip}.shell[data-page="/roster"] .roster-sticky-head{position:-webkit-sticky;position:sticky;top:12px;z-index:5;background:var(--navy-800);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.45);padding:10px 14px}.shell[data-page="/dashboard"] .shell-content{font-size:1.06rem}.shell[data-page="/dashboard"] .section-title{font-size:1.3rem}.shell[data-page="/dashboard"] .section-hint{font-size:.95rem}.shell[data-page="/dashboard"] .dash-card{padding:22px 24px}.shell[data-page="/dashboard"] .bar-row{font-size:1.02rem;padding:8px 0;gap:14px}.shell[data-page="/dashboard"] .bar-label{flex-basis:34%;white-space:normal;overflow:visible;text-overflow:clip}.shell[data-page="/dashboard"] .bar-track{height:14px}.shell[data-page="/dashboard"] .bar-value,.shell[data-page="/dashboard"] .dash-bk-table{font-size:1rem}.shell[data-page="/dashboard"] .dash-bk-table td,.shell[data-page="/dashboard"] .dash-bk-table th{padding:10px}.shell[data-page="/dashboard"] .dash-bk-table thead th{font-size:.78rem}.shell[data-page="/dashboard"] .pnl-value{font-size:1.1rem}.bk-card{grid-template-columns:96px 1fr auto;gap:18px;padding:14px 20px}.bk-time-t{font-size:1.2rem}.bk-name{font-size:1.08rem}.bk-sub{font-size:.95rem}.bk-day-head{font-size:1.1rem}.bk-stat{padding:14px 20px}.bk-stat-value{font-size:1.6rem}.bk-stat-label{font-size:.78rem}.bk-stat-sub{font-size:.85rem}.bk-rail-row{padding:12px 0}.bk-rail-time{min-width:54px}.bk-rail-name,.bk-rail-time{font-size:1rem}.bk-rail-sub{font-size:.88rem}.bk-actions .btn-action,.bk-actions .btn-small{min-height:48px;font-size:1rem}}.payment-change-btn{margin-left:8px}.payment-editor{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.payment-editor-chips{display:flex;flex-wrap:wrap;gap:6px}.payment-editor-actions{display:flex;gap:8px}.income-table{width:100%;border-collapse:collapse;margin:12px 0 16px;font-size:.95rem}.income-table td,.income-table th{padding:8px 12px;text-align:right;border-bottom:1px solid rgba(255,255,255,.08)}.income-table td:first-child,.income-table th:first-child{text-align:left}.income-table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.income-table tfoot td{font-weight:800;border-top:2px solid rgba(255,255,255,.18);border-bottom:none}.income-table .grp-deep{background:rgba(224,192,120,.05)}.income-table .grp-wonder{background:rgba(120,190,220,.05)}.income-table .grp-total{background:rgba(255,255,255,.04);font-weight:600}.income-table .grp-start{border-left:2px solid rgba(255,255,255,.16)}.income-table thead th.income-outlet{opacity:1;font-weight:800;letter-spacing:.08em;padding-bottom:2px;border-bottom:none}.income-table thead th.income-outlet-deep{color:#e0c078}.income-table thead th.income-outlet-wonder{color:#8fd0e8}.income-table thead th.income-outlet-total{color:#f7f3ea}.board-handoff-banner{display:block;width:100%;margin:0 0 10px;padding:10px 14px;border:1px solid var(--warn-400,#f59e0b);border-radius:10px;background:rgba(245,158,11,.15);color:var(--warn-400,#fbbf24);font-weight:700;font-size:.95rem;text-align:center;cursor:pointer;animation:handoff-pulse 2s ease-in-out infinite}.board-handoff-banner:hover{background:rgba(245,158,11,.28)}@keyframes handoff-pulse{0%,to{box-shadow:0 0 0 0 rgba(245,158,11,.35)}50%{box-shadow:0 0 0 6px rgba(245,158,11,0)}}.roster-row-main{min-width:0}.roster-row-actions,.roster-row-main{display:flex;align-items:center;gap:8px}.roster-row-actions{flex-shrink:0}.roster-row-remove{width:32px;height:32px;border-radius:8px;border:1px solid var(--navy-600);background:transparent;color:var(--text-300);font-size:1rem;line-height:1;cursor:pointer;flex-shrink:0}.roster-row-remove:hover{border-color:var(--danger-400);color:var(--danger-400)}.dir-row .roster-row-actions{flex-wrap:wrap;justify-content:flex-end;row-gap:4px}.dir-row .bk-roster-name{flex-shrink:1;white-space:normal}.dir-row .bk-roster-name .att-face-badge{display:inline-flex;white-space:nowrap}.dir-row .entry-note{font-size:.75rem;color:var(--text-300)}.dir-row.entry-muted{opacity:.6}.my-push-btn{width:100%}.my-push-on{margin:0;font-weight:700;color:var(--teal-500,#2dd4bf)}.my-push-steps .my-push-lead{margin:0 0 6px;font-weight:600}.my-push-steps ol{margin:0 0 10px;padding-left:20px;color:var(--text-300);font-size:.9rem}.my-push-steps ol li{margin:2px 0}.busy-pick-block{margin-top:10px}.option-btn.is-busy-pick{border-style:dashed;border-color:var(--amber-400,#f0c06a);background:rgba(240,192,106,.07)}.busy-pick-room{margin-left:6px;font-size:.8em;opacity:.75}.busy-hold-hint{margin:4px 0 8px;color:var(--amber-400,#f0c06a);font-weight:600}.busy-pick-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;border:1px dashed var(--amber-400,#f0c06a);border-radius:var(--radius-md);background:rgba(240,192,106,.07);color:var(--amber-400,#f0c06a);font:inherit;font-size:.92rem;font-weight:600;cursor:pointer;text-align:left}.busy-pick-caret{font-size:.8em}.pos-collect-bar{position:-webkit-sticky;position:sticky;bottom:-18px;margin:14px -16px -18px;padding:6px 16px 12px;background:var(--modal-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--card-border);z-index:5}.pos-collect-bar .pos-collect{margin-top:8px}.rate-edit-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;padding:6px 0}.rate-edit-label{min-width:160px;color:var(--text-100);font-size:.85rem}.rate-edit-inputs{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.rate-edit-cell{display:inline-flex;align-items:center;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rate-edit-dur{font-size:.75rem;color:var(--text-300);white-space:nowrap}.rate-edit-input{width:84px;padding:4px 8px;border-radius:var(--radius-sm,8px);border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-100);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.rate-edit-input:focus{outline:none;border-color:var(--teal-500)}.rate-edit-save{padding:4px 14px;font-size:.8rem}.rate-edit-notice{color:var(--teal-400,var(--teal-500));font-weight:600}.cash-refresh-cell{display:inline-flex;align-items:center;gap:10px}.cash-updated-at{font-size:.72rem;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.cash-refresh-btn{padding:3px 12px;font-size:.78rem}.manual-checkin-row{margin-top:10px;padding-top:10px;border-top:1px dashed var(--card-border)}.manual-checkin-btn{border:1px dashed var(--warning-400);color:var(--warning-400)}.manual-checkin-btn.is-armed{border-style:solid;background:var(--warning-400);color:#1a1207;font-weight:700}.manual-checkin-pin{align-items:center;gap:8px;flex-wrap:wrap}.manual-checkin-pin-input{width:5.5em;text-align:center;letter-spacing:.35em;font-weight:700}.manual-checkin-pin .form-error{flex-basis:100%;margin:4px 0 0}.att-row-meta .warn{color:var(--danger-400,#f87171);font-weight:700}.settle-taxi-input{width:96px;text-align:right;padding:4px 8px}.bugreport-fab{position:fixed;right:16px;bottom:16px;z-index:90;width:46px;height:46px;border-radius:50%;border:1px solid var(--card-border);background:var(--navy-900);font-size:1.25rem;line-height:1;cursor:pointer;box-shadow:var(--glass-shadow)}.bugreport-fab:hover{border-color:var(--teal-500)}.bugreport-overlay{position:fixed;inset:0;z-index:200;background:rgba(4,8,18,.6);display:flex;align-items:center;justify-content:center;padding:16px}.bugreport-card{width:min(480px,100%);max-height:90vh;overflow-y:auto;background:var(--modal-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:18px}.bugreport-text{width:100%;resize:vertical;margin-top:10px;padding:10px 12px;border-radius:var(--radius-md,10px);border:1px solid var(--card-border);background:var(--glass-soft-bg);color:var(--text-100);font:inherit}.bugreport-preview{margin-top:10px}.bugreport-preview img{display:block;max-width:100%;max-height:180px;object-fit:contain;border-radius:var(--radius-sm,8px);border:1px solid var(--card-border)}.bugreport-actions{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.dash-bug-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--card-border)}.dash-bug-row:last-child{border-bottom:0}.dash-bug-meta{display:block}.dash-bug-actions{display:inline-flex;gap:6px;flex-shrink:0}.bugreport-mine{margin-top:14px;padding-top:10px;border-top:1px solid var(--card-border)}.bugreport-mine-row{display:flex;align-items:baseline;gap:8px;margin:6px 0 0;font-size:.82rem;color:var(--text-300)}.bugreport-status{flex-shrink:0;padding:1px 8px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--text-500);color:var(--text-300)}.bugreport-status.is-new{border-color:var(--warning-400);color:var(--warning-400)}.bugreport-status.is-in_progress{border-color:var(--teal-500);color:var(--teal-500)}.bugreport-status.is-resolved{border-color:var(--success-400);color:var(--success-400)}.bugreport-mine-msg{overflow-wrap:anywhere}.dash-bug-wip{display:inline-block;margin-right:8px;padding:1px 8px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--teal-500);color:var(--teal-500)}.bk-webreq{border:1px solid rgba(251,191,36,.45);background:linear-gradient(180deg,rgba(251,191,36,.07),rgba(251,191,36,.02));box-shadow:0 0 0 1px rgba(251,191,36,.12),var(--glass-shadow,0 8px 32px rgba(0,0,0,.35))}.bk-webreq-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.bk-webreq-dot{width:9px;height:9px;border-radius:50%;background:var(--warning-400,#fbbf24);animation:bk-webreq-pulse 1.6s infinite}@keyframes bk-webreq-pulse{0%{box-shadow:0 0 0 0 rgba(251,191,36,.55)}70%{box-shadow:0 0 0 9px rgba(251,191,36,0)}to{box-shadow:0 0 0 0 rgba(251,191,36,0)}}.bk-webreq-title{font-size:.95rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:var(--warning-400,#fbbf24)}.bk-webreq-hint{margin-left:auto;font-size:.76rem;font-weight:400;color:var(--text-300,rgba(255,255,255,.5))}.bk-webreq .bk-webreq-card{border:1px solid rgba(251,191,36,.35)}section.panel.bk-webreq>.bk-list{display:flex;flex-direction:column;gap:8px;align-items:stretch}.bk-webreq-new{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:var(--warning-400,#fbbf24);color:#0b1526;font-size:.68rem;font-weight:800;letter-spacing:.04em}.bk-time-d{display:block;font-size:.64rem;color:var(--text-500,rgba(255,255,255,.35));text-transform:uppercase;letter-spacing:.05em;margin-top:1px}.room-reserve{position:absolute;top:8px;right:56px;z-index:4;min-width:40px;min-height:40px;padding:4px 8px;border-radius:10px;border:1px solid var(--navy-600);background:var(--navy-900);color:var(--text-300);font-size:.95rem;line-height:1;transition:border-color .15s ease,color .15s ease}.room-reserve.is-confirm,.room-reserve:hover{border-color:#b79cff;color:#b79cff}.room-reserve.is-confirm{min-width:40px;font-size:1.05rem}.room-card.status-reserved{border-color:var(--room-reserved-border);opacity:.7}.room-card.status-reserved .room-name,.room-card.status-reserved .room-status{color:var(--room-reserved-status)}.room-strip.status-reserved{--strip-accent:var(--room-reserved-status)}.room-strip .room-reserve{top:6px;right:48px;min-width:34px;min-height:34px;padding:2px 6px;font-size:.85rem}.room-strip .room-reserve.is-confirm{min-width:40px}.room-strip.status-reserved{opacity:.75}.room-card.status-occupied.is-overtime,.room-strip.status-occupied.is-overtime{--room-occupied-status:var(--room-over-status);--room-occupied-border:var(--room-over-border)}.room-card.is-overtime .pos-remaining.is-over,.room-strip.is-overtime .pos-remaining.is-over{font-weight:800;animation:room-overtime-text 1.8s ease-in-out infinite}@keyframes room-overtime-text{0%,to{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 14px var(--room-over-border)}}@media (prefers-reduced-motion:reduce){.room-card.is-overtime .pos-remaining.is-over,.room-strip.is-overtime .pos-remaining.is-over{animation:none}}@media (max-width:1439px){.room-reserve{min-width:44px;min-height:44px;right:60px}}.svc-card.svc-card-nuru{border-color:rgba(167,139,250,.55)}.svc-card.svc-card-nuru .svc-name{color:#b79cff}.option-btn.option-btn-nuru{border-color:rgba(167,139,250,.55);color:#b79cff}.room-reserve,.room-wrench{width:44px;height:44px;min-width:44px;min-height:44px;padding:0;font-size:1rem;display:inline-flex;align-items:center;justify-content:center}.room-strip .room-reserve,.room-strip .room-wrench{width:36px;height:36px;min-width:36px;min-height:36px}.room-reserve{filter:grayscale(1) opacity(.75)}.room-reserve.is-confirm,.room-reserve.is-on,.room-reserve:hover{filter:none}.room-ends{font-size:.8rem}.room-ends,.strip-ends{color:var(--text-400,#8b96ab)}.now-floor-chips,.now-outlet-group{gap:6px}.now-chip{gap:6px;height:28px;padding:0 11px;font-size:.82rem;background:transparent;border:1px solid}.now-chip-name{font-weight:600}.now-chip-status{font-size:.76rem;opacity:.8;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.now-free{color:#4ade80;border-color:rgba(74,222,128,.4)}.now-held{color:#93c5fd;border-color:rgba(147,197,253,.4)}.now-busy{color:#fbbf24;border-color:rgba(251,191,36,.4)}.now-left{color:#f87171;border-color:rgba(248,113,113,.4)}.now-left .now-chip-outlet{background:transparent;font-size:.72rem;opacity:.65}.triage-chips.avail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));grid-gap:6px;gap:6px}.avail-grid .avail-chip{box-sizing:border-box;height:32px;padding:0 12px;gap:6px;justify-content:space-between;font-size:12.5px;font-weight:600;background:transparent;white-space:nowrap;overflow:hidden}.avail-grid .avail-chip .chip-edit{flex:none}.avail-grid .avail-chip:has(.avail-time-select){grid-column:1/-1;height:auto;justify-content:flex-start;flex-wrap:wrap}.leave-edit-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex-basis:100%;padding:8px 10px;border:1px dashed var(--card-border);border-radius:10px}.leave-edit-row .triage-label{margin-bottom:0}.leave-current{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;padding:3px 10px;border:1px solid rgba(147,197,253,.4);border-radius:999px;color:#93c5fd}.inline-input.leave-date{width:auto;font-size:12.5px;padding:4px 8px}.settle-card-head-click{cursor:pointer}.settle-card-head-click:focus-visible{outline:2px solid var(--teal-500,#2dd4bf);outline-offset:2px;border-radius:6px}.att-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:5px;gap:5px;margin:10px 0 4px}.att-dow{text-align:center;font-size:.62rem;font-weight:700;letter-spacing:.06em;padding-bottom:2px}.att-day,.att-dow{color:var(--text-500)}.att-day{position:relative;aspect-ratio:1;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:rgba(255,255,255,.03);border:1px solid transparent}.att-day.att-blank{visibility:hidden}.att-day.worked{color:#eafff8;background:rgba(45,212,191,var(--fill,.5));border-color:rgba(45,212,191,.35)}.att-day.short{border-color:rgba(251,191,36,.55)}.att-day.ot:after{content:"";position:absolute;top:4px;right:4px;width:5px;height:5px;border-radius:50%;background:var(--warn-400,#fbbf24)}.att-day.today{box-shadow:0 0 0 2px var(--teal-500,#2dd4bf) inset}.att-day.future{opacity:.35;background:transparent;border-style:dashed;border-color:rgba(255,255,255,.08)}.att-legend{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:.68rem;color:var(--text-500);margin-top:6px}.att-legend span{display:inline-flex;align-items:center;gap:5px}.att-swatch{width:11px;height:11px;border-radius:4px;display:inline-block}.att-swatch-worked{background:rgba(45,212,191,.7)}.att-swatch-short{border:1.5px solid rgba(251,191,36,.55);background:transparent}.att-swatch-ot{position:relative;background:rgba(45,212,191,.4)}.att-swatch-ot:after{content:"";position:absolute;top:1px;right:1px;width:4px;height:4px;border-radius:50%;background:#fbbf24}.att-swatch-off{background:rgba(255,255,255,.05)}.att-stats{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07);font-size:.78rem;color:var(--text-300)}.att-stats b{color:var(--text-100);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.att-chev{margin-left:auto;color:var(--text-500);display:inline-flex;align-items:center;padding:4px 6px}.pay-history{margin:4px 0 12px}.pay-history-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.pay-history-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:var(--text-300);font-size:.74rem;cursor:pointer}.pay-history-chip:hover{border-color:rgba(45,212,191,.4)}.pay-history-chip.is-current{border-color:rgba(45,212,191,.55);background:rgba(45,212,191,.1);color:var(--text-100)}.pay-history-month{font-weight:700}.pay-history-total{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pay-history-status{font-size:.64rem;font-weight:700;padding:1px 7px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.pay-history-status.st-draft{background:rgba(255,255,255,.08);color:var(--text-300)}.pay-history-status.st-approved{background:rgba(96,165,250,.18);color:#93c5fd}.pay-history-status.st-paid{background:rgba(45,212,191,.18);color:#5eead4}button.att-day{font-family:inherit;cursor:pointer;padding:0}button.att-day:focus-visible{outline:2px solid var(--teal-500,#2dd4bf);outline-offset:1px}.att-day.selected{box-shadow:0 0 0 2px var(--teal-500,#2dd4bf)}.att-day.today.selected{box-shadow:0 0 0 2px var(--teal-500,#2dd4bf) inset,0 0 0 2px var(--teal-500,#2dd4bf)}.att-hint{margin:6px 0 0;font-size:.66rem;color:var(--text-500)}.att-detail{margin-top:6px;padding:8px 10px;border-radius:8px;background:rgba(45,212,191,.07);border:1px solid rgba(45,212,191,.2);display:flex;flex-direction:column;gap:4px;font-size:.76rem;color:var(--text-300)}.att-detail-date{font-weight:700;color:var(--text-100)}.att-detail-date,.att-detail-row{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.att-detail-row b{color:var(--text-100)}.att-detail-row.muted{color:var(--text-500)}.pay-export-btn{margin-top:6px}.bk-floor-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px}.bk-floor-title{font-size:.72rem;font-weight:800;letter-spacing:.09em;color:var(--text-300);text-transform:uppercase}.bk-floor-live{font-size:.72rem;color:var(--text-500)}.bk-floor-row{display:flex;align-items:flex-start;gap:12px;padding:7px 0;border-bottom:1px dashed rgba(255,255,255,.08)}.bk-floor-row:last-child{border-bottom:none}.bk-floor-label{font-size:.74rem;font-weight:700;color:var(--text-500);min-width:96px;padding-top:4px;flex-shrink:0}.bk-floor-label.is-left{color:rgba(248,113,113,.7)}.bk-floor-chips{display:flex;flex-wrap:wrap;gap:6px}.bk-floor-chip{font-size:.8rem;border-radius:999px;padding:3px 12px;border:1px solid;white-space:nowrap}.bk-floor-chip.is-free{color:var(--success-400);border-color:rgba(52,211,153,.45);background:rgba(52,211,153,.07)}.bk-floor-chip.is-busy{color:var(--warning-400);border-color:rgba(251,191,36,.45);background:rgba(251,191,36,.07)}.bk-floor-chip.is-left{color:rgba(248,113,113,.75);border-color:rgba(248,113,113,.3);background:rgba(248,113,113,.05)}.bk-floor-until{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-ladies-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.bk-lp-seg{display:inline-flex;background:rgba(255,255,255,.05);border:1px solid var(--card-border);border-radius:9px;padding:3px;gap:3px}.bk-lp-seg button{border:none;background:transparent;color:var(--text-500);font-size:.76rem;font-weight:700;padding:5px 14px;border-radius:7px;cursor:pointer}.bk-lp-seg button.is-on{background:var(--gold-400);color:#20180a}.bk-lp-grid{display:grid;grid-template-columns:132px 1fr 1fr 1fr}.bk-lp-colhead{font-size:.7rem;font-weight:700;color:var(--text-500);padding:4px 10px 2px;text-transform:uppercase;letter-spacing:.05em}.bk-lp-colhead.is-today{color:var(--gold-400)}.bk-lp-scale{display:flex;justify-content:space-between;padding:0 10px 6px;font-size:.6rem;color:rgba(255,255,255,.25)}.bk-lp-name{font-size:.84rem;font-weight:600;padding:8px 10px;border-top:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;gap:2px;justify-content:center;min-width:0}.bk-lp-name-line{display:flex;align-items:center;flex-wrap:wrap;gap:3px 5px;min-width:0}.bk-lp-name-line .premier-badge{margin-left:0;padding:1px 5px;font-size:.55rem;line-height:1.25;letter-spacing:.03em}.bk-lp-name .bk-lp-shift{font-size:.68rem;color:var(--text-500);font-weight:500}.bk-lp-name.is-off{color:rgba(255,255,255,.35)}.bk-lp-cell{padding:6px 10px;border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;min-width:0}.bk-lp-cell.is-cards{align-items:stretch}.bk-lp-wrap{width:100%;min-width:0}.bk-lp-note{font-size:.66rem;color:var(--teal-400);margin-bottom:3px}.bk-lp-none{color:rgba(255,255,255,.2);font-size:.74rem;display:block}.bk-lp-none,.bk-lp-off{text-align:center;width:100%}.bk-lp-off{font-size:.68rem;font-weight:700;color:rgba(248,113,113,.75);background:rgba(248,113,113,.07);border:1px dashed rgba(248,113,113,.3);border-radius:6px;padding:3px 0}.bk-lp-tl{position:relative;width:100%;height:22px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:6px}.bk-lp-block{position:absolute;top:3px;bottom:3px;border-radius:4px;min-width:4px}.bk-lp-block.is-deep{background:rgba(231,199,106,.85)}.bk-lp-block.is-wonder{background:rgba(94,234,212,.8)}.bk-lp-block.is-done{opacity:.45}.bk-lp-block.is-live{background:var(--warning-400);box-shadow:0 0 6px rgba(251,191,36,.5)}.bk-lp-now{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--danger-400);border-radius:1px}.bk-lp-card{width:100%;border-radius:8px;padding:6px 9px;margin-bottom:5px;background:rgba(231,199,106,.08);border:1px solid rgba(231,199,106,.28);font-size:.76rem;cursor:pointer}.bk-lp-card:last-child{margin-bottom:0}.bk-lp-card.is-wonder{background:rgba(94,234,212,.07);border-color:rgba(94,234,212,.28)}.bk-lp-card.is-done{opacity:.45}.bk-lp-card.is-active{border-color:var(--warning-400);box-shadow:0 0 8px rgba(251,191,36,.25)}.bk-lp-card.is-walkin{background:rgba(251,191,36,.09);border-color:rgba(251,191,36,.35)}.bk-lp-card-l1{display:flex;justify-content:space-between;gap:6px;align-items:baseline}.bk-lp-card-t{font-weight:700;color:var(--gold-400);white-space:nowrap}.bk-lp-card.is-wonder .bk-lp-card-t{color:var(--teal-400)}.bk-lp-card.is-walkin .bk-lp-card-t{color:var(--warning-400)}.bk-lp-card-cust{color:#fff;font-weight:600}.bk-lp-card-l2{display:flex;justify-content:space-between;gap:6px;margin-top:2px;color:var(--text-500);font-size:.68rem}.bk-lp-card-st{font-weight:700;font-size:.64rem;text-transform:uppercase;letter-spacing:.04em;color:var(--success-400);white-space:nowrap}.bk-lp-card-st.is-active{color:var(--warning-400)}.bk-lp-card-st.is-done{color:rgba(255,255,255,.3)}@media (max-width:640px){.bk-lp-grid{grid-template-columns:92px 1fr 1fr 1fr}.bk-lp-name .bk-lp-shift,.bk-lp-scale{display:none}.bk-floor-label{min-width:72px}}.bk-panel .option-btn{min-height:0;padding:7px 14px;border-radius:999px;font-size:.82rem;background:rgba(255,255,255,.045);border-color:var(--card-border);color:var(--text-300)}.bk-panel .option-btn[aria-pressed=true]{background:rgba(231,199,106,.14);border-color:var(--gold-400);color:var(--gold-400)}.bk-panel .option-btn:disabled{opacity:.32;text-decoration:line-through}.bk-panel .bk-lady-slot select,.bk-panel .field input,.bk-panel .field select{background:rgba(255,255,255,.05);border:1px solid var(--card-border);border-radius:9px;padding:9px 11px;color:#fff}.bk-panel .bk-lady-slot select:focus,.bk-panel .field input:focus,.bk-panel .field select:focus{border-color:rgba(231,199,106,.45);outline:none}.bk-panel .option-grid{gap:6px}.bk-ladybar{margin:6px 0 8px;padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);width:100%}.bk-ladybar-note{font-size:.64rem;color:var(--text-500);margin-bottom:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bk-ladybar-tl{position:relative;width:100%;height:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:5px}.bk-ladybar-block{position:absolute;top:2px;bottom:2px;border-radius:3px;min-width:3px;background:rgba(231,199,106,.85)}.bk-ladybar-block.is-wonder{background:rgba(94,234,212,.8)}.bk-ladybar-block.is-live{background:var(--warning-400);box-shadow:0 0 5px rgba(251,191,36,.5)}.bk-ladybar-pick{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--success-400);border-radius:1px}.bk-lady-slot{flex-wrap:wrap}.bk-daylist-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;background:transparent;border:none;padding:2px 0;cursor:pointer;color:var(--text-300)}.bk-daylist-toggle[aria-expanded=true]{margin-bottom:10px}.bk-daylist-label{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.bk-daylist-caret{color:var(--text-500);font-size:.85rem}.bk-daylist-toggle:hover .bk-daylist-label{color:var(--gold-400)}.bk-lp-shiftband{position:absolute;top:2px;bottom:2px;border-radius:4px;background:rgba(255,255,255,.06);border-left:1px solid rgba(255,255,255,.14);border-right:1px solid rgba(255,255,255,.14);pointer-events:none}.bk-lp-shiftline{font-size:.62rem;color:var(--text-500);margin-top:3px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bk-lp-cell.is-cards .bk-lp-shiftline{margin:0 0 4px}.bk-ladybar-band{position:absolute;top:1px;bottom:1px;border-radius:3px;background:rgba(255,255,255,.06);border-left:1px solid rgba(255,255,255,.14);border-right:1px solid rgba(255,255,255,.14);pointer-events:none}.bk-ladybar-note.is-shift{color:var(--teal-400)}.bk-ladybar-off{text-align:center;font-size:.68rem;font-weight:700;color:rgba(248,113,113,.75);background:rgba(248,113,113,.07);border:1px dashed rgba(248,113,113,.3);border-radius:6px;padding:3px 0}.bk-ladybar-block,.bk-lp-block{overflow:visible}.bk-ladybar-block[data-tip]:after,.bk-lp-block[data-tip]:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:#16233a;border:1px solid var(--card-border);color:#fff;font-size:.7rem;font-weight:600;padding:3px 8px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:40;box-shadow:0 4px 14px rgba(0,0,0,.45)}.bk-ladybar-block[data-tip]:active:after,.bk-ladybar-block[data-tip]:hover:after,.bk-lp-block[data-tip]:active:after,.bk-lp-block[data-tip]:hover:after{opacity:1}.bk-lp-block.is-clickable{cursor:pointer}.bk-lp-block.is-clickable:hover{filter:brightness(1.2)}.bk-ladies-toggles{display:inline-flex;gap:8px;flex-wrap:wrap}.bk-lp-grid.is-one{grid-template-columns:132px 1fr}@media (max-width:640px){.bk-lp-grid.is-one{grid-template-columns:92px 1fr}}.bk-lp-freebar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.bk-lp-freelabel{font-size:.78rem;font-weight:600;color:var(--teal-400)}.bk-lp-freesel{font-size:.78rem;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:inherit}.bk-lp-premier-filter{display:inline-flex;align-items:center;gap:5px;color:var(--gold-400);font-size:.78rem;font-weight:600;white-space:nowrap;cursor:pointer}.bk-lp-premier-filter input{margin:0;accent-color:var(--gold-400)}.bk-lp-freecopy{font-size:.78rem;font-weight:600;padding:4px 12px;border-radius:8px;border:1px solid var(--teal-400);background:rgba(45,212,191,.12);color:var(--teal-400);cursor:pointer}.bk-lp-freecopy:disabled{opacity:.4;cursor:default}.bk-lp-freeclear{font-size:.78rem;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:transparent;color:rgba(255,255,255,.6);cursor:pointer}.bk-lp-freenone{font-size:.74rem;color:var(--danger-400,#f87171)}.bk-lp-note.is-free{color:var(--success-400,#4ade80);font-weight:600}.bk-lp-cell.is-dimmed,.bk-lp-name.is-dimmed{opacity:.35}:root{--muted:rgba(255,255,255,0.55)}[data-theme=noir]{--muted:rgba(240,233,223,0.5)}[data-theme=aman]{--muted:#7f7460}[data-theme=aman] .bk-history{border-top-color:var(--divider)}[data-theme=aman] .bk-avail-chip.is-off{background:rgba(90,70,40,.05);border-color:rgba(90,70,40,.18)}[data-theme=aman] .bk-lady-group+.bk-lady-group{border-top-color:var(--divider)}[data-theme=aman] .bk-lane{background:rgba(90,70,40,.05)}[data-theme=aman] .bk-floor-row{border-bottom-color:var(--divider)}[data-theme=aman] .bk-lp-seg{background:var(--seg-bg)}[data-theme=aman] .bk-lp-seg button.is-on{background:var(--seg-active-bg);color:var(--seg-active-text)}[data-theme=aman] .bk-lp-scale{color:var(--text-500)}[data-theme=aman] .bk-lp-name{border-top-color:var(--divider)}[data-theme=aman] .bk-lp-name.is-off{color:var(--text-500)}[data-theme=aman] .bk-lp-cell{border-top-color:var(--divider)}[data-theme=aman] .bk-lp-none{color:var(--text-500)}[data-theme=aman] .bk-lp-cell.is-dimmed,[data-theme=aman] .bk-lp-name.is-dimmed{opacity:.45}[data-theme=aman] .bk-ladybar-tl,[data-theme=aman] .bk-lp-tl{background:rgba(90,70,40,.06);border-color:rgba(90,70,40,.16)}[data-theme=aman] .bk-ladybar{background:rgba(90,70,40,.04);border-color:rgba(90,70,40,.16)}[data-theme=aman] .bk-ladybar-band,[data-theme=aman] .bk-lp-shiftband{background:rgba(90,70,40,.08);border-left-color:rgba(90,70,40,.3);border-right-color:rgba(90,70,40,.3)}[data-theme=aman] .bk-lp-block.is-deep{background:var(--chart-2)}[data-theme=aman] .bk-lp-block.is-wonder{background:var(--chart-3)}[data-theme=aman] .bk-lp-block.is-live{background:var(--warning-400);box-shadow:0 0 6px rgba(140,95,34,.45)}[data-theme=aman] .bk-lp-card{background:rgba(169,136,78,.1);border-color:rgba(169,136,78,.4)}[data-theme=aman] .bk-lp-card.is-wonder{background:rgba(63,111,125,.08);border-color:rgba(63,111,125,.35)}[data-theme=aman] .bk-lp-card-cust{color:var(--text-100)}[data-theme=aman] .bk-lp-card-st.is-done{color:var(--text-500)}[data-theme=aman] .bk-lp-card.is-active{border-color:var(--warning-400);box-shadow:0 0 8px rgba(140,95,34,.3)}[data-theme=aman] .bk-lp-card.is-walkin{background:rgba(140,95,34,.09);border-color:rgba(140,95,34,.4)}[data-theme=aman] .bk-lp-off{color:rgba(164,74,58,.85);background:rgba(164,74,58,.07);border-color:rgba(164,74,58,.35)}[data-theme=aman] .bk-floor-label.is-left{color:rgba(164,74,58,.8)}[data-theme=aman] .bk-floor-chip.is-left{color:rgba(164,74,58,.85);border-color:rgba(164,74,58,.35);background:rgba(164,74,58,.06)}[data-theme=aman] .bk-floor-chip.is-free{color:var(--success-400);border-color:rgba(95,110,80,.5);background:rgba(95,110,80,.08)}[data-theme=aman] .bk-floor-chip.is-busy{color:var(--warning-400);border-color:rgba(140,95,34,.5);background:rgba(140,95,34,.08)}[data-theme=aman] .bk-panel .option-btn{background:rgba(90,70,40,.05)}[data-theme=aman] .bk-panel .bk-lady-slot select,[data-theme=aman] .bk-panel .field input,[data-theme=aman] .bk-panel .field select{background:rgba(255,255,255,.5)}[data-theme=aman] .bk-lp-freesel{border-color:rgba(90,70,40,.25);background:rgba(255,255,255,.5)}[data-theme=aman] .bk-lp-freeclear{border-color:rgba(90,70,40,.25);color:var(--text-500)}[data-theme=aman] .bk-lp-freecopy{background:rgba(179,96,47,.1)}.outlet-tabs.dir-filter-tabs,.roster-sticky-head .outlet-tabs.dir-filter-tabs{display:inline-flex;width:auto;border-radius:9px;padding:3px;gap:2px}.outlet-tabs.dir-filter-tabs button,.roster-sticky-head .outlet-tabs.dir-filter-tabs button{flex:0 0 auto;border-radius:7px;min-height:0;padding:5px 14px;font-size:.76rem;font-weight:700;color:var(--text-500)}.roster-stats{margin:12px 0 4px}.board-soon,.board-stats{margin-bottom:16px}.board-soon-notice{margin:8px 0 0;font-size:.85rem;font-weight:600;color:var(--teal-400)}@media (min-width:640px) and (max-width:999px){.mg-wrap{max-width:720px}.mg-live-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 18px;gap:0 18px;align-items:start}}@media (min-width:1000px){.mg-wrap{max-width:1200px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;align-items:start}.mg-wrap>.mg-datebar,.mg-wrap>.mg-error,.mg-wrap>.mg-span2,.mg-wrap>section.mg-card:first-of-type{grid-column:1/-1}.mg-live-grid{display:contents}}.mg-details{margin-top:8px;border-top:1px solid var(--glass-soft-border)}.mg-details>summary{list-style:none;cursor:pointer;padding:8px 2px 4px;font-size:11.5px;font-weight:600;color:var(--text-300);display:flex;align-items:center;gap:6px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mg-details>summary::-webkit-details-marker{display:none}.mg-details>summary .mg-details-chev{font-size:10px;transition:transform .15s}.mg-details[open]>summary .mg-details-chev{transform:rotate(180deg)}.dash-range{display:inline-flex;background:var(--seg-bg);border:none;border-radius:9px;padding:3px;gap:2px}.dash-range button{min-height:0;padding:5px 14px;border:none;background:transparent;color:var(--text-500);font-size:.76rem;font-weight:700;border-radius:7px}.dash-range button[aria-pressed=true]{border-color:transparent;background:var(--seg-active-bg);color:var(--seg-active-text)}.admin-tabs{display:inline-flex;border-radius:9px;padding:3px;gap:2px}.admin-tabs button{border-radius:7px;min-height:0;padding:5px 14px;font-size:.76rem;font-weight:700;color:var(--text-500)}.bk-lp-scroll{max-height:72vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.bk-lp-scroll .bk-lp-colhead{position:-webkit-sticky;position:sticky;top:0;z-index:3;background:var(--navy-800);padding-top:6px}.bk-lp-scroll .bk-lp-name{position:-webkit-sticky;position:sticky;left:0;z-index:2;background:var(--card-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.bk-lp-scroll .bk-lp-colhead:first-child{z-index:4}.bk-ladybar-block.is-openend,.bk-lp-block.is-openend{border-top-right-radius:0;border-bottom-right-radius:0}.bk-ladybar-block.is-openend:before,.bk-lp-block.is-openend:before{content:"";position:absolute;top:0;bottom:0;right:0;width:4px;background:var(--navy-900);-webkit-clip-path:polygon(100% 0,0 8%,100% 16%,0 24%,100% 32%,0 40%,100% 48%,0 56%,100% 64%,0 72%,100% 80%,0 88%,100% 96%,0 100%,100% 100%);clip-path:polygon(100% 0,0 8%,100% 16%,0 24%,100% 32%,0 40%,100% 48%,0 56%,100% 64%,0 72%,100% 80%,0 88%,100% 96%,0 100%,100% 100%);pointer-events:none}.bk-daylist-caret{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:1.05rem;line-height:1;color:var(--text-100);background:var(--card-bg);border:1px solid var(--card-border);transition:border-color .15s ease,color .15s ease}.bk-daylist-toggle:hover .bk-daylist-caret{color:var(--gold-400);border-color:var(--gold-400)}.staffmy-stats{display:flex;gap:10px;margin-bottom:12px}.staffmy-stat{flex:1 1;background:var(--glass-soft,rgba(255,255,255,.04));border:1px solid var(--card-border);border-radius:var(--radius-md);padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:4px}.staffmy-stat-num{font-size:20px;font-weight:800;color:var(--text-100);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.staffmy-stat-num.staffmy-money{color:var(--teal-400)}.staffmy-stat-label{font-size:11px;color:var(--text-500);text-align:center;text-transform:uppercase;letter-spacing:.05em}.staffmy-note{font-size:12px;margin:8px 0 0}@keyframes staffmyFillUp{0%{width:0}}@keyframes staffmyMetGlow{0%{box-shadow:0 0 0 0 rgba(67,217,163,0)}35%{box-shadow:0 0 14px 2px rgba(67,217,163,.55)}to{box-shadow:0 0 6px 0 rgba(67,217,163,.18)}}.my-bonus-fill.my-fillanim,.my-bonus-fill.staffmy-fillanim{animation:staffmyFillUp .9s cubic-bezier(.2,.8,.2,1) both}.my-bonus-fill.my-fillanim.met,.my-bonus-fill.staffmy-fillanim.met{animation:staffmyFillUp .9s cubic-bezier(.2,.8,.2,1) both,staffmyMetGlow 1.4s ease-out .9s both}@media (prefers-reduced-motion:reduce){.my-bonus-fill.my-fillanim,.my-bonus-fill.my-fillanim.met,.my-bonus-fill.staffmy-fillanim,.my-bonus-fill.staffmy-fillanim.met{animation:none}}.staffmy-rows{display:flex;flex-direction:column;gap:6px;margin-top:10px}.staffmy-row{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.staffmy-row.staffmy-ded{color:var(--rose-400,#fb7185);font-size:13px}.staffmy-row.staffmy-total{border-top:1px solid var(--card-border);padding-top:8px;margin-top:4px;font-weight:800;color:var(--text-100);font-size:15px}.staffmy-days{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.staffmy-day{display:flex;align-items:baseline;gap:8px;font-size:14px;flex-wrap:wrap}.staffmy-day-date{font-weight:700;color:var(--text-100);min-width:92px}.staffmy-day-times{color:var(--text-300);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:1 1}.staffmy-day-comm{color:var(--teal-400);font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.staffmy-slip{border-top:1px solid var(--card-border);padding-top:10px}.staffmy-slip:first-child{border-top:none;padding-top:0}.staffmy-slip-head{display:flex;align-items:center;justify-content:space-between}.staffmy-slip-status{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid var(--card-border);color:var(--text-500);text-transform:uppercase;letter-spacing:.05em}.staffmy-slip-status.is-approved{color:var(--warn-400,#fbbf24);border-color:var(--warn-400,#fbbf24)}.staffmy-slip-status.is-paid{color:var(--teal-400);border-color:var(--teal-400)}.assign-block{margin:10px 0 14px;display:flex;flex-direction:column;gap:8px}.assign-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 10px;border:1px solid var(--card-border);border-radius:999px;font-size:13px}.assign-name{font-weight:700;color:var(--text-100)}.assign-toggles{display:inline-flex;gap:4px}.assign-btn{font:inherit;font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px;border:1px solid var(--card-border);background:transparent;color:var(--text-500);cursor:pointer}.assign-btn.is-on{color:var(--teal-400);border-color:var(--teal-400);background:rgba(45,212,191,.12)}.assign-btn:disabled{opacity:.6;cursor:default}.assign-view{font-size:12px;color:var(--text-300)}.staffmy-assign{border-color:rgba(45,212,191,.5)}.staffmy-assign-line{margin:4px 0;font-size:15px;color:var(--text-100)}.staffmy-assign-line b{color:var(--teal-400)}.staffmy-monthnav{display:flex;align-items:center;justify-content:space-between;gap:8px}.staffmy-monthbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line,rgba(255,255,255,.12));background:transparent;color:var(--text-100);width:34px;height:30px;border-radius:8px;font-size:18px;line-height:1;cursor:pointer}.staffmy-monthbtn:disabled{opacity:.3;cursor:default}.staffmy-monthbtn:not(:disabled):active{transform:scale(.94)}.staffcal-grid,.staffcal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:4px;gap:4px}.staffcal-week{margin-bottom:4px}.staffcal-week span{text-align:center;font-size:11px;color:var(--text-300);text-transform:uppercase}.staffcal-cell{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.08);background:transparent;border-radius:8px;min-height:46px;min-width:0;padding:3px 2px;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;color:var(--text-100)}.staffcal-cell.is-empty{border:none;cursor:default;background:transparent}.staffcal-cell.is-past{opacity:.45;cursor:default}.staffcal-cell.has-off:not(.is-mine){border-color:rgba(255,255,255,.2)}.staffcal-cell.is-mine{border-color:rgba(45,212,191,.65);background:rgba(45,212,191,.12)}.staffcal-cell:not(.is-past):not(.is-empty):active{transform:scale(.95)}.staffcal-cell.is-pending{opacity:.6}.staffcal-num{font-size:12px;font-weight:600}.staffcal-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:2px}.staffcal-dot{font-size:9px;line-height:1;padding:2px 3px;border-radius:4px;background:rgba(255,255,255,.14);color:var(--text-300);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staffcal-dot.is-mine{background:var(--teal-400,#2dd4bf);color:#04201c;font-weight:700}.staffcal-dot.is-short{background:rgba(251,191,36,.3);color:var(--amber-400,#fbbf24)}.sr-monthbar{align-items:center}.sr-monthlabel{font-size:15px;font-weight:700;color:var(--text-100)}.sr-cell{min-height:58px;cursor:pointer}.sr-cell.is-sel{border-color:rgba(45,212,191,.7);background:rgba(45,212,191,.1)}.sr-cell{min-height:118px;padding:6px;align-items:stretch;text-align:left;gap:4px}@media (min-width:900px){.sr-cell{aspect-ratio:1/1;min-height:0}}.sr-cell .staffcal-num{align-self:flex-start;font-size:13px}.sr-cell .sr-asnrow{flex-direction:column;align-items:stretch;gap:3px}.sr-cell .sr-asn,.sr-cell .staffcal-dot{font-size:10px;padding:3px 5px;text-align:left}.sr-cell .staffcal-dots{flex-direction:column;align-items:stretch;gap:3px}.sr-cell .sr-lowcover{align-self:flex-start;font-size:10px}.sr-cell.is-today .staffcal-num{color:var(--teal-400,#2dd4bf)}@media (max-width:600px){.sr-cell{min-height:84px;padding:3px;gap:2px}.sr-cell .sr-asn,.sr-cell .staffcal-dot{font-size:9px;padding:2px 3px}.sr-cell .staffcal-num{font-size:11px}}.sr-asnrow{display:flex;flex-wrap:wrap;justify-content:center;gap:2px}.sr-asn{font-size:9px;line-height:1;padding:2px 3px;border-radius:4px;background:rgba(96,165,250,.25);color:var(--text-100);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-lowcover{font-size:9px;color:var(--amber-400,#fbbf24)}.sr-early{background:rgba(248,113,113,.25);color:var(--red-400,#f87171)}.sr-auto{background:rgba(251,191,36,.22);color:var(--amber-400,#fbbf24)}.sr-cell.has-early{border-color:rgba(248,113,113,.7);background:rgba(248,113,113,.12)}.sr-earlyhead{color:var(--red-400,#f87171)}.sr-earlylist{display:flex;flex-direction:column;gap:6px}.sr-earlyrow{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:1px solid rgba(248,113,113,.4);border-radius:8px;background:rgba(248,113,113,.1);color:var(--text-100);font:inherit;text-align:left;cursor:pointer}.sr-earlyrow:hover{background:rgba(248,113,113,.18)}.sr-earlyname{font-weight:600;min-width:72px}.sr-earlydate{color:var(--text-300)}.sr-earlyhrs{margin-left:auto;color:var(--red-400,#f87171);font-weight:600;white-space:nowrap}.sr-early.is-excused,.staffcal-dot.is-excused{background:var(--glass-soft,rgba(255,255,255,.06));color:var(--text-400)}.sr-earlyrow.is-excused{border-color:var(--card-border);background:var(--glass-soft,rgba(255,255,255,.04))}.sr-earlyrow.is-excused:hover{background:var(--glass-soft-hover,rgba(255,255,255,.08))}.sr-earlyrow.is-excused .sr-earlyhrs{color:var(--text-400)}.sr-earlymain{display:flex;align-items:center;gap:10px;flex:1 1;min-width:0;background:none;border:none;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.sr-exctag{margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9px;font-weight:700;background:rgba(67,217,163,.15);color:var(--success-400,#43d9a3);text-transform:uppercase;letter-spacing:.03em}.sr-excbtn{flex-shrink:0}.staffmy-exctag{margin-left:6px;padding:1px 6px;border-radius:999px;font-size:9px;font-weight:700;background:rgba(67,217,163,.15);color:var(--success-400,#43d9a3);text-transform:uppercase;letter-spacing:.03em}.sr-offtag,.sr-shorttag{margin-left:6px;font-size:10px;padding:1px 5px;border-radius:4px;background:rgba(255,255,255,.14);color:var(--text-300)}.sr-shorttag{background:rgba(251,191,36,.25);color:var(--amber-400,#fbbf24)}