.split-admin{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px}.directory-card{padding:20px;min-width:0}.directory-list{display:grid;gap:7px;margin-top:13px;max-height:680px;overflow:auto}.directory-list>details,.directory-row{padding:10px;border:1px solid #e2e9ea;border-radius:13px;background:#fbfdfd}.directory-list summary,.directory-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;cursor:pointer}.directory-list summary>div:nth-child(2),.directory-row>div:nth-child(2){display:grid;min-width:0}.directory-list small,.directory-row small{color:#7c8e96;font-size:10px;overflow:hidden;text-overflow:ellipsis}.directory-list details form{display:flex;align-items:end;gap:8px;padding:13px 2px 2px}.directory-list details form label{flex:1}.directory-search{position:relative;margin-top:12px}.directory-search span{position:absolute;left:12px;top:9px;font-size:20px;color:#84959b}.directory-search input{padding-left:39px}.room-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px;max-height:700px;overflow:auto}.room-card-grid article{display:grid;padding:14px;border:1px solid #e2e9ea;border-radius:14px;background:linear-gradient(145deg,#fff,#f6fafa)}.room-card-grid article>span{font-size:9px;text-transform:uppercase;color:#7b8c94}.room-card-grid article>b{font-size:25px;color:#102a43}.room-card-grid article small{color:#087e8b}.room-card-grid article div{margin-top:9px;padding-top:8px;border-top:1px solid #e7eded;color:#71828a;font-size:10px}
.access-dashboard-head{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:13px}.access-dashboard-head>div{display:flex;align-items:baseline;gap:8px;padding:15px;border:1px solid #dfe7e9;border-radius:15px;background:#fff}.access-dashboard-head b{font-size:27px;color:#102a43}.access-dashboard-head span{font-size:11px;color:#71838c}.access-reservation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.access-reservation-card{position:relative;overflow:hidden;display:grid;padding:18px;border:1px solid #dfe7e9;border-radius:18px;background:#fff;color:#18242d;text-decoration:none;box-shadow:0 9px 25px #102a4308;transition:.18s}.access-reservation-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px #102a4314}.access-reservation-card.ready{border-top:3px solid #22b77a}.access-reservation-card.waiting{border-top:3px solid #e49a32}.access-card-top{display:flex;justify-content:space-between;align-items:center}.access-card-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#e9f5f4;color:#087e8b;font-size:22px}.access-reservation-card h3{margin:14px 0 1px;color:#102a43}.access-reservation-card p{margin:0 0 12px;color:#60747e;font-weight:700}.access-reservation-card>div:nth-of-type(2){display:grid;gap:2px;color:#7c8d95;font-size:10px}.conditional-label{width:max-content;margin-top:10px;padding:5px 8px;border-radius:999px;background:#fff0d3;color:#91601b;font-size:9px}.access-reservation-card footer{position:static;height:auto;margin:14px -18px -18px;padding:11px 18px;border:0;border-top:1px solid #e8eeee;background:#f8fbfb;color:#087e8b;text-align:left;font-size:10px;font-weight:800}.access-reservation-card footer b{float:right}
.device-hero{display:flex;align-items:center;gap:13px;padding:15px 18px;margin-bottom:13px;border-radius:17px;background:linear-gradient(120deg,#0c2d40,#115563);color:#fff;box-shadow:0 15px 35px #102a4324}.device-hero>div{display:flex;align-items:center;gap:12px;margin-right:auto}.device-hero>div>div{display:grid}.device-hero small{color:#b9d6db}.live-ring{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid #65e4d56b;background:#ffffff0b}.live-ring i{width:11px;height:11px;border-radius:50%;background:#51e0a2;box-shadow:0 0 0 7px #51e0a217,0 0 18px #51e0a2}.device-hero form{margin:0}.device-hero select{min-width:220px}.device-lock-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.device-lock-card{display:grid;gap:9px;padding:14px;border:1px solid #e0e8e9;border-radius:15px;background:#fbfdfd}.device-lock-card .grid{grid-template-columns:1fr 1fr;gap:7px}.device-lock-head{display:flex;align-items:center;justify-content:space-between}.device-lock-head>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#102a43;color:#74dfd1}.device-lock-card small{color:#7b8c94}.room-access-list.modern{max-height:none}.room-access-list.modern>form{grid-template-columns:190px 1fr auto;align-items:center}.room-access-list.modern>form>div:first-of-type{display:grid}.room-access-list.modern small{color:#7b8c94}.message-center{padding:20px}.message-list{display:grid;margin-top:13px}.message-list article{display:grid;grid-template-columns:42px 1fr auto auto;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #e9eeee}.message-list article:first-child{border-top:0}.message-list article>div{display:grid}.message-list small{color:#7b8c94}.message-list em{color:#b42318;font-size:10px}.message-channel{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#e9f5f4;color:#087e8b;font-size:9px;font-style:normal;font-weight:900}.message-channel.sms{background:#e8effa;color:#315c98}.settings-status{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:13px}.settings-status>div{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid #e0e8e9;border-radius:15px;background:#fff}.settings-status>div>i{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#edf1f2;color:#71828a;font-style:normal}.settings-status>div.ready>i{background:#dcfae6;color:#166534}.settings-status>div>div{display:grid}.settings-status small{color:#7c8d95}
@media(max-width:1120px){.admin-app{grid-template-columns:205px minmax(0,1fr)}.ops-grid{grid-template-columns:1fr}.ops-kpis{grid-template-columns:1fr 1fr}.access-reservation-grid,.device-lock-grid{grid-template-columns:1fr 1fr}.split-admin{grid-template-columns:1fr}.admin-rail nav a{font-size:12px;padding:9px}.admin-rail-foot{display:none}}
@media(max-width:820px){body:has(.admin-app)>main{padding:12px}.admin-app{display:block;min-width:0;max-width:100%}.admin-rail{position:sticky;top:96px;z-index:7;min-width:0;max-width:100%;min-height:0;padding:8px;border-radius:15px;margin-bottom:12px;overflow:hidden}.admin-rail-brand,.admin-rail-foot{display:none}.admin-rail nav{display:flex;overflow:auto;margin:0;gap:5px;scrollbar-width:none}.admin-rail nav a{flex:0 0 auto;grid-template-columns:25px auto;padding:7px 9px}.admin-rail nav a i{width:24px;height:24px;font-size:13px}.admin-rail nav a.active{box-shadow:inset 0 -2px #39d4c1}.admin-view-head{align-items:flex-start;padding:5px 2px 16px}.admin-view-head h1{font-size:32px}.admin-view-head p:not(.eyebrow){font-size:12px}.admin-head-action{padding:10px 12px}.ops-kpis{grid-template-columns:1fr 1fr}.reservation-table-head{display:none}.reservation-table{border:0;display:grid;gap:9px;overflow:visible}.reservation-row{grid-template-columns:1fr 1fr;gap:10px;padding:13px;border:1px solid #e0e8e9;border-radius:14px}.reservation-row>span:before{content:attr(data-label);font-size:8px;color:#85949b;text-transform:uppercase;letter-spacing:.5px}.reservation-row .row-arrow{display:none!important}.admin-filterbar{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.admin-filterbar .filter-search{grid-column:1/-1}.admin-filterbar button{align-self:end}.detail-tabs{top:155px}.guest-editor-grid,.access-overview{grid-template-columns:1fr}.access-reservation-grid,.device-lock-grid{grid-template-columns:1fr 1fr}.device-hero{flex-wrap:wrap}.device-hero>div{width:100%}.device-hero select{min-width:0}.room-access-list.modern>form{grid-template-columns:1fr}.message-list article{grid-template-columns:42px 1fr auto}.message-list article form{grid-column:2/-1}.room-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.admin-view-head{display:grid}.admin-head-action{width:max-content}.ops-kpis{grid-template-columns:1fr 1fr;gap:8px}.ops-kpi{padding:14px}.ops-kpi b{font-size:28px}.ops-kpi small{font-size:9px}.quick-grid{grid-template-columns:1fr 1fr}.attention-list>a{grid-template-columns:38px 1fr}.attention-list>a>span{display:none}.admin-filterbar{grid-template-columns:1fr}.admin-filterbar .filter-search{grid-column:auto}.reservation-command{display:grid;padding:19px}.reservation-command-main{align-items:flex-start}.reservation-mark{width:46px;height:46px;border-radius:14px}.reservation-command h2{font-size:20px}.command-actions{width:100%}.command-actions>*{flex:1}.command-actions button,.command-actions .button{width:100%;text-align:center}.detail-tabs{top:151px}.detail-section{padding:16px}.detail-section .grid{grid-template-columns:1fr}.danger-zone{align-items:flex-start;gap:10px}.guest-editor-grid{grid-template-columns:1fr}.conditional-access{grid-template-columns:1fr}.conditional-icon{width:45px;height:45px}.access-action-bar{display:grid}.access-action-bar button{width:100%}.access-reservation-grid,.device-lock-grid{grid-template-columns:1fr}.access-dashboard-head{grid-template-columns:1fr}.device-hero{display:grid}.device-hero form,.device-hero select,.device-hero button{width:100%}.gateway-grid{grid-template-columns:1fr}.settings-status{grid-template-columns:1fr}.room-card-grid{grid-template-columns:1fr 1fr}.directory-list details form{display:grid}.message-list article{grid-template-columns:38px 1fr}.message-list article>.state-chip{grid-column:2}.admin-rail nav a span{font-size:10px}}

.hotel-selector{margin-bottom:16px;padding:18px;border:1px solid #dfe7e9;border-radius:19px;background:linear-gradient(145deg,#fff,#f5f9f9);box-shadow:0 12px 35px #102a430b}.hotel-selector-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:13px}.hotel-selector-head h2{margin:2px 0 0;color:#102a43;font-size:20px}.hotel-selector-head>a{padding:8px 11px;border-radius:10px;color:#647781;text-decoration:none;font-size:11px;font-weight:850}.hotel-selector-head>a.active{background:#0f766e;color:#fff}.hotel-selector-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.hotel-selector-card{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:12px;border:1px solid #dce6e7;border-radius:15px;background:#fff;color:#102a43;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.hotel-selector-card:hover{transform:translateY(-2px);border-color:#79cfc6;box-shadow:0 11px 25px #0f766e18}.hotel-selector-card.active{border-color:#20ad9f;background:linear-gradient(145deg,#ecfffb,#fff);box-shadow:0 0 0 2px #20ad9f25}.hotel-selector-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#102a43,#155e75);color:#7be2d5;font-size:18px;font-weight:950}.hotel-selector-card>div{display:grid;min-width:0}.hotel-selector-card b{overflow:hidden;color:#173548;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.hotel-selector-card small{color:#819198;font-size:9px}.hotel-selector-card strong{color:#0f766e;font-size:22px}.hotel-selector-card em{grid-column:2/-1;color:#70838b;font-size:9px;font-style:normal}.hotel-selector-card>i{position:absolute;right:8px;bottom:7px;color:#9aabad;font-style:normal}.hotel-room-empty{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;margin-top:13px;padding:12px;border:1px dashed #e39b65;border-radius:14px;background:#fff9f4}.hotel-room-empty>i{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#ffe8d7;color:#c45a16;font-style:normal;font-weight:950}.hotel-room-empty>div{display:grid}.hotel-room-empty b{color:#81350e;font-size:12px}.hotel-room-empty span{color:#906247;font-size:10px}.hotel-room-empty .button{white-space:nowrap}.room-empty-state{grid-column:1/-1;min-height:230px}.room-card-grid:has(.room-empty-state){display:grid;grid-template-columns:1fr}

@media(max-width:1200px){.hotel-selector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.hotel-selector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.hotel-selector{padding:13px}.hotel-selector-grid{display:flex;overflow:auto;padding-bottom:3px}.hotel-selector-card{flex:0 0 210px}.hotel-room-empty{grid-template-columns:38px 1fr}.hotel-room-empty .button{grid-column:1/-1;text-align:center}}
.location-permissions{grid-column:1/-1;margin:12px 0;padding:13px;border:1px solid #dce8e8;border-radius:14px;background:#f7fbfb}.location-permissions legend{padding:0 6px;color:#173548;font-size:11px;font-weight:850}.location-permissions>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.location-permissions label{display:flex;align-items:center;gap:7px;padding:8px 9px;border:1px solid #e0eaea;border-radius:10px;background:#fff;color:#425b67;font-size:10px}.location-permissions input{width:auto;margin:0}.location-permissions small{display:block;margin-top:8px;color:#819198}
.payment-section{scroll-margin-top:130px}.payment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.payment-summary>div{display:grid;padding:15px;border:1px solid #e1e9ea;border-radius:15px;background:#f8fbfb}.payment-summary span{color:#70838b;font-size:10px}.payment-summary b{color:#12364a;font-size:22px}.payment-summary .due{border-color:#f1c486;background:#fff8eb}.payment-summary .due b{color:#9a5707}.payment-summary .settled{border-color:#b9e7d1;background:#effcf5}.payment-summary .settled b{color:#16724c}.payment-entry{display:grid;gap:11px;margin-bottom:16px;padding:16px;border:1px solid #b9ddd9;border-radius:16px;background:linear-gradient(145deg,#f3fffc,#fff)}.payment-entry .grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-entry button{width:max-content}.payment-history{display:grid;gap:7px}.payment-history article{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #e8eeee}.payment-history article>div{display:grid;min-width:0}.payment-history article small,.payment-history article span{overflow:hidden;color:#758991;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.payment-history article strong{color:#173548;font-size:14px}.payment-history article.voided{opacity:.55}.payment-history article.voided strong{text-decoration:line-through}.payment-history article>em{color:#8a5a00;font-size:9px;font-style:normal}.payment-method-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#e8f4f3;color:#0f766e;font-size:14px;font-style:normal;font-weight:900}.payment-method-icon.card{background:#e8effc;color:#315c98}.payment-method-icon.cash{background:#eaf8eb;color:#277a42}.payment-method-icon.transfer{background:#f4ebff;color:#7651a8}.reception-checkin{margin-top:9px;padding:8px 10px;border:1px solid #bce3dd;border-radius:11px;background:#f3fffc}.reception-checkin summary{color:#0f766e;font-size:10px;font-weight:900;cursor:pointer}.reception-checkin form{display:grid;gap:9px;margin-top:10px}.checkout-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:14px;border:1px solid #f1c4bd;border-radius:14px;background:#fff7f5}.checkout-bar>div{display:grid}.checkout-bar small{color:#8e6b66}
.reception-hero{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:15px;margin-bottom:13px;padding:20px 22px;border-radius:21px;background:radial-gradient(circle at 10% 0,#1e6c71 0,transparent 38%),linear-gradient(125deg,#081f31,#0e3e4a);color:#fff;box-shadow:0 20px 45px #102a4330}.reception-hero h2{margin:2px 0;font-size:25px}.reception-hero>div>span{color:#b8d5d8;font-size:10px}.reception-hero form{display:flex;gap:8px}.reception-hero label{color:#b8d5d8}.reception-hero select,.reception-hero input{min-width:185px;border-color:#ffffff28;background:#ffffff12;color:#fff}.reception-hero select option{color:#102a43}.reception-hero nav{display:flex;gap:4px}.reception-hero nav a{padding:9px 11px;border:1px solid #ffffff2c;border-radius:10px;background:#ffffff0d;color:#fff;text-decoration:none;font-size:10px;font-weight:850}.reception-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:13px}.reception-kpis>div,.reception-kpis>a{display:grid;min-height:104px;padding:15px;border:1px solid #dfe8e8;border-radius:16px;background:linear-gradient(145deg,#fff,#f7fbfb);color:#173548;text-decoration:none;box-shadow:0 8px 24px #102a4308}.reception-kpis span{color:#71858d;font-size:10px}.reception-kpis b{align-self:end;font-size:24px}.reception-kpis small{color:#82939a;font-size:9px}.reception-payments{display:grid;grid-template-columns:minmax(170px,.7fr) repeat(4,1fr);align-items:stretch;gap:9px;margin-bottom:13px}.reception-payments>div{padding:13px 4px}.reception-payments h2{margin:2px 0;color:#173548;font-size:19px}.payment-method-card{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:3px 9px;padding:12px;border:1px solid #dfe8e8;border-radius:15px;background:#fff}.payment-method-card i{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#e8f4f3;color:#0f766e;font-style:normal;font-weight:900}.payment-method-card span{color:#73868e;font-size:9px}.payment-method-card b{color:#173548;font-size:14px}.payment-method-card.card i{background:#e8effc;color:#315c98}.payment-method-card.cash i{background:#eaf8eb;color:#277a42}.payment-method-card.transfer i{background:#f4ebff;color:#7651a8}.reception-queues{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:13px}.reception-queues>.ops-card,.reception-rooms{padding:18px}.reception-list{display:grid;margin-top:8px}.reception-list article{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:10px 0;border-top:1px solid #e9eeee}.reception-list article>div:nth-child(2){display:grid;min-width:0}.reception-list article small{overflow:hidden;color:#7c8d95;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.reception-list form{margin:0}.reception-room-no{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#102a43;color:#7be2d5;font-weight:900}.room-legend{display:flex;flex-wrap:wrap;gap:6px}.room-legend span{padding:5px 7px;border-radius:999px;background:#edf3f3;color:#60747d;font-size:8px;font-weight:800}.room-legend span:before{content:'';display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#9babaf}.room-legend .occupied:before{background:#345c88}.room-legend .arrival:before{background:#b87826}.room-legend .ready:before{background:#23a66f}.room-legend .dirty:before{background:#dc8735}.room-legend .maintenance:before{background:#c74848}.reception-floor{margin-top:15px}.reception-floor>h3{margin:0 0 7px;color:#71858d;font-size:10px;text-transform:uppercase;letter-spacing:.7px}.reception-floor>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.reception-room{position:relative;display:grid;min-height:164px;padding:13px;border:1px solid #dfe8e8;border-top:3px solid #23a66f;border-radius:15px;background:linear-gradient(145deg,#fff,#f7fbfb);overflow:hidden}.reception-room>header{position:static;display:flex;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none;align-items:baseline;gap:5px}.reception-room>header span{color:#829299;font-size:8px;text-transform:uppercase}.reception-room>header b{color:#173548;font-size:21px}.reception-room>header em{margin-left:auto;color:#83949a;font-size:8px;font-style:normal}.room-state{display:flex;align-items:center;gap:5px;margin:6px 0}.room-state i{width:7px;height:7px;border-radius:50%;background:#23a66f}.room-state b{color:#39705b;font-size:9px}.reception-room>a{display:grid;color:#173548;text-decoration:none}.reception-room>a strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.reception-room>a small,.reception-room>small{color:#819198;font-size:8px}.reception-room details{margin-top:auto;padding-top:8px}.reception-room summary{color:#698087;font-size:8px;font-weight:800;cursor:pointer}.reception-room details form{display:grid;gap:5px;margin-top:6px}.reception-room details select,.reception-room details input,.reception-room details button{min-width:0;padding:6px;font-size:8px}.reception-room.occupied{border-top-color:#345c88;background:linear-gradient(145deg,#f3f7ff,#fff)}.reception-room.occupied .room-state i{background:#345c88}.reception-room.occupied .room-state b{color:#345c88}.reception-room.arrival,.reception-room.departure{border-top-color:#b87826;background:linear-gradient(145deg,#fff9ee,#fff)}.reception-room.arrival .room-state i,.reception-room.departure .room-state i{background:#b87826}.reception-room.arrival .room-state b,.reception-room.departure .room-state b{color:#9a6018}.reception-room.dirty{border-top-color:#dc8735;background:#fff8ef}.reception-room.dirty .room-state i{background:#dc8735}.reception-room.maintenance,.reception-room.blocked{border-top-color:#c74848;background:#fff5f5}.reception-room.maintenance .room-state i,.reception-room.blocked .room-state i{background:#c74848}.reception-room.maintenance .room-state b,.reception-room.blocked .room-state b{color:#a12e2e}
@media(max-width:1200px){.reception-kpis{grid-template-columns:repeat(3,1fr)}.reception-payments{grid-template-columns:repeat(4,1fr)}.reception-payments>div{grid-column:1/-1}.reception-floor>div{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-entry .grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.reception-hero{grid-template-columns:1fr}.reception-hero form{display:grid;grid-template-columns:1fr 1fr}.reception-hero nav{justify-content:flex-end}.reception-queues{grid-template-columns:1fr}.reception-payments{grid-template-columns:1fr 1fr}.reception-payments>div{grid-column:1/-1}.reception-floor>div{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-history article{grid-template-columns:40px 1fr auto}.payment-history article form,.payment-history article>em{grid-column:2/-1}.location-permissions>div{grid-template-columns:1fr}}
@media(max-width:560px){.reception-hero{padding:16px}.reception-hero form{grid-template-columns:1fr}.reception-hero select,.reception-hero input{width:100%;min-width:0}.reception-kpis{grid-template-columns:1fr 1fr}.reception-kpis>div,.reception-kpis>a{min-height:92px;padding:12px}.reception-kpis b{font-size:20px}.reception-payments{grid-template-columns:1fr 1fr}.payment-method-card{grid-template-columns:31px 1fr;padding:9px}.payment-method-card i{width:31px;height:31px}.reception-list article{grid-template-columns:38px 1fr}.reception-list article>.state-chip,.reception-list article>form,.reception-list article>a{grid-column:2}.reception-list article>a{width:max-content}.reception-floor>div{grid-template-columns:1fr 1fr}.reception-room{min-height:150px}.payment-summary{grid-template-columns:1fr}.payment-entry .grid{grid-template-columns:1fr}.checkout-bar{display:grid}.checkout-bar button{width:100%}}
.room-card-grid .admin-room-card{position:relative;display:grid;padding:14px;border:1px solid #e2e9ea;border-radius:14px;background:linear-gradient(145deg,#fff,#f6fafa);color:#102a43;text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.room-card-grid .admin-room-card:hover{transform:translateY(-2px);border-color:#58beb4;box-shadow:0 11px 28px #0f766e18}.admin-room-card>span{font-size:9px;text-transform:uppercase;color:#7b8c94}.admin-room-card>b{font-size:25px;color:#102a43}.admin-room-card>small{color:#087e8b}.admin-room-card>div{margin-top:9px;padding-top:8px;border-top:1px solid #e7eded;color:#71828a;font-size:10px}.admin-room-card>strong{margin-top:9px;color:#0f766e;font-size:13px}.admin-room-card>strong em{color:#7e8e94;font-size:8px;font-style:normal;font-weight:700}.admin-room-card>i{position:absolute;right:10px;top:10px;color:#8a9ba1;font-size:9px;font-style:normal}.room-editor-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:14px;padding:21px 24px;border-radius:20px;background:linear-gradient(125deg,#0b2739,#115c67);color:#fff;box-shadow:0 18px 42px #102a432b}.room-editor-number{display:grid;place-items:center;width:84px;height:84px;border:1px solid #ffffff2e;border-radius:24px;background:#ffffff12}.room-editor-number small{color:#9cded6;font-size:9px;text-transform:uppercase}.room-editor-number b{font-size:34px;line-height:1}.room-editor-hero h2{margin:3px 0 8px;font-size:22px}.room-editor-tags{display:flex;flex-wrap:wrap;gap:6px}.room-editor-tags span{padding:5px 8px;border-radius:999px;background:#ffffff12;color:#c7eee9;font-size:9px}.room-editor-price{display:grid;min-width:220px;padding:14px 16px;border:1px solid #ffffff29;border-radius:16px;background:#ffffff0d;text-align:right}.room-editor-price small{color:#addbd7}.room-editor-price b{font-size:27px;color:#fff}.room-editor-price span{color:#99c6c8;font-size:9px}.room-editor form{display:grid;gap:17px}.room-editor .price-field{grid-column:span 2;padding:13px;border:1px solid #bfe3df;border-radius:13px;background:#f1fbf9}.room-editor .price-field input{font-size:18px;font-weight:850;color:#0f766e}.room-editor .price-field small{color:#6f8588;font-size:9px}
@media(max-width:720px){.room-editor-hero{grid-template-columns:auto 1fr;padding:16px}.room-editor-number{width:62px;height:62px;border-radius:18px}.room-editor-number b{font-size:25px}.room-editor-price{grid-column:1/-1;min-width:0;text-align:left}.room-editor .price-field{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.ops-kpi,.quick-grid a,.access-reservation-card,.admin-rail nav a{transition:none}}
.guest-state-stack{display:grid;justify-items:end;gap:3px}.guest-state-stack>small{color:#7b8c94;font-size:9px}.state-chip.warning{background:#fff0cf;color:#8a5a00}
.reservation-documents{scroll-margin-top:130px}.document-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:15px}.document-card{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:12px;min-height:150px;padding:16px;border:1px solid #dfe8e8;border-top:3px solid #9aa9ad;border-radius:17px;background:linear-gradient(145deg,#fff,#f7fbfb);color:#173548;text-decoration:none;box-shadow:0 9px 25px #102a4308;overflow:hidden;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.document-card[href]:hover{transform:translateY(-3px);border-color:#56bfb4;box-shadow:0 16px 34px #102a4315}.document-card>i{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#eaf0f1;color:#63787f;font-size:11px;font-style:normal;font-weight:950}.document-card>div{display:grid;min-width:0}.document-card small{color:#788b92;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.4px}.document-card h3{margin:6px 0 4px;color:#173548;font-size:14px}.document-card p{margin:0;color:#74878f;font-size:9px;line-height:1.45}.document-card>b{align-self:end;color:#0f766e;font-size:9px;white-space:nowrap}.document-card nav{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.document-card nav a{padding:5px 7px;border:1px solid #c6e4df;border-radius:8px;background:#effaf8;color:#0f766e;text-decoration:none;font-size:8px;font-weight:850}.document-card.ready{border-top-color:#20aa76}.document-card.ready>i{background:#e3f8ed;color:#16734e}.document-card.warning{border-top-color:#df9630}.document-card.warning>i{background:#fff0da;color:#975a0b}.document-card.waiting{border-top-color:#9aa9ad}.identity-verification{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;margin-top:9px;padding:9px;border:1px solid #f0c884;border-radius:11px;background:#fff9ec}.identity-verification label{display:flex;align-items:center;gap:7px;color:#775414;font-size:9px}.identity-verification input{width:auto;margin:0}.identity-verification button{padding:7px 9px;font-size:8px}.identity-verified{margin-top:9px;padding:8px 10px;border-radius:10px;background:#e9f8ef;color:#19734f;font-size:9px;font-weight:850}.checkout-with-record>div{display:grid;grid-template-columns:1fr 180px 1fr;align-items:end;gap:8px}.checkout-with-record>div>b,.checkout-with-record>div>small{grid-column:1/-1}

.lodging-document-shell{max-width:1120px;margin:0 auto;padding:12px 0 42px}.document-toolbar{position:sticky;top:86px;z-index:8;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;margin-bottom:14px;padding:11px 14px;border:1px solid #dce6e7;border-radius:16px;background:#fffffff2;box-shadow:0 12px 32px #102a4314;backdrop-filter:blur(14px)}.document-toolbar>a{color:#60767e;text-decoration:none;font-size:10px;font-weight:850}.document-toolbar-title{display:grid;text-align:center}.document-toolbar b{color:#173548;font-size:11px}.document-toolbar span{color:#829399;font-size:8px}.document-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.document-toolbar-actions form{display:flex;align-items:end;gap:6px}.document-toolbar-actions label{display:grid;gap:2px}.document-toolbar-actions label>span{padding-left:2px;font-size:7px;text-transform:uppercase}.document-toolbar-actions select{max-width:235px;padding:8px 26px 8px 9px;border:1px solid #cbdadc;border-radius:9px;background:#f8fbfb;color:#173548;font-size:9px}.document-toolbar button{padding:9px 12px;background:#0f766e;color:#fff;white-space:nowrap}.document-toolbar .email-document-button{background:#9b5f26}.lodging-document{position:relative;min-height:900px;padding:45px 50px 30px;border:1px solid #dce5e6;border-radius:22px;background:linear-gradient(180deg,#fff,#fbfdfd);color:#20343d;box-shadow:0 28px 70px #102a4317;overflow:hidden}.lodging-document:before{content:'';position:absolute;inset:0 0 auto;height:7px;background:linear-gradient(90deg,#0b2b3c,#0f766e 62%,#bf8850)}.lodging-document-header{position:relative;display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:17px;width:auto;height:auto;padding:0 0 28px;border:0;border-bottom:1px solid #dfe7e8;background:none;box-shadow:none}.document-seal{display:grid;place-items:center;width:60px;height:60px;border-radius:17px;background:linear-gradient(145deg,#0a2b3e,#0f6169);color:#83e4d8;font-size:20px;font-weight:950;box-shadow:0 10px 26px #0d4b562b}.lodging-document-header>div:nth-child(2){display:grid}.lodging-document-header small{color:#73878e;font-size:9px;text-transform:uppercase;letter-spacing:.6px}.lodging-document-header h1{margin:4px 0 2px;color:#133548;font-size:27px;letter-spacing:-.5px}.lodging-document-header p{margin:0;color:#74868d;font-size:10px}.document-reference{display:grid;justify-items:end;text-align:right}.document-reference span{color:#829399;font-size:8px;text-transform:uppercase}.document-reference b{color:#0f766e;font-size:14px}.document-reference small{text-transform:none;letter-spacing:0}.lodging-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:24px 0;padding:4px 0;border:1px solid #dfe8e9;border-radius:15px;background:#f8fbfb;overflow:hidden}.lodging-facts>div{display:grid;gap:3px;padding:12px 14px;border-right:1px solid #e2e9ea;border-bottom:1px solid #e2e9ea}.lodging-facts>div:nth-child(3n){border-right:0}.lodging-facts>div:nth-last-child(-n+3){border-bottom:0}.lodging-facts dt{color:#7b8d94;font-size:8px;text-transform:uppercase;letter-spacing:.45px}.lodging-facts dd{margin:0;color:#173548;font-size:10px;font-weight:850}.lodging-facts.compact{margin:14px 0 0}.document-block{margin-top:18px;padding:19px;border:1px solid #e0e7e8;border-radius:16px;background:#fff}.document-block h2{margin:0 0 12px;color:#173548;font-size:14px}.document-block p{color:#516a73;font-size:10px;line-height:1.6}.document-block.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.document-total{margin:0!important;color:#0f766e!important;font-size:24px!important;font-weight:950}.document-notice{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:15px;margin-top:18px;padding:15px 17px;border:1px solid #c1e2de;border-radius:14px;background:#f1fcfa}.document-notice b{color:#0f766e;font-size:10px}.document-notice p{margin:0;color:#5f747c;font-size:9px}.document-person-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.document-person-list>div{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:9px;padding:9px;border-radius:12px;background:#f7fafa}.document-person-list>div>span{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:#14384a;color:#7ee1d5;font-weight:900}.document-person-list p{display:grid;margin:0}.document-person-list small{color:#7d8e94;font-size:8px}.document-person-card{margin-top:20px;padding:20px;border:1px solid #dce6e7;border-radius:17px;background:#fff}.document-person-card>header{position:static;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none}.document-person-card>header>span{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;background:#12384a;color:#7ce2d5;font-weight:950}.document-person-card>header>div{display:grid}.document-person-card h2{margin:2px 0;color:#173548;font-size:17px}.document-person-card p{margin:0;color:#7a8d94;font-size:9px}.document-status{padding:6px 9px;border-radius:999px;background:#edf1f2;color:#66787f;font-size:8px;font-style:normal;font-weight:900}.document-status.checked_in{background:#e1f7eb;color:#16724d}.document-status.checked_out{background:#eef1f2;color:#61727a}.document-version{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.document-version span{color:#173548;font-size:13px;font-weight:900}.document-version b{padding:5px 8px;border-radius:999px;background:#e7f6f4;color:#0f766e;font-size:8px}.document-rules{display:grid;gap:8px;margin:0;padding-left:22px}.document-rules li,.privacy-block p{color:#536b74;font-size:9px;line-height:1.55}.acceptance-ledger{display:grid;gap:7px}.acceptance-ledger>div{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:9px;padding:9px;border-radius:11px;background:#f5faf9}.acceptance-ledger i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#dff6e9;color:#16724d;font-style:normal;font-weight:950}.acceptance-ledger p{display:grid;margin:0}.acceptance-ledger small{color:#7e9096;font-size:8px}.settlement-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.settlement-hero>div{display:grid;padding:17px;border:1px solid #dfe8e8;border-radius:14px;background:#f8fbfb}.settlement-hero span{color:#788b92;font-size:9px}.settlement-hero b{margin-top:4px;color:#173548;font-size:20px}.settlement-hero .is-due{border-color:#efc47f;background:#fff8e9}.settlement-hero .is-due b{color:#9a5d10}.settlement-hero .is-paid{border-color:#bde1ce;background:#effbf4}.settlement-hero .is-paid b{color:#16724d}.document-table{width:100%;border-collapse:collapse}.document-table th,.document-table td{padding:10px 8px;border-bottom:1px solid #e5ebec;text-align:left;font-size:8px}.document-table th{color:#7b8d94;text-transform:uppercase}.document-table td{color:#4f6770}.document-table th:last-child,.document-table td:last-child{text-align:right}.checkout-ledger{display:grid;gap:10px}.checkout-ledger article{padding:14px;border:1px solid #e1e8e9;border-radius:13px}.checkout-ledger article>header{position:static;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none}.checkout-ledger header>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e1f7eb;color:#16724d;font-weight:950}.checkout-ledger h2{margin:2px 0;color:#173548;font-size:14px}.checkout-ledger header>b{color:#0f766e;font-size:9px}.access-document-timeline{display:grid}.access-document-timeline>div{display:grid;grid-template-columns:16px 1fr;gap:8px;padding:7px 0}.access-document-timeline i{width:8px;height:8px;margin-top:4px;border-radius:50%;background:#0f766e;box-shadow:0 0 0 4px #e3f4f2}.access-document-timeline p{display:grid;margin:0}.access-document-timeline small{color:#7e9096;font-size:8px}.lodging-document-footer{position:static;display:flex;align-items:end;justify-content:space-between;width:auto;height:auto;margin-top:32px;padding:18px 0 0;border:0;border-top:1px solid #e0e7e8;background:none;color:#637780;box-shadow:none}.lodging-document-footer>div{display:grid}.lodging-document-footer b{color:#173548;font-size:10px}.lodging-document-footer span,.lodging-document-footer p{margin:0;color:#829399;font-size:8px}
@media(max-width:950px){.document-card-grid{grid-template-columns:1fr 1fr}.lodging-document{padding:35px 30px}.checkout-with-record>div{grid-template-columns:1fr 1fr}.checkout-with-record>div>label:last-child{grid-column:1/-1}}
@media(max-width:650px){.document-card-grid{grid-template-columns:1fr}.document-card{min-height:0}.document-toolbar{top:12px;grid-template-columns:1fr}.document-toolbar>a{justify-self:start}.document-toolbar-title{display:none}.document-toolbar-actions{display:grid;width:100%;grid-template-columns:1fr}.document-toolbar-actions form{display:grid;grid-template-columns:minmax(0,1fr) auto}.document-toolbar-actions select{width:100%;max-width:none}.document-toolbar-actions>button{width:100%}.lodging-document{padding:28px 17px;border-radius:16px}.lodging-document-header{grid-template-columns:48px 1fr}.document-seal{width:47px;height:47px;border-radius:13px}.lodging-document-header h1{font-size:20px}.document-reference{grid-column:1/-1;justify-items:start;text-align:left}.lodging-facts{grid-template-columns:1fr 1fr}.lodging-facts>div,.lodging-facts>div:nth-child(3n){border-right:1px solid #e2e9ea;border-bottom:1px solid #e2e9ea}.lodging-facts>div:nth-child(2n){border-right:0}.lodging-facts>div:nth-last-child(-n+2){border-bottom:0}.document-block.two-columns,.document-person-list,.settlement-hero{grid-template-columns:1fr}.document-person-card>header{grid-template-columns:42px 1fr}.document-person-card>header>span{width:41px;height:41px}.document-status{grid-column:2;width:max-content}.document-notice{grid-template-columns:1fr}.document-table{display:block;overflow-x:auto}.lodging-document-footer{display:grid;gap:9px}.checkout-with-record>div{grid-template-columns:1fr}.checkout-with-record>div>label:last-child{grid-column:auto}.identity-verification{grid-template-columns:1fr}}
@media print{body{background:#fff!important}body>header,body>footer,.no-print,.flash{display:none!important}body>main{max-width:none!important;padding:0!important}.lodging-document-shell{max-width:none;padding:0}.lodging-document{min-height:0;padding:18mm 16mm 12mm;border:0;border-radius:0;box-shadow:none}.lodging-document:before{height:4px}.lodging-document-header{break-inside:avoid}.document-block,.document-person-card,.document-notice,.settlement-hero{break-inside:avoid;box-shadow:none}.lodging-document-footer{break-inside:avoid}.lodging-document a{color:inherit;text-decoration:none}@page{size:A4;margin:0}}
.admin-rail-foot a{color:#9de7de;text-decoration:none}.users-admin .user-password-field{grid-column:1/-1}.role-guide{display:grid;gap:7px;margin:13px 0;padding:12px;border:1px solid #dce8e8;border-radius:14px;background:#f7fbfb}.role-guide>div{display:grid;grid-template-columns:92px 1fr;gap:8px}.role-guide b{color:#12364a;font-size:10px}.role-guide span{color:#72868e;font-size:9px}.user-directory{max-height:760px}.user-account.disabled{opacity:.72;background:#f2f4f4}.user-account summary{grid-template-columns:40px 1fr auto}.user-account-body{display:grid;gap:10px;padding:14px 2px 2px}.directory-list .user-account-body form{display:grid;align-items:stretch;gap:9px;padding:12px;border:1px solid #e2e9ea;border-radius:12px;background:#fff}.directory-list .user-account-body form:last-child{grid-template-columns:1fr auto;align-items:center}.user-account-body form>div{display:grid}.user-account-body form small{white-space:normal}.user-account-body .grid{grid-template-columns:1fr 1fr}.user-account .state-chip{white-space:nowrap}
@media(max-width:560px){.role-guide>div{grid-template-columns:1fr}.user-account summary{grid-template-columns:36px 1fr}.user-account summary>.state-chip{grid-column:2}.user-account-body .grid{grid-template-columns:1fr}.directory-list .user-account-body form:last-child{grid-template-columns:1fr}}
.company-directory{max-height:760px}.company-account summary{grid-template-columns:40px minmax(0,1fr) auto}.company-account summary>span{color:#0f766e;font-size:9px;font-weight:900;white-space:nowrap}.company-account-body{display:grid;gap:10px;padding:14px 2px 2px}.directory-list .company-account-body .company-edit-form{display:grid;align-items:stretch;gap:9px;padding:13px;border:1px solid #bfe1dd;border-radius:13px;background:linear-gradient(145deg,#f5fffd,#fff)}.company-edit-form .grid{grid-template-columns:1fr 1fr;gap:9px}.company-edit-form .form-note{margin:0;color:#70858d;font-size:9px}.company-edit-form button{width:max-content}.directory-list .company-account-body .password-reset{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px;padding:12px;border:1px solid #e2e9ea;border-radius:12px;background:#fff}.company-no-login{display:grid;gap:2px;padding:12px;border:1px dashed #d9a15f;border-radius:12px;background:#fff8ed}.company-no-login b{color:#8b5312;font-size:10px}.company-no-login span{color:#8b7258;font-size:9px}
@media(max-width:560px){.company-account summary{grid-template-columns:36px minmax(0,1fr)}.company-account summary>span{grid-column:2}.company-edit-form .grid,.directory-list .company-account-body .password-reset{grid-template-columns:1fr}.company-edit-form button,.company-account-body .password-reset button{width:100%}}
.bed-booking-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:13px;padding:23px 25px;border-radius:21px;background:radial-gradient(circle at 12% 0,#1d7072 0,transparent 37%),linear-gradient(125deg,#081f31,#0d4350);color:#fff;box-shadow:0 20px 45px #102a4330}.bed-booking-hero h2{margin:3px 0 5px;font-size:25px}.bed-booking-hero>div:first-child>span{color:#b8d7da;font-size:11px}.bed-booking-hero>div:last-child{display:grid;min-width:180px;padding:13px 16px;border:1px solid #ffffff29;border-radius:16px;background:#ffffff0d;text-align:right}.bed-booking-hero strong{font-size:32px;color:#73e1d3}.bed-booking-hero>div:last-child span{font-size:10px;font-weight:850}.bed-booking-hero small{color:#a9cfd1;font-size:9px}.bed-date-filter{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:end;gap:10px;margin-bottom:13px;padding:15px}.bed-date-filter small{grid-column:1/-1;color:#768991}.bed-booking-form{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:13px}.bed-booking-main{display:grid;gap:13px}.bed-booking-main>.ops-card{padding:19px}.bed-room-note{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:10px;padding:10px 12px;border:1px solid #bce2de;border-radius:12px;background:#f1fcfa}.bed-room-note span{color:#0f766e;font-size:9px;font-weight:900;text-transform:uppercase}.bed-room-note b{color:#557079;font-size:9px}.bed-booking-summary{position:sticky;top:112px;display:grid;gap:0;padding:20px;overflow:hidden}.bed-booking-summary h2{margin:2px 0 14px;color:#173548}.bed-booking-summary>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #e5eded}.bed-booking-summary>div span{color:#73868e;font-size:9px}.bed-booking-summary>div b{color:#173548;font-size:11px;text-align:right}.bed-booking-summary footer{position:static;display:grid;height:auto;margin:8px -20px 14px;padding:15px 20px;border:0;background:linear-gradient(125deg,#0c3341,#0e5960);color:#fff;text-align:left}.bed-booking-summary footer span{color:#aad8d7;font-size:9px}.bed-booking-summary footer strong{font-size:25px}.bed-booking-summary>p{margin:0 0 13px;color:#74878f;font-size:9px;line-height:1.45}.bed-booking-summary button{width:100%}.bed-empty{min-height:260px;border:1px dashed #e0aa64;border-radius:18px;background:#fffaf3}.bed-reservation-note{display:flex;align-items:center;gap:11px;margin:12px 0;padding:12px;border:1px solid #bce2de;border-radius:13px;background:linear-gradient(145deg,#effcf9,#fff)}.bed-reservation-note>i{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#0f766e;color:#fff;font-style:normal;font-weight:950}.bed-reservation-note>div{display:grid}.bed-reservation-note b{color:#14535a;font-size:11px}.bed-reservation-note span{color:#71868d;font-size:9px}.command-badges .hostel{background:#e5f8f5;color:#08796f}.reservation-command-main small{color:#86a4aa;font-size:9px}
.reception-room .room-add-bed{width:max-content;margin-top:6px;padding:4px 6px;border:1px solid #9bdcd4;border-radius:7px;background:#effcf9;color:#0f766e;font-size:7px;font-weight:900}
@media(max-width:980px){.bed-booking-form{grid-template-columns:1fr}.bed-booking-summary{position:static}.bed-date-filter{grid-template-columns:1fr 1fr}.bed-date-filter label:first-child{grid-column:1/-1}}
@media(max-width:560px){.bed-booking-hero{grid-template-columns:1fr;padding:17px}.bed-booking-hero h2{font-size:21px}.bed-booking-hero>div:last-child{text-align:left}.bed-date-filter{grid-template-columns:1fr}.bed-date-filter label:first-child{grid-column:auto}.bed-date-filter button{width:100%}.bed-room-note{display:grid}.bed-booking-main>.ops-card{padding:15px}}

/* Guest directory: one profile for every stay, document bundle and contact history. */
.guest-directory-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:11px}.guest-directory-summary>div{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #dfe8e9;border-radius:15px;background:linear-gradient(145deg,#fff,#f7fbfb);box-shadow:0 7px 20px #102a4308}.guest-directory-summary i{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#e6f6f4;color:#0f766e;font-style:normal;font-weight:950}.guest-directory-summary span{display:grid}.guest-directory-summary b{color:#15384a;font-size:19px;line-height:1}.guest-directory-summary small{margin-top:3px;color:#71868e;font-size:8px;text-transform:uppercase;letter-spacing:.35px}.guest-add-drawer{margin-bottom:11px;padding:0;overflow:hidden}.guest-add-drawer>summary{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;list-style:none}.guest-add-drawer>summary::-webkit-details-marker{display:none}.guest-add-drawer>summary>span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#102f42;color:#79ded2;font-weight:950}.guest-add-drawer>summary>div{display:grid}.guest-add-drawer>summary b{color:#173548;font-size:10px}.guest-add-drawer>summary small{color:#7a8c93;font-size:8px}.guest-add-drawer>summary>i{color:#0f766e;font-size:8px;font-style:normal;font-weight:900}.guest-add-drawer>form{padding:14px;border-top:1px solid #e6eded}.guest-add-drawer .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.guest-add-drawer button{margin-top:9px}.guest-directory-layout{display:grid;grid-template-columns:310px minmax(0,1fr);align-items:start;gap:11px}.guest-directory-list-panel{position:sticky;top:95px;padding:15px;min-width:0;max-height:calc(100vh - 110px);overflow:hidden}.guest-directory-list-panel .ops-card-head h2{font-size:15px}.guest-directory-filters{display:flex;gap:4px;margin:8px 0;overflow:auto}.guest-directory-filters button{padding:6px 8px;border:1px solid #dce6e7;border-radius:999px;background:#f8fbfb;color:#657a82;font-size:7px;white-space:nowrap}.guest-directory-filters button.active{border-color:#0f766e;background:#0f766e;color:#fff}.guest-directory-list{display:grid;gap:5px;max-height:calc(100vh - 285px);overflow:auto;padding-right:3px}.guest-directory-person{display:grid;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid transparent;border-radius:12px;background:#f8fbfb;color:#173548;text-decoration:none;transition:.15s}.guest-directory-person:hover{border-color:#a9d8d2;background:#f1fbf9}.guest-directory-person.active{border-color:#62bfb5;background:linear-gradient(135deg,#eaf9f6,#fff);box-shadow:0 7px 18px #0f766e12}.guest-directory-avatar{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#12384a;color:#7be0d4;font-size:13px;font-weight:950}.guest-directory-avatar i,.guest-profile-mark i{position:absolute;right:-2px;bottom:-2px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#87979d}.guest-directory-avatar i.current,.guest-profile-mark i.current{background:#22ad73}.guest-directory-avatar i.upcoming,.guest-profile-mark i.upcoming{background:#e39a30}.guest-directory-avatar i.new,.guest-profile-mark i.new{background:#5a7dcc}.guest-directory-person>span:nth-child(2){display:grid;min-width:0}.guest-directory-person b{overflow:hidden;color:#173548;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.guest-directory-person small{overflow:hidden;color:#7a8d94;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.guest-directory-person em{margin-top:2px;color:#0f766e;font-size:7px;font-style:normal;font-weight:800}.guest-directory-person>strong{display:grid;justify-items:center;color:#173548;font-size:12px}.guest-directory-person>strong small{font-size:6px;text-transform:uppercase}.guest-profile-workspace{display:grid;gap:11px;min-width:0}.guest-profile-hero{position:relative;display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 19px;border-radius:19px;background:radial-gradient(circle at 12% 0,#1a6b70 0,transparent 35%),linear-gradient(120deg,#081f31,#0d4652);color:#fff;box-shadow:0 16px 35px #102a4326;overflow:hidden}.guest-profile-mark{position:relative;display:grid;place-items:center;width:60px;height:60px;border:1px solid #ffffff29;border-radius:18px;background:#ffffff12;color:#82e6da;font-size:24px;font-weight:950}.guest-profile-hero>div:nth-child(2){display:grid}.guest-profile-hero .eyebrow{color:#74d9ce}.guest-profile-hero h2{margin:2px 0;color:#fff;font-size:21px}.guest-profile-hero span{color:#b8d4d7;font-size:9px}.guest-profile-hero nav{display:flex;gap:6px}.guest-profile-hero nav a{padding:8px 10px;border:1px solid #ffffff2e;border-radius:10px;background:#ffffff0d;color:#fff;text-decoration:none;font-size:8px;font-weight:850}.guest-profile-hero nav a:hover{background:#ffffff1d}.guest-profile-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.guest-profile-kpis>div{display:grid;padding:10px 12px;border:1px solid #dfe8e9;border-radius:13px;background:#fff}.guest-profile-kpis span{color:#7c8e95;font-size:7px;text-transform:uppercase}.guest-profile-kpis b{margin-top:3px;overflow:hidden;color:#173548;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.guest-profile-editor{padding:0;overflow:hidden}.guest-profile-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;cursor:pointer;list-style:none}.guest-profile-editor>summary::-webkit-details-marker{display:none}.guest-profile-editor>summary div{display:grid}.guest-profile-editor>summary b{color:#173548;font-size:10px}.guest-profile-editor>summary small{color:#7b8d94;font-size:8px}.guest-profile-editor>summary span{color:#0f766e;font-size:8px;font-weight:900}.guest-profile-editor form{padding:13px;border-top:1px solid #e4ebec}.guest-profile-editor .grid{grid-template-columns:repeat(3,1fr);gap:8px}.guest-profile-editor button{margin-top:8px}.guest-profile-section{padding:16px}.guest-profile-section .ops-card-head h2{font-size:15px}.guest-stay-list{display:grid;gap:6px;margin-top:10px}.guest-stay{border:1px solid #e0e8e9;border-left:3px solid #98a8ad;border-radius:13px;background:#fbfdfd;overflow:hidden}.guest-stay.active{border-left-color:#20aa76}.guest-stay.future{border-left-color:#df9630}.guest-stay>summary{display:grid;grid-template-columns:45px minmax(0,1fr) auto 115px;align-items:center;gap:9px;padding:9px 11px;cursor:pointer;list-style:none}.guest-stay>summary::-webkit-details-marker{display:none}.guest-stay-date{display:grid;justify-items:center;padding:5px;border-radius:9px;background:#eef6f5}.guest-stay-date b{color:#0f766e;font-size:11px}.guest-stay-date small{color:#748990;font-size:6px}.guest-stay>summary>span:nth-child(2){display:grid;min-width:0}.guest-stay>summary>span:nth-child(2)>b{overflow:hidden;color:#173548;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.guest-stay>summary>span:nth-child(2)>small{color:#7b8d94;font-size:7px}.guest-stay>summary>strong{color:#173548;font-size:8px;text-align:right}.guest-stay-body{display:grid;gap:9px;padding:10px 11px;border-top:1px solid #e5ecec;background:#fff}.guest-stay-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.guest-stay-facts span{display:grid;padding:7px 8px;border-radius:9px;background:#f5f9f9;color:#7b8d94;font-size:7px}.guest-stay-facts b{margin-top:2px;color:#173548;font-size:8px}.guest-document-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.guest-document-strip a{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:6px;padding:7px;border:1px solid #dfe8e8;border-radius:9px;background:#fbfdfd;color:#536c75;text-decoration:none;font-size:7px;font-weight:800}.guest-document-strip i{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#e5f5f3;color:#0f766e;font-size:7px;font-style:normal;font-weight:950}.guest-document-strip a:hover{border-color:#78c7bd;background:#f0fbf9}.guest-open-reservation{justify-self:end;color:#0f766e;text-decoration:none;font-size:8px;font-weight:900}.guest-contact-compose{margin-top:9px;border:1px solid #c8e2df;border-radius:12px;background:#f5fcfb}.guest-contact-compose>summary{padding:10px 12px;color:#0f766e;cursor:pointer;font-size:8px;font-weight:900;list-style:none}.guest-contact-compose>summary::-webkit-details-marker{display:none}.guest-contact-compose form{display:grid;gap:8px;padding:0 12px 12px}.guest-contact-compose .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.guest-contact-compose textarea{min-height:75px}.guest-contact-compose button{width:max-content}.guest-contact-timeline{display:grid;margin-top:10px}.guest-contact-timeline article{display:grid;grid-template-columns:35px minmax(0,1fr);gap:9px;padding:10px 0;border-top:1px solid #e9eeee}.guest-contact-timeline article:first-child{border-top:0}.guest-contact-timeline article>i{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#e7f5f3;color:#0f766e;font-size:8px;font-style:normal;font-weight:950}.guest-contact-timeline article.manual>i{background:#f3ecfa;color:#7a48a8}.guest-contact-timeline article>div{display:grid;min-width:0}.guest-contact-timeline header{position:static;display:flex;justify-content:space-between;gap:12px;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none}.guest-contact-timeline header b{color:#173548;font-size:9px}.guest-contact-timeline header span{color:#7d8f96;font-size:7px;white-space:nowrap}.guest-contact-timeline p{margin:3px 0;color:#526a73;font-size:8px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.guest-contact-timeline small{color:#84949a;font-size:7px}.guest-profile-empty{min-height:400px}.guest-profile-empty i{display:grid;place-items:center;width:55px;height:55px;border-radius:17px;background:#e7f6f4;color:#0f766e;font-style:normal;font-size:22px}
@media(max-width:1180px){.guest-directory-summary{grid-template-columns:1fr 1fr}.guest-add-drawer .grid{grid-template-columns:1fr 1fr}.guest-directory-layout{grid-template-columns:270px minmax(0,1fr)}.guest-document-strip{grid-template-columns:repeat(3,1fr)}.guest-profile-hero{grid-template-columns:54px minmax(0,1fr)}.guest-profile-mark{width:52px;height:52px}.guest-profile-hero nav{grid-column:2}.guest-contact-compose .grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.guest-directory-layout{grid-template-columns:1fr}.guest-directory-list-panel{position:static;max-height:none}.guest-directory-list{grid-template-columns:1fr 1fr;max-height:360px}.guest-profile-editor .grid{grid-template-columns:1fr 1fr}}
@media(max-width:590px){.guest-directory-summary{grid-template-columns:1fr 1fr}.guest-directory-summary>div{padding:9px}.guest-directory-summary i{width:30px;height:30px}.guest-directory-summary b{font-size:16px}.guest-add-drawer .grid,.guest-profile-kpis,.guest-directory-list,.guest-profile-editor .grid,.guest-stay-facts,.guest-contact-compose .grid{grid-template-columns:1fr}.guest-profile-hero{padding:14px}.guest-profile-hero h2{font-size:18px}.guest-profile-hero nav{grid-column:1/-1}.guest-profile-hero nav a{flex:1;text-align:center}.guest-stay>summary{grid-template-columns:40px minmax(0,1fr) auto}.guest-stay>summary>strong{grid-column:2/-1;text-align:left}.guest-document-strip{grid-template-columns:1fr 1fr}.guest-contact-timeline header{display:grid;gap:2px}}
.bed-person-auto-save{display:flex;align-items:center;padding:8px 10px;border-radius:10px;background:#eaf8f5;color:#0f766e;font-size:8px;font-weight:850}.location-profile-card{margin-bottom:13px;padding:0;scroll-margin-top:100px;overflow:hidden}.location-profile-card>summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 15px;cursor:pointer;list-style:none}.location-profile-card>summary::-webkit-details-marker{display:none}.location-profile-card>summary>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#0c3042,#0f6267);color:#77e0d4;font-weight:950}.location-profile-card>summary>div{display:grid;min-width:0}.location-profile-card>summary b{color:#173548;font-size:12px}.location-profile-card>summary small{overflow:hidden;color:#768a91;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.location-profile-card>summary>i{color:#0f766e;font-size:8px;font-style:normal;font-weight:900}.location-profile-card>form{display:grid;gap:9px;padding:14px;border-top:1px solid #e3ebeb;background:#fbfdfd}.location-profile-card .grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.location-profile-card form p{margin:0;color:#70858c;font-size:8px}.location-profile-card form button{width:max-content}@media(max-width:1050px){.location-profile-card .grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.location-profile-card .grid{grid-template-columns:1fr}.location-profile-card>summary{grid-template-columns:38px minmax(0,1fr)}.location-profile-card>summary>i{grid-column:2}}
.guest-stay-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 8px;border:1px solid #c7e4e0;border-radius:9px;background:#f2fbf9}.guest-stay-actions a{color:#0f766e;text-decoration:none;font-size:8px;font-weight:900}.guest-stay-actions span{color:#789096;font-size:7px}@media(max-width:560px){.guest-stay-actions{display:grid}}
.state-chip.danger{background:#fff0ed;color:#b73827}.state-chip.info{background:#edf7ff;color:#34749c}.request-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.request-summary>div{display:flex;align-items:center;gap:11px;padding:14px 16px;border:1px solid #e2eaea;border-radius:16px;background:#fff}.request-summary i{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#eef7f6;color:#147c70;font-style:normal;font-weight:950}.request-summary .urgent i{background:#fff0ed;color:#bd3d2d}.request-summary span{display:grid}.request-summary b{color:#173548;font-size:21px;line-height:1}.request-summary small{margin-top:3px;color:#7b8f97;font-size:9px}.request-filters{display:flex;align-items:end;gap:10px;margin-bottom:12px;padding:13px}.request-filters label{display:grid;gap:4px;color:#71858d;font-size:9px;font-weight:800}.request-filters select{min-width:175px}.request-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.guest-request-card{position:relative;padding:13px;border-left:4px solid #64a8be;overflow:hidden}.guest-request-card.incident{border-left-color:#e98a50}.guest-request-card.urgent{border-left-color:#cf4638;box-shadow:0 8px 28px #c9453116}.guest-request-card>header{position:static;display:flex;align-items:center;justify-content:space-between;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none}.request-kind{display:flex;align-items:center;gap:5px;color:#7b8d94;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.55px}.request-kind i{display:grid;place-items:center;width:21px;height:21px;border-radius:7px;background:#fff1e7;color:#bd5f26;font-style:normal}.guest-request-card.contact .request-kind i{background:#eaf8f7;color:#167c70}.request-identity{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;align-items:center;margin:9px 0}.request-identity>div{min-width:0}.request-identity>span{display:grid;place-items:center;width:40px;height:40px;overflow:hidden;border-radius:12px;background:#102a43;color:#7be2d5}.request-identity-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.request-identity-icon.incident{background:linear-gradient(145deg,#713219,#c9672f);color:#fff3e8;box-shadow:0 7px 15px #b85e2d28}.request-identity-icon.contact{background:linear-gradient(145deg,#07545b,#0f8b7d);color:#e3fffb;box-shadow:0 7px 15px #08776e28}.request-identity small{display:block;overflow:hidden;color:#637c86;font-size:7px;font-weight:800;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.request-identity h2{overflow:hidden;margin:2px 0;color:#173548;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.request-identity p{overflow:hidden;margin:0;color:#819198;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.request-topic{display:flex;align-items:center;gap:6px}.request-topic b{font-size:10px}.request-topic em{padding:3px 6px;border-radius:999px;background:#fff0ed;color:#b73827;font-size:7px;font-style:normal;font-weight:950}.request-message{min-height:32px;margin:5px 0 8px;padding:8px 9px;border-radius:9px;background:#f6f9f9;color:#465f68;font-size:10px;line-height:1.4}.request-contact{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.request-contact a,.request-contact span{padding:4px 6px;border-radius:7px;background:#eef4f4;color:#42636e;font-size:7px;text-decoration:none}.guest-request-card>form{display:grid;grid-template-columns:minmax(105px,1fr) auto auto;gap:5px;align-items:end;padding-top:8px;border-top:1px solid #e7eeee}.guest-request-card>form label{display:grid;gap:2px;color:#7b8e95;font-size:7px;font-weight:800}.guest-request-card>form select,.guest-request-card>form button,.guest-request-card>form .button{min-height:31px;padding:6px 8px;font-size:8px}.guest-request-card>footer{margin:8px -13px -13px;padding:7px 13px;background:#f8fafa;color:#7b8e95;font-size:7px}.request-empty{grid-column:1/-1;min-height:180px}
@media(max-width:900px){.request-summary{grid-template-columns:1fr 1fr}.request-board{grid-template-columns:repeat(2,minmax(0,1fr))}.request-filters{align-items:stretch;flex-direction:column}.request-filters select{width:100%;min-width:0}}
@media(max-width:560px){.request-summary{grid-template-columns:1fr 1fr}.request-summary>div{padding:11px}.request-summary i{width:31px;height:31px}.request-board{grid-template-columns:1fr}.guest-request-card>form{grid-template-columns:1fr}.guest-request-card>form .button{display:block;text-align:center}}

/* Turysta brand and stronger operational contrast. */
body:has(.admin-app){background:#e7eeee;color:#142832}
.admin-app{grid-template-columns:226px minmax(0,1fr);gap:16px}
.admin-rail{padding:12px;border-radius:20px;background:linear-gradient(180deg,#061b2a 0%,#0b3448 58%,#061725 100%);box-shadow:0 26px 65px #071b2a42}
.admin-rail-brand{gap:10px;padding:7px 5px 15px;border-bottom-color:#ffffff2b}
.admin-rail-brand>span.admin-brand-logo{display:grid;place-items:center;flex:0 0 86px;width:86px;height:37px;padding:7px 8px;border:1px solid #ffffff28;border-radius:10px;background:#ffffff0b;box-shadow:0 8px 22px #0004}
.admin-brand-logo img{display:block;width:100%;height:100%;object-fit:contain}.admin-rail-brand b{color:#fff;font-size:11px}.admin-rail-brand small{color:#c1d3d8;font-size:9px}
.admin-rail nav{gap:3px;margin-top:11px}.admin-rail nav a{padding:8px 9px;color:#d1dfe3;font-size:12px}.admin-rail nav a i{background:#ffffff0e;color:#8ff0e4}.admin-rail nav a.active{background:linear-gradient(90deg,#ffffff22,#ffffff0e);box-shadow:inset 3px 0 #61ead9}.admin-rail-foot{background:#ffffff12}.admin-rail-foot small{color:#bdd0d6}
.admin-view-head{padding-bottom:16px}.admin-view-head h1{color:#071f30}.admin-view-head p:not(.eyebrow){color:#526c76}
.ops-card,.ops-kpi,.admin-filterbar,.form-card{border-color:#cbd9dc;box-shadow:0 9px 27px #102a4310}.ops-card-head h2,.ops-kpi,.reservation-row,.form-section-title h2{color:#0b293a}.ops-card-head>span,.system-pill{color:#445f69}.reservation-row small,.ops-kpi small,.ops-kpi span{color:#526a73}
.document-toolbar{border-color:#c5d5d8;background:#fffffff7}.document-toolbar>a{color:#315d68}.document-toolbar button{background:#064e4a;color:#fff;box-shadow:0 8px 20px #064e4a2b}
.lodging-document{border-color:#bdced2;background:linear-gradient(180deg,#fff,#f7fbfb);box-shadow:0 30px 75px #071f3023}.lodging-document:before{height:8px;background:linear-gradient(90deg,#071e2f,#096e72 58%,#e58a45)}
.lodging-document-header{grid-template-columns:116px minmax(0,1fr) auto;gap:15px;padding-bottom:21px;border-bottom-color:#cad8db}.document-seal{display:grid;place-items:center;width:112px;height:51px;padding:9px 11px;border-radius:13px;background:linear-gradient(145deg,#071e2f,#0c5663);box-shadow:0 10px 28px #0b35432f}.document-seal img{display:block;width:100%;height:100%;object-fit:contain}.lodging-document-header small{color:#536f79}.lodging-document-header h1{color:#08283a}.lodging-document-header p{color:#536c75}.document-reference b{color:#086f6c}
.lodging-facts{margin:17px 0;border-color:#c9d7da;background:#f3f8f8}.lodging-facts>div{padding:10px 12px;border-color:#d3dfe1}.lodging-facts dt{color:#5f7780}.lodging-facts dd{color:#092b3d;font-size:10px}.document-person-card{margin-top:14px;padding:16px;border-color:#cad8da}.document-person-card h2{color:#082a3d}.document-status.checked_in{background:#d6f4e4;color:#075c3a}.document-block{border-color:#ccdadd}.lodging-document-footer{margin-top:23px;border-top-color:#cbd9dc}.lodging-document-footer b{color:#082a3d}
@media(max-width:820px){.admin-app{display:block}.admin-rail{padding:8px;border-radius:15px}.admin-rail nav{margin-top:0}}
@media(max-width:650px){.lodging-document{padding:22px 14px}.lodging-document-header{grid-template-columns:94px 1fr}.document-seal{width:90px;height:43px}.lodging-document-header h1{font-size:19px}.document-toolbar{top:12px}}
@media print{.document-seal{-webkit-print-color-adjust:exact;print-color-adjust:exact}.document-seal img{display:block!important}}

/* Scalable guest directory, object data centre and resilient reception cards. */
.guest-directory-server-filter{display:grid;grid-template-columns:minmax(0,1fr) 105px auto;align-items:end;gap:6px;margin:9px 0 8px}.guest-directory-server-filter .directory-search{grid-column:1/-1}.guest-directory-server-filter label:not(.directory-search){gap:3px;color:#657b84;font-size:8px}.guest-directory-server-filter select,.guest-directory-server-filter button{min-height:34px;padding:7px 8px;font-size:8px}.guest-list-result{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:2px 0 7px;color:#71858d;font-size:7px}.guest-list-result b{color:#12384a;font-size:10px}.guest-directory-pager{display:flex;justify-content:center;gap:8px;margin-top:9px;padding-top:9px;border-top:1px solid #e5ecec}.guest-directory-pager a,.guest-directory-pager span{display:grid;place-items:center;min-width:31px;height:29px;padding:0 8px;border-radius:8px;background:#edf6f5;color:#0f766e;text-decoration:none;font-size:8px;font-weight:900}.guest-directory-pager a{background:#0f766e;color:#fff}.guest-directory-list-panel{max-height:calc(100vh - 92px)}.guest-directory-list{max-height:calc(100vh - 330px);scrollbar-gutter:stable}.guest-profile-workspace{margin:0;padding:0;max-width:none;min-height:0}
.location-admin-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding:18px 20px;border-radius:20px;background:radial-gradient(circle at 6% 0,#1d7176,transparent 34%),linear-gradient(120deg,#071f31,#0d4551);color:#fff;box-shadow:0 16px 38px #0b26362a}.location-admin-intro>div{display:flex;align-items:center;gap:14px}.location-admin-intro>div>span{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border:1px solid #ffffff2e;border-radius:15px;background:#ffffff12;color:#83e7dc;font-size:19px;font-weight:950}.location-admin-intro h2{margin:2px 0;color:#fff;font-size:20px}.location-admin-intro p{margin:0;color:#c1d8db;font-size:9px}.location-admin-intro>strong{padding:8px 11px;border:1px solid #ffffff24;border-radius:999px;background:#ffffff0d;white-space:nowrap;font-size:9px}.location-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.location-admin-card{overflow:hidden}.location-admin-card>header{position:static;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;width:auto;height:auto;padding:14px 16px;border:0;border-bottom:1px solid #dce6e8;background:linear-gradient(145deg,#f7fbfb,#fff);box-shadow:none}.location-admin-card>header>span{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#0a3344;color:#7ce2d6;font-weight:950}.location-admin-card>header small{color:#70858d;font-size:7px;text-transform:uppercase}.location-admin-card>header h2{margin:1px 0;color:#0b2b3d;font-size:15px}.location-admin-card>header p{margin:0;color:#71868e;font-size:8px}.location-admin-card>header em{padding:5px 8px;border-radius:999px;background:#dcf6e8;color:#0b7048;font-size:7px;font-style:normal;font-weight:900}.location-admin-card.incomplete>header em{background:#fff0df;color:#995b17}.location-admin-card>form{display:grid;gap:10px;padding:15px}.location-admin-card .grid{grid-template-columns:1fr 1fr;gap:8px}.location-admin-card .wide-field{grid-column:1/-1}.location-admin-card footer{position:static;display:flex;align-items:center;justify-content:space-between;width:auto;height:auto;padding:0;border:0;background:none;box-shadow:none}.location-admin-card footer a{color:#0f766e;font-size:8px;font-weight:900;text-decoration:none}.location-admin-card footer button{font-size:9px}
.reservation-delete-zone{margin-top:10px;padding:0;border:1px solid #e6aaa3;border-radius:13px;background:#fff8f7;overflow:hidden}.reservation-delete-zone>summary{padding:11px 13px;color:#a92f24;font-size:9px}.reservation-delete-zone>form{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 13px;border-top:1px solid #f0c9c5}.reservation-delete-zone .check,.reservation-delete-zone p{grid-column:1/-1}.reservation-delete-zone p{margin:0;color:#775e5b;font-size:8px}.reservation-delete-zone button{width:max-content}
.report-page-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid #c8d9dc;border-radius:18px;background:linear-gradient(145deg,#fff,#f4f9f9)}.report-page-intro h2{margin:2px 0;color:#0b2c3e;font-size:19px}.report-page-intro p{margin:0;color:#607983;font-size:9px}.report-page-intro>span{padding:7px 10px;border-radius:999px;background:#0d4b55;color:#fff;font-size:8px;font-weight:900;white-space:nowrap}.reports .report-filters{margin-top:12px}
.reception-list article{min-width:0}.reception-list article>div:nth-child(2){overflow:hidden}.reception-list article>div:nth-child(2)>b{display:block;overflow:hidden;max-width:100%;color:#173548;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.reception-room-no{min-width:0;max-width:40px;padding:0 4px;overflow:hidden;font-size:clamp(7px,1vw,11px);text-overflow:ellipsis;white-space:nowrap}.reception-list article>.state-chip{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-rail{display:flex;flex-direction:column;min-height:calc(100vh - 116px);overflow:visible}.admin-rail nav{flex:1}.admin-rail-foot{position:relative;left:auto;right:auto;bottom:auto;margin-top:12px;flex:0 0 auto}
@media(max-width:1050px){.location-admin-grid{grid-template-columns:1fr}.guest-directory-server-filter{grid-template-columns:minmax(0,1fr) 90px auto}}
@media(max-width:1120px){.admin-rail-foot{display:none}}
@media(max-width:850px){.guest-directory-list-panel{position:static;max-height:none}.guest-directory-list{grid-template-columns:1fr 1fr;max-height:430px}.location-admin-intro{align-items:flex-start}.report-page-intro{align-items:flex-start}}
@media(max-width:820px){.admin-rail{display:block;min-height:0;overflow:hidden}}
@media(max-width:590px){.guest-directory-server-filter{grid-template-columns:1fr auto}.guest-directory-server-filter label:not(.directory-search){grid-column:1}.guest-directory-list{grid-template-columns:1fr;max-height:480px}.location-admin-intro,.location-admin-intro>div,.report-page-intro{display:grid}.location-admin-intro>strong{width:max-content}.location-admin-card .grid,.reservation-delete-zone>form{grid-template-columns:1fr}.location-admin-card .wide-field,.reservation-delete-zone .check,.reservation-delete-zone p{grid-column:auto}.location-admin-card>header{grid-template-columns:42px minmax(0,1fr)}.location-admin-card>header em{grid-column:2;width:max-content}.location-admin-card footer{align-items:stretch;display:grid;gap:9px}.location-admin-card footer button{width:100%}.report-page-intro>span{width:max-content}.reception-list article>div:nth-child(2)>b{white-space:normal;overflow-wrap:anywhere}.reception-room-no{align-self:start}}

/* Compact desktop rail: keep the mobile touch navigation unchanged. */
@media(min-width:821px){.admin-rail{padding-top:8px;padding-bottom:8px}.admin-rail-brand{padding-top:4px;padding-bottom:8px}.admin-rail nav{align-content:start;grid-auto-rows:max-content;gap:1px;margin-top:6px}.admin-rail nav a{padding-top:4px;padding-bottom:4px}.admin-rail-foot{margin-top:6px;padding-top:6px;padding-bottom:6px}}

/* Safe automatic recalculation with an explicit manual-price override. */
.reservation-price-editor{display:grid;gap:8px;margin:10px 0;padding:13px 14px;border:1px solid #b8deda;border-radius:14px;background:linear-gradient(145deg,#f1fbf9,#fff9f2)}
.reservation-price-editor>div{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:9px}.reservation-price-editor label{display:grid;gap:4px;color:#536d76;font-size:9px;font-weight:850}.reservation-price-editor input[type=number]{color:#0a6f6b;font-size:20px;font-weight:950}.reservation-price-editor button{min-height:43px;background:#0f766e;color:#fff}.reservation-price-editor p{margin:0;color:#60767e;font-size:10px}.reservation-price-editor p b{color:#9b5f26;font-size:13px}.reservation-price-editor .manual-price-toggle{display:flex;align-items:center;gap:7px;width:max-content;padding:6px 9px;border-radius:9px;background:#fff;color:#7b5b38}.reservation-price-editor .manual-price-toggle input{width:auto;margin:0}
@media(max-width:560px){.reservation-price-editor>div{grid-template-columns:1fr}.reservation-price-editor button{width:100%}.reservation-price-editor .manual-price-toggle{width:auto}}

/* Reception room occupancy and service-readiness signals. */
.reception-room>header{padding-right:14px}.reception-room>header .room-occupancy{padding:2px 6px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:900;line-height:1.25;white-space:nowrap}.room-occupancy.full{border-color:#b9e7d1;background:#eaf8ef;color:#16724c}.room-occupancy.partial{border-color:#b8cae6;background:#e8effc;color:#315c98}.room-occupancy.free{border-color:#f4b9b3;background:#fee4e2;color:#b42318}.room-service-dot{position:absolute;top:8px;right:8px;z-index:1;width:9px;height:9px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #102a4320}.room-service-dot.ok{background:#22a06b}.room-service-dot.alert{background:#d92d20;animation:reception-room-alert 1s ease-in-out infinite}.reception-room:has(.room-service-dot.alert){box-shadow:0 0 0 1px #d92d2026,0 8px 20px #d92d2014}@keyframes reception-room-alert{0%,100%{opacity:1;box-shadow:0 0 0 1px #d92d2040,0 0 0 0 #d92d2045}50%{opacity:.35;box-shadow:0 0 0 1px #d92d2040,0 0 0 5px #d92d2000}}@media(prefers-reduced-motion:reduce){.room-service-dot.alert{animation:none}}

/* Reception-only preview of encrypted guest check-in data. */
.guest-editor-grid:has(.guest-checkin-preview){grid-template-columns:1fr}.guest-checkin-preview{margin-top:10px!important;padding:0!important;border:1px solid #b9d9d6!important;border-radius:14px;background:linear-gradient(145deg,#f2fbfa,#fff);overflow:hidden}.guest-checkin-preview>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 12px;cursor:pointer;list-style:none}.guest-checkin-preview>summary::-webkit-details-marker{display:none}.guest-checkin-preview>summary>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#0d746e;color:#fff;font-size:15px}.guest-checkin-preview>summary>div{display:grid}.guest-checkin-preview>summary small{color:#6e848b;font-size:8px;text-transform:uppercase;letter-spacing:.35px}.guest-checkin-preview>summary b{color:#15394a;font-size:12px}.guest-checkin-preview>summary em{color:#607981;font-size:8px;font-style:normal;font-weight:800}.guest-checkin-preview[open]>summary{border-bottom:1px solid #dbe8e8;background:#ebf7f5}.guest-checkin-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:1px;background:#dfeaea}.guest-checkin-data>div{display:grid;gap:3px;min-width:0;padding:10px 11px;background:#fff}.guest-checkin-data small{color:#72868d;font-size:8px;text-transform:uppercase}.guest-checkin-data b{overflow-wrap:anywhere;color:#173548;font-size:11px}.guest-checkin-data .sensitive{background:#fffaf2}.guest-checkin-data .sensitive b{color:#7c4b18;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.35px}.guest-checkin-consents{display:flex;flex-wrap:wrap;gap:6px;padding:9px 11px;border-top:1px solid #e3ecec;background:#f7fafa}.guest-checkin-consents span{padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900}.guest-checkin-consents .ok{background:#dff6e9;color:#126b48}.guest-checkin-consents .missing{background:#fff0e8;color:#a44724}.guest-checkin-preview .identity-verification{margin:0;border-width:1px 0 0;border-radius:0;padding:10px 11px}.guest-checkin-preview .identity-verified{margin:0;border-radius:0;padding:9px 11px}
@media(max-width:720px){.guest-checkin-data{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.guest-checkin-preview>summary{grid-template-columns:32px minmax(0,1fr)}.guest-checkin-preview>summary em{grid-column:2}.guest-checkin-data{grid-template-columns:1fr}.guest-checkin-preview .identity-verification{grid-template-columns:1fr}.guest-checkin-preview .identity-verification button{width:100%}}

/* Reservation extensions, payment messages and invoice handoff. */
.reservation-message-body{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;background:#f2f7f8;border:1px solid #dbe7e9;border-radius:12px;padding:20px;max-width:100%}
.reservation-message{margin-top:16px;border-top:1px solid #dbe7e9;padding-top:16px}
.reservation-message summary{cursor:pointer;font-weight:600}
#rozliczenie>details>form{margin-top:18px}
.billing-facts{margin:20px 0}
.billing-facts>div{display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,2fr);gap:16px;padding:12px 0;border-bottom:1px solid #dbe7e9}
.billing-facts dt{font-weight:600}.billing-facts dd{margin:0;overflow-wrap:anywhere}
@media(max-width:600px){.billing-facts>div{grid-template-columns:1fr;gap:5px}.reservation-message-body{padding:14px}}
@media print{body:has(.billing-print)>header,body:has(.billing-print)>footer,body:has(.billing-print) .admin-rail,body:has(.billing-print) .admin-view-head,body:has(.billing-print) .no-print{display:none!important}body:has(.billing-print) .admin-app{display:block}.billing-print{box-shadow:none!important;border:0!important;margin:0!important;padding:0!important}.billing-facts>div{break-inside:avoid}}

/* Reservation accounting */
.billing-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:12px 0 22px}.billing-counters>div{padding:17px;border:1px solid var(--line,#dde5e8);border-radius:14px;background:var(--panel,#fff)}.billing-counters span{display:block;color:#546675;font-size:13px}.billing-counters strong{display:block;font-size:25px;margin-top:7px}.accounting-tabs{margin-bottom:18px;flex-wrap:wrap}.accounting-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.accounting-filters label{min-width:200px;flex:1}.accounting-check{display:flex!important;align-items:center;gap:10px;margin:15px 0;font-weight:700}.accounting-check input{width:22px;height:22px}.ops-table td small{display:block;font-size:12px;color:#64748b}.ops-table td form{margin:0}.ops-table td form button{white-space:nowrap}.billing-reservation>summary{padding:12px;cursor:pointer}.billing-reservation .billing-facts{padding:12px}
@media(max-width:650px){.billing-counters{grid-template-columns:1fr}.accounting-filters{display:grid;grid-template-columns:1fr}.accounting-tabs .button{flex:1;text-align:center}.billing-counters strong{font-size:22px}}
@media print{.billing-reservation>dl{display:grid!important}.billing-reservation>summary{display:block!important}.billing-counters{grid-template-columns:repeat(3,1fr)}.accounting-filters{display:none}}

.cash-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.cash-card{display:flex;flex-direction:column;padding:24px;gap:12px;color:inherit;text-decoration:none;border:2px solid transparent}.cash-card.selected{border-color:#15998d}.cash-card strong{font-size:32px;color:#0b6158}.cash-card small{color:#596c78}.billing-counters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media(max-width:650px){.cash-cards{grid-template-columns:1fr}.billing-counters{grid-template-columns:1fr}}
.table-scroll{overflow-x:auto;max-width:100%;min-width:0;-webkit-overflow-scrolling:touch}.table-scroll .ops-table{width:100%;border-collapse:collapse}.table-scroll .ops-table th,.table-scroll .ops-table td{vertical-align:top;padding:12px}.table-scroll .ops-table td .button,.table-scroll .ops-table td button{font-size:12px;padding:9px 12px}.table-scroll .ops-table td{white-space:normal}.table-scroll .ops-table td:nth-last-child(2){min-width:115px}.table-scroll .ops-table td .reservation-message-body{min-width:180px;max-width:320px}

.billing-guest-list{margin:0;padding-left:20px}.billing-guest-list li{padding:2px 0}.billing-room-table{margin:12px 0 22px}.billing-room-table td{min-width:140px}@media print{.billing-room-table{overflow:visible}.billing-room-table .ops-table{font-size:11px}.billing-room-table .ops-table tr{break-inside:avoid}.billing-room-table .ops-table th,.billing-room-table .ops-table td{padding:7px;min-width:0}.billing-room-table .ops-table thead{display:table-header-group}}

/* Client-facing accommodation statement */
.statement-selection{margin:0 0 20px}.statement-selection>summary{padding:15px 18px;background:#fff;border:1px solid #d4e2e5;border-radius:12px;cursor:pointer;font-weight:700;color:#294854}.statement-selection[open]>summary{margin-bottom:12px}.client-statement{--statement-ink:#12363d;--statement-teal:#067c72;--statement-muted:#607780;background:#f5f9f8;border:1px solid #d4e4e3;border-radius:22px;overflow:hidden;box-shadow:0 15px 42px #123a3d0d;margin:0 0 20px;color:var(--statement-ink)}.client-statement header.statement-hero{position:static;display:block;max-width:none;height:auto;padding:30px 34px 25px;background:linear-gradient(118deg,#0b2832,#114e52);color:#fff;border:0;box-shadow:none}.statement-brand{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:24px;border-bottom:1px solid #ffffff26}.statement-brand img{width:104px;height:49px;object-fit:contain}.statement-brand>span{font-size:10px;letter-spacing:2px;color:#a9d1cd;font-weight:700}.statement-title{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-top:26px}.statement-title p{margin:0 0 10px;font-size:10px;letter-spacing:1.9px;color:#8fd5c6;font-weight:700}.statement-title h2{margin:0 0 12px;font-size:clamp(25px,3vw,37px);line-height:1.12;letter-spacing:-.8px;color:#fff}.statement-title>div>span{display:block;color:#cfdfde;font-size:13px;line-height:1.6}.statement-date{text-align:right;flex-shrink:0;font-size:11px;color:#bfd5d2}.statement-date strong{display:block;color:#fff;font-size:17px;margin:6px 0}.statement-date span{display:block;font-size:10px}.statement-topline{display:flex;align-items:center;gap:24px;margin-top:27px;padding-top:20px;border-top:1px solid #ffffff26}.statement-topline>span{font-size:12px;color:#d9e8e5}.statement-topline b{font-size:20px;margin-right:5px;color:#fff}.statement-topline .statement-status{margin-left:auto;padding:7px 12px;border-radius:50px;font-size:11px;font-weight:700}.statement-status.due{background:#ffd49a;color:#633b06}.statement-status.paid{background:#a9efcf;color:#0e583d}.statement-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 28px;background:#fff;border-bottom:1px solid #e0ebe8}.statement-toolbar>span{font-size:12px;color:#607780}.statement-toolbar button{width:auto;background:#0c665e;color:#fff;font-size:12px;padding:10px 17px;border-radius:9px}.statement-rooms{padding:25px;display:grid;gap:23px}.statement-room{background:#fff;border:1px solid #d7e4e2;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px #163b3d04}.statement-room-head{display:flex;align-items:center;gap:20px;padding:22px 24px;border-bottom:1px solid #e4eeea}.statement-room-number{flex-shrink:0;min-width:78px;padding:12px 15px;border-radius:12px;background:#e7f4ef;text-align:center;color:#0c6b5f}.statement-room-number small{font-size:9px;font-weight:800;letter-spacing:1px;display:block}.statement-room-number strong{display:block;font-size:34px;line-height:1.15;letter-spacing:-1px}.statement-room-title{min-width:0}.statement-room-title p{font-size:13px;font-weight:700;margin:0 0 7px;color:#48656c}.statement-room-title h3{font-size:19px;letter-spacing:-.4px;line-height:1.3;margin:0 0 5px;color:#12363d}.statement-room-title h3 span{color:#71988e;margin:0 5px}.statement-room-title small{font-size:11px;color:#678379}.statement-index{margin-left:auto;align-self:flex-start;font-size:12px;font-weight:700;color:#a5bdb5;letter-spacing:1px}.statement-room-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,32%);gap:24px;padding:22px 24px}.statement-people h4{font-size:10px;letter-spacing:1px;margin:0 0 13px;color:#6b827e}.statement-people ol{list-style:none;padding:0;margin:0;display:grid;gap:9px}.statement-people li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:650;color:#173e42;overflow-wrap:anywhere}.statement-person-mark{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #dce9e3;background:#f4f8f6;border-radius:50%;color:#66867b;font-size:10px;font-weight:700}.statement-rate{background:#f0f7f3;border:1px solid #e0ece4;border-radius:12px;padding:17px}.statement-rate p{font-size:9px;font-weight:800;letter-spacing:1px;margin:0 0 7px;color:#587b6a}.statement-rate>strong{font-size:27px;letter-spacing:-.6px;display:block;color:#0b6051;line-height:1.3}.statement-rate>span{font-size:10px;color:#6a8775;display:block;margin:4px 0 12px}.statement-rate>div{font-size:11px;color:#375e4f;padding-top:10px;border-top:1px solid #d6e7dc}.statement-rate>small{display:block;font-size:10px;color:#6a8173;line-height:1.5;margin-top:8px}.statement-cost-lines{display:flex;gap:24px;align-items:center;border-top:1px dashed #d8e5df;margin:0 24px;padding:17px 0;color:#6d817d}.statement-cost-lines>span{font-size:11px}.statement-cost-lines b{display:block;font-size:14px;margin-top:4px;color:#294c46}.statement-cost-lines .statement-room-total{margin-left:auto;text-align:right;color:#365a4e}.statement-room-total strong{display:block;font-size:23px;line-height:1.25;margin-top:3px;color:#123e33;letter-spacing:-.5px}.client-statement footer.statement-room-footer{max-width:none;text-align:left;margin:0;padding:13px 24px;background:#f7faf8;border-top:1px solid #e5eee9;display:flex;flex-wrap:wrap;gap:9px 22px;font-size:10px;color:#647b70}.statement-room-footer b{margin-left:5px}.statement-room-footer .amount-due{color:#9c5406}.statement-room-footer .amount-paid{color:#128258}.statement-room-footer small{margin-left:auto;font-size:9px;color:#8b9d94}.client-statement .statement-grand-total{margin:0 25px 23px;padding:27px 28px;border-radius:15px;background:#102f38;display:grid;grid-template-columns:1fr 1fr;gap:35px;color:#d6e6e4;break-inside:avoid}.statement-grand-total p{font-size:9px;font-weight:750;letter-spacing:1.4px;margin:0 0 9px;color:#93cebd}.statement-grand-total h3{font-size:22px;line-height:1.2;margin:0 0 10px;color:#fff;letter-spacing:-.4px}.statement-grand-total>div>span{font-size:11px;color:#aacac3}.statement-grand-total dl{margin:0}.statement-grand-total dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-bottom:12px}.statement-grand-total dt{font-size:11px}.statement-grand-total dd{margin:0;font-size:15px;font-weight:750;color:#fff;white-space:nowrap}.statement-grand-total .statement-to-pay{margin:16px 0 0;padding-top:16px;border-top:1px solid #72988c4f;display:block}.statement-to-pay dt{color:#adcec4;font-size:11px}.statement-to-pay dd{font-size:35px;letter-spacing:-1px;color:#a6f0cd;margin-top:5px}.client-statement .statement-bank{margin:0 25px 22px;padding:21px 24px;background:#e9f2ed;border:1px solid #d6e7da;border-radius:12px;display:grid;grid-template-columns:.9fr 1.3fr;gap:24px;break-inside:avoid}.statement-bank p{font-size:9px;font-weight:800;letter-spacing:1px;color:#638372;margin:0 0 8px}.statement-bank b{display:block;font-size:12px;color:#355548}.statement-bank span{display:block;font-size:10px;color:#64816e;line-height:1.6;margin-top:5px}.statement-bank strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:15px;line-height:1.65;color:#164b35;overflow-wrap:anywhere;word-spacing:2px}.client-statement footer.statement-footnote{margin:0;padding:0 26px 22px;text-align:left;font-size:9px;color:#8a9d92;line-height:1.6;max-width:none}.client-statement .no-print{print-color-adjust:exact}.client-statement{print-color-adjust:exact;-webkit-print-color-adjust:exact}
@media(max-width:1000px){.statement-room-body{grid-template-columns:minmax(0,1fr) 210px}.statement-grand-total{gap:20px}.statement-title h2{font-size:28px}.statement-title{gap:16px}.statement-cost-lines{gap:15px}}
@media(max-width:650px){.client-statement{border-radius:16px}.client-statement header.statement-hero{padding:23px 20px}.statement-brand>span{font-size:8px;letter-spacing:1px}.statement-brand img{width:85px;height:40px}.statement-title{display:block;margin-top:21px}.statement-title h2{font-size:28px}.statement-date{display:none}.statement-topline{gap:13px;margin-top:22px}.statement-topline>span{font-size:10px}.statement-topline b{font-size:16px}.statement-topline .statement-status{font-size:9px;padding:6px 9px}.statement-toolbar{padding:13px 17px}.statement-toolbar>span{display:none}.statement-toolbar button{width:100%}.statement-rooms{padding:14px;gap:15px}.statement-room-head{padding:16px 14px;gap:12px}.statement-room-number{min-width:62px;padding:10px 9px}.statement-room-number strong{font-size:28px}.statement-room-title p{font-size:11px}.statement-room-title h3{font-size:14px}.statement-room-title h3 span{margin:0 1px}.statement-index{display:none}.statement-room-body{display:flex;flex-direction:column;padding:18px 15px;gap:18px}.statement-rate{padding:14px}.statement-rate>strong{font-size:27px}.statement-people li{font-size:13px}.statement-cost-lines{margin:0 15px;gap:17px;flex-wrap:wrap}.statement-cost-lines .statement-room-total{width:100%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e4ece7;padding-top:12px;text-align:left}.statement-room-total strong{font-size:23px;margin:0}.client-statement footer.statement-room-footer{padding:12px 15px;gap:9px 15px}.statement-room-footer small{width:100%;margin:0}.client-statement .statement-grand-total{margin:0 14px 15px;padding:22px;grid-template-columns:1fr;gap:24px}.statement-grand-total h3{font-size:22px}.statement-to-pay dd{font-size:33px}.client-statement .statement-bank{margin:0 14px 16px;padding:19px;grid-template-columns:1fr;gap:20px}.statement-bank strong{font-size:15px}.client-statement footer.statement-footnote{padding:0 20px 20px}}
@media print{@page{size:A4;margin:11mm}body:has(.client-statement){background:#fff}body:has(.client-statement)>main{padding:0!important;max-width:none!important}.client-statement.billing-print{border-radius:0;overflow:visible;background:#fff}.client-statement header.statement-hero{padding:20px 24px;border-radius:12px}.statement-title{margin-top:16px}.statement-title h2{font-size:25px}.statement-brand{padding-bottom:15px}.statement-topline{margin-top:17px;padding-top:13px}.statement-date{display:block}.statement-toolbar{display:none}.statement-rooms{padding:18px 0;gap:16px}.statement-room{break-inside:avoid;box-shadow:none}.statement-room-head{padding:15px 20px}.statement-room-body{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:20px;padding:16px 20px}.statement-room-title h3{font-size:17px}.statement-people li{font-size:12px}.statement-rate>strong{font-size:25px}.statement-cost-lines{margin:0 20px;padding:13px 0}.client-statement footer.statement-room-footer{padding:10px 20px}.client-statement .statement-grand-total{margin:0 0 17px;padding:22px;grid-template-columns:1fr 1fr;gap:25px}.client-statement .statement-bank{margin:0 0 16px;padding:19px 22px;grid-template-columns:1fr 1.2fr}.client-statement footer.statement-footnote{padding:0 3px;font-size:8px}.statement-room-total strong{font-size:21px}.statement-to-pay dd{font-size:29px}.statement-brand>span{font-size:9px}.statement-index{display:block}}

.statement-email-preview{display:block;width:100%;height:720px;border:1px solid #d9e5df;border-radius:14px;background:#eff5f2;margin:16px 0}.statement-text-preview{margin:12px 0 18px}.statement-text-preview summary{cursor:pointer;color:#57756a;font-size:12px}
body:has(.client-statement)>header{position:relative}@media(max-width:820px){body:has(.client-statement) .admin-rail{position:relative;top:auto}body:has(.client-statement) .admin-rail nav{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}}@media print{.client-statement header.statement-hero{display:block!important;break-inside:avoid}}

/* Shared period selection for statements, documents and cash history. */
.period-panel{padding:18px 22px;margin:0 0 20px}.period-fields{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:12px 0}.period-fields label{min-width:155px;flex:1;margin:0}.period-fields input{min-width:0;width:100%;height:41px}.period-fields button{height:41px;width:auto;margin:0;white-space:nowrap}.period-form-row{display:flex;align-items:end;gap:14px}.period-form-row .period-fields{flex:1}.period-form-row>button{margin-bottom:12px;height:41px;width:auto}.statement-period{display:inline-block;padding:7px 11px;margin:0 0 13px;border:1px solid #78b7a888;border-radius:7px;color:#c3f3de;font-size:13px;font-weight:700}.accounting-filters .period-fields{margin:0}.accounting-list-total{padding:17px;background:#eff7f2;border-radius:10px}.cash-period-summary{margin:18px 0}@media(max-width:650px){.period-panel{padding:16px}.period-form-row{display:block}.period-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.period-fields label{min-width:0}.period-fields label:first-child{grid-column:1/-1}.period-fields button{width:100%}.period-form-row>button{width:100%;margin:5px 0}.period-fields input{font-size:13px}.statement-period{font-size:11px}.accounting-filters .period-fields{width:100%}}
