:root{--bg:#f5f9fc;--panel:#fff;--text:#151515;--muted:#5f6d78;--line:#d8e6ef;--accent:#8fd3ff;--accent-dark:#176b95;--ink:#111;--danger:#b42318;--ok:#247a48;--hover-bg:#eef5fa;--diff-bg:#f7fbfd;--border:var(--line);color:var(--text);background:var(--bg);font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{overflow-x:hidden}body{background:var(--bg);min-width:320px;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:6px;min-height:36px;padding:8px 12px;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.45}button.primary{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff;font-weight:700}button.ghost{background:0 0}button.danger{color:var(--danger)}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:6px;min-height:38px;padding:8px 10px}textarea{resize:vertical}label{color:var(--muted);gap:6px;font-size:13px;font-weight:700;display:grid}table{border-collapse:collapse;width:100%;font-size:13px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 8px}th{color:var(--muted);text-transform:uppercase;font-size:12px}.topbar{background:var(--ink);border-bottom:3px solid var(--accent);color:#fff;justify-content:space-between;align-items:center;gap:20px;padding:14px 22px;display:flex}.topbar p,.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 2px;font-size:12px;font-weight:700}.topbar h1,.login-panel h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:28px;overflow:hidden}.topbar-brand{flex-wrap:wrap;align-items:baseline;gap:8px 12px;min-width:0;display:flex}.topbar-clock{color:#ffffffb8;white-space:nowrap;flex:none;font-size:12px;font-weight:600;line-height:1}.topbar nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.mobile-menu-trigger{display:none}.user-menu{position:relative}.user-trigger{background:var(--accent);border-color:var(--accent);color:var(--ink);font-weight:700}.user-menu-panel{background:var(--panel);border:1px solid var(--line);z-index:20;border-radius:8px;min-width:180px;padding:8px;display:none;position:absolute;top:100%;right:0;box-shadow:0 12px 32px #0000002e}.user-menu.open .user-menu-panel{gap:6px;display:grid}.user-menu-panel button{text-align:left;justify-content:flex-start;width:100%}.app-shell{grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:18px;padding:18px;display:grid}.left-col,.right-col{align-content:start;gap:16px;display:grid}.panel,.metric{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px}.panel h2{margin:0 0 12px;font-size:18px}.panel-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.panel-title h2{margin:0}.panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.entry-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.entry-form .wide{grid-column:1/-1}.segmented{grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.segmented button.active{background:var(--ink);border-color:var(--ink);color:#fff}.summary-list,.mini-list{gap:8px;display:grid}.day-panel{position:relative}.day-panel.weekend{background:#fff8f1;border-color:#efc08b}.day-panel-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.day-panel-head h2{margin:0}.day-badge{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700}.day-badge.saturday{color:#8a5200;background:#fff0dc;border-color:#e5a75e}.day-badge.sunday{color:#9b271d;background:#ffe8e4;border-color:#e58b7f}.day-badge.workday{color:var(--ok);background:#edf8f1;border-color:#9fd3b4}.summary-list div,.mini-list div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.summary-list div span,.mini-list div span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.summary-list div strong,.mini-list div strong{white-space:nowrap;flex-shrink:0;padding-right:4px}.summary-list span,.mini-list span,.muted{color:var(--muted)}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.summary-sub{opacity:.8;padding-left:12px;font-size:.88rem}.summary-group-sep{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;margin-top:4px;padding-top:8px;display:flex}.metric header{gap:4px;margin-bottom:12px;display:grid}.metric header span{color:var(--muted);font-weight:700}.metric header strong{color:var(--ok);font-size:26px}.metric.expense header strong,.error{color:var(--danger)}.period-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filters,.password-form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.period-bar label,.label-inline{width:170px}.period-step{min-width:48px;font-weight:700}.period-label{text-align:center;flex:1;font-size:16px;font-weight:700}.filters select{width:150px}.filters input{width:220px}.table-wrap{overflow-x:auto}.table-wrap.compact{max-height:260px;overflow:auto}.num{text-align:right;white-space:nowrap;font-weight:700}.row-actions{gap:6px;min-width:150px;display:flex}.col-kwota{text-align:right;white-space:nowrap;width:1%;font-weight:700}.col-id{text-align:right;white-space:nowrap;width:36px;min-width:36px;font-size:11px}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.pager{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;display:flex}.report-section{gap:12px;display:grid}.report-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid var(--line);margin:0;padding-bottom:8px;font-size:11px;font-weight:700}.report-grid,.config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.config-meta-row{max-width:420px;margin-bottom:8px}.config-box{border:1px solid var(--line);border-radius:8px;padding:12px}.config-section{gap:12px;margin-top:16px;display:grid}.nested-config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.nested-config-grid .config-section{align-content:start;margin-top:0}.config-section>h3,.config-section-head h3{margin:0;font-size:16px}.config-section-head{background:var(--bg);border-radius:4px;justify-content:space-between;align-items:center;gap:10px;margin:-4px -4px 0;padding:6px 8px;display:flex}.config-title{background:var(--bg);border-radius:4px;justify-content:space-between;align-items:center;gap:10px;margin:-4px -4px 8px;padding:6px 8px;display:flex}.config-title h3{margin:0;font-size:14px}.config-rows{gap:6px;display:grid}.config-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.config-box input,.config-section input,.nested-config-group input{min-height:32px;padding:4px 8px;font-size:13px}.config-box button,.config-section button:not(.primary){min-height:32px;padding:4px 10px;font-size:13px}.nested-config{gap:12px;display:grid}.nested-config-group{border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.reservation-config-list{gap:12px;display:grid}.reservation-config-property{border:1px solid var(--line);border-radius:8px;gap:12px;padding:12px;display:grid}.reservation-config-head,.reservation-config-columns{grid-template-columns:1.3fr 1fr auto;gap:10px;display:grid}.reservation-config-columns{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);align-items:start}.reservation-config-head label,.check-row{align-items:center;gap:6px;display:flex}.reservation-config-head label:not(.check-row){color:var(--muted);flex-direction:column;align-items:stretch;font-size:12px}.config-section-head.compact{margin:0 0 8px}.config-section-head h4{margin:0;font-size:14px}.reservation-config-row{grid-template-columns:80px minmax(120px,1fr) 80px;gap:6px;margin-bottom:6px;display:grid}.reservation-config-row.unit-row{grid-template-columns:70px minmax(150px,1fr) 80px auto}.nested-type-row{background:var(--bg);border-bottom:1px solid var(--line);border-radius:6px 6px 0 0;margin:-12px -12px 10px;padding:6px 12px}.nested-type-row input{background:0 0;border-color:#0000;padding-left:0;font-weight:700}.nested-type-row input:focus{border-color:var(--accent);background:#fff;padding-left:8px}.nested-items{padding-left:12px}.login-shell{align-items:center;min-height:100vh;padding:18px;display:grid}.login-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:14px;width:100%;max-width:380px;margin:0 auto;padding:24px;display:grid}.wide-error{grid-column:1/-1;margin:0}.single-view{padding:18px}.narrow-panel{max-width:560px}.ok-message{color:var(--ok);font-weight:700}@media (width<=1100px){.app-shell,.metrics-grid,.report-grid,.config-grid{grid-template-columns:1fr}}@media (width<=620px){.topbar{flex-direction:column;align-items:flex-start;gap:12px}.topbar h1{max-width:100%;font-size:20px}.topbar-brand{flex-direction:column;align-items:flex-start;gap:5px;max-width:100%}.topbar-clock{font-size:11px}.col-typ,.col-pracownik,.col-platnosc,.col-guest-email,.col-guest-notes{display:none}input,select,textarea{font-size:16px}.topbar nav{justify-content:flex-start;width:100%}.topbar-nav{flex-direction:column;align-items:stretch}.mobile-menu-trigger{background:var(--accent);border-color:var(--accent);color:var(--ink);justify-content:space-between;align-items:center;width:100%;font-weight:700;display:flex}.mobile-menu-trigger span[aria-hidden]{font-size:20px;line-height:1}.tabs{width:100%;display:none}.topbar-nav.open .tabs{grid-template-columns:1fr;gap:4px;display:grid}.topbar-nav:not(.open) .user-menu{display:none}.topbar .tab-btn{text-align:left;border:1px solid #ffffff2e;border-radius:6px;width:100%;padding:6px 10px;font-size:12px}.user-menu,.user-trigger,.user-menu-panel{width:100%}.user-menu-panel{position:static}.app-shell{padding:10px}.entry-form{grid-template-columns:1fr}.filters,.password-form{flex-direction:column;align-items:stretch}.filters input,.filters select,.password-form input,.password-form button{width:100%}.period-bar label{width:calc(50% - 5px)}.period-bar .primary,.period-label{flex-basis:100%}.config-row,.nested-config-grid,.reservation-config-head,.reservation-config-columns,.reservation-config-row,.reservation-config-row.unit-row{grid-template-columns:1fr}}.log-row.clickable{cursor:pointer}.log-row.clickable:hover td{background:var(--hover-bg,#f5f5f5)}.log-diff-row td{background:var(--diff-bg,#fafafa);padding:8px 12px}.log-diff-table{border-collapse:collapse;width:100%;font-size:.85rem}.log-diff-table th,.log-diff-table td{text-align:left;border-bottom:1px solid var(--border,#e0e0e0);padding:4px 10px}.log-diff-table th{color:var(--muted,#666);font-weight:600}.log-diff-old{color:#b91c1c;text-decoration:line-through}.log-diff-new{color:#15803d}.log-diff-empty{color:var(--muted,#666);margin:0;padding:4px 10px;font-size:.85rem}.tabs{flex-wrap:wrap;align-items:center;gap:0;display:flex}.tab-btn{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:8px 16px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--text);border-bottom-color:var(--line);background:0 0}.topbar .tab-btn{color:#ffffffb8}.topbar .tab-btn:hover{color:#fff;border-bottom-color:var(--accent);background:0 0}.topbar .tab-btn.active{color:#fff;border-bottom-color:var(--accent)}.tab-btn.active{color:var(--accent-dark);border-bottom-color:var(--accent-dark);font-weight:600}.res-root{align-items:flex-start;display:flex;position:relative}.res-main{flex:1;min-width:0;padding:0 16px}.res-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.res-grid-wrapper{border:1px solid var(--line);isolation:isolate;border-radius:4px;width:100%;max-height:calc(100vh - 180px);overflow:auto}.res-grid{--res-unit-col-width:72px;min-width:max-content;display:grid}.res-today-marker{pointer-events:none;z-index:1;place-self:stretch stretch;position:relative}.res-today-marker:before{content:"";background:#dc472fb8;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.res-header-cell{background:var(--panel);color:var(--muted);text-align:center;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600}.res-unit-col{border-bottom:1px solid var(--line);align-items:center;gap:4px;width:72px;min-width:68px;max-width:80px;padding:4px 6px;font-size:12px;display:flex}.res-day-col{border-right:1px solid var(--line);border-bottom:1px solid var(--line);align-content:center;justify-items:center;gap:2px;width:38px;min-width:38px;min-height:38px;padding:3px 0;display:grid}.res-day-col.is-today .res-day-number,.res-day-col.is-today .res-weekday{color:var(--danger);font-weight:800}.res-day-number{color:var(--text);font-size:11px;line-height:1}.res-weekday{color:var(--muted);font-size:9px;line-height:1}.res-header-cell.is-saturday{background:#fff4df}.res-header-cell.is-sunday{background:#ffe9e3}.res-header-cell.is-saturday .res-weekday,.res-cell.is-saturday{color:#8a5200}.res-header-cell.is-sunday .res-weekday,.res-cell.is-sunday{color:#9b271d}.res-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;height:32px;transition:filter .1s;position:relative;overflow:hidden}.res-cell:hover{filter:brightness(.93)}.entry-cancelled{opacity:.55}.entry-cancelled td:not(:last-child){text-decoration:line-through}.entries-table tbody tr.clickable{cursor:pointer}.entries-table tbody tr.clickable:hover td{background:var(--hover-bg,#f5f5f5)}.res-cell.is-saturday{background:#fffaf0}.res-cell.is-sunday{background:#fff5f2}.res-cell.is-selecting{box-shadow:inset 0 0 0 2px var(--accent-dark);background:#13705a38}.res-block{cursor:pointer;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);z-index:2;border-radius:2px;align-self:center;height:28px;margin:2px 4px;padding-left:8px;padding-right:8px;transition:filter .1s;position:relative;overflow:hidden}.res-block:hover{filter:brightness(.88)}.res-block.handoff-out{margin-right:19px}.res-block.handoff-in{margin-left:19px}.res-view-switch{display:inline-flex}.res-header-group-create{white-space:nowrap;min-height:34px;padding:7px 10px}.res-table-panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden}.res-table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.res-table-toolbar>div{align-items:center;gap:8px;display:flex}.res-table-toolbar span{color:var(--muted);font-size:12px}.res-table-add{white-space:nowrap;padding:7px 10px}.res-table-toolbar input{width:260px}.res-table-wrap{overflow:auto}.res-table{border-collapse:collapse;width:100%;min-width:920px}.res-table th,.res-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 10px;font-size:13px}.res-table th{background:var(--bg);color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.res-table tbody tr{cursor:pointer}.res-table tbody tr:hover{background:var(--bg)}.res-table td span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.res-status-pill{border-radius:3px;padding:2px 6px;font-weight:700;color:#fff!important;margin:0!important;font-size:11px!important;display:inline-block!important}.res-drawer{background:var(--panel);border-left:1px solid var(--line);flex-shrink:0;width:552px;max-height:calc(100vh - 180px);padding:24px 20px;position:sticky;top:0;overflow-y:auto}.res-drawer.wide{width:min(686px,39vw)}.res-drawer input,.res-drawer select,.res-drawer textarea{box-sizing:border-box;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:4px;padding:6px 8px;font-size:14px}.res-attachments{border:1px solid var(--line);border-radius:6px;gap:8px;margin-bottom:16px;padding:10px;display:grid}.res-attachments-head,.res-attachment-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.res-attachments-head{color:var(--muted);font-size:12px}.res-attachments-head em{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.res-attachment-list{gap:6px;display:grid}.res-attachment-row{background:var(--bg);border-radius:4px;padding:6px 8px;font-size:12px}.res-attachment-row a{color:var(--accent-dark);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.res-drawer input:focus,.res-drawer select:focus,.res-drawer textarea:focus{outline:2px solid var(--accent-dark);outline-offset:-1px}.guest-drop{background:var(--panel);border:1px solid var(--line);z-index:200;border-radius:6px;max-height:220px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.guest-drop-item{cursor:pointer;border-bottom:1px solid var(--line);padding:8px 12px;font-size:13px}.guest-drop-item:last-child{border-bottom:none}.guest-drop-item:hover{background:var(--hover-bg)}.guest-contact-row{color:var(--ok);justify-content:space-between;align-items:center;gap:8px;min-height:22px;margin-top:3px;font-size:11px;display:flex}.guest-contact-state{flex:none}.guest-contact-inline-data{color:var(--muted);flex:auto;align-items:center;gap:6px;min-width:0;display:flex}.guest-rating-badge{text-overflow:ellipsis;white-space:nowrap;border-radius:4px;max-width:100%;padding:3px 6px;font-size:10px;font-weight:700;line-height:1;display:inline-block;overflow:hidden}.guest-contact-summary{color:var(--muted);flex-wrap:wrap;gap:6px 10px;margin-top:3px;font-size:11px;display:flex}.guest-contact-error{color:var(--danger);margin:4px 0 0;font-size:12px}.guest-contact-backdrop{z-index:1200;background:#11111161;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.guest-contact-modal{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:12px;width:min(100%,560px);max-width:560px;padding:16px;display:grid;box-shadow:0 18px 44px #0000003d}.guest-contact-head,.guest-contact-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.guest-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.guest-contact-notes{display:grid}.guest-contact-modal input,.guest-contact-modal select,.guest-contact-modal textarea{background:var(--bg);border:1px solid var(--line);box-sizing:border-box;color:var(--text);border-radius:4px;width:100%;padding:6px 8px;font-size:14px}.guest-contact-modal input:focus,.guest-contact-modal select:focus,.guest-contact-modal textarea:focus{border-color:var(--accent);outline:none}.reservation-config-tabs{border-bottom:1px solid var(--line);gap:8px;margin-bottom:14px;display:flex}.reservation-config-tabs .tab-btn.active{color:var(--text);border-bottom-color:var(--accent-dark);font-weight:700}.pricing-config{gap:14px;display:grid}.pricing-settings,.bank-accounts-settings,.pricing-toolbar,.pricing-card{background:var(--surface,#fff);border:1px solid var(--line);border-radius:8px;padding:12px 14px}.pricing-settings{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:12px;display:grid}.bank-accounts-settings{gap:8px;margin-bottom:12px;display:grid}.bank-account-row{grid-template-columns:minmax(150px,.55fr) minmax(280px,1fr) 92px 110px;align-items:end;gap:10px;display:grid}.bank-account-active{min-height:37px}.pricing-settings>button{white-space:nowrap;align-self:end}.field-hint{color:var(--muted);font-size:11px;font-weight:500}.pricing-toolbar{grid-template-columns:minmax(260px,1fr) 220px;align-items:end;gap:12px;display:grid}.year-stepper{grid-template-columns:40px minmax(90px,1fr) 40px;gap:6px;display:grid}.pricing-card h4,.pricing-card-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:600}.season-row{grid-template-columns:minmax(160px,1.4fr) 88px 88px 80px auto auto auto auto;align-items:center;gap:8px;display:grid}.service-fee-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.service-fee-row>label:first-child{width:200px}.service-fee-row .checkbox-row{white-space:nowrap}.checkbox-row{align-items:center;gap:8px;display:flex}.season-header{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;grid-template-columns:minmax(160px,1.4fr) 88px 88px 80px auto auto auto auto;align-items:center;gap:8px;margin-bottom:6px;padding:0 14px 6px;font-size:11px;font-weight:600;display:grid}.season-header>span:last-child{text-align:center;grid-column:5/-1}.pricing-copy-panel{background:var(--bg);border:1px solid var(--line);border-radius:8px;gap:10px;margin-top:12px;padding:12px;display:grid}.pricing-copy-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.pricing-copy-targets{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px;display:grid}.pricing-copy-option{background:var(--panel);border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;padding:8px 10px;display:flex}.pricing-copy-option input{width:auto;min-height:0}.pricing-copy-warnings{color:#7a4b00;background:#fff8e6;border:1px solid #efc46a;border-radius:6px;padding:8px 10px;font-size:12px}.pricing-copy-warnings p{margin:0}.pricing-copy-warnings p+p{margin-top:4px}.rates-panel{border-top:1px solid var(--line);gap:8px;margin-top:12px;padding-top:12px;display:grid}.rate-row{grid-template-columns:70px minmax(120px,180px) minmax(100px,1fr) 40px;align-items:center;gap:8px;display:grid}.rate-row.rate-head{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.pricing-form-box{background:var(--bg);border:1px solid var(--line);border-radius:8px;gap:10px;margin-bottom:12px;padding:12px;display:grid}.pricing-form-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pricing-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pricing-warning{color:#7a4b00;background:#fff8e6;border:1px solid #efc46a;border-radius:6px;margin:0;padding:8px 10px;font-size:12px}.pricing-warning.critical{border-color:var(--danger);color:var(--danger);background:#fff3f2}.print-overlay{z-index:1000;background:#eef3f6;padding:24px;position:fixed;inset:0;overflow:auto}.print-doc{color:#151515;background:#fff;max-width:820px;min-height:1120px;margin:0 auto;padding:42px 52px;font-family:Arial,Helvetica,sans-serif;box-shadow:0 12px 36px #0000002e}.doc-header,.field-row,.payment-row{justify-content:space-between;align-items:baseline;gap:18px;display:flex}.resort-name{font-size:24px;font-weight:800}.resort-sub,.doc-meta,.field-label,.date-label,.nights-lbl{color:#5f6d78;font-size:12px}.doc-meta{text-align:right}.doc-type{text-transform:uppercase;border-top:2px solid #151515;border-bottom:2px solid #151515;margin:32px 0 12px;padding:14px 0;font-size:28px;font-weight:800}.confirmed-badge{color:#247a48;background:#edf8f1;border:1px solid #9fd3b4;border-radius:6px;padding:6px 10px;font-weight:700;display:inline-block}.section{border-bottom:1px solid #d8e6ef;padding:22px 0}.section-title{color:#176b95;letter-spacing:0;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:800}.guest-name{font-size:22px;font-weight:800}.guest-contact{color:#5f6d78;gap:16px;margin-top:4px;display:flex}.field-row{margin:7px 0}.field-value{text-align:right;font-weight:700}.dates-row{grid-template-columns:1fr 90px 1fr;align-items:stretch;gap:12px;margin:14px 0;display:grid}.dates-row-two{grid-template-columns:1fr 1fr}.date-box,.nights-box{border:1px solid #d8e6ef;border-radius:8px;place-items:center;padding:12px;display:grid}.date-value{font-size:20px;font-weight:800}.nights-num{font-size:28px;font-weight:800}.calc-table td{border-bottom:1px solid #e5edf3;padding:9px 0}.calc-table td:last-child{text-align:right;font-weight:700}.calc-table .row-total td{border-top:2px solid #151515;font-size:18px;font-weight:800}.calc-table .addons-total-row td{padding-top:6px;font-weight:700}.calc-table .addon-row td{color:#555;border-bottom:none;padding:2px 0 2px 12px;font-size:10px;font-weight:400}.calc-table .addon-row td:last-child{padding-left:0;font-weight:600}.addon-row-name{font-size:10px;display:block}.addon-row-detail{color:#999;margin-top:1px;font-size:9px;display:block}.payment-row{border-radius:6px;margin-bottom:8px;padding:10px 12px;font-weight:700}.payment-row.paid{color:#247a48;background:#edf8f1}.payment-row.due{color:#7a4b00;background:#fff8e6}.payments-table{border-collapse:collapse;width:100%;margin-top:12px;font-size:12px}.payments-table th,.payments-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e5edf3;padding:7px 6px}.payments-table th{color:#5f6d78;text-transform:uppercase;font-size:11px}.payments-table th:last-child,.payments-table td:last-child{text-align:right;white-space:nowrap;font-weight:700}.deposit-request{background:#f7fbfd;border:1px solid #d8e6ef;border-radius:8px;margin-top:12px;padding:12px}.notes-box{white-space:pre-wrap}.doc-footer{color:#5f6d78;text-align:center;padding-top:24px;font-size:12px}.print-actions{justify-content:center;gap:8px;max-width:820px;margin:16px auto 0;display:flex}.res-list-mobile,.res-mobile-create{display:none}@media (width<=900px){.res-grid-wrapper{max-height:calc(100vh - 210px);display:block}.res-grid{--res-unit-col-width:56px}.res-unit-col{width:56px;min-width:52px;max-width:60px;padding:4px;font-size:11px}.res-list-mobile{display:none}.res-mobile-create{display:inline-flex}.res-root{display:block}.res-main{padding:0 8px}.res-drawer{border-left:none;border-top:1px solid var(--line);width:100%;max-height:none;position:static;overflow-y:visible}.res-drawer.wide{width:100%}.pricing-settings,.bank-account-row,.pricing-toolbar,.season-row,.rate-row,.pricing-form-grid{grid-template-columns:1fr}}@media print{body{background:#fff}#root,.no-print{display:none!important}.print-overlay{background:#fff;padding:0;position:static;inset:auto;overflow:visible}.print-doc{box-shadow:none;max-width:none;min-height:0;margin:0;padding:0}}.btn-primary{background:var(--accent-dark);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:6px 16px;font-size:14px;font-weight:500;transition:opacity .15s}.btn-primary:hover{opacity:.85}.btn-secondary{background:var(--surface-2,#f0f4f8);color:var(--text,#1a1a1a);border:1px solid var(--border,#d0d0d0);cursor:pointer;border-radius:4px;padding:6px 16px;font-size:14px;font-weight:500;transition:background .15s}.btn-secondary:hover{background:var(--surface-3,#e4e8ec)}.btn-primary.small,.btn-secondary.small{padding:3px 10px;font-size:12px}.group-avail-filter{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.addon-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0;overflow:hidden}.addon-modal{background:var(--panel);border:1px solid var(--line);border-radius:6px;flex-direction:column;width:min(820px,100vw - 36px);max-width:820px;min-height:0;max-height:min(760px,100vh - 36px);display:flex;overflow:hidden;box-shadow:0 18px 50px #00000038}.addon-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 18px 12px;display:flex}.addon-modal h2{margin:0;font-size:.82rem;font-weight:700}.addon-modal-meta{color:var(--muted);margin:4px 0 0;font-size:.66rem}.addon-close,.addon-icon-btn{background:var(--bg);border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-weight:700;line-height:1;display:inline-flex}.addon-close:hover,.addon-icon-btn:hover{border-color:var(--danger);color:var(--danger)}.addon-modal-body{grid-template-columns:1fr .8fr;gap:12px;padding:12px 16px;display:grid;overflow:auto}.addon-section{min-width:0}.addon-section-disabled{opacity:.58}.addon-section-title{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.addon-section-title h3{color:var(--text);letter-spacing:0;text-transform:none;margin:0;font-size:.74rem;font-weight:700}.addon-section-title span{color:var(--muted);margin-top:2px;font-size:.62rem;display:block}.addon-secondary{background:var(--bg);border:1px solid var(--line);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:4px;padding:5px 8px;font-size:.66rem}.addon-secondary:hover{border-color:var(--accent-dark);color:var(--accent-dark)}.addon-person-list{gap:7px;display:grid}.addon-person-block{background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:8px}.addon-person-header{grid-template-columns:minmax(60px,auto) minmax(110px,1fr) auto auto;align-items:center;gap:6px;margin-bottom:7px;display:grid}.addon-person-header strong{font-size:.7rem}.addon-person-header select{width:100%;min-width:0;font-size:.67rem}.addon-person-subtotal{color:var(--accent-dark);white-space:nowrap;font-size:.69rem;font-weight:700}.addon-choice-grid,.addon-general-grid{gap:4px;display:grid}.addon-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.addon-general-grid{grid-template-columns:1fr}.addon-choice,.addon-general-choice{background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:4px;align-items:center;gap:6px;min-height:32px;padding:5px 7px;display:grid}.addon-choice{grid-template-columns:auto minmax(0,1fr) auto}.addon-general-choice{grid-template-columns:auto minmax(0,1fr) auto auto;font-size:.66rem}.addon-choice:hover,.addon-general-choice:hover{border-color:var(--accent-dark)}.addon-choice.selected,.addon-general-choice.selected{background:color-mix(in srgb, var(--accent) 16%, var(--panel));border-color:var(--accent-dark)}.addon-choice.disabled{background:var(--bg);cursor:not-allowed}.addon-choice input[type=checkbox],.addon-general-choice input[type=checkbox]{margin:0}.addon-choice-name{overflow-wrap:anywhere;min-width:0;font-size:.66rem;line-height:1.2}.addon-price-label{color:var(--muted);white-space:nowrap;font-size:.61rem;font-weight:600}.addon-price-edit{place-items:center end;gap:2px;min-width:58px;display:inline-grid}.addon-price-edit input{text-align:right;max-width:58px;padding:2px 4px;font-size:.62rem}.addon-price-edit span{color:var(--muted);white-space:nowrap;font-size:.58rem;font-weight:700}.addon-general-choice.selected .addon-price-label,.addon-choice.selected .addon-price-label{color:var(--accent-dark)}.addon-general-choice .addon-qty{text-align:center;width:46px;padding:3px 5px;font-size:.67rem}.addon-empty{color:var(--muted);margin:0;font-size:.69rem}.addon-actions{background:var(--panel);border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:8px;padding:12px 18px;display:flex}.addon-summary{margin-right:auto}.addon-summary span{color:var(--muted);font-size:.62rem;display:block}.addon-summary strong{color:var(--text);font-size:.84rem;display:block}@media (width<=700px){.addon-modal-overlay{align-items:stretch;padding:10px}.addon-modal{width:calc(100vw - 20px);min-height:0;max-height:calc(100vh - 20px)}.addon-modal-body{grid-template-columns:1fr;padding:10px}.addon-choice-grid{grid-template-columns:1fr 1fr}.addon-actions{flex-wrap:wrap;padding:10px 12px}}@media (width<=560px){.addon-person-header,.addon-general-choice{grid-template-columns:1fr auto}.addon-person-header select,.addon-person-subtotal,.addon-general-choice .addon-price-label,.addon-general-choice .addon-qty{grid-column:1/-1}.addon-actions .btn-primary,.addon-actions button{flex:140px}}.addon-checkbox-row,.addon-item-row{align-items:center;gap:8px;padding:4px 0;display:flex}.addon-item-row .addon-qty{text-align:center;width:48px}.pricing-addons-row{border-top:1px solid var(--line);align-items:center;gap:8px;margin-top:8px;padding-top:8px;display:flex}.addons-meal-excluded{color:var(--text);align-items:center;gap:6px;min-height:32px;font-size:13px;display:inline-flex}.addons-meal-excluded input{margin:0}.btn-addon-toggle{border:1px solid var(--accent-dark);color:var(--accent-dark);cursor:pointer;background:0 0;border-radius:4px;padding:4px 12px;font-size:.85rem}.btn-addon-toggle:hover{background:var(--accent)}.addon-total-label{color:var(--muted);font-size:.88rem}.pricing-addons-summary{color:var(--muted);gap:16px;padding:4px 0;font-size:.82rem;display:flex}.reservation-group-panel{gap:14px;width:min(686px,39vw);display:grid}.reservation-group-head,.reservation-group-subhead,.reservation-group-actions,.reservation-group-summary{justify-content:space-between;align-items:center;gap:10px;display:flex}.reservation-group-head h3{margin:0}.reservation-group-subhead span{color:var(--muted);font-size:12px}.reservation-group-box{background:var(--bg);border:1px solid var(--line);border-radius:6px;gap:10px;padding:12px;display:grid}.reservation-group-notes{gap:6px;margin:10px 0 12px;display:grid}.group-guest-field{position:relative}.reservation-group-table-wrap{overflow:auto}.reservation-group-table{border-collapse:collapse;width:100%;min-width:760px}.reservation-group-table th,.reservation-group-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:8px;font-size:13px}.reservation-group-table th{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.reservation-group-table input[type=number]{width:72px;min-height:32px}.reservation-group-table tr.selected{background:#13705a14}.reservation-group-table tr.is-cancelled,.reservation-group-payments .is-cancelled{opacity:.55;text-decoration:line-through}.reservation-group-table .critical{color:var(--danger);font-weight:700}.reservation-group-summary{background:var(--panel);border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;justify-content:flex-start;padding:10px 12px}.reservation-group-summary span{color:var(--muted);font-size:13px}.reservation-group-summary strong{color:var(--text)}.reservation-group-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.reservation-group-facts span{color:var(--muted);font-size:13px}.reservation-group-facts strong{color:var(--text)}.reservation-group-payments{gap:8px;display:grid}.reservation-group-payments>div{background:var(--panel);border:1px solid var(--line);border-radius:6px;gap:2px;padding:8px 10px;display:grid}.reservation-group-payments span{color:var(--muted);font-size:12px}.reservation-group-payment-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px;display:grid}.reservation-group-actions{flex-wrap:wrap;justify-content:flex-start}.reservation-group-confirm{border:1px solid var(--danger);background:#fff3f2;border-radius:6px;gap:8px;padding:12px;display:grid}.reservation-group-confirm span{color:var(--muted);font-size:13px}.reservation-group-confirm div{flex-wrap:wrap;gap:8px;display:flex}.group-badge,.group-mini-badge{letter-spacing:0;vertical-align:middle;background:#143f52;border-radius:3px;padding:3px 5px;font-weight:800;line-height:1;color:#fff!important;margin-left:6px!important;font-size:10px!important;display:inline-block!important}.group-mini-badge{background:#ffffff38;border:1px solid #ffffff8c;margin:0 4px 0 0!important}.res-block.is-group-item{box-shadow:inset 0 0 0 1px #ffffff73}@media (width<=900px){.reservation-group-panel{width:100%}.reservation-group-head,.reservation-group-actions{flex-direction:column;align-items:stretch}.reservation-group-facts,.reservation-group-payment-form{grid-template-columns:1fr}}
