:root{--bg:#f4f5f7;--surface:#fff;--raise:#fafbfc;--ink:#16191d;--ink-2:#464d55;--muted:#6b737c;--line:#e2e5e9;--line-2:#cdd2d8;--clean:#1a7f5a;--clean-bg:#e4f4ec;--clean-line:#9dd4bc;--dirty:#b23a2e;--dirty-bg:#fbe6e3;--dirty-line:#eda99f;--accent:#1d4ed8;--accent-bg:#e6edfd;--radius:8px;--font:"Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root{--bg:#14171a;--surface:#1c2024;--raise:#23282d;--ink:#eceef0;--ink-2:#c3c8cd;--muted:#949ba2;--line:#2e343a;--line-2:#414951;--clean:#5ac89b;--clean-bg:#143026;--clean-line:#2f6b53;--dirty:#f08579;--dirty-bg:#34211e;--dirty-line:#7a4038;--accent:#7aa2f7;--accent-bg:#1e2740}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:15px;line-height:1.5}a{color:var(--accent);text-decoration:none}.shell{max-width:1180px;margin:0 auto;padding:0 20px 64px}header.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:20;position:sticky;top:0}.topbar-inner{scrollbar-width:none;align-items:center;gap:4px;max-width:1180px;height:58px;margin:0 auto;padding:0 20px;display:flex;overflow-x:auto}.topbar-inner::-webkit-scrollbar{display:none}.topbar-inner>*{flex:none}.brand{margin-right:14px}.navlink{white-space:nowrap}.brand{letter-spacing:-.01em;margin-right:4px;font-size:17px;font-weight:700}.brand span{color:var(--muted);margin-left:8px;font-size:13px;font-weight:500}.navlink{color:var(--ink-2);border-radius:6px;padding:6px 11px;font-size:14.5px;font-weight:500}.navlink:hover{background:var(--raise)}.navlink.active{background:var(--accent-bg);color:var(--accent)}.spacer{flex:1}h1{letter-spacing:-.015em;margin:26px 0 4px;font-size:23px;font-weight:700}.subtitle{color:var(--muted);margin:0 0 22px;font-size:14px}h2{margin:0 0 12px;font-size:16px;font-weight:650}.summary{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:1px;margin-bottom:22px;display:grid;overflow:hidden}.stat{background:var(--surface);padding:13px 16px}.stat .v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:21px;font-weight:700;line-height:1.15;display:block}.stat .k{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:3px;font-size:11px;display:block}.stat .v.clean{color:var(--clean)}.stat .v.dirty{color:var(--dirty)}.st-vacant{--s:var(--clean);--s-bg:var(--clean-bg);--s-line:var(--clean-line)}.st-unclean{--s:#5d6670;--s-bg:#eceef1;--s-line:#c3c9d0}.st-arriving{--s:#1d4ed8;--s-bg:#e6edfd;--s-line:#a8c0f6}.st-occupied{--s:#c2392b;--s-bg:#fbe7e4;--s-line:#eca79c}.st-due{--s:#b06a00;--s-bg:#fdf0da;--s-line:#f0cb8a}.st-overdue{--s:#7d1d1d;--s-bg:#f3d9d7;--s-line:#d09590}.st-ooo{--s:#4a5560;--s-bg:#e3e7ea;--s-line:#b6bfc7}@media (prefers-color-scheme:dark){.st-unclean{--s:#a9b2bb;--s-bg:#272c31;--s-line:#444c55}.st-arriving{--s:#8fb0f8;--s-bg:#1a2338;--s-line:#33436b}.st-occupied{--s:#f28a7c;--s-bg:#341f1c;--s-line:#6e3a33}.st-due{--s:#e8b45f;--s-bg:#322612;--s-line:#66502a}.st-overdue{--s:#f0a09a;--s-bg:#3b1f1e;--s-line:#7a3b38}.st-ooo{--s:#9ca7b1;--s-bg:#262b30;--s-line:#414a53}}.counters{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.counter{border:1px solid var(--s-line,var(--line-2));background:var(--s-bg,var(--surface));color:var(--s,var(--ink-2));cursor:pointer;border-radius:99px;align-items:baseline;gap:7px;padding:5px 13px 5px 11px;font-family:inherit;font-size:13px;font-weight:550;line-height:1.4;display:flex}.counter:hover{filter:brightness(.97)}.counter[aria-pressed=true]{box-shadow:inset 0 0 0 1.5px var(--s,var(--accent))}.counter b{font-variant-numeric:tabular-nums;font-size:15.5px;font-weight:750}.counter.plain{--s:var(--ink-2);--s-bg:var(--surface);--s-line:var(--line-2)}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 16px;margin:0 0 18px;font-size:12.5px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{background:var(--s);border:1px solid var(--s-line);border-radius:3px;width:11px;height:11px;display:inline-block}.floor{margin-bottom:22px}.floor-head{border-bottom:1px solid var(--line);align-items:baseline;gap:10px;margin-bottom:9px;padding-bottom:6px;display:flex}.floor-name{font-size:14.5px;font-weight:650}.floor-meta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.tiles{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;display:grid}.tile{border:1px solid var(--s-line);border-left:4px solid var(--s);border-radius:var(--radius);background:var(--s-bg);cursor:pointer;text-align:left;width:100%;min-height:118px;font:inherit;color:var(--ink);flex-direction:column;padding:0;transition:transform 60ms,box-shadow .12s;display:flex;position:relative;overflow:hidden}.tile:hover{transform:translateY(-1px);box-shadow:0 3px 12px #0000001a}.tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tile-top{align-items:flex-start;gap:6px;padding:9px 10px 0;display:flex}.tile .code{letter-spacing:-.015em;font-variant-numeric:tabular-nums;font-size:19px;font-weight:750;line-height:1.1}.tile .kind{color:var(--muted);letter-spacing:.04em;font-size:10.5px;font-weight:600}.tile .grow{flex:1}.chip{color:#6b4a04;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;background:#fde68a;border:1px solid #edc65a;border-radius:5px;padding:2px 6px;font-size:10.5px;font-weight:700;line-height:1.25}.chip em{opacity:.85;font-style:normal;font-weight:600;display:block}@media (prefers-color-scheme:dark){.chip{color:#f3d792;background:#4a3a10;border-color:#6d571c}}.tile-body{flex:1;min-width:0;padding:5px 10px 0}.tile .state{text-transform:uppercase;letter-spacing:.05em;color:var(--s);font-size:10.5px;font-weight:700;display:block}.tile .guests{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.tile .price{color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:3px;font-size:12px}.tile .tags{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.tag{background:var(--accent-bg);color:var(--accent);white-space:nowrap;border-radius:3px;padding:1px 6px;font-size:10px;font-weight:650}.tag.src{color:var(--ink-2);background:#0000000f}@media (prefers-color-scheme:dark){.tag.src{background:#ffffff17}}.tile .banner{background:var(--s);color:#fff;text-overflow:ellipsis;white-space:nowrap;margin-top:auto;padding:4px 10px 5px;font-size:10.5px;font-weight:600;overflow:hidden}.tile .spacer-b{height:7px;margin-top:auto}.backdrop{z-index:50;background:#0c0f1480;justify-content:center;align-items:flex-start;padding:36px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;max-width:560px;box-shadow:0 12px 40px #00000038}.dialog.wide{max-width:720px}.dialog-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:15px 18px;display:flex}.dialog-head h2{margin:0;font-size:16.5px}.dialog-head .sub{color:var(--muted);font-size:13px}.dialog-body{padding:16px 18px}.dialog-foot{border-top:1px solid var(--line);background:var(--raise);border-radius:0 0 10px 10px;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:13px 18px;display:flex}.dialog-foot .left{margin-right:auto}.grid2{grid-template-columns:1fr 1fr;gap:11px;display:grid}.grid2 .field input,.grid2 .field select{width:100%}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%}.guest-row{grid-template-columns:1.4fr 1fr 1fr auto;align-items:center;gap:7px;margin-bottom:7px;display:grid}.kv{grid-template-columns:max-content 1fr;gap:5px 14px;margin-bottom:14px;font-size:13.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:550}.money{font-variant-numeric:tabular-nums;font-weight:700}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.tabs button{color:var(--ink-2);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:7px 12px;font-weight:550}.tabs button.on{color:var(--accent);border-bottom-color:var(--accent)}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:9px;margin-bottom:18px;display:flex}.field{flex-direction:column;gap:4px;display:flex}.field label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11.5px;font-weight:600}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-2);border-radius:6px;min-width:0;padding:7px 10px;font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}input.num{text-align:right;font-variant-numeric:tabular-nums}button{font:inherit;cursor:pointer;background:var(--surface);color:var(--ink);border:1px solid var(--line-2);border-radius:6px;padding:7px 13px;font-size:14px;font-weight:550}button:hover:not(:disabled){background:var(--raise)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}button.danger{color:var(--dirty);border-color:var(--dirty-line)}button.sm{padding:4px 9px;font-size:13px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:20px;padding:16px 18px}.panel h2{margin-bottom:14px}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:720px;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:9px 13px}thead th{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);background:var(--raise);white-space:nowrap;font-size:11px;font-weight:600}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--raise)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.code{font-variant-numeric:tabular-nums;font-weight:650}.row-actions{justify-content:flex-end;gap:6px;display:flex}.badge{white-space:nowrap;border-radius:99px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-block}.badge.clean{background:var(--clean-bg);color:var(--clean)}.badge.dirty{background:var(--dirty-bg);color:var(--dirty)}.badge.off{background:var(--raise);color:var(--muted)}.badge.state{background:var(--s-bg);color:var(--s);border:1px solid var(--s-line)}.alert{border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.alert.error{background:var(--dirty-bg);color:var(--dirty);border:1px solid var(--dirty-line)}.alert.ok{background:var(--clean-bg);color:var(--clean);border:1px solid var(--clean-line)}.empty{text-align:center;color:var(--muted);padding:40px 20px;font-size:14.5px}.login-wrap{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;max-width:350px;padding:30px 30px 26px}.login-card h1{margin:0 0 3px;font-size:21px}.login-card .subtitle{margin-bottom:20px}.login-card .field{margin-bottom:13px}.login-card input{width:100%}.login-card button{width:100%;margin-top:6px}.hint{color:var(--muted);text-align:center;margin-top:15px;font-size:12.5px}.navlink{position:relative}.nav-badge{background:var(--dirty);color:#fff;text-align:center;font-variant-numeric:tabular-nums;vertical-align:1px;border-radius:99px;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;display:inline-block}@media (prefers-color-scheme:dark){.nav-badge{color:#1c2024}}.tab-count{background:var(--raise);border:1px solid var(--line-2);color:var(--ink-2);font-variant-numeric:tabular-nums;border-radius:99px;margin-left:6px;padding:0 6px;font-size:11.5px;font-weight:650;display:inline-block}.tabs button.on .tab-count{background:var(--accent-bg);color:var(--accent);border-color:#0000}.req-code{font-family:var(--mono);letter-spacing:.04em;font-weight:650}.req-name{font-weight:600}.req-age{color:var(--muted);white-space:nowrap;font-size:13px}.req-chips{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.req-note{white-space:pre-wrap;font-weight:450}.req-sub{color:var(--muted);font-size:12.5px;font-weight:450}.req-help{color:var(--muted);margin:10px 0;font-size:13px}.req-row{cursor:pointer}.req-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.req-row td:first-child{border-left:3px solid #0000}.req-row.needs-room td:first-child{border-left-color:#b06a00}.req-row.needs-room{background:#f0cb8a24}.req-row.no-show td:first-child{border-left-color:var(--dirty)}.req-row.no-show{background:var(--dirty-bg)}@media (prefers-color-scheme:dark){.req-row.needs-room td:first-child{border-left-color:#e8b45f}.req-row.needs-room{background:#e8b45f14}}.room-pick{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:4px;display:grid}.room-opt{text-align:left;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 11px;display:flex}.room-opt b{font-variant-numeric:tabular-nums;font-size:16px}.room-opt span{color:var(--muted);font-size:12px;font-weight:500}.room-opt em{color:var(--dirty);font-style:normal}.room-opt.on{border-color:var(--accent);background:var(--accent-bg);box-shadow:inset 0 0 0 1px var(--accent)}.room-opt.on b{color:var(--accent)}.req-strip{color:#7a4a00;background:#fdf0da;border:1px solid #f0cb8a;border-radius:6px;flex-wrap:wrap;align-items:baseline;gap:7px;margin-bottom:16px;padding:10px 14px;font-size:14px;display:flex}.req-strip b{font-variant-numeric:tabular-nums;font-size:15.5px}.req-strip-go{margin-left:auto;font-weight:600}.req-strip:hover{filter:brightness(.98)}@media (prefers-color-scheme:dark){.req-strip{color:#e8b45f;background:#322612;border-color:#66502a}}@media (max-width:560px){.nav-badge{margin-left:4px}.req-table{min-width:0}.req-table thead{display:none}.req-table,.req-table tbody,.req-table tr,.req-table td{width:100%;display:block}.req-table tr{border-bottom:1px solid var(--line);padding:10px 12px}.req-table tbody tr:last-child{border-bottom:0}.req-table td{text-align:left;border:0;padding:2px 0}.req-table td.num{text-align:left}.req-row td:first-child{border-left:0}.req-row.needs-room,.req-row.no-show{box-shadow:inset 3px 0 #b06a00}.req-row.no-show{box-shadow:inset 3px 0 0 var(--dirty)}.req-table td[data-label]:before{content:attr(data-label);min-width:88px;color:var(--muted);font-size:12px;display:inline-block}.req-table td[data-label=Khách]:before{display:none}.room-pick{grid-template-columns:1fr 1fr}.topbar-inner{gap:2px;height:54px;padding:0 12px}.brand{margin-right:8px;font-size:15.5px}.brand span{display:none}.navlink{padding:6px 8px;font-size:13.5px}.shell{padding:0 12px 48px}.summary{grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}.stat{padding:11px 13px}.stat .v{font-size:18px}.tiles{grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:8px}.counters{gap:6px}.counter{padding:4px 10px;font-size:12px}.counter b{font-size:14px}.backdrop{padding:12px 10px}.grid2{grid-template-columns:1fr}.guest-row{grid-template-columns:1fr 1fr}h1{font-size:20px}.toolbar{gap:8px}.field{flex:auto;min-width:0}.field input,.field select{width:100%!important}}.desk-toast{z-index:1000;color:#3d3200;white-space:pre-wrap;background:#fff8c5;border:1px solid #e6d36a;border-radius:8px;width:min(480px,100vw - 32px);padding:12px 40px 12px 14px;font-size:14px;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000002e}.desk-toast b{margin-bottom:4px;display:block}.desk-toast button{background:0 0;border:0;position:absolute;top:8px;right:8px}@media print{.desk-toast{display:none}}
.tile-wrap{min-width:0;display:flex;position:relative}.tile-wrap>.tile{flex:1}.tile .deposit{color:var(--s);white-space:nowrap;font-weight:650}.tile-body.has-more{padding-right:34px}.tile-more{z-index:1;letter-spacing:.02em;border:1px solid var(--line-2);background:var(--surface);width:28px;height:24px;color:var(--ink-2);opacity:0;border-radius:6px;padding:0;font-size:17px;font-weight:700;line-height:1;transition:opacity .12s;position:absolute;top:46px;right:6px}.tile-wrap:hover .tile-more,.tile-more:focus-visible{opacity:1}@media (hover:none),(max-width:560px){.tile-more{opacity:1;width:32px;height:28px}}.counter.type{text-transform:none}.room-menu{z-index:60;background:var(--surface);border:1px solid var(--line-2);border-radius:8px;min-width:220px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);padding:4px 0;position:fixed;overflow-y:auto;box-shadow:0 10px 30px #00000038}.room-menu-head{color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;max-width:300px;margin-bottom:3px;padding:6px 14px 7px;font-size:12px;font-weight:650;overflow:hidden}.room-menu button{text-align:left;background:0 0;border:0;border-radius:0;width:100%;padding:8px 14px;font-size:14px;font-weight:500;display:block}.room-menu button:hover:not(:disabled),.room-menu button:focus-visible{background:var(--accent-bg);color:var(--accent);outline:none}.room-menu button.sep{border-top:1px solid var(--line);margin-top:3px;padding-top:10px}.room-menu button.danger{color:var(--dirty)}@media (hover:none){.room-menu button{padding:11px 16px}}.alert-x{float:right;color:inherit;background:0 0;border:0;margin:-3px -6px 0 10px}button.danger-fill{background:var(--dirty);border-color:var(--dirty);color:#fff}button.danger-fill:hover:not(:disabled){background:var(--dirty);filter:brightness(1.08)}@media (prefers-color-scheme:dark){button.danger-fill{color:#1c2024}}a.btn{border:1px solid var(--line-2);background:var(--surface);color:var(--ink);border-radius:6px;padding:7px 13px;font-size:14px;font-weight:550;line-height:1.5;display:inline-block}a.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}a.btn:hover{filter:brightness(1.06)}a.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.move-price{align-items:center;gap:7px;font-size:13.5px;display:flex}.move-price input{width:auto}.dialog.wide:has(.inv){max-width:920px}.print-only{display:none}.inv-head{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 16px;margin:0 0 14px;font-size:13.5px;display:grid}.inv-head>div{align-items:baseline;gap:8px;min-width:0;display:flex}.inv-head dt{color:var(--muted);white-space:nowrap}.inv-head dd{overflow-wrap:anywhere;margin:0;font-weight:600}.inv-cols{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:16px;display:grid}.inv-main,.inv-side{flex-direction:column;gap:12px;min-width:0;display:flex}.inv-sec{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);padding:11px 13px}.inv-sec-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.inv-sec-head h3{margin:0;font-size:14px;font-weight:650}.inv-sec-head .money{font-size:15px}.inv-sec-head .grow{flex:1}.inv-sec-head label{color:var(--muted);font-size:12.5px}.inv-sec-head select{padding:4px 8px;font-size:13.5px}.inv-mode-pick{align-items:center;gap:8px;display:inline-flex}.inv-note{color:var(--ink-2);margin:0 0 6px;font-size:13px}.inv-warn{color:#b06a00;font-weight:550}@media (prefers-color-scheme:dark){.inv-warn{color:#e8b45f}}.inv-lines,.inv-svc{margin:0;padding:0;font-size:13.5px;list-style:none}.inv-lines li{justify-content:space-between;gap:12px;padding:3px 0;display:flex}.inv-lines li .money{font-weight:550}.inv-lines li.sum{border-top:1px dashed var(--line-2);color:var(--muted);margin-top:3px;padding-top:5px}.inv-override{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.inv-override label{color:var(--muted);font-size:12.5px}.inv-override input{width:150px;padding:5px 9px}.inv-svc li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto 100px 30px;align-items:center;gap:8px;padding:5px 0;display:grid}.inv-svc li:last-child{border-bottom:0}.inv-svc .svc-name{overflow-wrap:anywhere;min-width:0}.inv-svc .svc-name em{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-style:normal;display:block}.inv-svc .svc-qty{align-items:center;gap:6px;display:inline-flex}.inv-svc .svc-qty b{text-align:center;font-variant-numeric:tabular-nums;min-width:22px}.inv-svc .svc-qty button{width:28px;padding:2px 0}.inv-svc .money{text-align:right}.inv-svc li.billed{color:var(--muted);grid-template-columns:minmax(0,1fr) auto 100px auto}.inv-svc li.billed .money{font-weight:500;text-decoration:line-through}.inv-svc .svc-tag{white-space:nowrap;font-size:11px;font-weight:600}.inv-svc.pick li{grid-template-columns:minmax(0,1fr) auto}.inv-svc.pick label{cursor:pointer;align-items:center;gap:9px;display:flex}.inv-svc.pick input{width:auto}.inv-add{grid-template-columns:minmax(0,1fr) 110px 60px auto;align-items:end;gap:7px;margin-top:10px;display:grid}.inv-add .field input{width:100%}.inv-adj{grid-template-columns:1fr 1fr;gap:9px;display:grid}.inv-adj .field input,.inv-adj .field select,.inv-adj textarea{width:100%}.inv-adj textarea{resize:vertical;font-size:14px}.inv-totals{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:8px 13px;font-size:13.5px}.inv-totals>div{justify-content:space-between;gap:10px;padding:3px 0;display:flex}.inv-totals dt{color:var(--muted)}.inv-totals dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.inv-totals .sum{border-top:1px solid var(--line);margin-top:3px;padding-top:6px}.inv-totals .sum dt{color:var(--ink);font-weight:600}.inv-totals .due{border-top:2px solid var(--ink);align-items:baseline;margin-top:5px;padding-top:8px}.inv-totals .due dt{color:var(--ink);font-size:14.5px;font-weight:700}.inv-totals .due dd{letter-spacing:-.02em;color:var(--accent);font-size:23px;font-weight:750}.inv-totals .due.refund dd{color:var(--dirty)}.inv-big{font-size:20px}.inv-confirm{color:var(--ink);font-size:14px}.inv-confirm b{font-variant-numeric:tabular-nums}.inv-hint{color:var(--muted);font-size:13px}@media (max-width:760px){.inv-cols{grid-template-columns:1fr}}@media (max-width:560px){.inv-head{grid-template-columns:1fr 1fr}.inv-head>div{flex-direction:column;gap:0}.inv-svc li{grid-template-columns:minmax(0,1fr) auto 30px}.inv-svc li .money{text-align:left;grid-area:2/1/auto/2;font-size:12.5px}.inv-svc li.billed{grid-template-columns:minmax(0,1fr) auto}.inv-add{grid-template-columns:1fr 1fr 64px}.inv-add .svc-pick,.inv-add>button{grid-column:1/-1}.inv-confirm{flex-basis:100%}}@media print{:where(body:has(.print-area)){background:#fff;overflow:visible!important}:where(body:has(.print-area)) *{visibility:hidden}.print-area,.print-area *{visibility:visible}.backdrop{background:0 0;padding:0;position:absolute;inset:0;overflow:visible}.dialog{box-shadow:none;border:0;max-width:none!important}.print-area{color:#000;width:100%;position:absolute;top:0;left:0}.print-area .print-only{margin:0 0 10px;font-size:18px;display:block}.print-area .no-print{display:none!important}.print-area .inv-cols{grid-template-columns:1fr}.print-area .inv-sec,.print-area .inv-totals{background:0 0;border-color:#999}.print-area input,.print-area select,.print-area textarea{color:#000;appearance:none;background:0 0;border:0;padding:0}.print-area .inv-totals .due dd{color:#000}}.chart-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.chart-bar a.btn{white-space:nowrap;padding:6px 12px;font-size:13.5px}.chart-bar a.btn:hover{text-decoration:none}.chart-tools .chart-q{flex:240px}.chart-tools .chart-sort{flex:0 210px}.chart-tools .chart-zoom-field{flex:0 180px}.chart-zoom-field input[type=range]{height:36px;accent-color:var(--accent);padding:0}.chart-map{min-width:0}.floor-head.has-menu{cursor:context-menu}.floor-more{color:var(--muted);background:0 0;border-color:#0000;margin-left:auto;padding:0 9px;font-size:15px;font-weight:700;line-height:1.4}.floor-head:hover .floor-more,.floor-more:focus-visible{border-color:var(--line-2);color:var(--ink-2)}.tag.upc{color:#7a5600;background:#fff3c4}.tag.upc b{font-weight:750}@media (prefers-color-scheme:dark){.tag.upc{color:#f3d792;background:#3a2f10}}.tag.mark{color:#6a1b9a;background:#efe3fb}@media (prefers-color-scheme:dark){.tag.mark{color:#d5b1f5;background:#2f2140}}.code-book{font-family:var(--mono);letter-spacing:.04em}.room-menu{max-width:min(340px,100vw - 16px)}.room-menu button.strong{font-weight:700}.room-menu button.back{color:var(--muted);font-size:13px}.room-menu-sub{border-top:1px solid var(--line);margin-top:3px;padding-top:3px}.room-menu-sec{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:6px 14px 3px;font-size:11px;font-weight:700}.room-menu-note{color:var(--muted);padding:2px 14px 6px;font-size:12.5px}.room-menu-note.err{color:var(--dirty)}.room-menu button.later{font-variant-numeric:tabular-nums;font-size:13px;line-height:1.35}.room-menu button.later b{font-family:var(--mono);margin-right:4px;font-weight:650}.room-menu button.later span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.mv-modes{border:1px solid var(--line);border-radius:var(--radius);margin:0 0 14px;padding:8px 12px 10px}.mv-modes legend{color:var(--muted);padding:0 4px;font-size:12.5px}.mv-mode{cursor:pointer;align-items:flex-start;gap:9px;padding:5px 0;font-size:14px;font-weight:550;display:flex}.mv-mode input{width:auto;margin-top:4px}.mv-mode span{color:var(--accent)}.mv-mode.reprice span{color:var(--dirty)}.mv-mode.off{cursor:default;opacity:.55}.mv-hint{color:var(--muted);margin:4px 0 0;font-size:13px}.dialog.wide:has(.gco-table){max-width:1040px}.gco-search{gap:10px;margin-bottom:12px;display:flex}.gco-search .field{flex:0 320px}.gco-pay{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-bg);margin:0 0 12px;padding:11px 12px}.gco-help{color:var(--muted);margin:0;font-size:12.5px}.gco-pay .full{grid-column:1/-1}.gco-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.gco-table{border-collapse:collapse;width:100%;min-width:760px;font-size:13.5px}.gco-table th,.gco-table td{border-bottom:1px solid var(--line);text-align:left;padding:7px 8px}.gco-table th{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:600}.gco-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.gco-table td.money{font-weight:700}.gco-chk{width:44px;text-align:center!important}.gco-chk input{width:auto;margin:0}.gco-group td{color:#fff;background:#7b1fa2;border-bottom-color:#6a1b9a;font-weight:700}.gco-group td.num{color:#fff}.gco-table tr.on td{background:var(--accent-bg)}.gco-sub{color:var(--muted);font-size:11.5px;font-weight:450}.gco-table tfoot td{background:var(--raise);border-top:1px solid var(--line-2);font-weight:700}.gco-results{min-width:520px}.gco-results tr.fail td{background:var(--dirty-bg)}.gco-err{color:var(--dirty);font-weight:550}.gco-status{color:var(--muted);font-size:12.5px}.gco-confirm{font-size:14px}.gco-pf-title{letter-spacing:.04em;margin:0 0 2px;font-size:18px}.gco-pf-sub{color:var(--muted);margin:0 0 12px;font-size:12.5px}.gco-pf-group{margin-bottom:14px}.gco-pf-group h3{margin:0 0 6px;font-size:14px}.gco-pf-totals{max-width:340px;margin-left:auto}@media (max-width:560px){.chart-bar{gap:6px}.chart-bar>*{text-align:center;flex:calc(50% - 6px)}.chart-bar a.btn{white-space:normal;padding:6px 8px;font-size:13px}.chart-tools .chart-q{flex-basis:100%}.chart-tools .chart-sort,.chart-tools .chart-zoom-field{flex:calc(50% - 8px)}.floor-more{border-color:var(--line-2)}.gco-search .field{flex:auto}.gco-pf-totals{max-width:none}}@media print{.print-area .gco-wrap{overflow:visible}.print-area .gco-table{min-width:0;font-size:12px}.print-area .gco-table th,.print-area .gco-table td{border-color:#999;padding:4px 5px}.print-area .gco-table tfoot td{background:0 0}.print-area .gco-pf-sub{color:#333}}
:is(.dialog.wide:has(.pricing-editor),.dialog.wide:has(.gc)){max-width:1120px}.pricing-editor{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));align-items:start;gap:14px;display:grid}.pe-col{flex-direction:column;gap:14px;min-width:0;display:flex}.pe-block{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);padding:11px 12px}.pe-block-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pe-block-head h3{flex:auto;margin:0;font-size:13.5px;font-weight:650}.pe-tools{gap:5px;display:flex}.pe-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pe-rows{flex-direction:column;gap:5px;display:flex}.pe-row{grid-template-columns:46px 72px minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.pe-row select{padding:6px}.pe-row input{width:100%;padding:6px 9px}.pe-row.dupe select{border-color:var(--dirty);color:var(--dirty)}.pe-prefix{color:var(--muted);font-size:12.5px;font-weight:550}.pe-x{color:var(--muted);padding:3px 8px}.pe-empty{color:var(--muted);padding:4px 0;font-size:13px}.pe-note{color:var(--dirty);margin-top:7px;font-size:12.5px;font-weight:550}.pe-note.muted{color:var(--muted);font-weight:450}.pe-warn{color:var(--dirty);margin-top:5px;font-size:12.5px}.pe-hint{color:var(--muted);align-self:center;font-size:12px}.pe-quick{border:1px dashed var(--line-2);background:var(--surface);border-radius:6px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:7px;margin-bottom:9px;padding:9px;display:grid}.pe-quick input{width:100%;padding:6px 8px}.pe-quick .field label{font-size:10.5px}.pe-quick button{grid-column:1/3}.pe-quick .pe-hint{grid-column:3/-1}.pe-link{color:var(--accent);text-underline-offset:2px;background:0 0;border:0;padding:6px 0 0;font-size:12.5px;font-weight:550;text-decoration:underline}.pe-link:hover:not(:disabled){filter:brightness(1.15);background:0 0}.bk-guest{margin-bottom:7px}.guest-row.bk-guest-row{grid-template-columns:1.4fr 1fr 1fr auto auto;margin-bottom:0}.gcard-wrap{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--raise);border-radius:6px;margin:7px 0 10px;padding:11px 12px}.gcard-has{border-color:var(--accent);color:var(--accent)}.gcard input[type=date]{min-height:36px}.gc{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}.gc-full{grid-column:1/-1}.gc-main,.gc-side{flex-direction:column;gap:14px;min-width:0;display:flex}.gc-section{border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:12px 13px}.gc-section h3{margin:0 0 10px;font-size:13.5px;font-weight:650}.gc-section h3.gc-sub{margin:14px 0 8px}.gc .alert{margin-bottom:0}.gc-inline{gap:6px;display:flex}.gc-inline input{flex:1;min-width:0}.gc-help{color:var(--muted);margin:8px 0 0;font-size:12.5px}.gc-table-wrap{overflow-x:auto}.gc table{min-width:0;font-size:13.5px}.gc th,.gc td{padding:7px 8px}.gc tfoot td{border-top:1px solid var(--line-2);font-variant-numeric:tabular-nums;background:#fdf6dc;font-weight:700}@media (prefers-color-scheme:dark){.gc tfoot td{background:#2f2a17}}.gc-type{cursor:pointer}.gc-type.has td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.gc-type.open{background:var(--accent-bg)}.gc-caret{width:14px;color:var(--muted);display:inline-block}.gc-type b{font-variant-numeric:tabular-nums;white-space:nowrap}.gc-type-name{color:var(--muted);padding-left:14px;font-size:11.5px;font-weight:450;display:block}.gc-reg .gc-type-name{padding-left:0}.gc-price-btn{font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap;background:0 0;border:0;padding:2px 0;font-size:13.5px;font-weight:550}.gc-price-btn:hover:not(:disabled){color:var(--accent);background:0 0}.gc input.gc-price{width:110px;padding:4px 7px}.gc input.gc-count{width:58px;padding:4px 6px}.gc-vacant{color:var(--clean);font-weight:650}.gc-booked{color:var(--dirty)}.gc-pick-row td{background:var(--raise)}.gc-pick-row:hover{background:0 0}.gc-pick{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;margin-bottom:8px;display:grid}.gc-room{cursor:pointer;border:1px solid var(--line-2);background:var(--surface);border-radius:6px;align-items:center;gap:6px;padding:5px 8px;font-size:13px;display:flex}.gc-room input{width:auto;margin:0}.gc-room em{color:var(--dirty);font-size:10.5px;font-style:normal}.gc-room.on{border-color:var(--accent);background:var(--accent-bg)}.gc-room.on b{color:var(--accent)}.gc-lead{background:var(--accent-bg);color:var(--accent);vertical-align:1px;border-radius:3px;margin-left:6px;padding:1px 5px;font-size:10px;font-weight:650}.gc-due td{background:var(--raise);font-weight:600}@media (max-width:860px){.gc{grid-template-columns:1fr}.gc-side{order:-1}.gc>.alert{order:-2}}.rt-off td{color:var(--muted)}.rt-policy{color:var(--ink-2);font-size:13px}.rt-help{color:var(--muted);margin:12px 0 0;font-size:13px}.rt-basics{grid-template-columns:140px minmax(0,1fr) 130px 100px;gap:10px;margin-bottom:14px;display:grid}.rt-h3{margin:0 0 10px;font-size:14px;font-weight:650}.gl-more{color:var(--muted);margin-top:1px;font-size:12px}.gl-editing{background:var(--accent-bg)}.gl-edit-row td{background:var(--raise);padding:12px 14px}.gl-edit-row:hover{background:0 0}@media (max-width:560px){.pe-grid{grid-template-columns:1fr}.pe-quick{grid-template-columns:1fr 1fr}.pe-quick button,.pe-quick .pe-hint{grid-column:auto}.guest-row.bk-guest-row{grid-template-columns:1fr 1fr}.guest-row.bk-guest-row>input:first-child{grid-column:1/-1}.gc-inline select{flex:none;width:auto!important}.gc .gc-types th,.gc .gc-types td{padding:6px 4px}.gc-price-btn{font-size:12.5px}.gc-type-name{padding-left:0}.gc-caret{display:none}.rt-basics{grid-template-columns:1fr 1fr}.rt-basics .rt-wide{grid-column:1/-1}.gc-section{padding:10px}.gc input.gc-count{width:48px}.gc-pick{grid-template-columns:repeat(3,minmax(0,1fr))}.rt-table{min-width:0}.rt-table thead{display:none}.rt-table,.rt-table tbody,.rt-table tr,.rt-table td{width:100%;display:block}.rt-table tr{border-bottom:1px solid var(--line);padding:10px 12px}.rt-table tbody tr:last-child{border-bottom:0}.rt-table td,.rt-table td.num{text-align:left;border:0;padding:2px 0}.rt-table td[data-label]:before{content:attr(data-label);min-width:112px;color:var(--muted);font-size:12px;display:inline-block}.rt-table .row-actions{justify-content:flex-start;margin-top:6px}.gc .gc-types th:nth-child(3),.gc .gc-types td:nth-child(3):not([colspan]){display:none}.gc input.gc-price{width:92px}}.st-form{flex-direction:column;gap:14px;display:flex}.seg{border:1px solid var(--line-2);border-radius:6px;align-self:flex-start;display:inline-flex;overflow:hidden}.seg button{background:var(--surface);border:0;border-radius:0;padding:7px 16px}.seg button+button{border-left:1px solid var(--line-2)}.seg button.on{background:var(--accent);color:#fff}@media (prefers-color-scheme:dark){.seg button.on{color:#1c2024}}.st-check{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.st-check input{width:auto;margin-top:4px}.st-check em{color:var(--muted);font-size:12.5px;font-style:normal;display:block}.st-form textarea{resize:vertical;font-size:14px}.er-badge{align-items:center;min-height:36px;display:flex}.type-badge{background:var(--accent);color:#fff;letter-spacing:.03em;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}@media (prefers-color-scheme:dark){.type-badge{color:#1c2024}}.grid2>.full{grid-column:1/-1}.grid2 textarea{resize:vertical;width:100%;font-size:14px}.bk-others{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);margin-top:16px;padding:10px 12px}.bk-others h2{margin:0 0 6px;font-size:13.5px}.bk-others ul{margin:0;padding:0;font-size:13px;list-style:none}.bk-others li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:baseline;gap:4px 10px;padding:4px 0;display:grid}.bk-others li:last-child{border-bottom:0}.bk-others li b{font-family:var(--mono);font-weight:650}.bk-others-who{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.bk-others em{color:var(--muted);font-size:12px;font-style:normal}.bk-others li.clash em{color:var(--dirty);font-weight:700}.bk-others li.clash{box-shadow:inset 3px 0 0 var(--dirty);padding-left:7px}.gc-window{color:var(--muted);margin-left:8px;font-size:12px;font-weight:550}.gc-dropped{color:var(--dirty)}@media (max-width:560px){.bk-others li{grid-template-columns:auto minmax(0,1fr) auto}.bk-others-who{white-space:normal;order:1;grid-column:1/-1}}
.rep-head{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;display:flex}.rep-head>div:first-child{flex:320px;min-width:0}.rep-actions{gap:8px;margin:0 0 22px;display:flex}.rep-filter-note{color:var(--ink-2)}.rep-filters{padding:14px 16px 4px}.rep-presets{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.rep-presets button.on{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.rep-toolbar{margin-bottom:10px}.rep-q{flex:220px}.rep-totals{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin-bottom:12px;display:grid;overflow:hidden}.rep-total{background:var(--surface);flex-direction:column;gap:2px;padding:12px 15px;display:flex}.rep-total .k,.rep-split-item .k{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:11px;font-weight:600}.rep-total .v{letter-spacing:-.015em;font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.rep-revenue{background:var(--accent-bg)}.rep-revenue .k,.rep-revenue .v{color:var(--accent)}.rep-split{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px;padding:12px 15px}.rep-split h2{margin:0 0 8px;font-size:14px}.rep-split-sub{color:var(--muted);font-size:12.5px;font-weight:500}.rep-split-grid{flex-wrap:wrap;gap:8px 28px;display:flex}.rep-split-item{flex-direction:column;display:flex}.rep-split-item .v{font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.rep-split-item.muted .v{color:var(--ink-2);font-weight:600}.rep-limit{color:#7a4a00;background:#fdf0da;border:1px solid #f0cb8a}@media (prefers-color-scheme:dark){.rep-limit{color:#e8b45f;background:#322612;border-color:#66502a}}.rep-table-wrap{max-width:100%}.rep-table{min-width:1360px;font-size:13.5px}.rep-table th,.rep-table td{white-space:nowrap;padding:8px 10px}.rep-table td.rep-guest{white-space:normal;min-width:150px;max-width:240px}.rep-party{color:var(--muted);font-size:12px;display:block}.rep-time{font-variant-numeric:tabular-nums;color:var(--ink-2)}.rep-row{cursor:pointer}.rep-kind{vertical-align:1px;margin-left:6px}.rep-refund{color:var(--dirty)}.rep-table tfoot td{background:var(--raise);border-top:2px solid var(--line-2);white-space:nowrap;border-bottom:0;font-weight:700}@media (max-width:560px){.rep-actions{width:100%;margin-bottom:12px}.rep-actions button{flex:1}.rep-totals{grid-template-columns:1fr 1fr}.rep-revenue{grid-column:1/-1}.rep-total .v{font-size:16.5px}.rep-split-grid{grid-template-columns:1fr 1fr;gap:8px 14px;display:grid}}.svc-form{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.svc-form .field{flex:150px}.svc-form .svc-name{flex:2 220px}.svc-table{min-width:640px}.svc-table td input{width:100%}.svc-table td input.svc-order{width:64px}.svc-off td{color:var(--muted)}@media (max-width:560px){.svc-form button{width:100%}}.inv-bar{justify-content:space-between;gap:8px;max-width:440px;margin:22px auto 14px;display:flex}.inv-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:440px;margin:0 auto 40px;padding:22px 22px 18px;font-size:14px;line-height:1.45}.inv-head{text-align:center;margin-bottom:14px}.inv-hotel{font-size:15px;font-weight:700}.inv-title{letter-spacing:.06em;margin:6px 0 2px;font-size:20px}.inv-no{color:var(--ink-2);font-size:13.5px}.inv-no b{font-family:var(--mono);letter-spacing:.04em;color:var(--ink)}.inv-kv{border-bottom:1px dashed var(--line-2);grid-template-columns:max-content 1fr;gap:3px 12px;margin:0 0 12px;padding-bottom:10px;display:grid}.inv-kv dt{color:var(--muted)}.inv-kv dd{text-align:right;margin:0;font-weight:600}.inv-block{border-bottom:1px dashed var(--line-2);padding:8px 0 10px}.inv-block h2{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 6px;font-size:11.5px}.inv-sheet table{width:100%;min-width:0;font-size:13px}.inv-sheet th,.inv-sheet td{vertical-align:top;border:0;padding:3px 0}.inv-sheet th+th,.inv-sheet td+td{padding-left:8px}.inv-sheet thead th{letter-spacing:.05em;background:0 0;font-size:10.5px}.inv-sheet tbody tr:hover{background:0 0}.inv-note{color:var(--ink-2);margin:4px 0;font-size:12.5px;font-style:italic}.inv-row{justify-content:space-between;gap:12px;padding:2px 0;display:flex}.inv-row .num{font-variant-numeric:tabular-nums;text-align:right}.inv-row.sub{margin-top:4px;font-weight:600}.inv-sum{border-bottom:0}.inv-row.total{border-top:1px solid var(--line-2);margin-top:4px;padding-top:6px;font-size:15px;font-weight:700}.inv-row.due{font-size:16.5px;font-weight:750}.inv-remark{white-space:pre-wrap;margin:8px 0;font-size:13px}.inv-foot{border-top:1px dashed var(--line-2);color:var(--ink-2);text-align:center;margin-top:12px;padding-top:10px;font-size:12.5px}.inv-thanks{color:var(--ink);margin-top:8px;font-weight:600}@media (max-width:560px){.inv-sheet{padding:16px 14px}.inv-bar{margin-top:14px}}@page report{size:A4 landscape;margin:10mm}@page invoice{margin:8mm}@media print{.topbar,.no-print{display:none!important}html,body{background:#fff!important}.rep-page,.inv-page{--surface:#fff;--raise:#f2f2f2;--ink:#000;--ink-2:#222;--muted:#444;--line:#bbb;--line-2:#999;--accent:#000;--accent-bg:#eee;--dirty:#000;color:#000;max-width:none;padding:0}.rep-page{page:report}.rep-page h1{margin-top:0;font-size:16pt}.rep-page .subtitle{color:#000;margin-bottom:8pt}.rep-totals,.rep-split{break-inside:avoid;margin-bottom:8pt}.rep-total{padding:5pt 8pt}.rep-total .v{font-size:11pt}.rep-table-wrap{border:0;overflow:visible}.rep-table{min-width:0;font-size:8pt}.rep-table th,.rep-table td{padding:3pt 4pt}.rep-table td.rep-guest{min-width:0}.rep-table thead{display:table-header-group}.rep-table tr{break-inside:avoid}.rep-table a{color:#000}.inv-page{page:invoice}.inv-sheet{border:0;border-radius:0;width:100%;max-width:110mm;margin:0 auto;padding:0;font-size:10.5pt}}@page invoice-a5x2{size:A4 landscape;margin:6mm}@page invoice-a4{size:A4 portrait;margin:12mm}@media print{.inv-page .inv-sheet{zoom:var(--print-scale,1);box-sizing:border-box;padding-right:2mm}.inv-page.paper-80MM .inv-sheet{max-width:72mm;font-size:9.5pt}.inv-page.paper-A4{page:invoice-a4}.inv-page.paper-A4 .inv-sheet{max-width:none;font-size:11pt}.inv-page.paper-A5X2{page:invoice-a5x2}.inv-page.paper-A5X2 .inv-copies{align-items:flex-start;gap:12mm;display:flex}.inv-page.paper-A5X2 .inv-copy{flex:1 1 0;display:block}.inv-page.paper-A5X2 .inv-sheet{max-width:none;font-size:10pt}}
.cal-page{--cal-in:#a51d16;--cal-in-ink:#fff;--cal-bk:#f7c9bf;--cal-bk-line:#de6b55;--cal-bk-ink:#7a1d12;--cal-now:#e0201b;--cal-occ:#c2392b;--cal-free:#1a7f5a;max-width:1600px}@media (prefers-color-scheme:dark){.cal-page{--cal-in:#b3352c;--cal-in-ink:#fff;--cal-bk:#4a2620;--cal-bk-line:#b8604f;--cal-bk-ink:#f6c2b7;--cal-now:#ff5a52;--cal-occ:#f28a7c;--cal-free:#5ac89b}}.cal-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.cal-title h1{margin-bottom:4px}.cal-title button{margin-top:22px}.cal-toolbar{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:10px;display:flex}.cal-range{align-items:center;gap:6px;display:flex}.cal-range input{width:150px}.cal-range button{padding:6px 11px;font-size:16px;line-height:1.1}.cal-check{color:var(--ink-2);cursor:pointer;align-items:center;gap:7px;font-size:14px;display:inline-flex}.cal-check input{width:auto;margin:0}.cal-legend{color:var(--muted);flex-wrap:wrap;gap:4px 16px;margin-bottom:12px;font-size:12.5px;display:flex}.cal-legend span{align-items:center;gap:6px;display:inline-flex}.cal-legend i{border-radius:3px;width:18px;height:10px;display:inline-block}.cal-legend i.in{background:var(--cal-in)}.cal-legend i.bk{background:var(--cal-bk);border:1px solid var(--cal-bk-line)}.cal-legend i.now{background:var(--cal-now);border-radius:0;width:2px;height:14px}.cal-legend b.occ{color:var(--cal-occ)}.cal-legend b.free{color:var(--cal-free)}.cal-scroll{--col:62px;--room-w:104px;--row-h:34px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overscroll-behavior:contain;min-height:240px;max-height:calc(100vh - 210px);overflow:auto}.cal{width:calc(var(--room-w) + var(--n) * var(--col));font-size:13px;position:relative}.cal-head{z-index:6;background:var(--surface);border-bottom:1px solid var(--line-2);display:flex;position:sticky;top:0}.cal-corner{z-index:7;width:var(--room-w);background:var(--surface);border-right:1px solid var(--line-2);color:var(--ink-2);flex:none;justify-content:center;align-items:center;font-weight:650;display:flex;position:sticky;left:0}.cal-days{display:flex;position:relative}.cal-day{width:var(--col);text-align:center;border-right:1px solid var(--line);font-variant-numeric:tabular-nums;flex:none;padding:4px 3px 5px;line-height:1.25}.cal-dm{color:var(--accent);font-weight:650}.cal-wd{color:var(--accent);font-size:11.5px}.cal-day.sun .cal-dm,.cal-day.sun .cal-wd{color:var(--cal-occ)}.cal-day.today{background:var(--accent-bg)}.cal-occ{color:var(--cal-occ);margin-top:4px;font-weight:700}.cal-pct{background:var(--raise);border:1px solid var(--line);border-radius:3px;height:16px;margin:2px 0;position:relative;overflow:hidden}.cal-pct i{opacity:.75;background:#7dd87d;position:absolute;top:0;bottom:0;left:0}.cal-pct span{color:var(--ink);font-size:11px;font-weight:600;position:relative}.cal-free{color:var(--cal-free);font-size:16px;font-weight:750}.cal-now-mark{pointer-events:none;border-left:5px solid #0000;border-right:5px solid #0000;border-top:7px solid var(--cal-now);width:0;height:0;position:absolute;top:0;transform:translate(-5px)}.cal-body{position:relative}.cal-row{height:var(--row-h);border-bottom:1px solid var(--line);display:flex}.cal-room{z-index:3;width:var(--room-w);background:var(--surface);border-right:1px solid var(--line-2);font-variant-numeric:tabular-nums;flex:none;justify-content:center;align-items:center;gap:5px;font-weight:650;display:flex;position:sticky;left:0}.cal-track{width:calc(var(--n) * var(--col));display:flex;position:relative}.cal-cell{width:var(--col);border-right:1px solid var(--line);flex:none;height:100%}.cal-row:not(.cal-type):not(.ooo) .cal-cell{cursor:cell}.cal-row:not(.cal-type):not(.ooo) .cal-cell:hover{background:var(--accent-bg)}.cal-row.ooo .cal-track{background:repeating-linear-gradient(135deg, transparent 0 6px, var(--raise) 6px 12px)}.cal-row.ooo .cal-room{color:var(--muted)}.cal-ooo-tag{color:var(--muted);border:1px solid var(--line-2);border-radius:3px;padding:0 3px;font-size:10px;font-weight:600}.cal-type,.cal-type .cal-room{background:var(--raise)}button.cal-type-name{border:0;border-right:1px solid var(--line-2);text-transform:uppercase;letter-spacing:.02em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;border-radius:0;justify-content:flex-start;padding:0 8px;font-size:13px;font-weight:700;overflow:hidden}button.cal-type-name:hover:not(:disabled){background:var(--line)}.cal-fold{color:var(--muted);font-size:14px;font-weight:400}.cal-type-free{color:var(--cal-free);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-weight:650;display:flex}.cal-type-free.none{color:var(--cal-occ)}button.cal-bar{z-index:1;min-width:6px;font-size:11.5px;font-weight:600;line-height:calc(var(--row-h) - 8px);text-align:left;white-space:nowrap;text-overflow:ellipsis;background:var(--cal-in);color:var(--cal-in-ink);border:0;border-radius:4px 13px 13px 4px;margin-left:1px;padding:0 7px;position:absolute;top:4px;bottom:4px;overflow:hidden}button.cal-bar.bk{background:var(--cal-bk);color:var(--cal-bk-ink);box-shadow:inset 0 0 0 1px var(--cal-bk-line)}button.cal-bar:hover:not(:disabled){filter:brightness(1.08);background:var(--cal-in)}button.cal-bar.bk:hover:not(:disabled){background:var(--cal-bk)}button.cal-bar.cut-l{border-top-left-radius:0;border-bottom-left-radius:0;padding-left:12px}button.cal-bar.cut-l:before{content:"◂";font-size:10px;position:absolute;left:2px}button.cal-bar.cut-r{border-top-right-radius:0;border-bottom-right-radius:0}button.cal-bar:focus-visible{outline:2px solid var(--accent);outline-offset:1px;z-index:2}.cal-now{z-index:2;background:var(--cal-now);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}@media (max-width:560px){.cal-scroll{--col:46px;--room-w:58px;--row-h:32px;max-height:calc(100vh - 170px)}.cal{font-size:12px}.cal-day{padding:3px 1px 4px}.cal-pct span{font-size:10px}.cal-free{font-size:14px}button.cal-type-name{padding:0 5px;font-size:11.5px}button.cal-bar{padding:0 4px;font-size:10.5px}.cal-toolbar{gap:8px}.cal-range{flex:100%}.cal-range input{flex:1 1 0;width:auto;padding:6px;font-size:13px}.cal-title button{margin-top:18px}}.bk-page{max-width:1600px}.bk-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.bk-actions{gap:8px;margin-top:26px;display:flex}.bk-filters{flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:13px 16px;display:flex}.bk-range{align-items:center;gap:6px;display:flex}.bk-range input[type=date]{width:150px}.bk-mark input{width:110px}.bk-search{flex:320px}.bk-search .bk-range select{flex:none;width:auto}.bk-search .bk-range input{flex:auto}.bk-table{min-width:1500px;font-size:13px}.bk-table th,.bk-table td{padding:7px 9px}.bk-table th.bk-check,.bk-table td.bk-check{width:34px;padding-right:0}.bk-table input[type=checkbox]{cursor:pointer;width:16px;height:16px;margin:0}.bk-row{cursor:pointer}.bk-row.on,.bk-row.on:hover{background:var(--accent-bg)}.bk-row.failed td:first-child{box-shadow:inset 3px 0 0 var(--dirty)}.bk-row.done td:first-child{box-shadow:inset 3px 0 0 var(--clean)}.bk-code{font-family:var(--mono);letter-spacing:.03em;white-space:nowrap;font-weight:650}.bk-guest{min-width:160px;font-weight:600}.bk-time{white-space:nowrap;font-variant-numeric:tabular-nums}.bk-note{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.bk-none{text-align:center;color:var(--muted);padding:22px}.bk-res{margin-left:5px;font-weight:700}.bk-res.ok{color:var(--clean)}.bk-res.fail{color:var(--dirty)}.bk-print{white-space:nowrap;font-weight:600}.bk-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;display:flex}.bk-bulk,.bk-pager{align-items:center;gap:6px;display:flex}.bk-count,.bk-pageno{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:13px}.bk-count{margin-right:6px}.bk-confirm{border-color:var(--dirty-line)}.bk-confirm p{margin:0 0 12px}.bk-confirm-actions{justify-content:flex-end;gap:8px;display:flex}.bk-results ul{margin:6px 0 0;padding-left:20px}.bk-results li.ok{color:var(--clean)}.bk-results li.fail{color:var(--dirty)}.bk-help{color:var(--muted);font-size:12.5px}@media (max-width:560px){.bk-actions{margin-top:0}.bk-filters .field{flex:45%}.bk-filters .bk-dates,.bk-filters .bk-search{flex:100%}.bk-range input[type=date]{flex:1 1 0;width:auto!important}.bk-search .bk-range select{width:auto!important}.bk-foot{flex-direction:column;align-items:stretch}.bk-pager{justify-content:flex-end}}.bkc-bar{justify-content:space-between;gap:8px;max-width:560px;margin:22px auto 14px;display:flex}.bkc-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:560px;margin:0 auto 40px;padding:26px 28px 20px;font-size:14px;line-height:1.45}.bkc-head{text-align:center;border-bottom:2px solid var(--ink);margin-bottom:16px;padding-bottom:12px}.bkc-hotel{font-size:15px;font-weight:700}.bkc-title{letter-spacing:.06em;margin:8px 0 0;font-size:21px}.bkc-sub{letter-spacing:.14em;color:var(--ink-2);font-size:12.5px;font-weight:600}.bkc-code{margin-top:8px;font-size:14px}.bkc-code b{font-family:var(--mono);letter-spacing:.06em;font-size:16px}.bkc-status{color:var(--dirty);margin-top:4px;font-size:13px;font-weight:650}.bkc-kv{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0 0 14px;display:grid}.bkc-kv dt{color:var(--muted)}.bkc-kv dt i{opacity:.8;margin-left:3px;font-size:11.5px;font-style:italic}.bkc-kv dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.bkc-guest{display:block}.bkc-note{white-space:pre-wrap;font-weight:500}.bkc-foot{border-top:1px dashed var(--line-2);text-align:center;padding-top:12px;font-size:13px}.bkc-hours{font-size:14px;font-weight:700}.bkc-hours-en{color:var(--ink-2)}.bkc-thanks{margin-top:10px;font-weight:600}@media (max-width:560px){.bkc-sheet{padding:18px 14px}.bkc-kv{gap:5px 10px}}@page bookingconfirm{margin:12mm}@media print{body:has(.bkc-page) :is(header,nav,aside){display:none!important}.bkc-page{page:bookingconfirm;--surface:#fff;--raise:#f2f2f2;--ink:#000;--ink-2:#222;--muted:#444;--line:#bbb;--line-2:#888;--dirty:#000;color:#000;max-width:none;margin:0;padding:0}.bkc-sheet{border:0;border-radius:0;width:100%;max-width:140mm;margin:0 auto;padding:0;font-size:10.5pt}.bkc-title{font-size:16pt}.bk-page .bk-filters,.bk-page .bk-foot,.bk-page .bk-help,.cal-page .cal-toolbar{display:none}}
:root{--top-h:52px;--side-w:236px;--side-rail:56px}.app-top .topbar-inner{max-width:none;height:var(--top-h);flex-wrap:nowrap;gap:10px;padding:0 16px;overflow:visible}.app-top .brand{color:var(--ink)}.app-top .brand:hover{color:var(--accent)}.top-user{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:13.5px;font-weight:600;overflow:hidden}.side-burger{padding:4px 10px;font-size:18px;line-height:1.2;display:none}body:has(.side){padding-left:var(--side-w)}body:has(.side) .app-top{margin-left:calc(-1 * var(--side-w))}.side{top:var(--top-h);z-index:15;width:var(--side-w);overscroll-behavior:contain;background:var(--surface);border-right:1px solid var(--line);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;overflow-y:auto}.side-head{justify-content:flex-end;padding:6px 8px 2px;display:flex}.side-collapse,.side-close{color:var(--muted);background:0 0;border:0;padding:2px 8px;font-size:15px;line-height:1.3}.side-collapse:hover:not(:disabled),.side-close:hover:not(:disabled){color:var(--ink);background:var(--raise)}.side-close{display:none}.side-nav{padding:0 8px 24px}.side-group{border-bottom:1px solid var(--line);padding:4px 0}.side-group:last-child{border-bottom:0}.side-group-head{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:8px;font-size:14px;font-weight:650;display:flex}.side-group-head:hover:not(:disabled){background:var(--raise)}.side-group.has-active>.side-group-head{color:var(--accent)}.side-icon{color:var(--ink-2);flex:none;display:inline-flex}.side-group.has-active .side-icon{color:var(--accent)}.side-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.side-caret{color:var(--muted);font-size:11px}.side-dot{background:var(--dirty);border-radius:99px;width:8px;height:8px;display:none}.side-group:not(.open) .side-dot{display:inline-block}.side-items{margin:0 0 4px;padding:0;list-style:none}.side-link{color:var(--ink-2);border-radius:6px;align-items:center;gap:6px;padding:6px 10px 6px 36px;font-size:14px;font-weight:500;display:flex}.side-link:hover{background:var(--raise);color:var(--ink)}.side-link.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.side-link .nav-badge{margin-left:auto}.side-link:focus-visible,.side-group-head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (min-width:861px){html[data-side=collapsed] body:has(.side){padding-left:var(--side-rail)}html[data-side=collapsed] body:has(.side) .app-top{margin-left:calc(-1 * var(--side-rail))}html[data-side=collapsed] .side{width:var(--side-rail)}html[data-side=collapsed] .side-head{justify-content:center}html[data-side=collapsed] .side-nav{padding:0 6px 24px}html[data-side=collapsed] .side-group-head{justify-content:center;padding:10px 0;position:relative}html[data-side=collapsed] .side-label,html[data-side=collapsed] .side-caret,html[data-side=collapsed] .side-items{display:none}html[data-side=collapsed] .side-dot{display:inline-block;position:absolute;top:6px;right:8px}}@media (max-width:860px){body:has(.side){padding-left:0}body:has(.side) .app-top{margin-left:0}.side-burger{display:inline-block}.side{z-index:60;width:min(290px,86vw);box-shadow:none;visibility:hidden;transition:transform .18s;top:0;transform:translate(-100%)}.side.open{visibility:visible;transform:none;box-shadow:0 0 40px #00000047}.side-head{justify-content:flex-end;padding:10px 10px 4px}.side-collapse{display:none}.side-close{display:inline-block}.side-link{padding-top:9px;padding-bottom:9px}.side-scrim{z-index:55;background:#0c0f1473;position:fixed;inset:0}}@media (max-width:560px){.app-top .topbar-inner{gap:6px;padding:0 10px}.top-user{max-width:96px;font-size:12.5px}}@media (prefers-reduced-motion:reduce){.side{transition:none}}@media print{.side,.side-scrim{display:none!important}body:has(.side){padding-left:0!important}body:has(.side) .app-top{margin-left:0!important}}.shell.ls-page{max-width:1680px}.ls-head{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.ls-head>div:first-child{flex:320px;min-width:0}.ls-head>button{margin-bottom:22px}.ls-toolbar{flex-wrap:wrap;align-items:flex-end;gap:9px 12px;margin-bottom:14px;display:flex}.ls-toolbar .spacer{flex:1}.ls-q{flex:0 300px;min-width:200px}.ls-inline{color:var(--ink-2);align-items:center;gap:6px;padding-bottom:8px;font-size:14px;display:inline-flex}.ls-inline input{width:auto}.ls-size{color:var(--ink-2);align-items:center;gap:7px;padding-bottom:2px;font-size:14px;display:inline-flex}.ls-size select{padding:5px 8px}.ls-table{font-size:13.5px}.ls-table th,.ls-table td{padding:8px 10px}.ls-arrivals{min-width:1500px}.ls-departures{min-width:1180px}.ls-floors{min-width:760px}.ls-table td{white-space:nowrap}.ls-table td.ls-guest,.ls-table td.ls-note{white-space:normal;min-width:140px;max-width:260px}.ls-check{width:34px;text-align:center!important}.ls-check input{vertical-align:middle;width:16px;height:16px;margin:0}.ls-center{text-align:center!important}.ls-center input{width:16px;height:16px}.ls-mono{font-family:var(--mono);letter-spacing:.03em;font-size:12.5px}.ls-time{font-variant-numeric:tabular-nums;color:var(--ink-2)}.ls-sub{color:var(--muted);font-size:12px;font-weight:450;display:block}.ls-sub-inline{color:var(--muted);font-size:12px;font-weight:450}.ls-muted{color:var(--muted)}.ls-due{font-weight:650}.ls-actions{flex-wrap:nowrap;justify-content:flex-start;gap:6px;display:flex}.ls-table tbody tr.ls-selected{background:var(--accent-bg)}.ls-table tbody tr.ls-off td{color:var(--muted)}.ls-table td.empty{white-space:normal}.ls-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-top:12px;display:flex}.ls-buttons{flex-wrap:wrap;gap:8px;display:flex}.ls-pager{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-left:auto;display:flex}.ls-count{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:13.5px}.ls-pages{gap:4px;display:inline-flex}.ls-pages button{font-variant-numeric:tabular-nums;min-width:32px}.ls-pages button.on{background:var(--accent);border-color:var(--accent);color:#fff}.ls-results ul{margin:6px 0 0;padding-left:20px}.ls-results li[data-ok=false]{color:var(--dirty)}.ls-results li[data-ok=true]{color:var(--ink)}.ls-results-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.ls-results-head button{background:0 0;border-color:#0000}.ls-confirm{border-color:var(--accent);margin:14px 0 0}.ls-confirm h2{margin-bottom:6px}.ls-confirm p{margin:0 0 12px;font-size:14px}.ls-radios{border:0;flex-wrap:wrap;align-items:center;gap:6px 16px;margin:0;padding:0;display:flex}.ls-radios legend{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px;padding:0;font-size:11.5px;font-weight:600}.ls-radios label{align-items:center;gap:6px;font-size:14px;display:inline-flex}.ls-radios input{width:auto}.ls-add{margin-bottom:16px}.ls-add .ls-toolbar{margin-bottom:0}@media (max-width:560px){.ls-q{flex:100%;min-width:0}.ls-toolbar .spacer{display:none}.ls-foot{flex-direction:column;align-items:stretch}.ls-pager{justify-content:space-between;margin-left:0}.ls-buttons button{flex:auto}.ls-head>button{margin-bottom:12px}}
.cash-actions{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.cash-page .subtitle{line-height:1.6}.cash-range{white-space:normal}.cash-range-text{color:var(--ink);font-weight:600}.cash-link{color:var(--clean);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.cash-link:hover:not(:disabled){background:0 0;text-decoration:underline}.ls-mono .cash-link{color:var(--accent);font-family:var(--mono);letter-spacing:.03em;font-size:12.5px}.cash-btnlink{border:1px solid var(--line-2);color:var(--ink);background:var(--surface);border-radius:6px;padding:4px 9px;font-size:13px;display:inline-block}.cash-btnlink:hover{background:var(--raise)}.cash-presets{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.cash-hint{color:var(--muted);margin:8px 0;font-size:12.5px}.cash-hint-inline{color:var(--muted);font-size:12px}.cash-note{color:var(--muted);max-width:820px;margin:12px 0 0;font-size:12.5px}.cash-chip{background:var(--accent-bg);color:var(--accent);border-radius:99px;align-items:center;gap:6px;margin-bottom:2px;padding:4px 4px 4px 10px;font-size:13.5px;display:inline-flex}.cash-chip button{color:inherit;background:0 0;border:0;border-radius:99px;padding:2px 7px}.cash-form{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px 12px;display:grid}.cash-form>label,.cash-label{color:var(--ink-2);text-align:right;font-size:13.5px}.cash-form>textarea{resize:vertical}.cash-form input,.cash-form select,.cash-form textarea{width:100%;min-width:0}.cash-form .req{color:var(--dirty)}.cash-static{font-variant-numeric:tabular-nums;font-weight:600}.cash-at{align-items:center;gap:8px;min-width:0;display:flex}.cash-at input[type=time]{flex:none;width:7.5em}.cash-at input[type=date]{flex:auto}.cash-at-label{color:var(--ink-2);font-size:13.5px}.cash-check{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:inline-flex;text-align:left!important}.cash-check input{flex:none;height:16px;width:16px!important}.cash-computed{border:1px dashed var(--line-2);text-align:right;font-variant-numeric:tabular-nums;background:var(--raise);border-radius:6px;padding:7px 10px;font-weight:700;display:block}.cash-form-foot{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.cash-voucher-form .tabs{margin-bottom:14px}.cash-voucher-form .alert{margin:12px 0 0}.cash-suggest-wrap{min-width:0;position:relative}.cash-suggest{z-index:5;background:var(--surface);border:1px solid var(--line-2);border-radius:6px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 2px);left:0;right:0;box-shadow:0 6px 18px #0000001f}.cash-suggest button{text-align:left;background:0 0;border:0;width:100%;padding:7px 9px;font-weight:600;display:block}.cash-suggest button:hover:not(:disabled){background:var(--accent-bg);color:var(--accent)}.cash-confirm{margin-bottom:10px;font-size:14px;line-height:1.55}.cash-list{color:var(--ink-2);margin:8px 0 0;padding-left:20px;font-size:13px}.cash-table tfoot td{background:var(--raise);border-top:1px solid var(--line-2);white-space:nowrap;font-weight:700}.cash-receipts{min-width:1180px}.cash-expenses{min-width:1260px}.cash-debts{min-width:1240px}.cash-recv{min-width:980px}.cash-staff{min-width:720px}.cash-neg,.cash-owed{color:var(--dirty)}.cash-owed-sum{color:var(--ink-2);font-size:14px}.cash-owed-sum b{color:var(--dirty);font-variant-numeric:tabular-nums}.cash-kind{font-family:var(--font);letter-spacing:0;margin-left:6px}.cash-kind.k-DEPOSIT{color:#1d4ed8;background:#e6edfd}.cash-kind.k-DEBT_PAYMENT{color:#8a5300;background:#fdf0da}.cash-kind.k-FX{color:#1a7f5a;background:#e4f4ec}.cash-kind.k-INVOICE{color:#464d55;background:#eceef1}.cash-unpaid{background:var(--dirty-bg);color:var(--dirty);font-family:var(--font);letter-spacing:0;margin-left:6px}@media (prefers-color-scheme:dark){.cash-kind.k-DEPOSIT{color:#7aa2f7;background:#1e2740}.cash-kind.k-DEBT_PAYMENT{color:#e8b45f;background:#322612}.cash-kind.k-FX{color:#5ac89b;background:#143026}.cash-kind.k-INVOICE{color:#c3c8cd;background:#23282d}}.cash-bulk select{width:auto}.cash-rowlink{cursor:pointer}.cash-grouphead th{border-bottom:0;padding-bottom:0}.cash-recv th.b-open{color:#9a6700}.cash-recv th.b-new{color:#1d4ed8}.cash-recv th.b-paid{color:#1a7f5a}.cash-recv th.b-close{color:#b23a2e}.cash-recv .b-start{border-left:1px solid var(--line)}.cash-recv .cash-center{text-align:center}.cash-recv td.b-close.money{color:var(--dirty)}@media (prefers-color-scheme:dark){.cash-recv th.b-open{color:#e8b45f}.cash-recv th.b-new{color:#7aa2f7}.cash-recv th.b-paid{color:#5ac89b}.cash-recv th.b-close{color:#f08579}}.cash-staff .c1{color:var(--accent)}.cash-staff .c2{color:var(--clean)}.cash-staff .c3{color:var(--dirty)}.cash-report.shell{max-width:900px}.cash-pnl-wrap{max-width:640px}.cash-pnl{min-width:0}.cash-pnl td:first-child,.cash-pnl th:first-child{width:56px}.cash-pnl td:last-child{white-space:nowrap}.cash-pnl tr.pnl-head td{font-weight:700}.cash-pnl tr.pnl-item td{background:var(--raise);font-size:13.5px}.cash-pnl tr.pnl-item td:nth-child(2){padding-left:26px}.cash-pnl tr.pnl-total td{border-top:2px solid var(--line-2);font-size:16px;font-weight:750}.cash-share{margin-top:20px}.cash-share h2{margin-bottom:2px}.cash-bars{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.cash-bars li{grid-template-columns:minmax(90px,180px) minmax(0,1fr) max-content;align-items:center;gap:10px;font-size:13.5px;display:grid}.cash-bar-name{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cash-bar-track{background:var(--raise);border-radius:4px;height:14px;display:block;overflow:hidden}.cash-bar-fill{background:var(--accent);border-radius:0 4px 4px 0;height:100%;display:block}.cash-bar-val{font-variant-numeric:tabular-nums;color:var(--ink);text-align:right;font-weight:650}.cash-bar-val em{color:var(--muted);margin-left:4px;font-style:normal;font-weight:500}.cash-type-add{gap:8px;margin-bottom:12px;display:flex}.cash-type-add input{flex:1;min-width:0}.cash-types{gap:6px;margin:0;padding:0;list-style:none;display:grid}.cash-types li{align-items:center;gap:6px;display:flex}.cash-types li input{flex:1;min-width:0}.cash-types li.off input{color:var(--muted);text-decoration:line-through}.cash-voucher{font-size:14px}.cash-voucher-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:12px;padding-bottom:8px;display:flex}.cash-voucher-head b{letter-spacing:.06em;margin-right:auto;font-size:17px}.cash-voucher-head span{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:13px}.cash-voucher-kv{margin-bottom:18px}.cash-voucher-kv dd{overflow-wrap:anywhere}.cash-voucher-sign{text-align:center;grid-template-columns:1fr 1fr;gap:12px;font-size:13px;font-weight:600;display:grid}.cash-voucher-sign span{color:var(--muted);margin-bottom:52px;font-size:11.5px;font-weight:400;display:block}.cash-print-area{display:none}@media (max-width:560px){.cash-actions{margin-bottom:12px}.cash-actions button{flex:auto}.cash-form{grid-template-columns:minmax(0,1fr);gap:4px}.cash-form>label,.cash-label{text-align:left;margin-top:6px;font-size:12.5px}.cash-form>span:empty{display:none}.cash-bars li{grid-template-columns:minmax(0,1fr) max-content}.cash-bar-track{grid-area:2/1/auto/-1}.cash-pnl-wrap{max-width:none}}@media print{.cash-page{--surface:#fff;--raise:#f2f2f2;--ink:#000;--ink-2:#222;--muted:#444;--line:#bbb;--line-2:#999;color:#000;max-width:none;padding:0}.cash-page .table-wrap{border:0;overflow:visible}.cash-page table{min-width:0;font-size:9pt}.cash-page h1{margin-top:0}.cash-pnl tr.pnl-item td{font-size:inherit}.cash-page a{color:#000}body:has(.cash-page) .backdrop{display:none!important}html.cash-printing .app-top,html.cash-printing .side,html.cash-printing .backdrop,html.cash-printing main>:not(.cash-print-area){display:none!important}html.cash-printing .cash-print-area{max-width:120mm;margin:0 auto;display:block}}.top-shift{white-space:nowrap;color:var(--ink-2);border:1px solid var(--line-2);border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:13.5px;font-weight:600;display:inline-flex}.top-shift:hover{color:var(--accent);border-color:var(--accent);text-decoration:none}.top-shift.active{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}@media (max-width:560px){.top-shift{padding:4px 8px}.top-shift-text{display:none}}.chart-gear{padding:5px 10px;font-size:17px;line-height:1.2}.qs-since{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:12px;font-size:14px;display:flex}.qs-since input{width:auto;padding:4px 8px}.qs-line{margin:0 0 8px;font-size:15.5px;line-height:1.5}.qs-grid{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;margin:12px 0 8px;display:grid;overflow:hidden}.qs-grid>div{background:var(--surface);padding:9px 12px}.qs-grid dt{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:600}.qs-grid dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:16px;font-weight:700}.qs-grid .qs-net{background:var(--accent-bg);grid-column:span 2}.qs-grid .qs-net dt,.qs-grid .qs-net dd{color:var(--accent)}.qs-foot{color:var(--muted);margin:0;font-size:12.5px}.dialog.wide:has(.rti){max-width:900px}.rti .req,.sh-form .req{color:var(--dirty)}.rti-info{border:1px solid var(--line);border-radius:var(--radius);min-width:0;margin:0 0 14px;padding:10px 14px 12px}.rti-info legend{color:var(--ink-2);padding:0 6px;font-size:12.5px;font-weight:650}.rti-cols{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:4px 24px;display:grid}.rti-col{flex-direction:column;gap:8px;min-width:0;display:flex}.rti-row{grid-template-columns:100px minmax(0,1fr);align-items:center;gap:10px;display:grid}.rti-row>label{color:var(--ink-2);text-align:right;font-size:13.5px}.rti-row input,.rti-row select,.rti-row textarea{width:100%}.rti-row input[readonly]{background:var(--raise);color:var(--ink-2)}.rti-when{align-items:center;gap:6px;min-width:0;display:flex}.rti-when input[type=time]{flex:none;width:96px}.rti-when input[type=date]{flex:auto;min-width:0}.rti-h{color:var(--muted);font-size:13px}.rti-pickrow{gap:6px;min-width:0;display:flex}.rti-pickrow input{flex:auto;min-width:0}.rti-pickrow button{white-space:nowrap;flex:none}.rti-guests{border:1px solid var(--line-2);background:var(--raise);border-radius:6px;margin-left:110px;padding:8px}.rti-guests ul{max-height:200px;margin:6px 0 0;padding:0;list-style:none;overflow-y:auto}.rti-guests li button{text-align:left;background:0 0;border:0;border-radius:4px;flex-direction:column;align-items:flex-start;width:100%;padding:5px 8px;font-weight:450;display:flex}.rti-guests li button:hover{background:var(--accent-bg)}.rti-guests li span{color:var(--muted);font-size:12px}.rti-guest-none{color:var(--muted);padding:6px 4px 0;font-size:13px}.rti-add{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:10px;display:flex}.rti-add .rti-svc{flex:260px}.rti-add .rti-price{flex:0 150px}.rti-add .rti-qty{flex:0 0 70px}.rti-x{color:var(--muted);padding-bottom:8px}.rti-title{text-align:center;color:var(--accent);margin:4px 0 8px;font-size:14px}.rti-table{min-width:540px;font-size:13.5px}.rti-table th,.rti-table td{padding:6px 9px}.rti-table td.rti-name{white-space:normal}.rti-table td.empty{padding:18px 10px}.rti-cell-qty{width:64px;padding:4px 6px}.rti-cell-price{width:110px;padding:4px 6px}.rti-totals{flex-direction:column;gap:6px;max-width:340px;margin:10px 0 0 auto;display:flex}.rti-totals>div{grid-template-columns:1fr 150px;align-items:center;gap:10px;display:grid}.rti-totals dt{text-align:right;color:var(--ink-2);font-size:13.5px}.rti-totals dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.rti-totals dd input{width:100%}.rti-due{border-top:1px solid var(--line);padding-top:6px}.rti-due dt{color:var(--ink);font-weight:650}.rti-due dd{font-size:19px;font-weight:750}@media (max-width:640px){.rti-cols{grid-template-columns:1fr}.rti-row{grid-template-columns:86px minmax(0,1fr);gap:8px}.rti-guests{margin-left:0}.rti-when{flex-wrap:wrap}.rti-when input[type=date]{flex:140px}.rti-h,.rti-x{display:none}.rti-add .rti-svc{flex-basis:100%}.rti-add .rti-price{flex:120px}.rti-totals{max-width:none}.rti-totals>div{grid-template-columns:1fr 140px}}.dialog.wide:has(.vch){max-width:1000px}.vch{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.vch-list{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);min-width:0;padding:10px 12px}.vch-list h3{margin:0 0 8px;font-size:13.5px}.vch-list .empty{padding:20px 8px;font-size:13.5px}.vch-items{max-height:420px;margin:0;padding:0;list-style:none;overflow-y:auto}.vch-items li{border-bottom:1px solid var(--line);padding:7px 0}.vch-items li:last-child{border-bottom:0}.vch-top{align-items:baseline;gap:8px;display:flex}.vch-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.vch-amt{font-variant-numeric:tabular-nums;margin-left:auto}.vch-amt.neg{color:var(--dirty)}.vch-desc{overflow-wrap:anywhere;font-size:13.5px}.vch-meta{color:var(--muted);font-size:12px}.vch-unpaid{color:var(--dirty)}.vch-sum{border-top:1px solid var(--line-2);text-align:right;margin-top:8px;padding-top:8px;font-size:13.5px}@media (max-width:760px){.vch{grid-template-columns:1fr}}.sh-head{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;display:flex}.sh-head>div:first-child{flex:320px;min-width:0}.sh-actions{flex-wrap:wrap;gap:8px;margin:0 0 22px;display:flex}.sh-period b{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:600}.sh-guide{color:#6b4300;border-radius:var(--radius);background:#fdf0da;border:1px solid #f0cb8a;margin-bottom:14px;padding:10px 14px;font-size:14px}.sh-guide-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sh-guide-head button{color:inherit;background:0 0;border-color:#0000}.sh-guide ul{margin:6px 0 0;padding-left:20px}.sh-guide li{margin:2px 0}@media (prefers-color-scheme:dark){.sh-guide{color:#e8b45f;background:#322612;border-color:#66502a}}.sh-methods{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:10px;display:flex}.sh-methods button.on{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.sh-methods-note{color:var(--muted);font-size:12.5px}.sh-table{min-width:640px}.sh-staff th .c1,.sh-staff th span.c1{color:var(--accent)}.sh-staff th .c2{color:var(--clean)}.sh-staff th .c3{color:var(--dirty)}.sh-table tfoot td{background:var(--raise);border-top:1px solid var(--line-2);font-weight:650}.sh-num{font:inherit;font-weight:inherit;color:inherit;font-variant-numeric:tabular-nums;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.sh-num:hover:not(:disabled){color:var(--accent);background:0 0}.sh-current td{white-space:nowrap;vertical-align:top}.sh-current td.num,.sh-current th.num{text-align:center}.sh-hl{background:var(--clean-bg);font-weight:700}.sh-hl .sh-num{color:var(--clean)}.sh-hl-head{color:var(--clean)!important}tbody tr:hover td.sh-hl{background:var(--clean-bg)}.sh-mini{margin:4px auto 0;padding:2px 7px;font-size:12px;display:block}.sh-sub{text-align:center;color:var(--ink-2);margin:18px 0 10px;font-size:15px;font-weight:600}.cash-link.sh-link,.sh-link{font:inherit;color:var(--clean);cursor:pointer;background:0 0;border:0;padding:0 2px;font-weight:600}.sh-link:hover:not(:disabled){background:0 0;text-decoration:underline}.sh-bar{flex-wrap:wrap;gap:8px;margin:10px 0 0;display:flex}.sh-var{font-variant-numeric:tabular-nums;font-weight:650}.sh-var.pos{color:var(--clean)}.sh-var.neg{color:var(--dirty)}.sh-var.zero{color:var(--muted);font-weight:500}.sh-out{color:var(--dirty)}.sh-prev,.sh-detail,.sh-print-detail{margin-top:18px}.sh-prev h3,.sh-detail h3,.sh-print-group h3{margin:0 0 8px;font-size:14.5px}.sh-detail-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.sh-moves{min-width:760px}.sh-print-group{margin-bottom:14px}.sh-history{min-width:1180px}.sh-transfers{min-width:680px}.sh-notes{color:var(--muted);margin-top:20px;font-size:13px}.sh-notes p{margin:0 0 4px}.sh-notes ul{margin:0;padding-left:18px}.sh-form{flex-direction:column;gap:11px;display:flex}.sh-form .alert{margin-bottom:0}.sh-kv{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);margin:0;padding:6px 12px}.sh-kv>div{justify-content:space-between;gap:12px;padding:3px 0;font-size:13.5px;display:flex}.sh-kv dt{color:var(--ink-2)}.sh-kv dd{font-variant-numeric:tabular-nums;text-align:right;margin:0;font-weight:600}.sh-kv-total{border-top:1px solid var(--line-2);margin-top:3px;padding-top:6px!important}.sh-kv-total dd{color:var(--accent);font-size:15px}.sh-variance{margin:-2px 0 0;font-size:14px}.sh-hint{color:var(--muted);margin:0;font-size:12.5px}.sh-page .print-only{display:none}@media (max-width:560px){.sh-actions{margin-bottom:14px}.sh-actions button{padding:6px 9px;font-size:13px}.sh-staff,.sh-current{min-width:0}.sh-staff thead,.sh-current thead{display:none}.sh-staff,.sh-staff tbody,.sh-staff tfoot,.sh-staff tr,.sh-staff td,.sh-current,.sh-current tbody,.sh-current tr,.sh-current td{width:100%;display:block}.sh-staff tr,.sh-current tr{border-bottom:1px solid var(--line);padding:8px 12px}.sh-staff td,.sh-current td,.sh-table tfoot td{white-space:normal;border:0;justify-content:space-between;gap:12px;padding:3px 0;display:flex;text-align:right!important}.sh-staff td[data-label]:before,.sh-current td[data-label]:before{content:attr(data-label);color:var(--muted);text-align:left;font-size:12.5px}.sh-staff td.sh-stt{display:none}.sh-staff td.sh-who,.sh-current td.sh-who{justify-content:flex-start;font-weight:650;text-align:left!important}.sh-current td.sh-hl{background:var(--clean-bg);width:auto;margin:2px -12px;padding:4px 12px}.sh-current td[data-col=to-manager],.sh-current td[data-col=handover]{justify-content:flex-start;align-items:center}.sh-current td[data-col=to-manager] .sh-num,.sh-current td[data-col=handover] b{margin-left:auto}.sh-current td[data-col=to-manager] .sh-mini{margin:0 0 0 8px}.sh-current td[data-col=handover] .ls-sub{margin-left:6px;display:inline}.sh-current td.sh-go{justify-content:flex-end;padding-top:6px}.sh-current td.sh-go button{padding:7px 18px;font-size:14px}}@page shift-a4{size:A4 portrait;margin:10mm}@page shift-a6{size:A6 portrait;margin:5mm}@media print{.sh-page{--surface:#fff;--raise:#f2f2f2;--ink:#000;--ink-2:#222;--muted:#444;--line:#bbb;--line-2:#999;--accent:#000;--accent-bg:#eee;--clean:#000;--clean-bg:#e8e8e8;--dirty:#000;color:#000;page:shift-a4;max-width:none;padding:0}.sh-page[data-print=a6]{page:shift-a6;font-size:7pt}.sh-page .print-only{margin-top:8pt;font-size:8pt;display:block}.sh-page h1{margin:0;font-size:15pt}.sh-page .subtitle{color:#000;margin-bottom:6pt}.sh-page .table-wrap{border:0;overflow:visible}.sh-page table{font-size:8pt;min-width:0!important}.sh-page th,.sh-page td{padding:2pt 4pt}.sh-page thead{display:table-header-group}.sh-page tr{break-inside:avoid}.sh-page .sh-num{text-decoration:none}.sh-page .sh-notes,.sh-page[data-print=stats] .sh-detail{display:none}.sh-page[data-print=a6] h1{font-size:11pt}.sh-page[data-print=a6] table{font-size:6.5pt}.sh-page[data-print=a6] th,.sh-page[data-print=a6] td{white-space:normal;padding:1pt 2pt}.sh-page[data-print=a6] thead th{letter-spacing:0;font-size:5.5pt}.sh-page[data-print=a6] .ls-sub{font-size:5.5pt}}.cash-section{margin:18px 0 8px;font-size:15px}.cash-bymethod tr.cash-method-head td{background:var(--raise);border-top:1px solid var(--line-2);font-weight:700}.cash-bymethod tr.cash-method-total td{color:var(--ink-2);font-weight:650}.cash-dot{background:var(--clean);vertical-align:middle;border-radius:99px;width:8px;height:8px;margin-right:8px;display:inline-block}
.set-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 16px;display:flex}.set-head>div:first-child{min-width:0}.set-actions{gap:8px;margin:0 0 22px;display:flex}.set-group h2{color:var(--accent);margin-bottom:10px;font-size:15px}.set-group{flex-direction:column;gap:8px;display:flex}.set-row{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.set-label{color:var(--ink-2);font-size:14px;font-weight:600}.set-row select,.set-row input{padding:5px 8px}.set-sub{border-left:2px solid var(--line);flex-direction:column;gap:6px;padding-left:14px;display:flex}.set-check{cursor:pointer;align-items:flex-start;gap:8px;font-size:14px;line-height:1.4;display:flex}.set-check input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:2px 0 0}.set-check span{min-width:0}.set-check:has(input:not(:checked)) span{color:var(--muted)}.set-hint{color:var(--muted);font-size:12.5px;font-weight:400}.set-warn{color:var(--dirty)}.set-note{color:var(--muted);margin:2px 0 0;font-size:12.5px}.set-scope{margin:0 0 14px;font-style:italic}.set-dirty{color:#8a5a00;margin:-6px 0 12px;font-size:13px}.set-group .changed,.set-check.changed span{border-radius:4px;box-shadow:0 0 0 2px #f0b43c73}.set-check.changed span{color:var(--ink)}.set-link{color:var(--accent);background:0 0;border:0;padding:2px 4px;font-size:13px;font-weight:500;text-decoration:underline}.set-swatches{flex-wrap:wrap;gap:6px;display:inline-flex}.set-swatch{cursor:pointer;border:1px solid #00000040;border-radius:4px;align-items:center;gap:6px;min-width:104px;padding:3px 10px 3px 4px;font-size:13px;font-weight:600;display:inline-flex;position:relative}.set-swatch input[type=color]{cursor:pointer;background:0 0;border:2px solid #ffffffd9;border-radius:3px;width:22px;height:22px;padding:1px;box-shadow:0 0 0 1px #00000059}.set-fields{flex-wrap:wrap;gap:8px 12px;display:flex}.set-field{flex-direction:column;flex:200px;gap:3px;min-width:0;display:flex}.set-field>span{color:var(--muted);font-size:12px;font-weight:600}.set-field input,.set-field textarea{width:100%}.set-field-full{flex-basis:100%}.set-num{width:120px}.set-foot{justify-content:flex-end;gap:8px;display:flex}@media (prefers-color-scheme:dark){.set-dirty{color:#e8b45f}}.ptpl-controls{flex-direction:column;gap:10px;display:flex}.ptpl-pickers{flex-wrap:wrap;align-items:flex-end;gap:10px 12px;display:flex}.ptpl-pickers .field{flex:220px;min-width:0}.ptpl-pickers select,.ptpl-pickers input{width:100%}.ptpl-slot{gap:6px;display:flex}.ptpl-slot>:first-child{flex:1;min-width:0}.ptpl-work{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.ptpl-preview-wrap h2{margin-bottom:8px}.ptpl-preview{color:#111;border:1px solid var(--line);border-radius:var(--radius);background:#fff;max-height:760px;padding:18px 20px;font-size:13.5px;overflow:auto}@media (max-width:960px){.ptpl-work{grid-template-columns:minmax(0,1fr)}}.ptpl-doc{overflow-wrap:anywhere;line-height:1.45}.ptpl-doc table{border-collapse:collapse;width:auto;min-width:0}.ptpl-doc th,.ptpl-doc td{text-align:inherit;vertical-align:top;border-bottom:0;padding:2px 4px}.ptpl-doc thead th{text-transform:none;letter-spacing:0;font-size:inherit;color:inherit;background:0 0}.ptpl-doc tbody tr:hover{background:0 0}.ptpl-doc h1,.ptpl-doc h2,.ptpl-doc h3{letter-spacing:0;margin:8px 0 4px}.ptpl-doc h1{font-size:22px}.ptpl-doc h2{font-size:18px}.ptpl-doc h3{font-size:15.5px}.ptpl-doc p{margin:4px 0}.ptpl-doc hr{border:0;border-top:1px dashed #999;margin:8px 0}.ptpl-doc img{max-width:100%}.ptpl-sheet{color:var(--ink)}.rte{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface)}.rte-toolbar{border-bottom:1px solid var(--line);background:var(--raise);flex-wrap:wrap;align-items:center;gap:4px 2px;padding:6px 8px;display:flex}.rte-toolbar-2{border-top-left-radius:0;gap:6px}.rte-toolbar:first-child{border-radius:var(--radius) var(--radius) 0 0}.rte-toolbar-2 select{max-width:100%;padding:4px 8px;font-size:13px}.rte-fields{flex:200px}.rte-group{border-right:1px solid var(--line-2);gap:1px;margin-right:4px;padding-right:6px;display:inline-flex}.rte-group:last-child{border-right:0}.rte-btn{min-width:30px;height:30px;color:var(--ink-2);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 6px;font-size:14px;display:inline-flex}.rte-btn:hover:not(:disabled){border-color:var(--line-2);background:var(--surface)}.rte-btn.on{background:var(--accent-bg);color:var(--accent);border-color:var(--accent)}.rte-btn.wide{padding:0 9px;font-size:13px}.rte-pop-anchor{position:relative}.rte-pop{z-index:30;background:var(--surface);border:1px solid var(--line-2);border-radius:6px;flex-wrap:wrap;align-items:flex-end;gap:8px;width:max-content;max-width:min(300px,86vw);padding:10px;display:flex;position:absolute;top:34px;left:0;box-shadow:0 6px 20px #00000026}.rte-pop label{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;display:flex}.rte-pop input{width:70px;padding:4px 6px}.rte-chars{gap:2px;width:280px}.rte-area{color:#111;border-radius:0 0 var(--radius) var(--radius);background:#fff;outline:none;min-height:420px;max-height:760px;padding:14px 16px;font-size:13.5px;overflow:auto}.rte-area:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.rte-area:empty:before{content:attr(data-placeholder);color:#888}.rte-area td,.rte-area th{outline:1px dotted #c5c9cf}.rte-source{border-radius:0 0 var(--radius) var(--radius);width:100%;min-height:420px;font-family:var(--mono);resize:vertical;border:0;padding:12px 14px;font-size:12.5px;line-height:1.5;display:block}.bkc-hotel-line,.inv-hotel-line{color:var(--ink-2);font-size:12.5px}.bkc-footer-text,.inv-footer-text{white-space:pre-wrap;margin-top:6px}.inv-payinfo{white-space:pre-wrap}.ptpl-sheet.inv-sheet,.ptpl-sheet.bkc-sheet{font-size:13.5px}@media (max-width:560px){.set-actions{margin-bottom:14px}.set-sub{padding-left:10px}.set-swatch{min-width:0}.set-row select{max-width:100%}.rte-area,.rte-source{min-height:300px;padding:10px}.rte-group{margin-right:2px;padding-right:3px}.rte-btn{min-width:28px;height:30px;padding:0 4px}.ptpl-preview{padding:12px}}@media print{.ptpl-sheet{color:#000}.ptpl-sheet .ptpl-doc,.ptpl-sheet{background:#fff}}.pr-head-buttons{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.pr-head-buttons button.on{background:var(--accent-bg);color:var(--accent);border-color:var(--accent)}.pr-table{min-width:900px}.pr-table td{vertical-align:top}.pr-table td.pr-cell{white-space:normal;min-width:180px}.pr-table td.pr-name{white-space:normal;min-width:120px;max-width:220px}.pr-icon{min-width:34px;padding:4px 8px;font-size:14px;line-height:1.2}.pr-sort{gap:4px}.ps-list,.ps-list ul{margin:0;padding:0;list-style:none}.ps-list{font-size:13px;line-height:1.6}.ps-list ul{padding-left:8px}.ps-list b{font-variant-numeric:tabular-nums}.ps-title{color:var(--dirty);font-weight:650}.ps-note{color:var(--ink-2)}.ps-none{color:var(--muted);font-size:13px}.pr-basics{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pr-full{grid-column:1/-1}.pr-check{color:var(--ink-2);cursor:pointer;align-items:center;gap:7px;font-size:13.5px;display:inline-flex}.pr-check input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:0}.pr-check:has(input:disabled){cursor:default;color:var(--muted)}.pr-advanced{flex-direction:column;gap:10px;margin-top:8px;display:flex}.pricing-editor textarea{resize:vertical;width:100%;font-size:14px}.pr-paused{color:#7a4a00;background:#fdf0da;border:1px solid #f0cb8a}.pr-pause{padding:4px 0}.sr-table{min-width:860px}.sr-table td:nth-child(3){white-space:normal;min-width:170px}.sr-amounts li{white-space:nowrap}.sr-table td.pr-cell{min-width:150px}.sr-minus{color:var(--dirty)}.sr-form{flex-direction:column;gap:10px;display:flex}.sr-line{flex-wrap:wrap;align-items:flex-end;gap:10px 12px;display:flex}.sr-line>.field{min-width:0}.sr-mode{flex:0 280px}.sr-time{flex:0 0 150px}.sr-form>.pe-link{align-self:flex-start}.sr-kind{flex:220px}.sr-note{flex:280px}.sr-order{flex:0 0 130px}.sr-add{margin-bottom:4px}.sr-hint{color:var(--muted);margin:0;font-size:12.5px}.sr-period{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);padding:10px 12px}.sr-days{flex-wrap:wrap;gap:8px 16px;display:flex}.sr-dates{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.sr-dates li{border:1px solid var(--line-2);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:5px;align-items:center;gap:4px;padding:2px 2px 2px 9px;font-size:13px;display:inline-flex}.sr-h3{border-top:1px solid var(--line);margin:6px 0 0;padding-top:10px;font-size:14px;font-weight:650}.sr-types{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sr-type{border-left:3px solid var(--line-2);border-radius:4px;grid-template-columns:minmax(110px,180px) minmax(0,1fr);align-items:center;gap:6px 10px;padding:5px 8px;display:grid}.sr-type.on{border-left-color:var(--accent);background:var(--accent-bg)}.sr-type-name{text-align:right;overflow-wrap:anywhere;font-size:13.5px;font-weight:600}.sr-type-ctl{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.sr-type-ctl select{width:auto;max-width:100%;padding:6px}.sr-type-ctl .sr-amount{width:130px;padding:6px 9px}.sr-sign{min-width:32px;padding:3px 8px;font-size:15px;font-weight:700}.chart-map.map-colors .tile.st-vacant{--map-c:var(--map-vacant)}.chart-map.map-colors .tile.st-occupied{--map-c:var(--map-occupied)}.chart-map.map-colors .tile.st-unclean{--map-c:var(--map-dirty)}.chart-map.map-colors .tile.st-due{--map-c:var(--map-checkoutToday)}.chart-map.map-colors .tile.st-overdue{--map-c:var(--map-overdue)}.chart-map.map-colors .tile:is(.st-vacant,.st-occupied,.st-unclean,.st-due,.st-overdue){--s:color-mix(in srgb, var(--map-c) 62%, var(--ink));--s-bg:color-mix(in srgb, var(--map-c) 16%, var(--surface));--s-line:color-mix(in srgb, var(--map-c) 48%, var(--surface));border-left-color:var(--map-c)}.chart-map.map-by-mode .tile[data-mode=HOURLY]{--s-bg:color-mix(in srgb, var(--map-hourly) 24%, var(--surface))}.chart-map.map-by-mode .tile[data-mode=OVERNIGHT]{--s-bg:color-mix(in srgb, var(--map-overnight) 20%, var(--surface))}.chart-map.map-by-mode .tile[data-mode=DAILY]{--s-bg:color-mix(in srgb, var(--map-daily) 16%, var(--surface))}.chart-map.map-by-mode .tile[data-mode=MONTHLY]{--s-bg:color-mix(in srgb, var(--map-monthly) 20%, var(--surface))}.tile .tile-due{color:var(--s);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px;font-weight:700}@media (prefers-color-scheme:dark){.pr-paused{color:#e8b45f;background:#322612;border-color:#66502a}}@media (max-width:560px){.pr-head-buttons{margin-bottom:14px}.pr-head-buttons>button{flex:auto}.pr-table,.sr-table,.pr-table td.pr-cell{min-width:0}.pr-table td.pr-cell[data-label]:before{margin-top:4px;display:block}.pr-basics{grid-template-columns:1fr 1fr}.sr-time{flex:calc(50% - 6px)}.sr-type{grid-template-columns:minmax(0,1fr)}.sr-type-name{text-align:left}.sr-type-ctl .sr-amount{flex:100px;width:auto}.pr-table td.pr-name{max-width:none}}.ckc-sign{text-align:center;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;display:grid}.ckc-sign>div{flex-direction:column;gap:2px;min-height:84px;display:flex}.ckc-sign small{color:var(--ink-2)}.pe-check{cursor:pointer;align-items:center;gap:8px;margin-top:10px;font-size:13.5px;display:flex}.pe-check input{width:auto}.map-colors .legend .st-vacant i{background:var(--map-vacant);border-color:var(--map-vacant)}.map-colors .legend .st-occupied i{background:var(--map-occupied);border-color:var(--map-occupied)}.map-colors .legend .st-unclean i{background:var(--map-dirty);border-color:var(--map-dirty)}.map-colors .legend .st-due i{background:var(--map-checkoutToday);border-color:var(--map-checkoutToday)}.map-colors .legend .st-overdue i{background:var(--map-overdue);border-color:var(--map-overdue)}.legend.legend-modes{margin-top:-10px}.legend-modes .lm-hourly i{background:var(--map-hourly);border-color:var(--map-hourly)}.legend-modes .lm-overnight i{background:var(--map-overnight);border-color:var(--map-overnight)}.legend-modes .lm-daily i{background:var(--map-daily);border-color:var(--map-daily)}.legend-modes .lm-monthly i{background:var(--map-monthly);border-color:var(--map-monthly)}
:root{--series-0:#2a78d6;--series-1:#eb6834}@media (prefers-color-scheme:dark){:root{--series-0:#3987e5;--series-1:#d95926}}.bc{position:relative}.bc-legend{color:var(--ink-2);flex-wrap:wrap;gap:4px 16px;margin:0 0 6px;padding:0;font-size:13px;list-style:none;display:flex}.bc-legend li{align-items:center;gap:6px;display:inline-flex}.bc-sw{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.bc-scroll{max-width:100%;overflow:auto hidden}.bc-inner{position:relative}.bc svg{font-family:var(--font);display:block;overflow:visible}.bc-grid{stroke:var(--line);stroke-width:1px}.bc-axis{stroke:var(--line-2);stroke-width:1px}.bc-tick,.bc-label{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.bc-val{fill:var(--ink-2);font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:600}.bc-bar.bc-s0,.bc-sw.bc-s0{fill:var(--series-0);background:var(--series-0)}.bc-bar.bc-s1,.bc-sw.bc-s1{fill:var(--series-1);background:var(--series-1)}.bc-band{fill:var(--raise)}.bc-group.on .bc-label{fill:var(--ink);font-weight:600}.bc-hit{fill:#0000;cursor:default}.bc-tip{pointer-events:none;z-index:2;background:var(--surface);border:1px solid var(--line-2);white-space:nowrap;color:var(--ink);border-radius:6px;flex-direction:column;gap:2px;padding:6px 9px;font-size:12.5px;display:flex;position:absolute;top:8px;transform:translate(10px);box-shadow:0 4px 14px #0000001f}.bc-tip.left{transform:translate(calc(-100% - 10px))}.bc-tip span{font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:inline-flex}.rv-page .tabs{margin-bottom:12px}.rv-chart{min-width:0;margin:14px 0;padding:12px 14px 8px}.rv-chart h2{margin:0 0 8px;font-size:14px}.rv-note{color:var(--muted);margin:8px 0 0;font-size:12.5px}.rv-h2{margin:18px 0 10px;font-size:15px}.rv-checks{flex-wrap:wrap;align-items:center;gap:6px 16px;padding-bottom:8px;display:flex}.rv-checks label{color:var(--ink-2);align-items:center;gap:6px;font-size:14px;display:inline-flex}.rv-checks input{width:auto}.rs-table{min-width:1080px}.rs-label{font-weight:650}.rs-booked{color:#b45309}.rs-of{color:var(--muted);font-weight:450}.rs-occ{min-width:120px}.rs-meter{background:var(--raise);border:1px solid var(--line);vertical-align:-1px;border-radius:3px;width:56px;height:10px;margin-right:8px;display:inline-block;overflow:hidden}.rs-meter i{background:var(--clean);height:100%;display:block}.rs-pct{font-variant-numeric:tabular-nums}.rs-off{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}.rs-extra-col{background:var(--raise)}@media (prefers-color-scheme:dark){.rs-booked{color:#e8b45f}}.rv-periods{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-bottom:16px;display:grid}.rv-period{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:12px 14px}.rv-period header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.rv-period h2{margin:0;font-size:14px}.rv-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.rv-revenue{flex-direction:column;margin:8px 0;display:flex}.rv-revenue .k{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:11px;font-weight:600}.rv-revenue .v{color:var(--accent);font-variant-numeric:tabular-nums;letter-spacing:-.015em;font-size:20px;font-weight:700}.rv-figs{border-top:1px dashed var(--line-2);gap:2px;margin:0;padding-top:8px;display:grid}.rv-figs div{justify-content:space-between;gap:10px;font-size:13px;display:flex}.rv-figs dt{color:var(--ink-2)}.rv-figs dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.rv-sum-form .alert{margin:0 0 10px}.rv-table{min-width:860px}.rv-table tr.rv-zero td{color:var(--muted)}.ar-totals{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.ar-table{min-width:0}.ar-table th[scope=row]{text-align:left;white-space:nowrap;background:var(--raise)}.ar-table td.ar-zero{color:var(--muted)}.il-table{min-width:1240px}.il-kind{font-family:var(--font);letter-spacing:0;margin-left:6px}.il-paid{color:var(--clean);font-weight:600}.il-unpaid{color:var(--dirty);font-weight:600}.il-debt{color:#b45309;font-weight:600}.il-moved{color:var(--muted)}.il-foot-note{color:var(--muted);font-size:12.5px;font-weight:500!important}.il-warn{color:var(--ink-2);font-size:13px}.il-page .ls-foot button.danger:disabled{opacity:.55}@media (prefers-color-scheme:dark){.il-debt{color:#e8b45f}}.inv-voided{max-width:440px;margin:0 auto 14px}.inv-voided b{letter-spacing:.06em}.inv-voided-sub{margin-top:2px;font-size:12.5px;display:block}.xl-panel{text-align:center;padding:22px 18px}.xl-icon{margin:0 auto 8px;display:block}.xl-lead{margin:0 0 16px;font-weight:600}.xl-toolbar{text-align:left;justify-content:center}.xl-notes{text-align:left;max-width:640px;color:var(--ink-2);margin:10px auto 0;font-size:13px}.xl-notes p{margin:0 0 4px}.xl-notes ul{margin:0 0 8px;padding-left:18px}.xl-hint{color:var(--muted)}@media (max-width:560px){.rv-periods{grid-template-columns:1fr}.rv-sum .rep-total:first-child{grid-column:1/-1}.rv-checks{padding-bottom:0}.xl-toolbar .field{flex:140px}.xl-toolbar button{width:100%}}@media print{.rv-chart{break-inside:avoid}.bc-scroll{overflow:visible}.bc-tip{display:none}}
.stk-period{text-align:center;color:var(--ink-2);margin:0 0 12px;font-size:15px;line-height:1.6}.stk-table{min-width:960px}.stk-table th,.stk-table td{padding-left:8px;padding-right:8px}.stk-table th{white-space:nowrap;vertical-align:bottom;line-height:1.35}.stk-table td.ls-note{min-width:80px;max-width:180px}.stk-table .pr-icon{min-width:30px;padding:3px 6px}.stk-table tbody+tbody{border-top:0}.stk-group td{background:var(--raise);color:var(--dirty);padding-top:7px;padding-bottom:7px;font-size:13.5px;font-weight:650}.stk-group:hover{background:0 0}.stk-dot{background:var(--clean);vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.stk-name b{font-weight:650}.stk-tag{cursor:help;margin-left:6px;font-size:11px}.stk-name .badge{margin-left:6px}.stk-cell{justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.stk-icon{border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:14px;line-height:1;display:inline-flex}.stk-icon.stk-in{color:var(--clean);border-color:var(--clean-line);font-size:16px;font-weight:700}.stk-icon:hover:not(:disabled){background:var(--accent-bg)}.stk-closing{font-weight:700}.stk-closing.neg{color:var(--dirty)}.stk-sort button{min-width:28px;padding:2px 6px}.stk-table tfoot td,.stk-sold tfoot td,.stk-history tfoot td{background:var(--raise);border-top:1px solid var(--line-2);border-bottom:0;font-weight:650}.stk-inline{align-items:center;gap:6px;min-width:0;display:flex}.stk-inline>select,.stk-inline>input{flex:auto;min-width:0}.stk-inline>button{flex:none}.stk-unit{color:var(--muted);white-space:nowrap;font-size:13px}.stk-checks{flex-direction:column;gap:6px;display:flex}.stk-recipe{border:1px dashed var(--line-2);border-radius:6px;flex-direction:column;gap:8px;min-width:0;padding:10px;display:flex}.stk-part{grid-template-columns:minmax(0,1fr) 5.5em minmax(0,max-content) auto;align-items:center;gap:6px;display:grid}.stk-part input{width:100%}.stk-recipe>button{align-self:flex-start}.stk-error{margin:12px 0 0}.dialog:has(.stk-history){max-width:980px}.stk-history{min-width:760px}.stk-kind{white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:12px;font-weight:650}.stk-kind.k-IN{background:var(--clean-bg);color:var(--clean)}.stk-kind.k-OUT{background:var(--dirty-bg);color:var(--dirty)}.stk-kind.k-SALE{background:var(--accent-bg);color:var(--accent)}.stk-cats{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.stk-cats li{align-items:center;gap:6px;display:flex}.stk-cats input{flex:auto;min-width:0}.stk-cat-order{gap:2px;display:inline-flex}.stk-cat-order button{padding:2px 6px}.stk-cat-count{color:var(--muted);white-space:nowrap;font-size:12px}.stk-sold{min-width:940px}.stk-sold th,.stk-sold td{padding-left:8px;padding-right:8px}.stk-sold td.stk-svc{white-space:normal;min-width:120px;max-width:240px}.stk-hk{min-width:900px}.stk-day td,.stk-day b{color:var(--dirty)}.stk-detail a,.stk-sold td a{color:var(--accent);font-weight:600}.tile .tile-clean{color:var(--clean);font-variant-numeric:tabular-nums;margin-top:2px;font-size:11.5px}.tile .tile-clean.dirty{color:var(--dirty)}@media (max-width:560px){.stk-page .cash-actions button{flex:auto}.stk-part{grid-template-columns:minmax(0,1fr) 4.5em auto}.stk-part .stk-unit{display:none}.stk-cats li{flex-wrap:wrap}.stk-cats input{flex-basis:140px}}@media print{.stk-page{max-width:none;padding:0}.stk-page .table-wrap{border:0;overflow:visible}.stk-table,.stk-sold,.stk-hk{min-width:0;font-size:11px}.stk-group td{color:#000}}
:root{--note-bg:#fff8c5;--note-ink:#3d3200;--note-line:#e6d36a;--online:#2fa84f}@media (prefers-color-scheme:dark){:root{--note-bg:#3b3612;--note-ink:#f3e9a8;--note-line:#6e6424;--online:#4fd27a}}.pp-menu{display:inline-flex;position:relative}.pp-top-btn{color:var(--ink-2);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:5px 9px;font-size:13.5px;font-weight:600;line-height:1.3;display:inline-flex;position:relative}.pp-top-btn:hover:not(:disabled),.pp-top-btn.on{color:var(--accent);background:var(--accent-bg)}.pp-badge{background:var(--dirty);color:#fff;border:2px solid var(--surface);text-align:center;font-variant-numeric:tabular-nums;border-radius:99px;min-width:17px;height:17px;padding:0 4px;font-size:10.5px;font-weight:700;line-height:13px;position:absolute;top:-3px;right:-4px}@media (prefers-color-scheme:dark){.pp-badge{color:#1c2024}}.pp-user-name{text-overflow:ellipsis;max-width:160px;overflow:hidden}.pp-user-role{color:var(--muted);font-weight:500}.pp-caret{color:var(--muted);font-size:10px}.pp-drop{z-index:30;background:var(--surface);border:1px solid var(--line-2);border-radius:8px;width:340px;max-width:calc(100vw - 16px);padding:0;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 10px 32px #0000002e}.pp-drop .alert{margin:8px 12px}.pp-drop-head,.pp-drop-foot{align-items:center;gap:8px;padding:9px 12px;font-size:13.5px;display:flex}.pp-drop-head{border-bottom:1px solid var(--line)}.pp-drop-foot{border-top:1px solid var(--line);background:var(--raise)}.pp-drop-empty{color:var(--muted);margin:0;padding:14px 12px;font-size:13.5px}.pp-link{color:var(--accent);background:0 0;border:0;padding:0;font-size:13.5px;font-weight:600}.pp-link:hover:not(:disabled){background:0 0;text-decoration:underline}.pp-inbox-list{max-height:min(360px,60vh);margin:0;padding:0;list-style:none;overflow-y:auto}.pp-inbox-item{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;border-radius:0;flex-direction:column;gap:2px;padding:8px 12px;font-size:13.5px;font-weight:400;display:flex}.pp-inbox-item:hover:not(:disabled){background:var(--raise)}.pp-inbox-item.unread{background:var(--accent-bg)}.pp-inbox-meta{align-items:center;gap:6px;width:100%;display:flex}.pp-inbox-meta time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.pp-inbox-body{color:var(--ink-2);-webkit-line-clamp:2;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pp-tag{color:var(--muted);border:1px solid var(--line-2);border-radius:99px;padding:0 6px;font-size:11px;font-weight:600}.pp-user-drop{width:230px}.pp-user-who{border-bottom:1px solid var(--line);flex-direction:column;padding:10px 12px;font-size:13.5px;display:flex}.pp-user-who span{color:var(--muted);font-size:12.5px}.pp-menu-item{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:0;padding:9px 12px;font-size:14px;font-weight:500;display:block}.pp-menu-item:hover:not(:disabled){background:var(--raise);color:var(--accent);text-decoration:none}.pp-form{flex-direction:column;gap:12px;display:flex}.pp-hint{color:var(--muted);font-size:12px}@media (max-width:860px){.pp-user-role,.pp-top-text{display:none}}@media (max-width:560px){.pp-top-btn{padding:5px 6px}.pp-user-name{max-width:72px}.pp-caret{display:none}.pp-drop{top:calc(var(--top-h) + 4px);width:auto;max-width:none;position:fixed;left:8px;right:8px}}.pp-chat{z-index:18;width:300px;height:min(440px, calc(100vh - var(--top-h) - 24px));background:var(--surface);border:1px solid var(--line-2);border-bottom:0;border-radius:10px 10px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;right:16px;box-shadow:0 -4px 28px #00000029}.pp-chat-head{background:var(--accent);color:#fff;border-radius:10px 10px 0 0;align-items:center;gap:6px;padding:8px 10px;font-size:14px;display:flex}@media (prefers-color-scheme:dark){.pp-chat-head{color:#14171a}}.pp-chat-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pp-chat-x{color:inherit;background:0 0;border:0;padding:2px 8px;font-size:15px;line-height:1.2}.pp-chat-x:hover:not(:disabled){background:#ffffff2e}.pp-chat-body{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.pp-chat-body .alert{margin:8px}.pp-chat-empty{color:var(--muted);margin:0;padding:14px 12px;font-size:13.5px}.pp-chat-people{margin:0;padding:4px 0;list-style:none}.pp-chat-person{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:0;align-items:center;gap:9px;padding:7px 12px;font-size:14px;font-weight:500;display:flex}.pp-chat-person:hover:not(:disabled){background:var(--raise)}.pp-chat-person .nav-badge{margin-left:0}.pp-avatar{background:var(--raise);border:1px solid var(--line);width:28px;height:28px;color:var(--ink-2);border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.pp-chat-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.pp-chat-sub{color:var(--muted);text-overflow:ellipsis;font-size:12px;font-weight:400;display:block;overflow:hidden}.pp-dot{background:var(--line-2);vertical-align:middle;border-radius:99px;flex:none;width:9px;height:9px;display:inline-block}.pp-dot.on{background:var(--online);box-shadow:0 0 0 3px color-mix(in srgb, var(--online) 22%, transparent)}.pp-chat-thread{background:var(--bg);flex-direction:column;gap:8px;padding:10px;display:flex}.pp-msg{flex-direction:column;align-self:flex-start;gap:2px;max-width:86%;display:flex}.pp-msg.mine{align-self:flex-end;align-items:flex-end}.pp-msg-from{color:var(--ink-2);font-size:11.5px;font-weight:650}.pp-msg-body{background:var(--surface);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;padding:6px 10px;font-size:14px}.pp-msg.mine .pp-msg-body{background:var(--accent-bg);border-color:#0000}.pp-msg-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.pp-chat-send{border-top:1px solid var(--line);align-items:flex-end;gap:6px;padding:8px;display:flex}.pp-chat-send textarea{resize:none;flex:1;min-width:0;padding:6px 8px;font-size:14px}.pp-chat.min{height:auto}.pp-chat.min .pp-chat-body,.pp-chat.min .pp-chat-send{display:none}@media (min-width:561px){html body:has(.pp-chat:not(.min)){padding-bottom:450px}}@media (max-width:560px){.pp-chat{width:auto;height:min(72vh, calc(100vh - var(--top-h) - 12px));border-left:0;border-right:0;left:0;right:0}}.pp-sticky{z-index:17;width:calc(var(--side-w) - 16px);position:fixed;bottom:12px;left:8px}.pp-sticky-card{background:var(--note-bg);width:100%;max-height:min(260px,40vh);color:var(--note-ink);border:1px solid var(--note-line);border-radius:4px 4px 4px 14px;flex-direction:column;display:flex;box-shadow:0 6px 18px #00000024}.pp-sticky-head{align-items:center;gap:4px;padding:6px 6px 2px 12px;font-size:13px;display:flex}.pp-sticky-head button{color:inherit;background:0 0;border:0;border-radius:4px;padding:1px 7px;font-size:14px;line-height:1.3}.pp-sticky-head button:hover:not(:disabled){background:#00000014}.pp-sticky-body{white-space:pre-wrap;overflow-wrap:anywhere;padding:2px 12px 12px;font-size:14px;line-height:1.45;overflow-y:auto}.pp-sticky-tab{writing-mode:vertical-rl;background:var(--note-bg);color:var(--note-ink);border:1px solid var(--note-line);border-right:0;border-radius:8px 0 0 8px;align-items:center;gap:5px;padding:9px 2px 9px 1px;font-size:11.5px;font-weight:650;line-height:1;display:none;transform:rotate(180deg);box-shadow:0 4px 14px #00000029}.pp-sticky-tab:hover:not(:disabled){background:var(--note-bg);filter:brightness(.97)}.pp-sticky-tab svg{transform:rotate(90deg)}.pp-sticky-tab-text{display:inline}.pp-sticky.folded,html[data-side=collapsed] .pp-sticky{width:auto;bottom:28vh;left:auto;right:auto}.pp-sticky.folded{left:calc(var(--side-w) - 22px)}html[data-side=collapsed] .pp-sticky{left:calc(var(--side-rail) - 22px)}.pp-sticky.folded .pp-sticky-card,html[data-side=collapsed] .pp-sticky:not(.expanded) .pp-sticky-card{display:none}.pp-sticky.folded .pp-sticky-tab,html[data-side=collapsed] .pp-sticky:not(.expanded) .pp-sticky-tab{display:inline-flex}html[data-side=collapsed] .pp-sticky.expanded{left:calc(var(--side-rail) + 8px);width:260px;bottom:12px}@media (min-width:861px){html:not([data-side=collapsed]) body:has(.pp-sticky:not(.folded)) .side-nav{padding-bottom:calc(min(260px,40vh) + 40px)}}@media (max-width:860px){.pp-sticky,.pp-sticky.folded,html[data-side=collapsed] .pp-sticky{width:auto;bottom:28vh;left:0}.pp-sticky .pp-sticky-card{display:none}.pp-sticky .pp-sticky-tab{justify-content:center;width:11px;padding:17px 0;display:inline-flex;overflow:hidden}.pp-sticky .pp-sticky-tab svg{flex:none;width:10px;height:10px}.pp-sticky-tab-text{display:none}.pp-sticky.expanded,html[data-side=collapsed] .pp-sticky.expanded{width:auto;bottom:16px;left:8px;right:8px}.pp-sticky.expanded .pp-sticky-tab{display:none}.pp-sticky.expanded .pp-sticky-card{max-height:50vh;display:flex}}.pp-denied{margin-top:28px}.pp-denied h1{color:var(--dirty);margin-top:0;font-size:19px}.pp-denied p{color:var(--ink-2);margin:0;font-size:14px}.pp-account{max-width:640px}.pp-kv{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:12px 18px;margin:0;font-size:14.5px;display:grid}.pp-kv dt{color:var(--muted);text-align:right}.pp-kv dd{min-width:0;margin:0}.pp-kv .pp-kv-wide{grid-column:1/-1}.pp-stars{letter-spacing:.12em;font-family:var(--mono)}.pp-lang{width:auto;min-width:150px}.pp-password{border:1px solid var(--line);border-radius:var(--radius);background:var(--raise);grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px 12px;padding:14px;display:grid}.pp-password .alert{grid-column:1/-1;margin:0}.pp-buttons{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}@media (max-width:560px){.pp-kv{grid-template-columns:1fr;gap:2px}.pp-kv dt{text-align:left;margin-top:10px;font-size:12.5px}.pp-password{grid-template-columns:1fr}}.pp-users{min-width:900px}.pp-audit-title{color:var(--accent);font-size:15px;font-weight:600}.pp-audit-action{min-width:220px}.pp-audit{min-width:860px}.pp-audit td{vertical-align:top}.pp-audit td.pp-audit-detail{white-space:normal;overflow-wrap:anywhere;min-width:380px;line-height:1.55}.pp-ref{font-weight:700;text-decoration:underline}@media (max-width:560px){.pp-audit-action,.pp-audit{min-width:0}.pp-audit thead{display:none}.pp-audit,.pp-audit tbody,.pp-audit tr,.pp-audit td{width:100%;display:block}.pp-audit tr{border-bottom:1px solid var(--line);padding:9px 12px}.pp-audit td{white-space:normal;border:0;padding:0}.pp-audit td:first-child,.pp-audit td:nth-child(2),.pp-audit td:nth-child(3){width:auto;color:var(--muted);margin-right:8px;font-size:12.5px;display:inline}.pp-audit td:nth-child(3){color:var(--ink);font-weight:650}.pp-audit td.pp-audit-detail{min-width:0;margin-top:3px;display:block}.pp-audit td.empty{display:block}}@media print{.pp-chat,.pp-sticky,.pp-drop,.pp-menu{display:none!important}}
.gp-page h1{margin-bottom:2px}.gp-hotel{color:var(--accent);font-weight:600}.gp-actions{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.gp-hint{color:var(--muted);margin:0;font-size:13px}.gp-table td.gp-name{font-weight:600}.gp-table td.gp-room{font-variant-numeric:tabular-nums;font-weight:650}.gp-inhouse{min-width:1080px}.gp-bydate{min-width:1040px}.gp-lost{min-width:900px}.gp-master{min-width:1260px}.gp-tiers{min-width:640px}.gp-form{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px 14px;margin-bottom:12px;display:grid}.gp-form>label{text-align:right;color:var(--ink-2);font-size:14px}.gp-form input,.gp-form select,.gp-form textarea{width:100%}.gp-form textarea{resize:vertical;font:inherit;font-size:14px}.gp-form .req{color:var(--dirty)}.gp-form-actions{justify-content:flex-end}.gp-presets{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.gp-picker{flex-direction:column;gap:4px;min-width:0;display:flex;position:relative}.gp-linked{color:var(--clean);background:var(--clean-bg);border:1px solid var(--clean-line);border-radius:99px;align-self:flex-start;align-items:center;gap:6px;padding:1px 4px 1px 10px;font-size:12.5px;display:inline-flex}.gp-linked button{color:inherit;background:0 0;border:0;padding:0 6px;font-size:12px}.gp-hits{z-index:5;background:var(--surface);border:1px solid var(--line-2);border-radius:6px;max-height:240px;margin:2px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000024}.gp-hits button{text-align:left;background:0 0;border:0;border-radius:4px;flex-direction:column;align-items:flex-start;gap:0;width:100%;padding:6px 8px;display:flex}.gp-hits button:hover{background:var(--accent-bg)}.gp-hits span{color:var(--muted);font-size:12.5px}.gp-days{align-items:flex-end}.gp-day{align-items:center;gap:4px;display:flex}.gp-day input{width:auto}.gp-toggles{flex-wrap:wrap;gap:4px 16px;display:flex}.gp-table tr.gp-summary td{background:var(--raise);white-space:normal;font-size:14px}.gp-dot{background:var(--clean);border-radius:99px;width:9px;height:9px;margin-right:8px;display:inline-block}.gp-period{color:var(--dirty)}.gp-page .k-checkin{color:var(--clean);font-weight:600}.gp-page .k-inhouse{color:var(--dirty);font-weight:600}.gp-page .k-hourly{color:var(--ink)}.gp-page .k-booking{color:var(--accent);font-weight:600}.gp-page .k-departed{color:var(--ink-2)}.gp-status a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2);text-underline-offset:2px}.gp-status a:hover{color:var(--accent)}.gp-price{font-weight:650}.gp-page .tag.gp-lost-KEPT{background:var(--accent-bg);color:var(--accent)}.gp-page .tag.gp-lost-RETURNED{background:var(--clean-bg);color:var(--clean)}.gp-page .tag.gp-lost-DISPOSED{background:var(--raise);color:var(--muted)}.gp-table tr.gp-closed td.gp-name{color:var(--ink-2);font-weight:500}.gp-bulk{align-items:center}.gp-bulk select{width:auto}.gp-master tbody tr.gp-row{cursor:pointer}.gp-master tbody tr.gp-row:hover td{background:var(--raise)}.gp-master tbody tr.gp-inhouse-row td{background:var(--dirty-bg)}.gp-master tbody tr.gp-inhouse-row:hover td{background:var(--dirty-bg);filter:brightness(.98)}.gp-checkedin{color:var(--dirty);font-weight:600}.gp-deal b{font-weight:700}.gp-fail{color:var(--dirty)}.gp-page .tag.gp-tier{background:var(--accent-bg);color:var(--accent)}.gp-tier-bar{align-items:flex-end}.gp-tier-form{margin-bottom:14px}.gp-tier-form h2{margin-bottom:10px;font-size:15px}.inv-tier-hint{color:var(--clean);background:var(--clean-bg);border:1px solid var(--clean-line);border-radius:99px;align-self:flex-start;margin-top:2px;padding:1px 8px;font-size:12.5px;font-weight:600}.inv-tier-hint:hover:not(:disabled){background:var(--clean-bg);filter:brightness(.97)}.gp-sheet-preview{overflow-x:auto}.gp-sheet{color:var(--ink);min-width:0;font-size:13px}.gp-sheet-head{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:14px;display:flex}.gp-sheet-hotel,.gp-sheet-nation{flex-direction:column;gap:1px;display:flex}.gp-sheet-hotel b{text-transform:uppercase}.gp-sheet-nation{text-align:center}.gp-sheet-nation span{text-underline-offset:3px;text-decoration:underline}.gp-sheet-title{text-align:center;letter-spacing:.02em;margin:10px 0 2px;font-size:17px}.gp-sheet-sub{text-align:center;color:var(--ink-2);margin:0 0 12px}.gp-sheet-table{border:1px solid var(--line-2);min-width:760px;font-size:12.5px}.gp-sheet-table th,.gp-sheet-table td{border:1px solid var(--line-2);text-align:left;vertical-align:top;padding:4px 6px}.gp-sheet-table th{background:var(--raise);color:var(--ink);text-transform:none;letter-spacing:normal;font-weight:650;font-size:inherit}.gp-sheet-table td.num,.gp-sheet-table th.num{text-align:right}.gp-sheet-count{min-width:0;max-width:620px;margin:0 auto}.gp-sheet-count tr.gp-sum td{font-weight:650}.gp-sheet-count tr.gp-total td{background:var(--raise);font-weight:700}.gp-sheet-sign{justify-content:flex-end;margin-top:18px;display:flex}.gp-sheet-sign>div{flex-direction:column;align-items:center;gap:2px;min-width:220px;padding-bottom:56px;display:flex}.gp-sheet-sign span:first-child{font-style:italic}.gp-sheet-sign-hint{color:var(--muted);font-size:12px}.gp-print-area{display:none}@media (max-width:560px){.gp-actions{margin-bottom:12px}.gp-actions button{flex:auto}.gp-form{grid-template-columns:minmax(0,1fr);gap:4px}.gp-form>label{text-align:left;margin-top:6px;font-size:12.5px}.gp-toggles{gap:2px 12px}.gp-day input{flex:auto;min-width:0}.gp-bulk select{flex:auto}}@page residence{size:A4 landscape;margin:10mm}@media print{html.gp-printing body>:not(main),html.gp-printing main>:not(.gp-print-area){display:none!important}html.gp-printing,html.gp-printing body{background:#fff!important}html.gp-printing main.gp-page{max-width:none;margin:0;padding:0}html.gp-printing .gp-print-area{page:residence;--surface:#fff;--raise:#f2f2f2;--ink:#000;--ink-2:#222;--muted:#444;--line:#999;--line-2:#666;color:#000;display:block}.gp-sheet{font-size:10pt}.gp-sheet-table{min-width:0;font-size:9pt}.gp-sheet-table thead{display:table-header-group}.gp-sheet-table tr,.gp-sheet-sign{break-inside:avoid}}
