:root{--ocean:#096b71;--deep:#113d46;--ink:#18383f;--muted:#708589;--paper:#f4f7f7;--line:#e1eaea;--tblr-font-sans-serif:'Segoe UI','Microsoft YaHei',sans-serif;--tblr-primary:#096b71;--tblr-primary-rgb:9,107,113;--tblr-body-color:#18383f;--tblr-border-radius:8px}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:14px;color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.sidebar{width:218px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:32px 20px;z-index:30;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--deep);font-size:28px;letter-spacing:3px;font-weight:700;margin:0 6px 48px}.brandmark{width:46px;height:48px;display:grid;place-items:center;background:var(--ocean);color:white;border-radius:15px 15px 15px 3px;font-size:27px;font-family:serif;box-shadow:0 4px 12px #096b7120}.brand-en{display:block;font-size:9px;letter-spacing:2px;font-weight:500;margin-top:3px}.nav-caption{font-size:11px;color:#91a1a4;letter-spacing:2px;margin:0 16px 14px}nav{display:grid;gap:7px}nav a{padding:12px 15px;color:#60797e;display:flex;align-items:center;gap:12px;text-decoration:none;border-radius:8px;font-size:14px}nav a:hover{background:#f1f6f5;color:var(--ocean)}nav a.active{background:#e8f3f1;color:var(--ocean);font-weight:600}svg.icon{height:20px;width:20px;stroke-width:1.65;flex:none}.sidebar-bottom{margin-top:auto;color:#547679;padding:20px 12px 0;font-size:12px;line-height:2}.sidebar-bottom div{color:#8fa2a5;font-size:11px}.sidebar-bottom small{display:block;margin-top:20px;font-size:10px;letter-spacing:2px}.online-dot,.location-dot{display:inline-block;width:7px;height:7px;background:#4caaa0;border-radius:50%;margin-right:7px}.main-shell{margin-left:218px}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:#fff;border-bottom:1px solid var(--line);color:#769094;font-size:12px}.top-separator{padding:0 14px;color:#c4cecf}.top-right{display:flex;align-items:center;gap:18px}.avatar{background:#e9f3f2;color:#397d7a}main{padding:32px 36px;max-width:1800px;margin:auto}.eyebrow{font-size:10px;color:#8a9fa2;letter-spacing:2px;font-weight:600;text-transform:uppercase;margin-bottom:8px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}h1{font-size:27px;font-weight:650;letter-spacing:-.4px;margin:0 0 8px}h2{font-size:17px;font-weight:600;margin:0}h3{font-size:14px;font-weight:600;margin:0}.subtle{color:var(--muted);font-size:12px;line-height:1.8}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.btn{gap:7px;min-height:38px;font-weight:500;box-shadow:none}.btn-primary{background:var(--ocean);border-color:var(--ocean)}.btn-primary:hover{background:#07575c;border-color:#07575c}.btn-soft{background:#e8f3f1;color:var(--ocean);border:1px solid #d8eae7}.btn-sm{min-height:30px;font-size:12px}.btn-ghost{background:transparent;border:1px solid var(--line);color:#557579}.card{border:1px solid var(--line);box-shadow:0 2px 6px #18383f02;border-radius:12px;overflow:hidden}.card-header{padding:20px 24px;min-height:unset;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:center}.card-body{padding:24px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.stat{padding:22px 24px;background:white;border:1px solid var(--line);border-radius:12px}.stat-label{display:flex;justify-content:space-between;align-items:center;color:#698387;font-size:12px}.stat-label svg{color:#7aa09e}.stat-number{font-size:31px;font-weight:650;margin-top:12px;font-variant-numeric:tabular-nums;letter-spacing:-1px}.stat-number small{font-size:14px;font-weight:400;letter-spacing:0;color:#91a3a6;margin-left:5px}.stat-foot{font-size:11px;color:#81979b;margin-top:8px}.overview-grid{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);gap:22px;align-items:start}.welcome{padding:25px 28px;color:white;background:linear-gradient(110deg,#0b6570,#298c8a);border-radius:12px;position:relative;overflow:hidden;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.welcome:after{content:'';position:absolute;width:210px;height:210px;border:30px solid #ffffff09;right:20px;top:-115px;border-radius:50%}.welcome h2{font-size:20px;margin-bottom:10px;color:white}.welcome p{margin:0;font-size:12px;color:#c4e4e3}.welcome .btn{z-index:1;color:var(--ocean);background:white;border:0}.room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.room-card{border:1px solid #deebe8;background:#f9fcfb;padding:18px 15px;border-radius:9px;position:relative;text-align:left;color:var(--ink)}.room-card.busy{background:#eef4f8;border-color:#d9e6ed}.room-card:hover{border-color:#66a79f}.room-no{font-size:15px;font-weight:600;margin-bottom:12px}.room-status{font-size:10px;color:#5a958a}.room-guest{font-size:11px;color:#688490;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.room-card .icon{position:absolute;right:13px;top:17px;color:#86aba5}.room-card.busy .icon{color:#7a9daf}.calendar-legend{display:flex;gap:16px;align-items:center;font-size:11px;color:#839699}.calendar-legend i{display:inline-block;width:7px;height:7px;border-radius:3px;background:#a2c4ba;margin-right:5px}.calendar-legend i.blue{background:#95b4ca}.quick-grid{display:grid;gap:10px}.quick-btn{display:flex;align-items:center;gap:14px;text-align:left;padding:16px;border:1px solid #e4eceb;background:#fff;border-radius:9px;color:#31575e}.quick-btn .iconbox{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#edf5f2;color:#479387}.quick-btn strong{display:block;font-size:13px;font-weight:600;margin-bottom:4px}.quick-btn small{color:#92a3a6;font-size:11px}.quick-btn:hover{border-color:#95c8bf;background:#fbfdfc}.table{margin:0;--tblr-table-striped-bg:#f9fbfb;color:var(--ink)}.table th{background:#f8fafa;color:#819396;font-size:11px;letter-spacing:.5px;font-weight:500;padding:13px 20px;white-space:nowrap}.table td{padding:17px 20px;vertical-align:middle;border-color:#edf1f1;font-size:12px}.table td strong{font-size:13px;font-weight:600}.table tr:last-child td{border-bottom:0}.table .btn{white-space:nowrap}.table-responsive{overflow-x:auto}.pill{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:5px;font-size:10px;white-space:nowrap;background:#eaf3ef;color:#398469}.pill.confirmed{background:#eef1fc;color:#6d7cac}.pill.checked_in{background:#e7f4ef;color:#348d70}.pill.checked_out{background:#f1f3f4;color:#819397}.pill.cancelled{background:#f9efee;color:#b07872}.pill.locked{background:#e5f1f0;color:#387b7c}.money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.text-amber{color:#b58745}.text-ocean{color:var(--ocean)}.empty{text-align:center;padding:38px 22px;color:#8ba0a4}.empty svg{width:35px;height:35px;color:#b0c6c4;margin-bottom:12px}.empty strong{display:block;font-weight:500;color:#789398;margin-bottom:7px}.empty p{font-size:12px;line-height:1.9;margin:0 0 15px}.muted-note{padding:15px 18px;background:#f4f8f7;border:1px solid #e2eeeb;border-radius:8px;color:#6e8a8c;font-size:11px;line-height:1.9}.warn-note{padding:13px 16px;background:#fff8e8;border:1px solid #f2e5c5;border-radius:8px;color:#9a7b3d;font-size:12px;line-height:1.8}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.filter-tabs{display:flex;gap:4px;background:#eaf0ef;padding:4px;border-radius:8px}.filter-tabs button{padding:8px 17px;background:none;border:0;color:#70888b;border-radius:6px;font-size:12px}.filter-tabs button.active{background:white;color:var(--ocean);box-shadow:0 1px 3px #173e3910}.form-control,.form-select{border-color:#dce7e6;min-height:39px;font-size:13px;background-color:#fff;border-radius:7px}.form-control:focus,.form-select:focus{border-color:#78b7af;box-shadow:0 0 0 3px #dcedea}.form-label{font-size:12px;color:#5d797d;font-weight:500;margin-bottom:7px}.search{width:260px}.calendar{display:grid;min-width:900px}.calendar .cell{padding:12px 5px;border-right:1px solid #e5edec;border-bottom:1px solid #e5edec;text-align:center;font-size:11px;min-height:66px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}.calendar .cal-head{background:#f9fbfb;color:#8b9e9f;font-size:10px;min-height:60px}.calendar .cal-head strong{font-size:15px;color:#658288}.calendar .cal-room{font-size:12px;font-weight:600;color:#53767a;background:#fafcfb}.calendar .today{background:#edf6f2}.cal-book{border:0;color:#317672;background:#deeeea;border-radius:5px;font-size:10px;width:100%;padding:7px 3px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cal-book.checked_in{background:#d9e7f3;color:#4d7996}.cal-add{border:0;background:none;color:#b9cecb;font-size:18px;width:100%;height:100%}.cal-add:hover{color:var(--ocean);background:#edf6f2}.detail-head{display:flex;gap:17px;align-items:center}.guest-avatar{width:55px;height:55px;display:grid;place-items:center;font-size:21px;border-radius:14px;background:#e0eeec;color:#457f7c}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px;align-items:start}.info-list{display:grid;grid-template-columns:repeat(4,1fr);gap:23px;padding:23px 25px;background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:22px}.info-list label{display:block;color:#8ba0a3;font-size:10px;margin-bottom:8px}.info-list strong{font-size:12px;font-weight:500}.balance-card{background:var(--deep);color:white;border:0}.balance-card .card-header{border-color:#ffffff15}.balance-card h2{color:white}.balance-line{padding:17px 0;border-bottom:1px solid #ffffff18}.balance-line:first-child{padding-top:0}.balance-line:last-child{border:0}.balance-line label{color:#aed1d1;font-size:10px;letter-spacing:1px}.balance-line .amount{font-size:27px;font-weight:600;letter-spacing:-.6px;margin:7px 0}.balance-line .mini{font-size:11px;color:#bad3d2;display:flex;justify-content:space-between}.balance-card .btn{background:#e8f4ef;color:#1f6667;width:100%;border:0;margin-top:18px}.note-text{font-size:12px;line-height:1.9;color:#6a8488;white-space:pre-wrap;overflow-wrap:anywhere}.spacer{height:20px}.payment-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.payment-row:last-child{border:0}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.catalog-item{padding:20px;background:white;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:12px}.catalog-item .title{font-size:14px;font-weight:600}.catalog-item .price{font-size:21px;color:var(--ocean);font-weight:600}.catalog-item .price small{font-size:11px;font-weight:400;color:#8da0a3}.catalog-item .note{font-size:11px;line-height:1.8;color:#879b9f;flex:1}.category-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.category-tabs button{border:1px solid var(--line);background:white;color:#6b878b;padding:8px 14px;border-radius:7px;font-size:12px}.category-tabs button.active{background:var(--ocean);color:white;border-color:var(--ocean)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid .full{grid-column:1/-1}.checkbox-group{display:flex;gap:9px;flex-wrap:wrap}.room-choice{font-size:12px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;color:#638187;display:flex;align-items:center;gap:7px}.room-choice input{accent-color:var(--ocean)}.field-help{font-size:10px;color:#8ca0a3;margin-top:6px;line-height:1.6}.input-group-text{background:#f4f8f7;border-color:#dce7e6;font-size:12px}.audit-list{max-height:360px;overflow:auto}.audit-entry{font-size:11px;padding:12px 0;border-bottom:1px solid var(--line);line-height:1.8;overflow-wrap:anywhere}dialog{border:0;border-radius:16px;padding:0;width:min(940px,94vw);max-height:92vh;color:var(--ink);box-shadow:0 20px 100px #0a373e40}dialog::backdrop{background:#143e4b70;backdrop-filter:blur(3px)}.dialog-header{padding:24px 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.dialog-header h2{font-size:19px}.dialog-close{border:0;background:#eff4f3;border-radius:50%;width:28px;height:28px;color:#7a9598;display:grid;place-items:center}.dialog-body{padding:26px 28px;max-height:68vh;overflow:auto}.dialog-footer{border-top:1px solid var(--line);padding:17px 28px;display:flex;justify-content:flex-end;gap:10px;background:#fafcfb}.booking-columns{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}.smart-panel{padding:20px;background:#f1f7f5;border:1px solid #dcece7;border-radius:10px;align-self:start}.smart-panel h3{font-size:14px;margin-bottom:10px}.smart-panel textarea{margin:15px 0 12px;min-height:185px;line-height:1.9;font-size:12px;resize:vertical}.smart-actions{display:flex;gap:8px;margin-bottom:12px}.smart-actions .btn{flex:1;background:white;font-size:11px}.smart-panel .recognize-btn{width:100%;margin-top:12px}.recognition-hint{font-size:11px;line-height:1.8;margin-top:12px;color:#6c8c87;white-space:pre-line}.recording{color:#b95853!important;background:#fdf0ee!important;animation:pulse 1.3s infinite}@keyframes pulse{50%{opacity:.6}}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:13px 22px;border-radius:9px;background:#214c4e;color:#fff;font-size:13px;z-index:1000;box-shadow:0 4px 20px #142e3025;max-width:80vw;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}#toast.error{background:#99594e}.error-inline{background:#fff0eb;color:#a25b46;padding:12px 14px;border-radius:7px;font-size:12px;margin:15px 0;line-height:1.8}.loading{padding:80px;text-align:center;color:#94a6a8}.link-btn{background:none;border:0;color:var(--ocean);font-size:12px;padding:0}.room-edit-row{display:grid;grid-template-columns:1.3fr 1fr 60px;gap:8px;margin-bottom:9px}.tiny{font-size:10px;color:#81989c}.receipt{background:white;max-width:900px;margin:auto;border:1px solid var(--line);border-radius:10px;padding:44px}.receipt-brand{font-size:26px;font-weight:650;color:#0e686d}.receipt-top{display:flex;justify-content:space-between;border-bottom:2px solid #116b71;padding-bottom:25px;margin-bottom:25px}.receipt-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;color:#628087;font-size:12px;margin-bottom:25px}.receipt .table td,.receipt .table th{padding:10px 9px;font-size:11px}.receipt-total{display:flex;justify-content:flex-end;gap:30px;margin-top:25px}.receipt-total>div{padding:17px;background:#f3f8f7;min-width:240px;font-size:12px;line-height:2}.receipt-total strong{font-size:18px}.receipt-footer{text-align:center;margin-top:40px;color:#8aa0a4;font-size:11px}.negative{color:#ab6754}#print-area{display:none}.nowrap{white-space:nowrap}@media(max-width:1150px){.sidebar{width:184px;padding:28px 13px}.main-shell{margin-left:184px}main{padding:26px 24px}.topbar{padding:0 24px}.stats{gap:12px}.stat{padding:20px 16px}.overview-grid{grid-template-columns:1.65fr 1fr}.room-grid{grid-template-columns:repeat(3,1fr)}.detail-grid{grid-template-columns:1fr 250px}.catalog-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.sidebar{width:72px;padding:20px 10px}.brand{margin:0 0 30px;justify-content:center}.brand>span:last-child,.nav-caption,nav a span,.sidebar-bottom{display:none}nav a{padding:14px;justify-content:center}.main-shell{margin-left:72px}.topbar{height:60px}.top-right #clock{display:none}main{padding:22px 18px}.stats{grid-template-columns:1fr 1fr}.overview-grid,.detail-grid,.settings-grid{grid-template-columns:1fr}.booking-columns{grid-template-columns:1fr}.room-grid{grid-template-columns:repeat(4,1fr)}.info-list{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start}.toolbar{align-items:stretch;flex-direction:column}.search{width:100%}.receipt{padding:25px}}@media print{body{background:white!important}.sidebar,.main-shell,dialog,#toast{display:none!important}#print-area{display:block}.receipt{padding:0;border:0;max-width:none;border-radius:0}.receipt-top{break-inside:avoid}.receipt-total{break-inside:avoid}.receipt-footer{break-inside:avoid}.table tr{break-inside:avoid}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{size:A4;margin:15mm}}
/* Keep the ledger usable in a narrow desktop window as well as full screen. */
.detail-grid>div,.overview-grid>div,.settings-grid>div{min-width:0}
.table-responsive{max-width:100%}
.detail-grid .table td,.detail-grid .table th{padding:14px 10px}
.detail-grid .table td:first-child,.detail-grid .table td:nth-child(4),.detail-grid .table td:nth-child(6),.detail-grid .table td:nth-child(7){white-space:nowrap}
.detail-grid .table td:nth-child(2){min-width:145px}
@media(max-width:1100px){.detail-grid{grid-template-columns:1fr}.detail-grid>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detail-grid>aside>.spacer{display:none}.detail-grid>aside>.muted-note{grid-column:1/-1}}
@media(max-width:850px){.detail-grid>aside{display:block}.detail-grid>aside>.spacer{display:block}.receipt-total{flex-wrap:wrap}.receipt-total>div{min-width:0;flex:1}.topbar{font-size:10px}.table td{padding:14px 12px}}
/* Filipino and English labels are longer; preserve readable wrapping at desktop sizes. */
.language-label{display:flex;align-items:center;gap:7px;font-size:10px;white-space:nowrap}
.language-label .form-select{font-size:12px;min-height:34px;width:162px;cursor:pointer}
.topbar{min-height:72px;height:auto;padding-top:10px;padding-bottom:10px;gap:18px}
.top-right{flex-wrap:wrap;justify-content:flex-end;gap:12px}
.btn{white-space:normal;text-align:center;height:auto;line-height:1.45;padding-top:9px;padding-bottom:9px}
.smart-actions{flex-wrap:wrap;margin-top:14px}.smart-actions .btn{flex-basis:130px}
.page-head>.actions{justify-content:flex-end;flex-shrink:0;max-width:48%}
.stat-number small{display:inline-block;font-size:12px;line-height:1.4;letter-spacing:0;max-width:70%}
.filter-tabs{flex-wrap:wrap}.filter-tabs button{white-space:normal}
.balance-line .mini{gap:12px;flex-wrap:wrap}.balance-line .mini span{max-width:100%}
.receipt-meta,.receipt-top,.receipt-total{gap:18px}.receipt-meta>div{overflow-wrap:anywhere}
.receipt-total>div{min-width:0;flex:1;max-width:350px}.receipt-total{flex-wrap:wrap}
.receipt th{white-space:normal;line-height:1.35}.receipt td{overflow-wrap:anywhere}
.receipt .money{white-space:nowrap}.receipt-brand{overflow-wrap:anywhere}
.catalog-translation p{margin:5px 0}.form-grid>div{min-width:0}
html[lang="fil"] .sidebar,html[lang="en"] .sidebar{width:242px}
html[lang="fil"] .main-shell,html[lang="en"] .main-shell{margin-left:242px}
html[lang="fil"] .nav-caption,html[lang="en"] .nav-caption{letter-spacing:.3px;font-size:10px}
html[lang="fil"] .sidebar-bottom small,html[lang="en"] .sidebar-bottom small{letter-spacing:0}
html[lang="fil"] .table th,html[lang="en"] .table th{letter-spacing:0;white-space:normal;min-width:85px}
@media(max-width:1200px){.top-right #clock{display:none}.page-head{align-items:flex-start}.page-head>.actions{max-width:45%}.welcome{gap:16px}}
@media(max-width:850px){html[lang="fil"] .sidebar,html[lang="en"] .sidebar{width:72px}html[lang="fil"] .main-shell,html[lang="en"] .main-shell{margin-left:72px}.page-head{flex-wrap:wrap}.page-head>.actions{max-width:100%;justify-content:flex-start}.topbar{gap:10px;padding:10px 16px}.language-label{font-size:0}.language-label .form-select{width:150px}.receipt-top{flex-wrap:wrap}}
@media print{.receipt .table th{min-width:0!important;font-size:9px!important}.receipt .table td{font-size:10px}.receipt-total>div{max-width:none}.receipt{font-size:11px}.receipt-footer{line-height:1.6}}
.room-rate{font-size:10px;color:#497f7b;line-height:1.5;margin-top:5px;overflow-wrap:normal}
.room-card .tiny{line-height:1.6}.room-card{min-width:0}.calendar .cal-room{padding:10px 7px}
.selectable-room{align-items:flex-start;flex:1 1 180px;min-width:0}.selectable-room>input{margin-top:4px;flex-shrink:0}.selectable-room>span{display:block}.selectable-room strong{display:block}.selectable-room .tiny{display:block;line-height:1.5;margin-top:3px}
.room-setting{padding:16px 0;border-bottom:1px solid var(--line)}.room-setting:first-child{padding-top:0}.room-setting:last-child{border-bottom:0}
.room-edit-row{grid-template-columns:1fr 1.2fr 82px}.room-input-label{display:block;font-size:10px;color:#6a868a;line-height:1.5;min-width:0}.room-input-label .form-control,.room-input-label .form-select{margin-top:5px}
.room-rate-edit-row{display:grid;grid-template-columns:1fr 1.2fr 82px;gap:8px}.room-enabled{margin-top:10px;display:flex;align-items:center;gap:6px}
@media(max-width:1050px) and (min-width:851px){.settings-grid{grid-template-columns:1fr}}

.source-message{margin-top:16px;min-width:0}.source-message summary{cursor:pointer;line-height:1.6}.source-message .note-text{margin:10px 0 0;word-break:normal;overflow-wrap:anywhere}
.calendar-legend{flex-wrap:wrap;gap:10px 20px;width:100%;height:auto;line-height:1.8}.calendar-legend>span{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap}.calendar-legend>span:last-child{display:block;flex:1 1 280px;white-space:normal;min-width:0}.calendar-legend i{flex:none}

.ai-service{padding:12px 0;border-bottom:1px solid #d8e7e4}.ai-service label{display:block;font-size:12px;line-height:1.7}.ai-service .ai-qty{margin:8px 0;max-width:140px}#ai-form .form-control,#ai-form .form-select{margin-bottom:14px}

/* Settings: a clear setup area, practical backup tools, and compact room rows. */
.settings-workspace{max-width:1240px;margin:0 auto;display:grid;gap:24px}
.settings-workspace .page-head{margin-bottom:0}
.settings-workspace .card{border-radius:14px;background:#fff;min-width:0;box-shadow:0 3px 14px #173f3b03}
.settings-workspace .card-header{padding:22px 24px;flex-wrap:wrap}
.settings-title{display:flex;gap:12px;align-items:center;min-width:0}
.settings-title h2{font-size:16px;line-height:1.5}
.settings-title p{font-size:11px;color:var(--muted);margin:3px 0 0;line-height:1.65}
.settings-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid #e0eeeb;border-radius:10px;background:#f0f7f5;color:var(--ocean);flex:none}
.settings-icon .icon{width:18px;height:18px}
.settings-ai{display:grid;grid-template-columns:260px minmax(0,1fr);overflow:visible}
.settings-ai-intro{padding:30px;background:linear-gradient(145deg,#e3f2ee,#f1f8f6);border-radius:14px 0 0 14px;border-right:1px solid #dcebe6;display:flex;align-items:flex-start;flex-direction:column}
.settings-kicker{font-size:10px;color:#527e77;letter-spacing:2px;font-weight:650;margin-bottom:15px}
.settings-ai-intro h2{font-size:23px;font-weight:650;line-height:1.35;letter-spacing:-.4px;color:#174e4e}
.settings-ai-intro p{font-size:12px;color:#5c807c;line-height:1.9;margin:12px 0 24px}
.settings-status{display:inline-flex;gap:7px;align-items:center;font-size:11px;font-weight:500;color:#607572;background:#fff;border:1px solid #d9e5e0;border-radius:30px;padding:6px 10px;line-height:1.5;max-width:100%}
.settings-status i{height:6px;width:6px;background:#94a39f;border-radius:50%;flex:none}.settings-status.is-active i{background:#36a38c}
.settings-model{font-size:10px;color:#7c9690;letter-spacing:1px;margin-top:12px}
.settings-ai-form{padding:26px 30px;min-width:0}
.settings-form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.settings-form-heading h3{font-size:14px}.settings-form-heading a{font-size:11px;color:var(--ocean);text-decoration:none}
.settings-form-heading a:hover{text-decoration:underline}
.settings-ai-fields{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px}.settings-ai-fields>div{min-width:0}
.settings-workspace #ai-form .form-control,.settings-workspace #ai-form .form-select{margin-bottom:0;min-height:42px}
.settings-workspace .form-label{font-size:11px;color:#597570}
.settings-key-state{font-size:11px;color:#778e88;line-height:1.7;margin:9px 0 20px}
.settings-ai-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.settings-ai-actions>.btn-ghost{border:0;color:#8b7e73;padding-left:0;padding-right:0}
.settings-disclosure{border-top:1px solid #edf1ef;margin-top:20px;padding-top:14px;color:#748d86;font-size:11px;line-height:1.85;min-width:0}
.settings-disclosure summary{cursor:pointer;color:#607f75;max-width:100%}.settings-disclosure summary:hover{color:var(--ocean)}
.settings-disclosure>div{margin-top:10px}.settings-disclosure p{margin:8px 0}
.settings-pair{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:stretch}
.settings-pair .card-body{padding:24px}.settings-form-footer{margin-top:24px;padding-top:18px;border-top:1px solid #eef2f0}
.settings-backup-main{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.settings-file-icon{display:grid;place-items:center;background:#f3f7f5;border:1px solid #e6eee9;border-radius:12px;width:48px;height:54px;flex:none;color:#6b9487}
.settings-file-icon .icon{height:25px;width:25px}.settings-backup-main h3{font-size:14px;line-height:1.6;margin:0 0 6px}
.settings-backup p{font-size:11px;line-height:1.8;color:#7a918b;margin:0}
.settings-backup-secondary{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #eaf0ec;padding-top:20px;margin-top:24px}
.settings-backup-secondary strong{display:block;font-size:12px;font-weight:500;margin-bottom:5px}.settings-backup-secondary .btn{flex:none}
.settings-backup-restore{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid #eaf0ec;font-size:11px;color:#83958f}
.settings-room-note{padding:14px 24px;font-size:11px;color:#80948d;background:#fafcfb;line-height:1.7;border-bottom:1px solid #eaf0ec}
.settings-rooms #room-edit-list{padding:0 24px}
.settings-rooms .room-setting{display:grid;grid-template-columns:minmax(68px,.8fr) minmax(90px,1.2fr) 68px minmax(68px,.8fr) minmax(94px,1fr) 80px 105px;column-gap:14px;row-gap:6px;padding:17px 0;border-bottom:1px solid #edf1ee}
.settings-rooms .room-setting:last-child{border-bottom:0}
.settings-rooms .room-edit-row,.settings-rooms .room-rate-edit-row{display:contents}
.settings-rooms .room-input-label{font-size:10px;color:#779087;line-height:1.45}
.settings-rooms .room-input-label .form-control,.settings-rooms .room-input-label .form-select{font-size:12px;min-height:38px;margin-top:6px;min-width:0;padding-left:10px;padding-right:10px}
.settings-rooms .room-input-label [data-field="name"]{font-weight:650;background:#f4f9f7;color:#226c62}
.settings-rooms .room-input-label .form-select{padding-right:24px;background-position:right 7px center}
.settings-rooms .room-enabled{grid-column:7;grid-row:1;margin:22px 0 0;font-size:11px;line-height:1.4;gap:7px;color:#65877b}
.settings-rooms .room-enabled input{accent-color:var(--ocean);width:15px;height:15px;flex:none}
.settings-rooms .field-help{grid-column:1/-1;font-size:10px;margin:0;color:#92a69c}
html[lang="zh-CN"] .settings-rooms .field-help{display:none}
.settings-room-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #e8eeea;padding:19px 24px;background:#fafcfb}
.settings-room-footer p{font-size:11px;line-height:1.75;color:#789087;margin:0;max-width:640px}.settings-room-footer .btn{flex:none}
.settings-bottom{grid-template-columns:1fr 1fr}.settings-bottom .card-header{padding-top:18px;padding-bottom:18px}.settings-bottom .card-body{padding-top:18px;padding-bottom:18px}
.settings-runtime-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.settings-bottom .field-help{margin:12px 0 0;font-size:11px}.settings-workspace .note-text{overflow-wrap:anywhere}
@media(max-width:1200px){.settings-ai{grid-template-columns:220px minmax(0,1fr)}.settings-ai-intro{padding:26px 24px}.settings-ai-form{padding:24px}.settings-rooms .room-setting{column-gap:10px;grid-template-columns:minmax(62px,.8fr) minmax(82px,1.2fr) 64px minmax(62px,.8fr) minmax(85px,1fr) 74px 86px}}
@media(max-width:1050px){.settings-ai{grid-template-columns:1fr}.settings-ai-intro{display:grid;grid-template-columns:1fr auto;gap:6px 20px;border-right:0;border-bottom:1px solid #dcebe6;border-radius:14px 14px 0 0;padding:22px 24px}.settings-ai-intro .settings-kicker{grid-column:1/-1;margin:0 0 3px}.settings-ai-intro h2{font-size:21px}.settings-ai-intro p{grid-column:1;grid-row:3;margin:0}.settings-ai-intro .settings-status{grid-column:2;grid-row:2;align-self:center}.settings-model{grid-column:2;grid-row:3;margin:0;align-self:center}.settings-pair{grid-template-columns:1fr 1fr;gap:18px}.settings-workspace .card-header,.settings-pair .card-body{padding-left:20px;padding-right:20px}.settings-ai-fields{grid-template-columns:1fr 1fr}.settings-rooms .room-setting{grid-template-columns:1fr 1.3fr 80px}.settings-rooms .room-enabled{grid-column:3;grid-row:3;margin:4px 0}.settings-rooms .field-help{grid-column:1/3;grid-row:3}.settings-rooms #room-edit-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.settings-rooms .room-input-label:nth-child(3){min-width:0}}
@media(max-width:760px){.settings-pair{grid-template-columns:1fr}.settings-rooms #room-edit-list{grid-template-columns:1fr}.settings-workspace{gap:18px}.settings-ai-fields{grid-template-columns:1fr;gap:14px}.settings-ai-intro{display:flex;gap:0}.settings-ai-intro .settings-kicker{margin-bottom:9px}.settings-ai-intro p{margin:8px 0 12px}.settings-model{display:none}.settings-ai-form{padding:22px}.settings-form-heading{gap:8px}.settings-room-footer{flex-direction:column;align-items:stretch;gap:14px}.settings-room-footer .btn{align-self:flex-start}.settings-workspace .card-header{gap:12px}.settings-ai-actions .actions{flex-wrap:wrap}.settings-backup-secondary{flex-wrap:wrap}.settings-ai-intro .settings-status{align-self:flex-start}}

.brandmark{flex:none}.brand-name{font-size:15px;line-height:1.5;display:block;max-width:145px;letter-spacing:.3px}.brand>span:last-child{min-width:0}html[lang="en"] .brand-name,html[lang="fil"] .brand-name{font-size:13px;letter-spacing:0;line-height:1.5}
.settings-rooms .room-input-label{display:flex;flex-direction:column;justify-content:flex-end}.settings-rooms .room-enabled{align-self:end;margin:0 0 10px}

.fx-reference{font-size:11px;font-weight:400;line-height:1.6;color:#66858b;margin-top:3px;white-space:nowrap}.catalog-item>.fx-reference{font-size:13px;margin:0 0 12px}.balance-card .fx-reference{color:#bedfdf}.fx-summary{padding:18px;background:#edf7f5;border:1px solid #cde6e1;border-radius:10px;margin-bottom:22px}.fx-summary label,.fx-summary strong,.fx-summary>span{display:block}.fx-summary strong{font-size:22px;line-height:1.4}.fx-summary>span{font-size:12px;margin:4px 0}.fx-summary p,.fx-rate-note,.fx-hint{font-size:11px;line-height:1.7;margin:10px 0 0}.balance-card .fx-summary{background:#ffffff0d;border-color:#ffffff26;color:#efffff}.fx-hint{margin:0 0 16px}.exchange-input{display:flex;gap:22px;align-items:flex-end}.exchange-input>div{flex:1;min-width:0}.exchange-input .btn{flex:none}.settings-exchange .field-help{margin-top:12px}.receipt .fx-summary{margin:22px 0;break-inside:avoid}.receipt .fx-reference{white-space:normal}@media(max-width:760px){.exchange-input{display:grid;grid-template-columns:1fr}.exchange-input .btn{justify-self:start}}@media print{.fx-summary{background:white!important;color:#173c43!important}.fx-reference{color:#536d74!important}}

.full-payment-actions{display:grid;gap:10px;margin:0 0 12px}.full-payment-actions .btn{width:100%;white-space:normal}.payment-cleared{font-size:13px;margin-bottom:15px;color:#c4e6df}.balance-card .fx-summary>strong{font-size:25px}

.stat-unpaid-link{margin-top:12px;white-space:normal}.filter-tabs{flex-wrap:wrap}

/* The supplied artwork is reused intact throughout the app and printed bills. */
.brand{gap:9px;margin-left:0;margin-right:0}.brandmark{width:62px;height:64px;background:white;border-radius:0;box-shadow:none}.brandmark img{display:block;width:100%;height:100%;object-fit:contain}.brand-name{font-size:14px;letter-spacing:0;max-width:124px}.brand-en{font-size:8px;letter-spacing:1.6px}.brand-avatar{width:40px;height:40px;background:white;box-shadow:none;border:1px solid #e9efed;border-radius:8px;overflow:hidden}.brand-avatar img{width:100%;height:100%;object-fit:contain}.welcome-brand{display:flex;align-items:center;gap:20px;min-width:0;position:relative;z-index:1}.welcome-logo{width:82px;height:82px;display:block;flex:none;background:white;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px #082e3920}.welcome-logo img{width:100%;height:100%;object-fit:contain}.welcome>.btn{flex:none}.receipt{position:relative;isolation:isolate}.receipt-content{position:relative;z-index:1}.receipt-watermark{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:76%;max-width:620px;height:auto;opacity:.065;pointer-events:none;z-index:0}.receipt-identity{display:flex;align-items:center;gap:15px;flex:1;min-width:0}.receipt-identity>div{min-width:0}.receipt-logo{width:84px;height:84px;object-fit:contain;flex:none}.receipt-brand{font-size:22px;line-height:1.45}.receipt-top>div:last-child{flex:none}.receipt .table{--tblr-table-bg:transparent}.receipt .table td{background:transparent}.receipt .receipt-total>div{background:#f3f8f7d9}.receipt .fx-summary{background:#edf7f5d9}
@media(max-width:1150px) and (min-width:851px){.brandmark{width:48px;height:54px}.brand-name{font-size:12px}.brand{gap:7px}}
@media(max-width:850px){.brandmark{width:50px;height:54px}.brand>.brandmark{display:grid}.welcome-brand{gap:12px}.welcome-logo{width:64px;height:64px;border-radius:10px}.welcome h2{font-size:17px}.receipt-logo{width:66px;height:66px}.receipt-brand{font-size:19px}.receipt-identity{gap:10px}.brand-avatar{display:none}}
@media(max-width:560px){.welcome{align-items:flex-start;flex-direction:column;gap:16px}.welcome>.btn{align-self:flex-end}.receipt-top{gap:14px}.receipt-top>div:last-child{margin-left:auto}.receipt-watermark{width:90%}}
@media print{.receipt{position:static;isolation:auto}.receipt-content{position:relative;z-index:1}.receipt-watermark{position:fixed;left:50%;top:45%;width:155mm;max-width:90%;height:auto;transform:translate(-50%,-50%);opacity:.065;z-index:0}.receipt-logo{width:22mm;height:22mm}.receipt-brand{font-size:17pt}.receipt-identity{gap:3mm}.receipt-top{flex-wrap:nowrap}.receipt .table td{background:transparent!important}.receipt .receipt-total>div,.receipt .fx-summary{background:transparent!important}}

/* LAN sharing and sign-in */
.settings-network{margin-bottom:24px}.network-grid{display:grid;grid-template-columns:minmax(240px,1fr) minmax(300px,1.4fr);gap:40px;padding:28px}.network-grid form>.field-help{margin:10px 0}.network-grid form>.btn{margin-top:20px}.network-grid .form-label{margin-top:14px}.network-guide{background:#f3f8f8;border:1px solid #dfeaea;border-radius:14px;padding:24px}.network-guide h3{margin:0 0 12px}.network-guide p{line-height:1.65}.network-address{font-family:monospace;font-size:17px;color:#086d73;background:#fff}.network-placeholder{padding:18px;border:1px dashed #bcd1d3;border-radius:10px}.lan-login{max-width:480px;margin:5vh auto;padding:36px;text-align:center}.lan-login>img{object-fit:contain;margin:0 auto 20px}.lan-login h1{font-size:30px;margin:12px 0}.lan-login form{text-align:left;margin:24px 0}.lan-login form>.btn{width:100%;margin-top:20px}.lan-login .field-help{margin-top:20px}
@media(max-width:850px){.network-grid{grid-template-columns:1fr;gap:20px;padding:20px}.settings-network>.card-header{align-items:flex-start;gap:15px;flex-wrap:wrap}.lan-login{padding:24px}}

.https-setup{margin:22px 0;padding-top:20px;border-top:1px solid #cfdfdf}.https-setup h3{margin:10px 0}.certificate-steps{padding-left:22px;line-height:1.75;font-size:13px}.certificate-steps li{margin:10px 0}.certificate-fingerprint{font-family:monospace;font-size:12px;overflow-wrap:anywhere;line-height:1.6}.smart-actions{flex-wrap:wrap}

.item-price-edit { display: block; margin-top: 6px; font-size: 12px; white-space: nowrap; }

.discount-actions{margin:12px 0}.receipt-items{table-layout:fixed;width:100%}.receipt-items th:nth-child(1){width:13%}.receipt-items th:nth-child(2){width:29%}.receipt-items th:nth-child(3){width:6%}.receipt-items th:nth-child(4){width:8%}.receipt-items th:nth-child(5){width:7%}.receipt-items th:nth-child(6){width:18%}.receipt-items th:nth-child(7){width:19%}
