.settings-workspace{box-sizing:border-box;color:#183629;background:radial-gradient(circle at 100% 0,#eaf6ed 0,#0000 34%),#f8fbf8;border:1px solid #d8e6dc;border-radius:22px;width:100%;min-width:0;padding:clamp(16px,2vw,28px);box-shadow:0 18px 48px #153d2412}.settings-hero{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.settings-hero h1,.settings-panel__header h2,.settings-card h3{color:#153c27;margin:0}.settings-hero h1{font-size:clamp(1.65rem,2vw,2.15rem)}.settings-hero p,.settings-panel__header p,.settings-card__heading p{color:#65766d;margin:5px 0 0;line-height:1.5}.settings-eyebrow{color:#287744;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:800;display:inline-flex}.settings-status,.settings-badge{white-space:nowrap;color:#1d6638;background:#e2f1e6;border-radius:999px;align-items:center;padding:6px 10px;font-size:.76rem;font-weight:750;display:inline-flex}.settings-status--warning,.settings-badge--warning{color:#745600;background:#fff1cc}.settings-badge--muted{color:#5b6a62;background:#edf1ee}.settings-tabs{background:#fff;border:1px solid #d7e4da;border-radius:15px;gap:8px;margin-bottom:22px;padding:6px;display:flex;overflow-x:auto;box-shadow:0 8px 24px #153d240c}.settings-tabs button{color:#315f42;background:0 0;border:1px solid #0000;border-radius:10px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:9px 14px;font-weight:750;display:inline-flex}.settings-tabs button:hover{background:#eff7f1}.settings-tabs .settings-tab--active{color:#fff;background:linear-gradient(135deg,#2a8049,#20693c);box-shadow:0 7px 16px #236e4030}.settings-content,.settings-panel,.settings-form-stack{gap:16px;min-width:0;display:grid}.settings-panel__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.settings-panel__header h2{font-size:1.35rem}.settings-card{background:#fff;border:1px solid #d8e4db;border-radius:16px;min-width:0;padding:clamp(15px,1.7vw,22px);box-shadow:0 7px 22px #153d240a}.settings-card__heading{align-items:flex-start;gap:11px;margin-bottom:16px;display:flex}.settings-card__heading h3{font-size:1rem}.settings-card__icon{color:#247443;background:#e5f3e9;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.settings-form-grid{gap:14px;min-width:0;display:grid}.settings-form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-field{color:#334f40;flex-direction:column;gap:6px;min-width:0;display:flex}.settings-field>span{font-size:.79rem;font-weight:750}.settings-field small{color:#708078;font-size:.72rem;line-height:1.4}.settings-field--wide{grid-column:span 1}.settings-workspace input:not([type=checkbox]),.settings-workspace select,.settings-workspace textarea{box-sizing:border-box;color:#173627;background:#fbfdfb;border:1px solid #b9cbbf;border-radius:9px;width:100%;min-width:0;padding:10px 11px}.settings-workspace textarea{resize:vertical;min-height:84px}.settings-workspace input:focus,.settings-workspace select:focus,.settings-workspace textarea:focus{background:#fff;border-color:#2a7947;outline:3px solid #69ad7d42}.settings-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.settings-toggle{background:#f7faf8;border:1px solid #dce7df;border-radius:11px;align-items:flex-start;gap:10px;padding:12px;display:flex}.settings-toggle input{accent-color:#247844;margin-top:2px}.settings-toggle span{font-weight:700}.settings-toggle small{color:#6c7c73;margin-top:2px;display:block}.settings-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.settings-summary-grid div{background:#f7faf8;border:1px solid #dce7df;border-radius:11px;padding:12px}.settings-summary-grid dt{color:#697970;font-size:.72rem}.settings-summary-grid dd{overflow-wrap:anywhere;margin:5px 0 0;font-weight:750}.settings-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-actions--sticky{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #d4e3d8;border-radius:13px;justify-content:flex-end;padding:12px;position:sticky;bottom:10px;box-shadow:0 9px 28px #173d2520}.settings-primary,.settings-secondary,.settings-danger{border-radius:9px;min-height:40px;padding:8px 13px;font-weight:750}.settings-primary{color:#fff;background:#247844;border-color:#247844}.settings-secondary{color:#285e3c;background:#fff;border-color:#b9cbbf}.settings-danger{color:#9b392c;background:#fff3f0;border-color:#e6b7ae}.settings-alert,.settings-state,.settings-hint{border-radius:10px;margin:0;padding:11px 13px;line-height:1.45}.settings-state,.settings-hint{color:#52675b;background:#f0f5f1}.settings-alert--success{color:#176337;background:#e3f4e8}.settings-alert--error{color:#8d3328;background:#fff0ed}.settings-alert--warning{color:#725600;background:#fff4d5}.settings-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.settings-table-wrap{border:1px solid #dce5df;border-radius:12px;width:100%;min-width:0;overflow-x:auto}.settings-table{border-collapse:collapse;background:#fff;width:100%;min-width:720px}.settings-table th{color:#5d6f65;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:#f1f6f2;padding:10px 12px;font-size:.72rem}.settings-table td{vertical-align:top;border-top:1px solid #e1e9e3;padding:11px 12px}.settings-table__preview{white-space:normal;max-width:760px;line-height:1.45}.settings-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5faf6;border:1px solid #cfe0d4;border-radius:11px;margin:0;padding:14px}.payment-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.payment-destination-card{gap:14px;display:grid}.payment-destination-card__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.payment-destination-card__header h3{margin:0;font-size:1rem}.settings-workspace .dictionaries-page{gap:16px;display:grid}.settings-workspace .dictionaries-page>section,.settings-workspace .dictionaries-page>article{background:#fff;border:1px solid #d8e4db;border-radius:16px;padding:18px}@media (width<=900px){.settings-form-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-summary-grid,.payment-destination-grid{grid-template-columns:1fr}}@media (width<=640px){.settings-workspace{border-radius:14px;padding:12px}.settings-hero{flex-direction:column}.settings-tabs{margin-inline:-4px}.settings-tabs button{min-height:40px;padding:8px 11px}.settings-form-grid--two,.settings-form-grid--three,.settings-toggle-grid{grid-template-columns:1fr}.settings-actions>button{width:100%}.settings-actions--sticky{position:static}}:root{--app-header-height:96px;--app-modal-gap:24px;--app-modal-top-offset:calc(var(--app-header-height) + var(--app-modal-gap));color:#16321f;background:#f3f7ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}body{background:radial-gradient(circle at 15% 10%,#8bc34a29,#0000 34rem),linear-gradient(145deg,#f7faf3 0%,#edf5e8 100%);min-width:320px;min-height:100vh;margin:0}.shell{place-items:center;min-height:100vh;padding:24px;display:grid}.shell:has(.app-card--workspace){grid-template-columns:minmax(0,1fr);align-items:start;width:100%;padding:10px 14px 18px}.card{background:#fff;border:1px solid #d8e6d4;border-radius:28px;width:min(720px,100%);padding:40px;box-shadow:0 24px 80px #16321f24}.eyebrow{color:#5f7d68;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:14px;font-weight:700}h1{color:#14391f;margin:0;font-size:clamp(32px,5vw,52px);line-height:1.05}.lead{color:#46624d;margin:20px 0;font-size:18px;line-height:1.65}ul{color:#284832;margin:0 0 28px;padding-left:22px;line-height:1.8}.health-link{color:#fff;background:#2f6d3d;border-radius:999px;padding:12px 18px;font-weight:700;text-decoration:none;display:inline-flex}.health-link:focus,.health-link:hover{background:#245631}button,input,select{border:1px solid #c8d9c3;border-radius:10px;padding:9px 12px}button{color:#fff;cursor:pointer;background:#2f6d3d;font-weight:700}button:disabled{cursor:not-allowed;opacity:.5}nav,.actions,.filters{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.error{color:#9f1239;font-weight:700}.success{color:#166534;font-weight:700}.rooms-toolbar{flex-wrap:wrap;align-items:end;gap:10px;margin:14px 0 18px;display:flex}.rooms-toolbar label,.rooms-toolbar__form{flex-wrap:wrap;align-items:end;gap:8px;margin:0;display:flex}.rooms-toolbar input,.rooms-toolbar select{min-width:min(100%,150px)}.rooms-toolbar__print-name{color:#46624d;font-size:.9rem}.rooms-toolbar__print-name input{min-width:min(100%,260px)}.rooms-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch;gap:12px;min-width:0;display:grid}.room-card{background:linear-gradient(#fff 0%,#f8fbf6 100%);border:1px solid #d8e6d4;border-radius:18px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex;box-shadow:0 10px 24px #18381f14}.room-card__header{min-width:0;display:block}.room-card__title{overflow-wrap:normal;word-break:normal;width:100%;min-width:0;margin:0;font-size:1.05rem;line-height:1.2}.room-card__print-name{color:#71806d;overflow-wrap:anywhere;margin:4px 0 0;font-size:.84rem;line-height:1.3}.room-card__actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;min-width:0;margin-top:2px;display:flex}.icon-button,.room-action-button{color:#1f5a32;background:#edf6e9;border:1px solid #bdd6b6;border-radius:12px;place-items:center;width:38px;min-width:38px;height:38px;padding:0;line-height:1;display:inline-grid;box-shadow:0 5px 12px #18381f1a}.icon-button:hover:not(:disabled),.room-action-button:hover:not(:disabled),.icon-button:focus-visible,.room-action-button:focus-visible{color:#fff;outline-offset:2px;background:#2f6d3d;outline:3px solid #2f6d3d38}.room-action-button--danger{color:#9b1c1c;background:#fff1f1;border-color:#e3a4a4}.room-action-button--danger:hover:not(:disabled),.destructive-button:not(:disabled){color:#fff;background:#b42318;border-color:#991b1b}.room-delete-dialog{width:min(520px,100% - 32px)}.room-card__meta{flex-wrap:wrap;gap:6px;min-width:0;margin:0;display:flex}.room-card__chip{color:#214229;background:#f3f8f1;border:1px solid #dbe9d6;border-radius:999px;align-items:center;gap:4px;min-width:0;max-width:100%;padding:5px 8px;font-size:.84rem;line-height:1.2;display:inline-flex}.room-card__chip--inactive{color:#7c4a03;background:#fff7e8;border-color:#ead5b1}.room-card__chip dt{color:#5d7059;flex:none;font-weight:700}.room-card__chip dt:after{content:":"}.room-card__chip dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:700}@media (width<=640px){.shell{place-items:start;padding:10px}.shell:has(.app-card--workspace){padding:8px}.card{border-radius:18px;padding:18px}nav,.actions,.filters,label,.rooms-toolbar,.rooms-toolbar label,.rooms-toolbar__form{width:100%;display:grid}.rooms-grid{grid-template-columns:minmax(0,1fr)}button,input,select{width:100%}.room-action-button{width:38px;min-width:38px}}.dictionary-card,.reason-group{border:1px solid #d8e6d4;border-radius:16px;margin:12px 0;padding:14px}.dictionary-card h5,.dictionary-card h6{margin:0 0 8px}.settings-page,.dictionaries-page{width:100%}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;display:grid}.dashboard-grid article,.dashboard-grid .summary-card{background:#f7fbf5;border:1px solid #d5ded2;border-radius:.75rem;padding:.75rem;box-shadow:inset 0 1px #ffffffb3}.dashboard-grid .summary-card--arrivals{background:#f4fbf7;border-color:#cfe5d7}.dashboard-grid .summary-card--departures{background:#f4f9fd;border-color:#cfe1ef}.dashboard-grid .summary-card--staying{background:#f3fbf9;border-color:#cce6df}.dashboard-grid .summary-card--cancelled{background:#fff7f8;border-color:#efd3d7}.dashboard-grid .summary-card--no-show{background:#f8f7fc;border-color:#ddd7e8}.dashboard-grid .summary-card--payments{background:#fffaf0;border-color:#eadfbf}.dashboard-grid .summary-card--occupancy{transition:background-color .16s,border-color .16s}.dashboard-grid b,.dashboard-grid small{color:#4f654f;font-size:.82rem}.dashboard-grid span{font-size:1.75rem;font-weight:700;display:block}.dashboard-tables{grid-template-columns:1fr;gap:.85rem;margin-top:10px;display:grid}.dashboard-tables section{background:#fbfdf9;border:1px solid #d8e6d4;border-radius:16px;min-width:0;padding:.75rem;overflow-x:hidden}.dashboard-tables h3{margin:0 0 .55rem;font-size:1rem}.dashboard-page table{border-collapse:collapse;width:100%;min-width:680px;margin:0;font-size:.88rem}.dashboard-page table.summary-table{table-layout:auto;white-space:normal;min-width:0;max-width:100%;display:table;overflow:visible}.dashboard-page th,.dashboard-page td{text-align:left;vertical-align:top;overflow-wrap:anywhere;word-break:break-word;border:1px solid #d5ded2;padding:.35rem .42rem}.dashboard-page .summary-table th,.dashboard-page .summary-table td{overflow-wrap:anywhere;white-space:normal;word-break:normal;line-height:1.25}.dashboard-page .summary-table .link-button{overflow-wrap:anywhere;text-align:left;white-space:normal;max-width:100%;line-height:1.25}@media (width<=900px){.dashboard-page table.summary-table{table-layout:fixed;font-size:.82rem}.dashboard-page .summary-table th,.dashboard-page .summary-table td{padding:.28rem .3rem}}@media (width<=640px){.dashboard-tables section{padding:.55rem}.dashboard-page table.summary-table{font-size:.76rem}.dashboard-page .summary-table th,.dashboard-page .summary-table td{padding:.22rem .24rem}}.dashboard-page th{color:#34523a;background:#eff7ec;font-weight:700}@media (width>=1100px){.dashboard-tables{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.no-print,nav,.error,.success{display:none!important}.shell,.card{box-shadow:none;border:0;padding:0}.dashboard-page{color:#000;font-size:11pt}.dashboard-grid{grid-template-columns:repeat(4,1fr)}}.offline-status{color:#195b2d;background:#effaf1;border:1px solid #a9d4b2;border-radius:14px;align-items:flex-start;gap:10px;margin:0;padding:11px 13px;font-size:14px;line-height:1.45;display:flex}.offline-status strong{display:block}.offline-status__dot{background:#258742;border-radius:50%;flex:none;width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 4px #25874221}.offline-status--degraded{color:#7c4b0c;background:#fff9eb;border-color:#e9be72}.offline-status--degraded .offline-status__dot{background:#d18413}.offline-status--offline{color:#8a2525;background:#fff2f2;border-color:#e4a3a3}.offline-status--offline .offline-status__dot{background:#c83d3d}.offline-conflicts{background:#fffbeb;border:1px solid #f59e0b;border-radius:.75rem;margin-bottom:1rem;padding:1rem}.offline-conflicts li{margin-bottom:.5rem}.offline-pending-badge{margin-left:.5rem;font-weight:700;display:inline-block}.app-card--workspace{border-radius:22px;width:min(1600px,100%);min-width:0;max-width:100%;padding:12px 14px 18px}.app-card--login{background:#fffffff5;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:clamp(28px,5vw,72px);width:min(1040px,100%);padding:clamp(28px,5vw,64px);display:grid;overflow:hidden}.app-card--login .app-header{grid-row:1/span 4;align-self:center;margin:0}.app-card--login .app-brand{min-width:0;display:grid}.app-brand__logo{width:min(360px,100%);height:auto;margin-bottom:32px;display:block}.app-card--login h1{max-width:12ch;font-size:clamp(34px,4.2vw,54px)}.app-brand__subtitle{color:#55705c;max-width:38ch;margin:18px 0 0;font-size:17px;line-height:1.55}.app-card--login>.error,.app-card--login>.success,.app-card--login>.offline-status,.app-card--login>.login-form{grid-column:2}.app-card--login>.error,.app-card--login>.success{border-radius:12px;margin:0;padding:11px 13px}.app-card--login>.error{background:#fff1f3;border:1px solid #e8a5ad}.login-form{background:#fff;border:1px solid #d8e6d4;border-radius:22px;align-self:center;gap:18px;padding:clamp(22px,3vw,32px);display:grid;box-shadow:0 20px 50px #16321f1a}.login-form__heading h2{color:#14391f;margin:0;font-size:28px}.login-form__heading p:not(.eyebrow){color:#607466;margin:8px 0 0;line-height:1.45}.login-field{color:#243f2c;gap:7px;font-size:14px;font-weight:700;display:grid}.login-field input{color:#17361f;width:100%;min-height:48px;font:inherit;background:#fbfdf9;border-color:#b9cdb5;border-radius:12px;font-weight:500;transition:border-color .15s,box-shadow .15s,background .15s}.login-field input:hover{background:#fff;border-color:#7ea975}.login-field input:focus-visible{border-color:#2f6d3d;outline:0;box-shadow:0 0 0 4px #2f6d3d2b}.login-field input:user-invalid{border-color:#bc4a59}.login-field small{color:#6d7e71;font-size:12px;font-weight:500}.login-submit{background:linear-gradient(#397f49,#286437);border:1px solid #225a31;border-radius:13px;justify-content:center;align-items:center;gap:10px;min-height:50px;font-size:16px;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex;box-shadow:0 10px 22px #28643733}.login-submit:hover:not(:disabled){background:linear-gradient(#438e54,#2d7040);transform:translateY(-1px);box-shadow:0 13px 26px #28643742}.login-submit:focus-visible{outline-offset:3px;outline:3px solid #2f6d3d47}.login-submit:disabled{box-shadow:none;background:#809c86}.login-spinner{border:2px solid #ffffff61;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite login-spin}@keyframes login-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.login-spinner{animation-duration:1.5s}.login-submit{transition:none}}@media (width<=760px){.shell{padding:18px}.app-card--login{grid-template-columns:minmax(0,1fr);gap:20px;padding:clamp(22px,6vw,36px)}.app-card--login>.app-header,.app-card--login>.error,.app-card--login>.success,.app-card--login>.offline-status,.app-card--login>.login-form{grid-column:1}.app-card--login>.app-header{grid-row:auto}.app-card--login h1{max-width:none;font-size:clamp(30px,8vw,42px)}.app-brand__logo{width:min(290px,100%);margin-bottom:22px}}@media (width<=390px){.shell{padding:0}.app-card--login{border:0;border-radius:0;min-height:100vh;padding:22px 16px 28px}.app-card--login h1{font-size:29px}.app-brand__subtitle{font-size:15px}.login-form{border-radius:18px;padding:20px 16px}}.app-card--workspace>div,.app-card--workspace fieldset,.bookings-page,.clients-page,.dashboard-page,.settings-page,.dictionaries-page{min-width:0}fieldset.offline-guard{border:0;width:100%;min-width:0;max-width:100%;margin:0;padding:0;position:relative}nav{border-bottom:1px solid #d8e6d4;align-items:center;padding-bottom:12px}table{border-collapse:collapse;min-width:1080px}.clients-page table,.dashboard-page table,.settings-page table,.payment-journal-page table{white-space:nowrap;max-width:100%;display:block;overflow-x:auto}.dashboard-page table.summary-table{white-space:normal;display:table;overflow-x:visible}form,label,input,select,textarea{max-width:100%}textarea{border:1px solid #c8d9c3;border-radius:10px;width:min(100%,520px);min-height:90px;padding:9px 12px}.bookings-page{gap:16px;display:grid}.calendar-scroll{--calendar-header-bg:#edf7ea;--calendar-grid-border:#b8cfb3;--calendar-row-border:#a9c4a4;--calendar-free-cell-bg:#fcfefb;--calendar-free-cell-hover:#f0f8ed;--calendar-booking-lane-height:26px;--calendar-booking-lane-gap:3px;--calendar-row-vertical-padding:4px;--booking-angle-size:12px;--booking-half-day-gap:3px;border:1px solid var(--calendar-grid-border);background:#fff;border-radius:12px;max-width:100%;overflow:auto visible}.calendar-grid{grid-template-columns:minmax(58px, 72px) repeat(var(--calendar-days), minmax(0, 1fr));min-width:0;display:grid}.calendar-head,.calendar-room,.calendar-cell{border-right:1px solid var(--calendar-grid-border);border-bottom:1px solid var(--calendar-grid-border);min-width:0}.calendar-head,.calendar-room{padding:clamp(4px,.5vw,6px)}.calendar-cell{padding:0}.calendar-cell--occupied{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.calendar-head,.calendar-head--sticky{z-index:20;background:var(--calendar-header-bg);color:#24472d;text-align:center;font-weight:800;position:sticky;top:0}.calendar-room{z-index:2;background:#f7fbf5;font-weight:800;position:sticky;left:0}.calendar-head:first-child{z-index:25;text-align:left;left:0}.calendar-cell{background:var(--calendar-free-cell-bg);cursor:pointer;appearance:none;border-radius:0}.calendar-cell:hover{background:var(--calendar-free-cell-hover)}.booking-pill{box-sizing:border-box;color:#fff;text-align:left;text-overflow:ellipsis;white-space:nowrap;border:3px solid #0000;border-radius:999px;width:100%;height:auto;min-height:28px;margin:0;padding:clamp(3px,.35vw,5px) clamp(4px,.55vw,8px);font-size:clamp(10px,.85vw,13px);line-height:1.2;display:block;overflow:hidden;box-shadow:0 6px 16px #16321f24}.booking-pill--range-start,.booking-pill--range-middle{width:calc(100% + 1px);margin-right:-1px}.booking-pill--range-middle{border-left-color:#0000;border-right-color:#0000;box-shadow:0 6px 16px #16321f14}.booking-pill--range-start{border-right-color:#0000}.booking-pill--range-end{border-left-color:#0000}.group-badge{background:#ffffff38;border-radius:999px;margin-right:4px;padding:1px 6px;font-size:12px;display:inline-block}@media (width<=900px){.app-card--workspace{border-radius:18px;padding:14px}}.app-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.app-header--compact{z-index:4000;margin-bottom:8px;position:relative;overflow:visible}.user-strip{z-index:4100;color:#31543a;flex-wrap:wrap;align-items:center;gap:6px;width:100%;display:flex;position:relative}.user-strip__identity{color:#14391f;white-space:nowrap;margin-right:4px;font-size:14px}.status-chip{background:#f7fbf5;border:1px solid #d8e6d4;border-radius:999px;padding:6px 9px;font-size:13px;font-weight:700;line-height:1.15}.status-chip--online{color:#166534;background:#eefaf0;border-color:#9bd3a7}.status-chip--offline{color:#9a3412;background:#fff7ed;border-color:#f5c16c}.compact-button{margin:0;padding:6px 10px;font-size:13px;line-height:1.15}.compact-button--ghost{color:#245631;background:#f7fbf5;border-color:#b8d1b2}.main-nav{background:#fffffff0;border:1px solid #d8e6d4;border-radius:14px;padding:7px;overflow:visible;box-shadow:0 10px 28px #16321f14}.admin-menu{z-index:4300;align-items:center;display:inline-flex;position:relative;overflow:visible}.admin-menu__trigger{cursor:pointer;list-style:none}.admin-menu--open{z-index:4500}.calendar-head--today,.calendar-cell--today{box-shadow:inset 0 0 0 2px #f59e0b}.calendar-cell:empty:after{content:"Свободно";color:#8ca38d;font-size:11px}.payment-journal-page,.dashboard-page,.clients-page{background:#fff;border:1px solid #d8e6d4;border-radius:20px;padding:clamp(14px,2vw,22px);box-shadow:0 18px 50px #16321f17}@media (width>=1200px){.app-card--workspace{width:calc(100vw - 48px)}}@media (width<=900px){.app-header{display:grid}.user-strip{justify-content:flex-start}.user-strip__identity,.status-chip,.compact-button{width:auto}}.link-button{color:#1d4f2a;box-shadow:none;background:0 0;border:0;margin:0;padding:0;text-decoration:underline}.preview-overlay{z-index:1000;background:#0b1c1052;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.preview-dialog{background:#fff;border:1px solid #d8e6d4;border-radius:18px;width:min(520px,100vw - 32px);max-height:calc(100vh - 36px);padding:20px;position:relative;overflow:auto;box-shadow:0 24px 80px #16321f38}.preview-dialog h3{margin-top:0}.preview-close{border-radius:999px;width:34px;min-width:34px;padding:4px 0;position:absolute;top:10px;right:10px}.preview-list{grid-template-columns:minmax(110px,.45fr) 1fr;gap:.45rem .75rem;margin:0;display:grid}.preview-list dt{color:#5c705c;font-weight:700}.preview-list dd{margin:0}.nav-button--active,.admin-menu__trigger.nav-button--active,.admin-menu__item--active{color:#16321f;background:#dff3df;border-color:#1f6f35;box-shadow:inset 0 0 0 2px #1f6f352e}.admin-menu__trigger:hover,.admin-menu__trigger:focus{color:#fff;background:#245631;border-color:#245631}.admin-menu__list{z-index:4600;pointer-events:auto;overscroll-behavior:contain;background:#fff;border:1px solid #c8d9c3;border-radius:14px;min-width:230px;padding:6px;display:grid;position:fixed;overflow:auto;box-shadow:0 18px 48px #16321f2e}.admin-menu__list button{pointer-events:auto;color:#24472d;text-align:left;background:0 0;border-radius:10px;width:100%;margin:0}.admin-menu__list button:hover,.admin-menu__list button:focus{background:#eef7ec}.calendar-toolbar{align-items:center;margin-top:0}.calendar-toolbar__create-actions{flex-wrap:wrap;gap:8px;display:inline-flex}.calendar-legend{color:#31543a;flex-wrap:wrap;flex:320px;justify-content:flex-end;align-items:center;gap:6px 10px;min-width:min(100%,260px);margin-left:auto;font-size:12px;font-weight:700;display:flex}.calendar-legend__item{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.calendar-legend__swatch,.calendar-legend__outline{border-radius:999px;width:18px;height:10px;display:inline-block}.calendar-legend__outline--paid{border:2px solid #16a34a}.calendar-legend__outline--unpaid{border:2px solid #dc2626}@media (width<=720px){.calendar-legend{justify-content:flex-start;margin-left:0}}.date-shift-button,.calendar-arrow{text-align:center;width:38px;min-width:38px;padding:7px 0}.calendar-range{color:#24472d;align-items:center;min-height:34px;display:inline-flex}.calendar-grid{grid-template-columns:minmax(58px, 72px) repeat(var(--calendar-days), minmax(0, 1fr))}.calendar-room,.calendar-head:first-child{text-align:center;width:auto;min-width:58px}.booking-pill--single,.booking-pill--range-single{border-radius:999px}.booking-pill--start,.booking-pill--range-start{border-radius:999px 0 0 999px}.booking-pill--middle,.booking-pill--range-middle{border-radius:0}.booking-pill--end,.booking-pill--range-end{border-radius:0 999px 999px 0}.booking-pill--paid{border-color:#16a34a}.booking-pill--unpaid{border-color:#dc2626}.booking-pill--range-middle.booking-pill--paid,.booking-pill--range-middle.booking-pill--unpaid{border-left-color:#0000;border-right-color:#0000}.booking-pill--range-start.booking-pill--paid,.booking-pill--range-start.booking-pill--unpaid{border-right-color:#0000}.booking-pill--range-end.booking-pill--paid,.booking-pill--range-end.booking-pill--unpaid{border-left-color:#0000}.inline-message,.form-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-modal-overlay{z-index:7000;padding:max(18px, env(safe-area-inset-top)) 18px 18px;pointer-events:none;background:#0b1c105c;place-items:start center;display:grid;position:fixed;inset:0}.booking-modal{z-index:1;pointer-events:auto;border:1px solid var(--calendar-grid-border);width:min(820px,100vw - 32px);max-height:calc(100vh - 36px);padding:max(18px, env(safe-area-inset-top)) 64px 18px 18px;background:#fff;border-radius:12px;position:relative;overflow:auto;box-shadow:0 24px 80px #16321f38}.booking-modal .preview-close{z-index:2}.booking-details-panel{gap:8px;display:grid}.booking-details-panel h3,.booking-details-panel h4,.booking-details-panel p,.booking-details-panel ul{margin-top:0;margin-bottom:8px}.group-booking-form__comment{resize:vertical;height:40px;min-height:40px;line-height:1.2}.payment-comment-input{width:20ch}.prepayment-panel{gap:8px;display:grid}.prepayment-panel__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.prepayment-panel__header h4{margin-bottom:0}.prepayment-panel__toggle{border-radius:999px;width:34px;min-width:34px;height:34px;padding:0;font-size:20px;line-height:1}@media (width<=640px){.calendar-scroll{overflow-x:auto}.calendar-grid{grid-template-columns:64px repeat(var(--calendar-days), minmax(82px, 1fr));min-width:max-content}.booking-modal-overlay{padding:max(10px, env(safe-area-inset-top)) 8px 10px}.booking-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 20px);padding:14px}.booking-actions{align-items:stretch}.booking-action-button{flex:150px}}.booking-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-action-button{width:auto;min-width:0;margin:0;padding:6px 10px;font-size:13px;line-height:1.2}.booking-action-button--danger{background:#dc2626}.data-table-wrapper{background:#fff;border:1px solid #cfe0c9;border-radius:18px;max-width:100%;overflow-x:auto;box-shadow:0 16px 42px #16321f14}.clients-table{border-collapse:separate;border-spacing:0;color:#1f3d28;white-space:nowrap;width:100%;min-width:920px;display:table}.clients-table th,.clients-table td{text-align:left;vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #dce9d7;border-right:1px solid #dce9d7;padding:12px 14px}.clients-table th:last-child,.clients-table td:last-child{border-right:0}.clients-table tbody tr:last-child td{border-bottom:0}.clients-table thead th{color:#31583a;letter-spacing:.03em;text-transform:uppercase;background:linear-gradient(#f4f8f1 0%,#eaf3e5 100%);font-size:13px;font-weight:800}.clients-table tbody tr{cursor:pointer;transition:background-color .16s,box-shadow .16s}.clients-table tbody tr:nth-child(2n){background:#fbfdf9}.clients-table tbody tr:hover{background:#eef7e9;box-shadow:inset 4px 0 #6ea86f}.clients-table td:nth-child(6),.clients-table th:nth-child(6){text-align:center}.clients-table td:nth-child(5),.clients-table td:nth-child(8){color:#46624d;font-variant-numeric:tabular-nums}.payment-summary{gap:12px;margin:18px 0;display:grid}.payment-summary h3{margin:0}.payment-summary-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px;width:100%;display:grid}.payment-summary-card{background:linear-gradient(#fff 0%,#f4faf0 100%);border:1px solid #d7e7d1;border-radius:16px;gap:6px;min-width:0;padding:12px 14px;display:grid;box-shadow:0 12px 28px #16321f12}.payment-summary-card__label{color:#55715c;letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:800;line-height:1.25}.payment-summary-card__value{color:#1f3d28;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:18px;line-height:1.2}.payment-summary-card--net{background:linear-gradient(#f4fbef 0%,#e7f4df 100%);border-color:#9fc796;box-shadow:0 14px 34px #477c441f}.payment-summary-card--net .payment-summary-card__value{font-size:20px;font-weight:900}.payments-table-wrapper{margin-top:12px}.payments-table{border-collapse:separate;border-spacing:0;color:#1f3d28;width:100%;min-width:1120px;display:table}.payments-table th,.payments-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #dce9d7;border-right:1px solid #dce9d7;padding:11px 12px}.payments-table th:last-child,.payments-table td:last-child{border-right:0}.payments-table tbody tr:last-child td{border-bottom:0}.payments-table thead th{color:#31583a;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(#f4f8f1 0%,#eaf3e5 100%);font-size:12px;font-weight:800}.payments-table tbody tr{transition:background-color .16s}.payments-table tbody tr:nth-child(2n){background:#fbfdf9}.payments-table tbody tr:hover{background:#eef7e9}.payments-table__number,.payments-table td:nth-child(5),.payments-table td:nth-child(7){font-variant-numeric:tabular-nums;white-space:nowrap}.payments-table__amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:800}.payments-table th:nth-child(4){text-align:right}.payments-table__actions{text-align:center;white-space:nowrap}.payments-table__actions button{padding:7px 10px}.payments-pagination{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}@media (width<=640px){.payment-summary-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.payment-summary-card{padding:10px 12px}.payment-summary-card__value{font-size:16px}}.clients-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.clients-list-column{min-width:0}.client-workspace{background:linear-gradient(#fff 0%,#f5fbf2 100%);border:1px solid #cfe0c9;border-radius:20px;gap:12px;min-width:0;padding:14px;display:grid;box-shadow:0 18px 44px #16321f1a}.client-workspace__header{border-bottom:1px solid #dce9d7;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;display:flex}.client-workspace__client,.client-workspace__eyebrow{margin:0}.client-workspace__eyebrow{color:#55745d;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.client-workspace__client{color:#1f3d28;font-size:18px;font-weight:800;line-height:1.25}.client-workspace__close{color:#31583a;background:#fff;border:1px solid #bfd5b8;border-radius:999px;flex:none;place-items:center;width:34px;height:34px;padding:0;font-size:24px;line-height:1;display:inline-grid}.client-workspace__body,.client-panel{gap:10px;min-width:0;display:grid}.client-workspace__body .card,.client-panel{box-shadow:none;background:0 0;border:0;padding:0}.client-panel h3,.client-panel p,.client-panel ul{margin-top:0;margin-bottom:0}.client-panel__actions{flex-wrap:wrap;gap:8px;display:flex}.client-booking-history__table-wrap{max-width:100%;overflow-x:auto}.client-booking-history__table{border-collapse:collapse;width:100%;min-width:360px}.client-booking-history__table th,.client-booking-history__table td{text-align:left;white-space:nowrap;border-bottom:1px solid #dce9d7;padding:8px 10px}.client-booking-history__table th:first-child{width:38%}.client-booking-history__table th:last-child{width:62%}.client-booking-history__table tbody tr:hover{background:#f1f8ee}.client-booking-history__pagination{justify-content:space-between;align-items:center;gap:8px;display:flex}.payment-destination-filter{max-width:180px}.filter-note{color:#6b7f70;align-self:center;font-size:13px}@media (width>=1180px){.clients-layout{grid-template-columns:minmax(0,1fr) minmax(320px,420px)}.client-workspace{position:sticky;top:16px}}.booking-dates-room-section{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;display:grid}.availability-panel{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;margin:.75rem 0;padding:.9rem}.availability-panel__header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.availability-panel h3{margin:0;font-size:1rem}.availability-panel p{margin:.25rem 0}.available-room-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem;display:grid}.available-room-card{background:#fff;border:1px solid #cbd5e1;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem;display:flex}.available-room-card span{color:#64748b;font-size:.85rem;display:block}.available-room-card--selected{border-color:#2563eb;box-shadow:0 0 0 2px #bfdbfe}.booking-form--calendar-create{background:#fff;border:1px solid #cadbd0;border-radius:18px;gap:1rem;width:100%;min-width:0;padding:clamp(1rem,2vw,1.4rem);display:grid;overflow:visible;box-shadow:0 8px 24px #23483014}.booking-form--calendar-create .calendar-booking-create__header h3{color:#173c25;margin:0;font-size:1.2rem}.booking-form--calendar-create .calendar-booking-create__client-row{grid-template-columns:minmax(280px,1.5fr) auto minmax(240px,1fr);align-items:end;gap:.75rem;min-width:0;display:grid}.booking-form--calendar-create .calendar-booking-create__client-row label,.booking-form--calendar-create .calendar-booking-create__details-row label{min-width:0}.booking-form--calendar-create .calendar-booking-create__client-row input,.booking-form--calendar-create .calendar-booking-create__details-row input,.booking-form--calendar-create .calendar-booking-create__details-row select{width:100%;min-width:0;height:42px}.booking-form--calendar-create .calendar-booking-create__client-row>button{min-width:148px;height:42px}.booking-form--calendar-create .calendar-booking-create__details-row{grid-template-columns:minmax(170px,.9fr) minmax(170px,.9fr) minmax(220px,1.2fr) minmax(220px,1.2fr);gap:.75rem;display:grid}.booking-form--calendar-create .availability-panel{background:#f7faf8;border-color:#d5e2d9;margin:0;padding:1rem}.booking-form--calendar-create .available-room-list{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.65rem}.booking-form--calendar-create .available-room-card{flex-direction:column;justify-content:space-between;align-items:stretch;min-width:0;min-height:156px;transition:border-color .16s,box-shadow .16s}.booking-form--calendar-create .available-room-card:hover{border-color:#7ca78a}.booking-form--calendar-create .available-room-card strong,.booking-form--calendar-create .available-room-card span,.booking-form--calendar-create .available-room-card small{overflow-wrap:normal;word-break:normal}.booking-form--calendar-create .available-room-card button{width:100%;margin-top:.65rem}.booking-form--calendar-create .calendar-booking-create__feedback{background:#fff7f7;border:1px solid #fecaca;border-radius:10px;padding:.7rem .8rem}.booking-form--calendar-create .calendar-booking-create__feedback ul{margin:0;padding-left:1.2rem}.booking-form--calendar-create .calendar-booking-create__feedback li+li{margin-top:.25rem}.booking-form--calendar-create .calendar-booking-create__actions{justify-content:flex-end;gap:.65rem;margin:0;display:flex}@media (width<=1100px){.booking-form--calendar-create .calendar-booking-create__details-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.availability-panel__header,.available-room-card{flex-direction:column;align-items:stretch}.available-room-card button,.availability-panel button{min-height:44px}.booking-form--calendar-create{gap:.85rem;padding:.85rem}.booking-form--calendar-create .calendar-booking-create__client-row,.booking-form--calendar-create .calendar-booking-create__details-row{grid-template-columns:minmax(0,1fr)}.booking-form--calendar-create .calendar-booking-create__client-row>button{width:100%}.booking-form--calendar-create .calendar-booking-create__actions{grid-template-columns:1fr;display:grid}.booking-form--calendar-create .calendar-booking-create__actions button{width:100%}}.room-move-form__period{color:#24472d;margin:0 0 10px;font-weight:700}.room-move-form__main-row,.room-move-form__reason-row,.room-move-form__comment-row{gap:10px;margin-bottom:10px;display:grid}.room-move-form__main-row{grid-template-columns:repeat(2,minmax(0,1fr))}.room-move-form__reason-row label,.room-move-form__comment-row label,.room-move-form__reason-row select,.room-move-form__comment-row textarea{width:100%}@media (width<=640px){.room-move-form__main-row{grid-template-columns:1fr}}.catalog-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.compact-form,.optional-fields{gap:.75rem;display:grid}.actions,.filters{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.compact-list,.product-list{gap:.5rem;margin-top:.75rem;display:grid}.list-row,.product-card{text-align:left;border:1px solid var(--border-color,#d6d9df);color:inherit;background:#fff;border-radius:.75rem;gap:.25rem;padding:.75rem;display:grid}.product-card span,.muted{color:#64748b}.secondary{color:#1e3a8a;background:#eef2ff}@media (width<=640px){.filters>*{width:100%}}.sale-layout{box-sizing:border-box;grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem;width:100%;min-width:0;max-width:100%;display:grid}.sale-form,.sale-documents,.receipt-80mm{gap:.75rem;display:grid}.sale-item-row{background:#fff;border:1px solid #d6d9df;border-radius:.75rem;grid-template-columns:minmax(180px,1fr) 90px 110px auto auto;align-items:end;gap:.5rem;padding:.75rem;display:grid}.sale-total{background:#f8fafc;border-radius:.75rem;flex-wrap:wrap;justify-content:flex-end;gap:1rem;padding:.75rem;display:flex}.receipt-80mm{color:#111827;background:#fff;border:1px dashed #94a3b8;width:80mm;max-width:100%;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.receipt-line{border-bottom:1px dotted #cbd5e1;justify-content:space-between;gap:8px;padding-bottom:4px;display:flex}@media (width<=860px){.sale-item-row{grid-template-columns:1fr}}@media print{body.app-printing{background:#fff!important;width:80mm!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}html:has(body.app-printing){background:#fff!important;width:80mm!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}body.app-printing #app,body.app-printing .shell,body.app-printing .app-header,body.app-printing .user-strip,body.app-printing .card,body.app-printing .dashboard-page,body.app-printing .bookings-page,body.app-printing .product-sale-page,body.app-printing .modal-backdrop,body.app-printing .modal-card,body.app-printing .app-print-target:not(.app-print-target--active),body.app-printing .receipt-80mm:not(.app-print-target--active),body.app-printing .dashboard-housekeeping-print:not(.app-print-target--active){display:none!important}body.app-printing .app-print-target--active{box-sizing:border-box!important;width:80mm!important;min-width:0!important;max-width:80mm!important;height:auto!important;min-height:0!important;max-height:none!important;box-shadow:none!important;break-before:auto!important;break-after:auto!important;page-break-before:auto!important;page-break-after:auto!important;background:#fff!important;border:0!important;margin:0!important;padding:10mm 5mm!important;display:block!important;position:static!important;top:0!important;left:0!important;overflow:visible!important;transform:none!important}body.app-printing .app-print-target--active,body.app-printing .app-print-target--active *{page:auto!important}body.app-printing .app-print-target--active *,body.app-printing .app-print-target--active .housekeeping-receipt{visibility:visible!important}body.app-printing .app-print-target--active>.receipt-80mm,body.app-printing .app-print-target--active>.housekeeping-receipt,body.app-printing .housekeeping-receipt{box-sizing:border-box!important;width:100%!important;max-width:100%!important}body.app-printing .housekeeping-receipt{box-shadow:none!important;break-before:auto!important;break-after:auto!important;page-break-before:auto!important;page-break-after:auto!important;border:0!important;margin:0!important;padding:0!important}}.stay-settlement-dialog{flex-direction:column;gap:1rem;min-width:0;max-width:100%;display:flex}.stay-settlement-dialog table{border-collapse:collapse;width:100%}.stay-settlement-dialog th,.stay-settlement-dialog td{text-align:left;border-bottom:1px solid #e5e7eb;padding:.5rem}.stay-settlement-dialog dl{grid-template-columns:1fr auto;gap:.35rem 1rem;display:grid}.stay-settlement-receipt h2{text-align:center;margin:0}@media print{.stay-settlement-receipt{max-width:80mm;overflow:hidden}}.products-page{gap:1rem;width:100%;min-width:0;max-width:100%;display:grid}.products-page__header h2{margin-bottom:.25rem}.products-toolbar{box-sizing:border-box;grid-template-columns:minmax(260px,1fr) minmax(180px,240px) auto;align-items:end;gap:.5rem .75rem;width:100%;max-width:100%;padding-block:.75rem;display:grid}.products-toolbar__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.products-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem;width:100%;min-width:0;max-width:100%;display:grid}.panel-title-row{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.panel-title-row h3{margin:0}.category-card-list{gap:.5rem;display:grid}.category-tile{text-align:left;width:100%;color:inherit;background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #d8e6d4;border-radius:.9rem;gap:.2rem;padding:.75rem;display:grid}.category-tile:hover,.category-tile:focus-visible{border-color:#79a96f;box-shadow:0 8px 20px #16321f1a}.category-tile span{color:#64748b;font-size:.9rem}.products-table-card{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.table-responsive{width:100%;min-width:0;max-width:100%;overflow-x:auto}.products-table{border-collapse:collapse;width:100%;min-width:960px}.products-table th,.products-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e2e8f0;padding:.7rem .75rem}.products-table th{color:#475569;text-transform:uppercase;letter-spacing:.03em;background:#f8fafc;font-size:.82rem}.products-table th button{color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;padding:0}.products-table tbody tr{cursor:pointer;transition:background .15s,box-shadow .15s}.products-table tbody tr:hover,.products-table tbody tr:focus-visible{background:#f0fdf4;outline:none;box-shadow:inset 3px 0 #79a96f}.empty-state{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:.9rem;margin:1rem 0 0;padding:1rem}.product-dialog{width:min(720px,100vw - 32px)}.product-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.product-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;display:grid}.product-meta div{border:1px solid #e2e8f0;border-radius:.75rem;padding:.5rem}.product-meta dt{font-weight:700}.product-meta dd{margin:0}.auto-code-note{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:.75rem;align-self:end;margin:0;padding:.75rem}.category-card-list--modal{max-height:min(60vh,520px);padding-right:.25rem;overflow:auto}@media (width<=900px){.products-toolbar,.product-form-grid,.product-meta{grid-template-columns:1fr}.products-toolbar__actions{justify-content:stretch}.products-toolbar__actions button{flex:180px}}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.room-prices-section{background:#fff;border:1px solid #d8e6d4;border-radius:18px;margin-top:18px;padding:14px}.room-price-documents-table tbody tr{cursor:pointer}.room-price-documents-table tbody tr:hover,.room-price-documents-table tbody tr:focus{background:#edf6e9;outline:2px solid #bdd6b6}.room-price-dialog{flex-direction:column;width:min(920px,100vw - 40px);max-width:100%;max-height:calc(100vh - 40px);padding:0;display:flex;overflow:hidden}.room-price-dialog__header{border-bottom:1px solid #d8e6d4;flex:none;padding:24px 28px 20px}.room-price-dialog__header h3{margin:0}.room-price-dialog__header .error{margin:12px 0 0}.room-price-dialog__dates{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px 28px;display:grid}.room-price-dialog__dates label{min-width:0}.room-price-dialog__dates input{box-sizing:border-box;width:100%}.room-price-dialog__table-wrap{border:1px solid #d8e6d4;border-radius:12px;min-height:180px;margin:0 28px;overflow:auto}.room-price-lines-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;min-width:660px}.room-price-lines-table th,.room-price-lines-table td{box-sizing:border-box;vertical-align:middle;padding:12px 16px}.room-price-lines-table th{z-index:1;white-space:nowrap;background:#f3f8f1;position:sticky;top:0}.room-price-lines-table th:first-child,.room-price-lines-table td:first-child{text-align:center;width:110px}.room-price-lines-table th:nth-child(2),.room-price-lines-table td:nth-child(2){width:24%}.room-price-lines-table th:nth-child(3),.room-price-lines-table td:nth-child(3){width:25%}.room-price-lines-table th:nth-child(4),.room-price-lines-table td:nth-child(4){width:31%}.room-price-lines-table tbody tr:last-child td{border-bottom:0}.room-price-lines-table input[type=checkbox]{width:18px;height:18px;margin:0 auto;display:block}.room-price-lines-table input[inputmode=decimal]{box-sizing:border-box;width:100%;min-width:0}.room-price-dialog__actions{background:#f8fbf7;border-top:1px solid #d8e6d4;flex:none;justify-content:flex-end;gap:10px;margin:20px 0 0;padding:18px 28px 22px}@media (width<=640px){.room-price-dialog{width:min(100% - 20px,920px);max-height:calc(100vh - 20px)}.room-price-dialog__header{padding:20px 18px 16px}.room-price-dialog__dates{grid-template-columns:1fr;gap:12px;padding:16px 18px}.room-price-dialog__table-wrap{margin:0 18px}.room-price-dialog__actions{justify-content:stretch;padding:16px 18px 18px}.room-price-dialog__actions button{flex:140px}}.muted{color:#71806d}.booking-details-panel__header{border-bottom:1px solid #d8e6d4;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding-bottom:10px;padding-right:52px;display:grid}.booking-status-badge{color:#166534;white-space:nowrap;background:#ecfdf5;border-radius:999px;align-items:center;padding:4px 10px;font-size:13px;font-weight:700;display:inline-flex}.booking-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.booking-details-card{background:#fbfefb;border:1px solid #d8e6d4;border-radius:14px;min-width:0;padding:12px}.booking-details-card--finance p{font-variant-numeric:tabular-nums}.booking-payments-list{overflow-wrap:anywhere}.booking-actions--danger{border-top:1px solid #fecaca;margin-top:10px;padding-top:10px}@media (width<=640px){.booking-details-panel__header,.booking-details-grid{grid-template-columns:1fr}.booking-details-panel__header{padding-right:48px}.booking-status-badge{white-space:normal}}.sale-search-row{grid-template-columns:1fr auto;align-items:end;gap:.5rem;display:grid;position:relative}.quick-picker-button{min-width:3rem;font-size:1.25rem}.product-suggestions{z-index:20;background:#fff;border:1px solid #d6d9df;border-radius:.75rem;gap:.25rem;padding:.5rem;display:grid;position:absolute;top:100%;left:0;right:3.5rem;box-shadow:0 12px 30px #0f172a2e}.product-suggestions button,.picker-layout nav button,.product-card{text-align:left}.sale-table,.sale-documents table{border-collapse:collapse;background:#fff;border-radius:.75rem;width:100%;overflow:hidden}.sale-table th,.sale-table td,.sale-documents td{text-align:left;vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:.55rem}.sale-table th{background:#f8fafc;font-weight:700}.sale-table input{width:100%;min-width:72px}.sale-table-wrapper,.sale-documents__table-wrapper{max-width:100%;overflow-x:auto}.sale-comment-row{grid-template-columns:1fr;display:grid}.sale-documents{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;width:100%;min-width:0;max-width:100%;padding:1rem}.sale-documents tr{cursor:pointer}.sale-documents tr.selected,.sale-documents tr:hover{background:#eef6ff}.modal-backdrop{z-index:100;background:#0f172a8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border-radius:1rem;gap:1rem;width:min(920px,100%);max-height:90vh;padding:1rem;display:grid;overflow:auto;box-shadow:0 20px 45px #0f172a40}.modal-card header,.modal-card footer{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.picker-layout{grid-template-columns:220px 1fr;gap:1rem;display:grid}.picker-layout nav,.product-card-grid{align-content:start;gap:.5rem;display:grid}.product-card-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.product-card{background:#f8fafc;border:1px solid #d6d9df;border-radius:.75rem;gap:.25rem;padding:.75rem;display:grid}.selected{outline:2px solid #2563eb}.settlement-modal{width:min(460px,100%)}@media (width<=860px){.picker-layout{grid-template-columns:1fr}.sale-table{display:block;overflow-x:auto}}.product-stock-page{gap:.75rem;width:100%;min-width:0;max-width:100%;display:grid}.stock-page-header,.stock-card,.stock-modal{box-sizing:border-box;border:1px solid #dbe7d7;min-width:0;max-width:100%;box-shadow:0 10px 28px #0f172a14}.stock-page-header{box-shadow:none;background:0 0;border:0;padding:0}.stock-card{width:100%;overflow:hidden}.stock-toolbar,.stock-section-heading,.stock-modal-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.stock-section-heading{justify-content:space-between;margin-bottom:.75rem}.stock-section-heading h3{margin-bottom:.15rem}.stock-filters{background:#f8fafc;border:1px solid #e2e8f0;border-radius:1rem;align-items:end;padding:.75rem}.stock-filters--compact{grid-template-columns:minmax(280px,2fr) minmax(180px,1fr) minmax(160px,.8fr);gap:.75rem;display:grid}.stock-filters label{flex:180px;gap:.25rem;min-width:180px;font-weight:700;display:grid}.stock-filters input,.stock-filters select{width:100%;min-width:0;margin:0;font-weight:400}.stock-table-wrapper,.table-scroll{box-sizing:border-box;width:100%;min-width:0;max-width:100%;overflow-x:auto}.stock-table{table-layout:auto;border-collapse:collapse;background:#fff;width:100%;min-width:0}.stock-table th,.stock-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e5e7eb;padding:.65rem .75rem}.stock-table th{color:#334155;white-space:nowrap;background:#f1f5f9;font-weight:800}.stock-balances-table th:nth-child(4),.stock-balances-table td:nth-child(4),.stock-balances-table th:nth-child(5),.stock-balances-table td:nth-child(5),.stock-balances-table th:nth-child(6),.stock-balances-table td:nth-child(6),.stock-table--recent th:nth-child(4),.stock-table--recent td:nth-child(4){white-space:nowrap}.stock-table--recent{table-layout:fixed}.stock-table tbody tr:hover{background:#f8fafc}.stock-table--recent tr,.stock-all-receipts-table tr{cursor:pointer}.stock-modal-backdrop{z-index:5000}.stock-modal-backdrop--top{z-index:5000;padding:var(--app-modal-top-offset) 16px 16px;place-items:start center}.stock-modal{box-sizing:border-box;gap:1rem;width:min(1120px,100vw - 32px);max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:1rem;display:grid;overflow:hidden auto}.stock-receipt-modal{width:min(1280px,100vw - 32px);max-height:calc(100dvh - var(--app-modal-top-offset) - 16px);margin-top:0;overflow-y:auto}@media (width<=900px){:root{--app-header-height:112px;--app-modal-gap:16px}}.stock-modal-filters{margin:0}.stock-receipt-lines-wrap{min-width:0;padding-bottom:.5rem;overflow:visible}.stock-receipt-lines{gap:.5rem;min-width:0;display:grid;overflow:visible}.stock-receipt-row{z-index:1;grid-template-columns:minmax(360px,1fr) minmax(160px,220px) minmax(140px,190px) minmax(140px,180px) minmax(96px,120px);align-items:center;gap:.65rem;min-width:0;display:grid;position:relative}.stock-receipt-row:focus-within{z-index:30}.stock-receipt-row--head{color:#334155;background:#f1f5f9;border-radius:.75rem;padding:.55rem .65rem;font-weight:800}.stock-receipt-product-cell{min-width:0}.stock-receipt-sum{white-space:nowrap;font-weight:700}.stock-receipt-lines input{width:100%;min-width:0;margin:0}.stock-product-selector{z-index:20;position:relative;overflow:visible}.stock-product-suggestions{z-index:100;background:#fff;border:1px solid #cbd5e1;border-radius:.75rem;gap:.25rem;max-height:260px;padding:.4rem;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 16px 36px #0f172a38}.stock-product-suggestions button{color:#0f172a;text-align:left;background:0 0;border:0;border-radius:.55rem;gap:.15rem;width:100%;padding:.5rem .65rem;display:grid}.stock-product-suggestions button:hover,.stock-product-suggestions button:focus{background:#eef6ff}.stock-modal-actions{justify-content:flex-end}@media (width<=760px){.stock-filters--compact{grid-template-columns:1fr}.stock-section-heading,.stock-modal-actions{flex-direction:column;align-items:stretch}.stock-section-heading button,.stock-modal-actions button{width:100%}.stock-receipt-lines-wrap{overflow:auto visible}.stock-receipt-row{grid-template-columns:minmax(260px,1fr) minmax(140px,170px) minmax(120px,150px) minmax(120px,150px) minmax(90px,110px)}}.cashdesk-toolbar,.cashdesk-summary,.cashdesk-grid{gap:1rem;display:grid}.cashdesk-toolbar{grid-template-columns:repeat(auto-fit,minmax(110px,max-content));align-items:center}.cashdesk-summary{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:1rem 0}.cashdesk-summary article,.cashdesk-grid article{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1rem;box-shadow:0 1px 2px #0000000a}.cashdesk-summary span{color:#6b7280;display:block}.cashdesk-summary strong{margin:.25rem 0;font-size:1.35rem;display:block}.cashdesk-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.cashdesk-grid article{min-width:0;overflow:hidden}.cashdesk-grid article header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.cashdesk-table-wrapper,.cashdesk-modal-table-wrapper{width:100%;max-width:100%;overflow-x:auto}.cashdesk-table{table-layout:fixed;width:100%;min-width:0;max-width:100%}.cashdesk-page table{border-collapse:collapse;width:100%;max-width:100%}.cashdesk-page th,.cashdesk-page td{text-align:left;vertical-align:top;overflow-wrap:anywhere;word-break:break-word;border-bottom:1px solid #e5e7eb;padding:.55rem}.cashdesk-page dialog[open]{border:0;border-radius:14px;gap:.75rem;padding:1rem;display:grid;box-shadow:0 20px 50px #00000040}.cashdesk-page dialog label{gap:.25rem;display:grid}.muted{opacity:.55;color:#64748b}.cashdesk-summary.compact-cashdesk-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:.5rem 0 .75rem}.cashdesk-summary.compact-cashdesk-summary article{padding:.6rem .75rem}.cashdesk-summary.compact-cashdesk-summary strong{margin:.1rem 0 0;font-size:1.05rem}.cashdesk-page dialog.cashdesk-modal[open]{z-index:var(--app-modal-z-index,5000);inset:var(--app-modal-top-offset) auto auto 50%;width:min(900px,100vw - 32px);max-width:calc(100vw - 32px);max-height:calc(100dvh - var(--app-modal-top-offset) - 16px);box-sizing:border-box;margin:0;position:fixed;overflow:hidden auto;transform:translate(-50%)}.cashdesk-page dialog.cashdesk-modal::backdrop{z-index:calc(var(--app-modal-z-index,5000) - 1);background:#0f172a8c}.cashdesk-page dialog.cashdesk-modal form{flex-wrap:wrap;gap:.5rem;display:flex}.cashdesk-page dialog.cashdesk-modal input,.cashdesk-page dialog.cashdesk-modal select,.cashdesk-page dialog.cashdesk-modal textarea{box-sizing:border-box;max-width:100%}.cashdesk-page dialog.cashdesk-modal ul{gap:.5rem;margin:0;padding-left:1.25rem;display:grid}.cashdesk-page dialog.cashdesk-modal li{overflow-wrap:anywhere}.cashdesk-page dialog.cashdesk-modal li button,.cashdesk-modal-table button{margin:.2rem .25rem .2rem 0}.cashdesk-revenue-breakdown-trigger{color:#17633a;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.cashdesk-revenue-breakdown-backdrop{z-index:var(--app-modal-z-index,5000);padding:var(--app-modal-top-offset) 16px 16px;background:#0f172a8c;place-items:start center;display:grid;position:fixed;inset:0;overflow:hidden}.cashdesk-revenue-breakdown-dialog{width:min(1120px,100%);max-height:calc(100dvh - var(--app-modal-top-offset) - 16px);box-sizing:border-box;background:#fff;border-radius:14px;gap:.9rem;padding:1rem;display:grid;overflow:hidden auto;box-shadow:0 20px 50px #00000040}.cashdesk-revenue-breakdown-header,.cashdesk-revenue-breakdown-section>header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.cashdesk-revenue-breakdown-header h3,.cashdesk-revenue-breakdown-header p,.cashdesk-revenue-breakdown-section h4{margin:0}.cashdesk-revenue-breakdown-close{background:0 0;border:0;padding:0 .45rem;font-size:1.8rem;line-height:1}.cashdesk-revenue-breakdown-summary,.cashdesk-revenue-breakdown-total{background:#f1f6f2;border-radius:8px;justify-content:space-between;gap:1rem;padding:.75rem;display:flex}.cashdesk-revenue-breakdown-section{border-top:1px solid #dfe6df;gap:.6rem;min-width:0;padding-top:.75rem;display:grid}.cashdesk-revenue-breakdown-table-wrap{width:100%;max-width:100%;overflow-x:auto}.cashdesk-page .cashdesk-revenue-breakdown-table{min-width:960px;font-size:.88rem}.cashdesk-revenue-breakdown-total{justify-content:flex-end;font-size:1.1rem;font-weight:700}@media (width<=900px){.cashdesk-grid{grid-template-columns:1fr}}@media (width<=760px){.cashdesk-summary.compact-cashdesk-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.cashdesk-revenue-breakdown-backdrop{padding-inline:8px}.cashdesk-revenue-breakdown-dialog{padding:.75rem}.cashdesk-revenue-breakdown-section>header{gap:.25rem;display:grid}}.receipt-80mm--compact{white-space:normal;gap:4px;width:76mm;padding:6px 8px;line-height:1.25}.receipt-80mm--compact p{margin:2px 0}.receipt-center{text-align:center;justify-items:center;display:grid}.receipt-row{justify-content:space-between;gap:8px;display:flex}.receipt-row span:last-child{text-align:right;white-space:nowrap}.receipt-separator,.receipt-equals{border-top:1px dashed #111827;height:0;margin:4px 0}.receipt-equals{border-top-style:double;border-top-width:3px}.receipt-item{gap:2px;margin:4px 0 6px;display:grid}.receipt-total,.receipt-paid{font-weight:700}@media print{.receipt-80mm--compact:not(.app-print-target--active){width:100%!important;max-width:100%!important;padding:0!important}.receipt-row{align-items:start}.receipt-row span{overflow-wrap:anywhere;word-break:break-word;min-width:0}.receipt-row span:first-child{flex:auto}.receipt-row span:last-child{flex:0 auto;max-width:50%}}.cashdesk-period-summary{flex-wrap:wrap;gap:.75rem;margin:.75rem 0;display:flex}.cashdesk-period-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.cashdesk-period-grid article{border:1px solid var(--border-color,#ddd);border-radius:.75rem;padding:.75rem}@media (width<=760px){.cashdesk-period-grid{grid-template-columns:1fr}}.stay-settlement-dialog{max-width:min(100%,920px);max-height:min(82vh,900px);overflow:hidden auto}.stay-settlement-dialog>*{min-width:0;max-width:100%}.stay-settlement-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow:auto hidden}.stay-settlement-dialog table{table-layout:fixed;overflow-wrap:anywhere;min-width:44rem}.stay-settlement-dialog th,.stay-settlement-dialog td{vertical-align:top}.stay-settlement-discount{grid-template-columns:minmax(8rem,1fr) minmax(7rem,10rem);align-items:center;gap:.75rem;max-width:24rem;display:grid}.stay-settlement-totals dt,.stay-settlement-totals dd{margin:0}.stay-settlement-totals dd{text-align:right;font-variant-numeric:tabular-nums}@media (width<=720px){.stay-settlement-dialog table,.stay-settlement-dialog thead,.stay-settlement-dialog tbody,.stay-settlement-dialog tr,.stay-settlement-dialog th,.stay-settlement-dialog td{display:block}}.calendar-grid--timeline .calendar-row-timeline{grid-column:2 / calc(var(--calendar-days) + 2);grid-template-columns:repeat(var(--calendar-days), minmax(0, 1fr));min-height:var(--calendar-row-height,34px);border-bottom:1px solid var(--calendar-row-border);background:var(--calendar-free-cell-bg);min-width:0;display:grid;position:relative}.day-grid-background,.booking-bars-layer{grid-area:1/1/auto/-1;grid-template-columns:repeat(var(--calendar-days), minmax(0, 1fr));min-width:0;display:grid}.day-grid-background{z-index:1}.day-grid-background .calendar-cell{min-height:var(--calendar-row-height,34px);border-right:1px solid var(--calendar-grid-border);border-bottom:1px solid var(--calendar-grid-border);border-left:0;margin:0}.day-grid-background .calendar-cell:after{opacity:.42}.day-grid-background .calendar-cell--occupied:after{content:""}.calendar-grid--timeline .calendar-cell{border-color:var(--calendar-grid-border)}.booking-bars-layer{grid-template-columns:repeat(var(--half-day-slots), minmax(0, 1fr));grid-template-rows:repeat(var(--calendar-lanes,1), var(--calendar-booking-lane-height));align-content:center;gap:var(--calendar-booking-lane-gap) 0;z-index:3;pointer-events:none;padding:var(--calendar-row-vertical-padding) 0}.booking-bar{--booking-accent-color:#1d4ed8;--booking-outline-width:2px;z-index:3;min-width:28px;min-height:var(--calendar-booking-lane-height);margin:0 var(--booking-half-day-gap);color:#fff;cursor:pointer;text-align:left;opacity:1;pointer-events:auto;white-space:nowrap;text-overflow:ellipsis;box-shadow:inset 0 0 0 var(--booking-outline-width) var(--booking-accent-color), 0 2px 5px #16321f29;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);border:0;border-radius:6px;align-content:center;padding:0 8px;font-size:clamp(10px,.85vw,13px);font-weight:750;line-height:1.2;position:relative;overflow:hidden}.booking-bar--start-visible{padding-left:calc(var(--booking-angle-size) + 4px);clip-path:polygon(var(--booking-angle-size) 0, 100% 0, 100% 100%, 0 100%)}.booking-bar--end-visible{padding-right:calc(var(--booking-angle-size) + 4px);clip-path:polygon(0 0, 100% 0, calc(100% - var(--booking-angle-size)) 100%, 0 100%)}.booking-bar--start-visible.booking-bar--end-visible{clip-path:polygon(var(--booking-angle-size) 0, 100% 0, calc(100% - var(--booking-angle-size)) 100%, 0 100%)}.booking-bar:focus-visible{outline-offset:2px;outline:3px solid #facc15}.booking-bar--clipped-start{padding-left:8px}.booking-bar--clipped-end{padding-right:8px}.booking-bar--living-paid{--booking-accent-color:#15803d;--booking-outline-width:3px}.booking-bar--prepaid{--booking-accent-color:#16a34a;--booking-outline-width:3px}.booking-bar--not-confirmed,.booking-bar--living-unpaid,.booking-bar--completed-unpaid{--booking-accent-color:#dc2626;--booking-outline-width:3px}.booking-bar--completed-paid{--booking-accent-color:#15803d;--booking-outline-width:3px}.booking-bar--completed-paid,.booking-bar--completed-unpaid{opacity:1}.booking-bar--cancelled,.booking-bar--no-show{filter:saturate(.88)}.booking-bar--cancelled{--booking-accent-color:#991b1b;background-color:#b91c1c!important}.booking-bar--no-show{--booking-accent-color:#431407;background-color:#7c2d12!important}.dashboard-housekeeping-print{display:none}.housekeeping-receipt{box-sizing:border-box;color:#000;background:#fff;width:78mm;max-width:78mm;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.18}.housekeeping-receipt__header{text-align:center}.housekeeping-receipt__header h2,.housekeeping-receipt__header p,.housekeeping-receipt__totals h3,.housekeeping-receipt__notes p{margin:0}.housekeeping-receipt__header h2{letter-spacing:.06em;font-size:19px}.housekeeping-receipt__header p,.housekeeping-receipt__totals h3{font-size:14px;font-weight:700}.housekeeping-receipt__separator{border-top:1px solid #000;margin:3px 0}.housekeeping-receipt__meta{margin:0}.housekeeping-receipt__meta div,.housekeeping-receipt__totals p{justify-content:space-between;gap:3px;margin:0 0 1px;display:flex}.housekeeping-receipt__meta dt,.housekeeping-receipt__meta dd{margin:0}.housekeeping-receipt__row{grid-template-columns:max-content 1fr;align-items:start;column-gap:4mm;margin-bottom:1px;display:grid}.housekeeping-receipt__row--head{font-weight:700}.housekeeping-receipt__room,.housekeeping-receipt__status{overflow-wrap:anywhere;word-break:break-word;min-width:0}.housekeeping-receipt__room{min-width:8mm}.housekeeping-receipt__status{white-space:normal}.housekeeping-receipt__totals strong{text-align:right;min-width:18px}.housekeeping-receipt__notes{gap:2px;display:grid}.housekeeping-receipt__signature{margin-top:4px!important}.booking-journal-page{min-width:0;overflow-x:hidden}.booking-journal-card{background:#fff;border:1px solid #dfe6df;border-radius:12px;padding:16px;box-shadow:0 4px 18px #20362614}.booking-journal-filters{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.booking-journal-filters>label{gap:5px;font-size:.86rem;font-weight:600;display:grid}.booking-journal-date-picker{border:0;grid-template-columns:40px minmax(135px,1fr) 40px;align-items:center;gap:5px;min-width:0;margin:0;padding:0;display:grid}.booking-journal-date-picker legend{margin-bottom:5px;padding:0;font-size:.86rem;font-weight:600}.booking-journal-date-picker button{width:40px;min-height:40px;margin:0;padding:0}.booking-journal-date-picker button:focus-visible{outline-offset:2px;outline:3px solid #73a681}.booking-journal-date-picker input{min-width:0}.booking-journal-toolbar,.booking-journal-more-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-journal-more-filters{background:#f5f8f5;border-radius:8px;flex-basis:100%;padding:10px}.booking-journal-table-wrap{border:1px solid #e2e8e2;border-radius:9px;max-width:100%;margin-top:16px;overflow-x:auto}.booking-journal-table{border-collapse:collapse;width:100%;min-width:1120px;font-size:.88rem}.booking-journal-table th{z-index:1;text-align:left;background:#f5f8f5;position:sticky;top:0}.booking-journal-table th,.booking-journal-table td{vertical-align:middle;border-bottom:1px solid #e7ece7;padding:10px}.booking-journal-table tbody tr:hover{background:#f8fbf8}.booking-journal-date,.booking-journal-number,.booking-journal-table td:nth-child(4),.booking-journal-table td:nth-child(5){white-space:nowrap}.booking-journal-number,.link-button{color:#17633a;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.booking-journal-group-badge,.booking-journal-status,.booking-journal-room-chip{white-space:nowrap;background:#eaf2eb;border-radius:999px;padding:3px 7px;font-size:.78rem;display:inline-flex}.booking-journal-group-badge{color:#284f9b;background:#e8eefc;margin-left:6px}.booking-journal-room-list{flex-wrap:wrap;gap:4px;display:flex}.booking-journal-status--cancelled,.booking-journal-status--no_show{color:#8c2424;background:#f8e2e2}.booking-journal-status--checked_in,.booking-journal-status--confirmed{color:#185d31;background:#dff2e5}.booking-journal-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.booking-journal-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:14px;display:flex}@media (width<=700px){.booking-journal-filters{display:grid}.booking-journal-toolbar{grid-template-columns:1fr 1fr;display:grid}}.reports-page{width:100%;min-width:0;max-width:100%;overflow-x:hidden}.reports-stays{width:100%;min-width:0;max-width:100%;margin-top:20px}.reports-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:12px;display:grid}.reports-filters label{gap:5px;font-size:.85rem;display:grid}.reports-filters input,.reports-filters select{box-sizing:border-box;width:100%;min-height:40px}.reports-actions{flex-wrap:wrap;grid-column:1/-1;gap:7px;display:flex}.reports-summary-note{color:#66736a}.reports-summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:12px 0;display:grid}.reports-summary>div{background:#fff;border:1px solid #dfe6df;border-radius:8px;padding:10px}.reports-summary dt{color:#66736a;font-size:.78rem}.reports-summary dd{margin:5px 0 0;font-weight:700}.reports-table-wrap{overscroll-behavior-x:contain;width:100%;min-width:0;max-width:100%;overflow-x:auto}.reports-table{border-collapse:collapse;width:100%;min-width:1500px}.reports-table th,.reports-table td{text-align:left;vertical-align:top;border-bottom:1px solid #dfe6df;padding:9px}.reports-table small{color:#66736a;margin-top:4px;display:block}.reports-table i{color:#39724a;font-style:normal}.reports-pagination{justify-content:center;align-items:center;gap:12px;margin-top:14px;display:flex}.reports-message{padding:14px}.reports-message--error{color:#8b1e1e}.dashboard-finance{font-variant-numeric:tabular-nums;gap:2px;min-width:0;display:grid}.dashboard-finance__debt{white-space:nowrap;overflow-wrap:normal;font-weight:700}.dashboard-finance__debt--positive{color:#b42318}.dashboard-finance__debt--none{color:#166534}.dashboard-finance__debt--overpaid{color:#175cd3}.dashboard-finance__debt--redacted{color:#475467}.dashboard-finance__prepayment{color:#667085;white-space:nowrap;font-size:.82em}.empty-state,.info{color:#475467}.date-shift-button:focus-visible,.link-button:focus-visible{outline-offset:2px;outline:2px solid #175cd3}@media print{body.app-printing .app-print-target--active>*,body.app-printing .app-print-target--active *{overflow-wrap:anywhere;max-width:100%!important}}
