:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#fbfbfc;--sidebar-bg:#eef8fa;--panel:#fff;--soft:#f6f8fa;--line:#e7ebef;--line-strong:#d7dee5;--text:#27333f;--muted:#74818d;--coral:#ed5d70;--coral-dark:#c94859;--coral-soft:#ffe7eb;--teal:#5a92a0;--teal-soft:#dff4f5;--sky:#8ac7d8;--sky-soft:#e4f6fb;--peach:#f2afa2;--peach-soft:#fff0ea;--yellow:#f5c344;--yellow-soft:#fff5d7;--green:#58bfa5;--green-soft:#e4f8f1;--navy:#2d5365;--shadow:0 18px 45px #27333f14;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--app-bg);min-width:320px;color:var(--text);margin:0}button,input,select{font:inherit}button{color:inherit}.app{background:var(--app-bg);grid-template-columns:242px minmax(0,1fr);min-height:100svh;display:grid}.sidebar{background:var(--sidebar-bg);border-right:1px solid #dceff2;flex-direction:column;gap:24px;height:100svh;padding:26px 16px;display:flex;position:sticky;top:0}.brand{color:var(--coral);align-items:center;min-width:0;display:flex}.brand-logo{object-fit:contain;width:min(170px,100%);height:auto;display:block}.language-switcher{border:1px solid var(--line);background:#ffffffdb;border-radius:999px;align-items:center;gap:4px;min-height:38px;padding:4px;display:inline-flex}.language-switcher button{min-width:40px;min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:grid}.language-switcher button.active{background:var(--navy);color:#fff;box-shadow:0 8px 18px #17485a26}.session-loader{background:linear-gradient(135deg, #ffe7ebb8, #dff4f5e6), var(--app-bg);text-align:center;align-content:center;place-items:center;gap:28px;min-height:100svh;padding:32px;display:grid}.session-loader .brand{justify-content:center}.session-loader span{color:var(--teal);text-transform:uppercase;font-size:12px;font-weight:900}.session-loader h1{letter-spacing:0;margin:10px 0 8px;font-size:clamp(30px,5vw,52px);line-height:1.02}.session-loader p{max-width:430px;color:var(--muted);margin:0 auto}.user-pill{cursor:pointer;text-align:left;background:#ffffffd1;border:1px solid #deedf1;border-radius:8px;grid-template-columns:34px 1fr 18px;align-items:center;gap:10px;min-height:64px;padding:10px;display:grid}.user-pill>span,.tiny-avatar{background:var(--coral);color:#fff;border-radius:999px;place-items:center;width:30px;height:30px;font-size:11px;font-weight:800;display:grid}.user-pill strong,.user-pill small{display:block}.user-pill strong{font-size:13px}.user-pill small{color:var(--muted);margin-top:2px;font-size:11px}.nav-list{gap:6px;display:grid}.nav-item{color:#4f6672;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;min-height:42px;padding:0 10px;display:grid;position:relative}.nav-item:hover,.nav-item.active{color:var(--navy);background:#d9f3fa}.nav-item.active:after{background:var(--teal);content:"";width:3px;position:absolute;inset:0 -16px 0 auto}.nav-item span{font-size:14px;font-weight:650}.nav-item b,.mobile-tabs b,.top-actions .icon-button span{background:var(--coral);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:11px;font-weight:800;display:grid}.workspace{min-width:0;height:100svh;overflow:hidden}.topbar{justify-content:flex-end;align-items:center;gap:18px;height:92px;padding:24px 56px 14px;display:flex}.search{border:1px solid var(--line-strong);width:min(310px,32vw);min-height:42px;color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 13px;display:flex}.search input,.filter-bar input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.building-switcher,.building-scope-pill{border:1px solid var(--line-strong);min-height:42px;color:var(--text);background:#fff;border-radius:8px;align-items:center;gap:9px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.building-switcher{width:min(250px,24vw);color:var(--muted)}.building-switcher select{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-weight:800}.building-scope-pill{max-width:230px;color:var(--teal);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-actions{align-items:center;gap:14px;display:flex}.text-upgrade{color:var(--coral);cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:800}.primary-button,.soft-button,.danger-button,.icon-button{cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.icon-button.menu-toggle{display:none}.primary-button{background:var(--coral);color:#fff;border:0;padding:0 18px;font-size:13px;font-weight:800;box-shadow:0 12px 24px #ed5d7033}.primary-button:hover{background:var(--coral-dark);transform:translateY(-1px)}.soft-button,.danger-button{border:1px solid var(--line);color:var(--text);background:#fff;padding:0 14px;font-size:13px;font-weight:750}.soft-button:hover,.icon-button:hover{border-color:var(--line-strong);background:var(--soft)}.danger-button{color:var(--coral-dark)}.danger-button:hover{background:var(--coral-soft)}.reservation-button{background:var(--yellow);color:#654600;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.reservation-button:hover{filter:saturate(1.05);transform:translateY(-1px)}.danger-button:disabled,.soft-button:disabled{cursor:not-allowed;opacity:.45}.icon-button{border:1px solid var(--line);color:#73818c;background:#fff;width:40px;padding:0;position:relative}.top-actions .icon-button span{position:absolute;top:-6px;right:-6px}.workspace-scroll{height:calc(100svh - 92px);padding:0 clamp(32px,5vw,80px) 80px;overflow:auto}.page{width:min(1120px,100%);margin:0 auto;animation:.28s both page-in}.page-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:34px;display:flex}.page-header h1{color:#2b3a46;letter-spacing:0;margin:0;font-size:clamp(28px,3vw,40px);line-height:1.08}.page-header p{color:var(--muted);margin:8px 0 0;font-size:14px}.page-icon{background:var(--coral-soft);width:54px;height:54px;color:var(--coral);border-radius:8px;place-items:center;display:grid}.section{margin-top:34px}.section-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:42px;margin-bottom:24px;padding-bottom:12px;display:flex}.section-title h2{letter-spacing:0;margin:0;font-size:19px}.section-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.view-tools{align-items:center;gap:7px;display:flex}.view-tools button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.view-tools button.active{background:var(--teal-soft);color:var(--teal)}.folder-row{grid-template-columns:repeat(7,minmax(104px,1fr));gap:28px;padding:4px 4px 12px;display:grid;overflow-x:auto}.buildings-folder-row{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:26px;overflow:visible}.new-folder,.folder-card{min-width:104px;color:var(--text);cursor:pointer;text-align:center;background:0 0;border:0;align-content:start;justify-items:center;gap:12px;padding:0;display:grid}.new-folder>span,.folder-shape{border-radius:8px;place-items:center;width:58px;height:46px;display:grid;position:relative}.new-folder>span{border:2px dashed var(--teal);color:var(--teal);background:#fff}.folder-shape{color:#ffffffdb;transition:transform .18s,box-shadow .18s}.folder-card:hover .folder-shape,.folder-card.active .folder-shape,.new-folder:hover>span{box-shadow:var(--shadow);transform:translateY(-3px)}.folder-card.coral .folder-shape{background:var(--coral)}.folder-card.terracotta .folder-shape{background:#cf6b63}.folder-card.peach .folder-shape{background:var(--peach)}.folder-card.teal .folder-shape{background:var(--teal)}.folder-card.sky .folder-shape{background:var(--sky)}.folder-card.navy .folder-shape{background:var(--navy)}.new-folder strong,.folder-card strong{color:#32434f;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:34px;font-size:13px;line-height:1.25;display:-webkit-box;overflow:hidden}.folder-card small{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;line-height:1.2;display:block;overflow:hidden}.building-directory-panel{margin-top:10px}.current-building-strip{border-top:1px solid var(--line);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:30px;padding-top:22px;display:grid}.current-building-icon{color:#fff;border-radius:8px;place-items:center;width:48px;height:48px;display:grid}.current-building-icon.coral{background:var(--coral)}.current-building-icon.terracotta{background:#cf6b63}.current-building-icon.peach{background:var(--peach)}.current-building-icon.teal{background:var(--teal)}.current-building-icon.sky{background:var(--sky)}.current-building-icon.navy{background:var(--navy)}.current-building-strip small,.current-building-strip strong,.current-building-strip p{display:block}.current-building-strip small{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.current-building-strip strong{color:#263744;margin-top:4px;font-size:20px;line-height:1.1}.current-building-strip p{color:var(--muted);margin:5px 0 0;font-size:13px}.building-list-view{gap:10px;display:grid}.building-list-row{border:1px solid var(--line);min-height:74px;color:var(--text);cursor:pointer;text-align:left;background:#fff;border-radius:8px;grid-template-columns:48px minmax(0,1fr) minmax(110px,auto) auto auto;align-items:center;gap:14px;padding:12px 14px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.building-list-row:hover,.building-list-row.active{border-color:#5a92a06b;transform:translateY(-1px);box-shadow:0 14px 30px #27333f14}.building-list-row:focus-visible{outline-offset:2px;outline:3px solid #5a92a02e}.building-list-row.add{background:var(--soft);border-style:dashed}.building-list-icon{width:42px;height:42px;color:var(--teal);background:#fff;border-radius:8px;place-items:center;display:grid}.building-list-icon.coral{background:var(--coral);color:#fff}.building-list-icon.terracotta{color:#fff;background:#cf6b63}.building-list-icon.peach{background:var(--peach);color:#fff}.building-list-icon.teal{background:var(--teal);color:#fff}.building-list-icon.sky{background:var(--sky);color:#fff}.building-list-icon.navy{background:var(--navy);color:#fff}.building-list-row div{gap:4px;min-width:0;display:grid}.building-list-row strong,.building-list-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.building-list-row div>strong{color:#263744;font-size:15px}.building-list-row small,.building-list-row em{color:var(--muted);font-size:12px}.building-list-row em{text-align:right;white-space:nowrap;font-style:normal;font-weight:850}.building-list-open{color:var(--teal);white-space:nowrap;justify-content:flex-end;align-items:center;gap:5px;font-size:12px;font-weight:900;display:inline-flex}.document-section{margin-top:44px}.card-grid{grid-template-columns:repeat(3,minmax(190px,1fr));gap:24px;display:grid}.card-grid.wide{grid-template-columns:repeat(4,minmax(190px,1fr))}.apartment-badge-board{background:#f6f7f9;border-radius:18px;padding:28px}.apartment-badge-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));justify-content:stretch;gap:24px;display:grid}.apartment-badge-grid.wide{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.apartment-badge{color:#263744;cursor:pointer;border:0;border-radius:14px;grid-template-rows:36px minmax(44px,1fr) auto auto;place-items:center;width:100%;min-height:214px;padding:22px 14px 44px;transition:transform .18s,filter .18s;display:grid;position:relative;overflow:hidden}.apartment-badge:hover{filter:saturate(1.04);transform:translateY(-3px)}.apartment-badge:focus-visible{outline-offset:3px;outline:3px solid #5a92a047}.apartment-badge.is-blocked{box-shadow:inset 0 0 0 3px #c9485933}.apartment-badge.sun{background:#f8cc46}.apartment-badge.mint{background:#def5ee}.apartment-badge.ink{color:#fff;background:#143d4f}.apartment-badge.clay{color:#fff;background:#e87455}.apartment-badge.cream{background:#f2dfcf}.apartment-badge.pool{background:#75c6e3}.apartment-badge-actions{align-items:center;gap:7px;display:flex;position:absolute;inset:12px auto auto 12px}.availability-dot{background:#26374457;border-radius:999px;width:9px;height:9px;box-shadow:0 0 0 4px #ffffff3d}.availability-dot.green{background:#279f79}.availability-dot.amber{background:#d99a17}.availability-dot.blue{background:#2e8bad}.availability-dot.red{background:#c94859}.availability-dot.gray{background:#8795a0}.apartment-badge-icon{stroke-width:2.5px;align-self:start}.apartment-badge-name{align-self:center;place-items:center;min-width:0;min-height:38px;display:grid}.apartment-badge-specs{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;max-width:100%;display:flex}.apartment-badge-specs span,.apartment-badge-rate{color:currentColor;background:#ffffff75;border-radius:999px;line-height:1}.apartment-badge-specs span{padding:6px 8px;font-size:10px;font-weight:850}.apartment-badge-rate{margin-top:8px;padding:7px 10px;font-size:12px;font-weight:900}.base-rate{color:currentColor;opacity:.72;margin-top:4px;font-size:10px;font-weight:850}.apartment-badge-tools{align-items:center;gap:7px;display:inline-flex;position:absolute;top:12px;right:12px}.apartment-badge-edit{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:currentColor;cursor:pointer;background:#ffffff47;border:1px solid #ffffff61;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;min-height:34px;padding:0;font-size:10px;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #26374414}.apartment-badge-edit span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.apartment-badge-edit:hover{background:#ffffffb8;transform:translateY(-1px)}.apartment-badge-edit.block{background:#ffffff57}.apartment-badge-edit.release{color:var(--coral-dark);background:#ffffffc7}.apartment-card{border:1px solid var(--line);background:#fff;border-radius:8px;transition:transform .18s,box-shadow .18s,border-color .18s;overflow:hidden;box-shadow:0 10px 28px #27333f0d}.apartment-card:hover{border-color:var(--line-strong);transform:translateY(-3px);box-shadow:0 18px 42px #27333f17}.apartment-art{isolation:isolate;place-items:center;min-height:136px;display:grid;position:relative;overflow:hidden}.apartment-art span{z-index:2;color:#33424d;background:#ffffffc7;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:850;position:relative}.apartment-art.sun{background:#f6c73b}.apartment-art.mint{background:#dff2ed}.apartment-art.ink{background:#143d4f}.apartment-art.ink span{background:#ffffffe6}.apartment-art.clay{background:#e87455}.apartment-art.cream{background:#f2dfcf}.apartment-art.pool{background:#75c6e3}.art-window,.art-bed{content:"";border-radius:8px;position:absolute}.art-window{background:#ffffff57;width:54px;height:74px;top:18px;right:22px}.art-bed{background:#fff6;width:86px;height:32px;bottom:20px;left:24px}.card-body{gap:14px;padding:14px;display:grid}.card-title,.card-meta,.card-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.card-title strong,.booking-row strong,.approval-row strong{font-size:14px;display:block}.card-title small,.booking-row small,.approval-row small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.card-title button,.card-footer button{color:#91a0aa;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.card-title button:hover,.card-footer button:hover{background:var(--soft);color:var(--coral)}.card-title .editable-name-button,.unit-structure .editable-name-button,.apartment-badge .editable-name-button{width:auto;height:auto;min-height:24px;color:var(--text);cursor:text;text-align:left;background:0 0;border:0;border-radius:6px;justify-content:flex-start;gap:6px;padding:0;display:inline-flex}.card-title .editable-name-button:hover,.unit-structure .editable-name-button:hover,.apartment-badge .editable-name-button:hover{color:inherit;opacity:.78;background:0 0}.editable-name-button strong{display:inline}.apartment-badge .editable-name-button{color:currentColor;justify-content:center;max-width:100%}.apartment-badge .editable-name-button strong{overflow-wrap:anywhere;text-align:center;font-size:25px;line-height:1.08}.apartment-badge .editable-name-button svg{display:none}.editable-name-input{border:1px solid var(--teal);width:min(170px,100%);min-height:30px;color:var(--text);background:#fff;border-radius:7px;outline:0;padding:0 8px;font-weight:850;box-shadow:0 0 0 4px #5a92a024}.apartment-badge .editable-name-input{color:#263744;text-align:center;border:0;border-radius:10px;width:min(142px,100%);min-height:40px;font-size:22px;box-shadow:0 10px 26px #27333f29}.card-meta span{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.card-meta{flex-wrap:wrap;justify-content:flex-start}.sell-badge{background:var(--coral-soft);color:var(--coral-dark);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.sell-badge.compact{color:currentColor;background:#ffffff75;padding:5px 8px;font-size:10px}.card-footer>strong{font-size:14px}.price-edit{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:1fr auto;align-items:center;width:128px;min-height:34px;display:grid;overflow:hidden}.price-edit input{min-width:0;color:var(--text);border:0;outline:0;padding:0 8px}.price-edit span{border-left:1px solid var(--line);background:var(--soft);color:var(--muted);padding:9px 7px;font-size:10px;font-weight:800}.price-edit.compact{background:#ffffff75;border:0;border-radius:999px;width:116px;min-height:30px}.price-edit.compact input{text-align:right;background:0 0;padding-inline:10px 4px;font-size:12px;font-weight:850}.price-edit.compact span{color:currentColor;background:0 0;border-left:1px solid #2637441a;padding:8px 8px 8px 5px}.status{white-space:nowrap;border-radius:999px;align-items:center;min-height:24px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.status.green{background:var(--green-soft);color:#29806b}.status.amber{background:var(--yellow-soft);color:#a46c00}.status.blue{background:var(--sky-soft);color:#3d7d91}.status.red{background:var(--coral-soft);color:var(--coral-dark)}.status.gray{color:#65727d;background:#eef1f4}.summary-band{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:46px;display:grid}.summary-stat{border:1px solid var(--line);color:var(--text);text-align:left;background:#fff;border-radius:8px;gap:8px;padding:22px;display:grid}button.summary-stat{cursor:pointer;font:inherit;transition:transform .16s,border-color .16s,box-shadow .16s}button.summary-stat:hover,button.summary-stat:focus-visible{border-color:#5a92a06b;transform:translateY(-1px);box-shadow:0 16px 32px #27333f14}button.summary-stat:focus-visible{outline-offset:2px;outline:3px solid #5a92a02e}.summary-stat svg{color:var(--teal)}.summary-stat span{color:var(--muted);font-size:13px}.summary-stat strong{letter-spacing:0;font-size:24px}.summary-stat small{color:var(--teal);text-transform:uppercase;font-size:11px;font-weight:900}.ops-dashboard{gap:16px;margin:4px 0 42px;display:grid}.ops-dashboard-hero{border:1px solid var(--line);border-left:6px solid var(--coral);background:linear-gradient(120deg,#fffffffa,#fff0eab8 54%,#dff4f5e6),#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:22px;padding:clamp(20px,3vw,30px);display:grid}.eyebrow{min-height:24px;color:var(--coral-dark);text-transform:uppercase;background:#ffffffb8;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.ops-dashboard-hero h2{letter-spacing:0;margin:14px 0 8px;font-size:clamp(30px,4.4vw,54px);line-height:.98}.ops-dashboard-hero p{color:#60717c;max-width:720px;margin:0;font-size:15px;line-height:1.55}.ops-metric-row{grid-template-columns:repeat(5,minmax(136px,1fr));gap:12px;display:grid}.dashboard-metric{border-radius:8px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;min-height:96px;padding:14px;display:grid}.dashboard-metric>span{background:#ffffff94;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.dashboard-metric strong,.dashboard-metric small,.dashboard-metric em{display:block}.dashboard-metric strong{letter-spacing:0;font-size:28px;line-height:1}.dashboard-metric small{margin-top:3px;font-size:12px;font-weight:900}.dashboard-metric em{color:currentColor;opacity:.72;grid-column:2;font-size:11px;font-style:normal;font-weight:800}.dashboard-metric.teal{background:var(--teal-soft);color:#346d78}.dashboard-metric.green{background:var(--green-soft);color:#2d806c}.dashboard-metric.coral{background:var(--coral-soft);color:var(--coral-dark)}.dashboard-metric.amber{background:var(--yellow-soft);color:#926400}.dashboard-metric.sky{background:var(--sky-soft);color:#34768a}.revenue-ribbon{background:var(--navy);color:#fff;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.revenue-metric{border-right:1px solid #ffffff24;gap:7px;min-height:86px;padding:18px 20px;display:grid}.revenue-metric:last-child{border-right:0}.revenue-metric span{color:#ffffffb8;font-size:12px;font-weight:850}.revenue-metric strong{letter-spacing:0;align-self:end;font-size:clamp(20px,2.2vw,28px)}.today-movement{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.movement-list{border:1px solid var(--line);background:#fff;border-radius:8px;gap:0;display:grid;overflow:hidden}.movement-list header{border-bottom:1px solid var(--line);grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:0 14px;display:grid}.movement-list h3{letter-spacing:0;margin:0;font-size:14px}.movement-list header strong{background:var(--soft);border-radius:999px;place-items:center;min-width:26px;height:26px;font-size:12px;display:grid}.movement-list>div{display:grid}.movement-list p{color:var(--muted);margin:0;padding:18px 14px;font-size:13px;font-weight:750}.movement-dot{border-radius:999px;width:10px;height:10px}.movement-dot.green{background:var(--green)}.movement-dot.coral{background:var(--coral)}.movement-row{border-bottom:1px solid var(--line);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;padding:11px 14px;display:grid}.movement-row:last-child{border-bottom:0}.movement-row>span{background:var(--teal-soft);width:34px;height:34px;color:var(--teal);border-radius:8px;place-items:center;font-size:11px;font-weight:900;display:grid}.movement-row strong,.movement-row small{display:block}.movement-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.movement-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;font-weight:750;overflow:hidden}.movement-row em{color:var(--coral-dark);white-space:nowrap;font-size:11px;font-style:normal;font-weight:900}.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.settings-panel,.pricing-rules,.price-card,.calendar-surface,.day-panel,.booking-list,.approval-list,.filter-bar{border:1px solid var(--line);background:#fff;border-radius:8px}.settings-panel{align-content:start;gap:20px;min-height:210px;padding:clamp(20px,3vw,30px);display:grid}.settings-panel.primary{grid-column:1/-1;min-height:0}.settings-panel-heading{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;display:grid}.settings-panel-heading>span{background:var(--teal-soft);width:42px;height:42px;color:var(--teal);border-radius:8px;place-items:center;display:grid}.settings-panel-heading h2,.price-card h2,.day-panel h2{letter-spacing:0;margin:0;font-size:clamp(22px,2.2vw,30px);line-height:1.08}.settings-panel-heading p,.price-card p,.day-panel p{max-width:540px;color:var(--muted);margin:7px 0 0;font-size:15px;line-height:1.55}.settings-form-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;max-width:760px;display:grid}.settings-form-row.compact{max-width:520px}.settings-form-row.currency-settings-row{grid-template-columns:minmax(220px,1fr) auto;align-items:end;max-width:640px}.settings-form-row .input-field{min-width:0}.currency-settings-row .soft-button{grid-column:1/-1;justify-self:start}.currency-preview{border:1px solid var(--line);background:var(--soft);border-radius:8px;align-content:center;min-height:42px;padding:8px 14px;display:grid}.currency-preview span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:900}.currency-preview strong{color:var(--text);white-space:nowrap;font-size:15px;font-weight:900}.settings-mini-stats{flex-wrap:wrap;gap:10px;display:flex}.settings-mini-stats span{background:var(--yellow-soft);color:#946d00;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:850}.button-row,.sheet-actions{align-items:center;gap:12px;display:flex}.filter-bar{align-items:center;gap:12px;margin-bottom:26px;padding:12px;display:flex}.filter-bar label{border:1px solid var(--line);background:var(--soft);min-width:180px;min-height:42px;color:var(--muted);border-radius:8px;flex:1;align-items:center;gap:9px;padding:0 12px;display:flex}select,.input-field input,.input-field select,.input-field textarea{border:1px solid var(--line);min-height:42px;color:var(--text);background:#fff;border-radius:8px;outline:0;padding:0 12px}.input-field textarea{resize:vertical;min-height:96px;padding-block:12px}.pricing-grid,.calendar-grid{grid-template-columns:minmax(0,1fr) 330px;gap:26px;display:grid}.calendar-toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(190px,260px) minmax(210px,300px);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding:12px;display:grid}.calendar-toolbar label{gap:7px;min-width:0;display:grid}.calendar-toolbar span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.calendar-toolbar input,.calendar-toolbar select{border:1px solid var(--line);width:100%;min-height:40px;color:var(--text);background:#fff;border-radius:8px;outline:0;padding:0 11px}.booking-calendar-grid{grid-template-columns:1fr;align-items:start;gap:18px}.pricing-rules{align-content:start;padding:22px;display:grid}.rule-line{border-bottom:1px solid var(--line);grid-template-columns:48px minmax(190px,1fr) 118px 110px 108px;align-items:center;gap:16px;min-height:88px;display:grid}.rule-line:last-child{border-bottom:0}.rule-line strong,.rule-line small{display:block}.rule-line small{color:var(--muted);margin-top:5px;font-size:12px}.rule-window{color:#52636e}.switch{cursor:pointer;background:#dce4e8;border:0;border-radius:999px;align-items:center;width:42px;height:26px;padding:3px;display:flex}.switch span{background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .16s;box-shadow:0 1px 3px #27333f38}.switch.on{background:var(--green)}.switch.on span{transform:translate(16px)}.direction{align-items:center;gap:5px;font-size:13px;font-weight:800;display:inline-flex}.direction.up{color:var(--teal)}.direction.down{color:#27926f}.rule-status{border-radius:999px;justify-content:center;padding:7px 10px;font-size:11px;font-weight:900;display:inline-flex}.rule-status.active{background:var(--green-soft);color:#22846d}.rule-status.scheduled{background:var(--sky-soft);color:var(--teal)}.rule-status.expired,.rule-status.off{background:var(--soft);color:var(--muted)}.price-card,.day-panel{align-self:start;gap:16px;padding:26px;display:grid}.price-card>span,.day-panel>span{color:var(--coral);text-transform:uppercase;font-size:12px;font-weight:900}.calendar-page .page-header{margin-bottom:24px}.calendar-page{width:100%;max-width:none}.booking-day-panel{grid-template-columns:minmax(170px,240px) minmax(0,1fr) minmax(260px,360px);align-items:start;gap:12px;padding:22px}.day-panel-summary{gap:8px;display:grid}.day-panel-summary>span,.booking-day-panel>span{letter-spacing:.03em;font-size:11px}.day-panel-summary>span{color:var(--coral);text-transform:uppercase;font-weight:900}.day-panel-summary h2,.booking-day-panel h2{font-size:clamp(28px,3vw,34px);line-height:1.02}.day-panel-summary p,.booking-day-panel p{font-size:13px;line-height:1.45}.booking-day-panel .timeline{margin-top:0}.booking-day-panel .free-unit-list{border-top:0;border-left:1px solid var(--line);align-content:start;align-self:stretch;padding:0 0 0 18px}.preview-line{border-bottom:1px solid var(--line);min-height:42px;color:var(--muted);justify-content:space-between;align-items:center;gap:16px;font-size:13px;display:flex}.preview-line.strong{color:var(--text);border-bottom:0}.calendar-surface{grid-template-columns:repeat(7,minmax(0,1fr));gap:0;display:grid;overflow:visible}.booking-calendar-surface{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;position:relative}.calendar-weekday{border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.02em;z-index:4;text-transform:uppercase;background:#f8fafb;padding:9px 10px;font-size:10px;font-weight:900;position:relative}.calendar-weekday:nth-child(7n){border-right:0}.calendar-day{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;z-index:1;text-align:left;background:#fff;align-content:start;gap:9px;min-width:0;min-height:112px;padding:10px;transition:background .16s,box-shadow .16s,transform .16s;display:grid;position:relative}.booking-calendar-surface .calendar-day{border-right:1px solid var(--line);min-height:108px;padding:10px}.booking-calendar-surface .calendar-day:nth-child(7n){border-right:0}.calendar-day:hover,.calendar-day.active{background:#effafa}.calendar-day:hover{transform:translateY(-1px)}.calendar-day.active{box-shadow:inset 0 0 0 2px #5a92a047}.calendar-day.muted{color:#a6b1ba;background:#fbfcfd}.calendar-day.muted:hover{background:#f1f7f8}.calendar-day span{justify-content:space-between;align-items:baseline;gap:6px;min-width:0;display:flex}.calendar-day strong{color:var(--text);font-size:22px;line-height:1}.calendar-day small,.calendar-day em{color:var(--muted);font-size:11px;font-style:normal}.calendar-day small{white-space:nowrap}.calendar-day.muted strong{color:#a8b4be}.calendar-stay-bar{cursor:pointer;min-width:0;height:23px;margin:calc(46px + (var(--lane) * 27px)) 8px 0;z-index:5;text-align:left;border:1px solid #0000;border-radius:7px;justify-content:space-between;align-self:start;align-items:center;gap:8px;padding:0 8px 0 10px;font-size:11px;font-weight:900;line-height:1;transition:box-shadow .16s,filter .16s,transform .16s;display:flex;position:relative}.calendar-stay-bar:hover{filter:saturate(1.08);z-index:20;transform:translateY(-1px)}.calendar-stay-bar span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-stay-bar small{opacity:.86;text-transform:uppercase;flex:none;font-size:9px;font-weight:900}.calendar-stay-bar.booking{color:#fff;background:#f1847c;box-shadow:0 8px 16px #ed5d7029}.calendar-stay-bar.reservation{color:#805a00;background:#fff0bd;border-color:#f5c3446b;box-shadow:0 8px 16px #f5c3441f}.calendar-stay-bar:after{color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;text-transform:none;white-space:pre-line;background:#27333f;border:1px solid #27333f1a;border-radius:8px;width:max-content;max-width:min(300px,70vw);padding:10px 12px;font-size:11px;font-weight:750;line-height:1.45;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + 8px);left:0;transform:translateY(4px);box-shadow:0 18px 35px #27333f2e}.calendar-stay-bar:hover:after{opacity:1;transform:translateY(0)}.calendar-booking-stack{gap:4px;min-width:0;display:grid}.calendar-booking-stack em{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 6px;font-size:9px;font-weight:850;overflow:hidden}.calendar-booking-stack em.booking-chip{background:var(--coral-soft);color:var(--coral-dark)}.calendar-booking-stack em.reservation-chip{background:var(--yellow-soft);color:#956900}.progress{background:#e5edf1;border-radius:999px;height:5px;display:block;overflow:hidden}.progress span{border-radius:inherit;background:linear-gradient(90deg, var(--teal), var(--green));height:100%;display:block}.timeline{gap:12px;margin-top:2px;display:grid}.timeline-row{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:10px minmax(0,1fr);gap:10px;padding:0;display:grid}.timeline-row.muted{cursor:default}.timeline-row:hover strong{color:var(--teal)}.timeline-row.muted:hover strong{color:inherit}.timeline-row>span{background:var(--coral);border-radius:999px;width:8px;height:8px;margin-top:5px}.timeline-row.muted>span{background:var(--line-strong)}.timeline-row.reservation>span{background:var(--yellow)}.timeline-row.booking>span{background:var(--coral)}.timeline-row.block>span{background:#c94859}.timeline-row.block{cursor:default}.timeline-row.block:hover strong{color:inherit}.timeline-row strong,.timeline-row small{min-width:0;display:block}.timeline-row strong{text-overflow:ellipsis;font-size:14px;line-height:1.25;overflow:hidden}.timeline-row small{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.35}.calendar-entry-layer{z-index:120;place-items:center;padding:18px;display:grid}.calendar-entry-modal{z-index:1;border:1px solid var(--line);overscroll-behavior:contain;background:#fff;border-radius:8px;gap:18px;width:min(560px,100vw - 28px);max-height:calc(100svh - 36px);padding:18px;animation:.18s both sheet-in;display:grid;position:relative;overflow:auto;box-shadow:0 30px 80px #27333f38}.unit-history-layer{z-index:120;place-items:center;padding:18px;display:grid}.unit-history-modal{z-index:1;border:1px solid var(--line);overscroll-behavior:contain;background:#fff;border-radius:8px;gap:16px;width:min(760px,100vw - 28px);max-height:calc(100svh - 36px);padding:18px;animation:.18s both sheet-in;display:grid;position:relative;overflow:auto;box-shadow:0 30px 80px #27333f38}.unit-history-modal header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.unit-history-modal header span,.unit-history-modal header p,.history-summary span,.history-event small,.history-event span,.active-block-note small{color:var(--muted)}.unit-history-modal header h2,.unit-history-modal header p{margin:0}.unit-history-modal header h2{margin-top:4px;font-size:clamp(34px,5vw,52px);line-height:1}.unit-history-modal header p{margin-top:6px;font-weight:750}.history-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.history-summary div{background:var(--soft);border-radius:8px;gap:6px;padding:13px;display:grid}.history-summary div.warn{background:var(--coral-soft)}.history-summary span,.history-event span{text-transform:uppercase;font-size:10px;font-weight:900}.history-summary strong{overflow-wrap:anywhere;font-size:18px}.quick-report-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;margin:18px 0 22px;padding:14px;display:grid}.unit-history-modal .quick-report-panel{background:var(--soft);margin:0}.quick-report-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.quick-report-head>div:first-child{gap:3px;display:grid}.quick-report-head span,.quick-report-grid span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:900}.quick-report-head strong{color:var(--text);font-size:13px}.quick-report-dates{gap:8px;display:flex}.quick-report-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.quick-report-dates input{border:1px solid var(--line);width:138px;min-height:38px;color:var(--text);background:#fff;border-radius:8px;padding:0 10px;font-weight:750}.report-export-button{border-radius:999px;min-height:38px;padding-inline:12px}.quick-report-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.quick-report-grid div,.quick-report-metric{border:1px solid var(--line);background:var(--soft);min-height:72px;color:var(--text);text-align:left;border-radius:8px;gap:5px;padding:11px;display:grid}.quick-report-metric{cursor:pointer;font:inherit;transition:transform .16s,border-color .16s,box-shadow .16s}.quick-report-metric:hover,.quick-report-metric:focus-visible{border-color:#5a92a06b;transform:translateY(-1px);box-shadow:0 12px 24px #27333f14}.quick-report-metric:focus-visible{outline-offset:2px;outline:3px solid #5a92a02e}.unit-history-modal .quick-report-grid div,.unit-history-modal .quick-report-metric{background:#fff}.quick-report-grid strong{overflow-wrap:anywhere;color:var(--text);font-size:20px;line-height:1.05}.quick-report-grid small{color:var(--teal);text-transform:uppercase;align-self:end;font-size:9px;font-weight:900}.report-detail-layer{z-index:130;place-items:center;padding:18px;display:grid}.report-detail-modal{z-index:1;border:1px solid var(--line);overscroll-behavior:contain;background:#fff;border-radius:8px;gap:16px;width:min(680px,100vw - 28px);max-height:calc(100svh - 36px);padding:18px;animation:.18s both sheet-in;display:grid;position:relative;overflow:auto;box-shadow:0 30px 80px #27333f38}.report-detail-modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.report-detail-modal header span,.report-detail-total span,.report-detail-total small,.report-detail-row small{color:var(--muted);font-size:11px;font-weight:900}.report-detail-modal header span,.report-detail-total span{text-transform:uppercase}.report-detail-modal header h2,.report-detail-modal header p{margin:0}.report-detail-modal header h2{color:#263744;letter-spacing:0;margin-top:5px;font-size:clamp(24px,4vw,34px);line-height:1.06}.report-detail-modal header p{color:var(--muted);margin-top:5px;font-size:13px}.report-detail-total{background:var(--navy);color:#fff;border-radius:8px;gap:5px;padding:18px;display:grid}.report-detail-total span,.report-detail-total small{color:#ffffffb3}.report-detail-total strong{letter-spacing:0;font-size:clamp(28px,5vw,42px);line-height:1}.report-detail-list{gap:10px;display:grid}.report-detail-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.report-detail-row>strong{color:#263744;text-align:right;white-space:nowrap;font-size:17px}.report-detail-row.negative>strong{color:var(--coral-dark)}.report-detail-row.positive>strong{color:#2d806c}.report-detail-row div{gap:4px;min-width:0;display:grid}.report-detail-row div>strong{color:#263744;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.report-detail-row small{text-overflow:ellipsis;text-transform:none;white-space:nowrap;overflow:hidden}.report-detail-empty{border:1px dashed var(--line-strong);background:var(--soft);min-height:160px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;gap:8px;padding:22px;display:grid}.report-detail-empty strong{color:#263744}.active-block-note{color:var(--coral-dark);background:#fff7f8;border-radius:8px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.active-block-note svg{align-self:center}.active-block-release{white-space:nowrap;min-height:36px;padding-inline:12px}.history-timeline{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.history-event{border-bottom:1px solid var(--line);grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 14px;display:grid}.history-event:last-child{border-bottom:0}.history-event>span{border-radius:999px;justify-self:start;padding:7px 10px}.history-event.green>span{background:var(--green-soft);color:#287d69}.history-event.amber>span{background:var(--yellow-soft);color:#9a6d00}.history-event.red>span{background:var(--coral-soft);color:var(--coral-dark)}.history-event.blue>span{background:var(--sky-soft);color:#3d7d91}.history-event.gray>span{color:#65727d;background:#eef1f4}.history-event strong,.history-event small{min-width:0;display:block}.history-event small{margin-top:3px;font-size:12px;font-weight:700}.history-event em{color:var(--text);white-space:nowrap;font-size:13px;font-style:normal;font-weight:900}.history-event-end{justify-self:end;align-items:center;gap:8px;display:inline-flex}.history-event-action{white-space:nowrap;min-height:34px;padding-inline:11px}.history-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.calendar-entry-modal:before{background:var(--coral);content:"";width:6px;position:absolute;inset:0 auto 0 0}.calendar-entry-modal.reservation:before{background:var(--yellow)}.calendar-entry-modal header,.entry-modal-hero,.entry-modal-footer{justify-content:space-between;align-items:center;gap:14px;display:flex}.calendar-entry-modal header>span{background:var(--coral-soft);color:var(--coral-dark);text-transform:uppercase;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900;display:inline-flex}.calendar-entry-modal.reservation header>span{background:var(--yellow-soft);color:#8f6400}.entry-modal-hero{align-items:flex-start;padding-left:6px}.entry-modal-hero h2,.entry-modal-hero p{margin:0}.entry-modal-hero h2{letter-spacing:0;font-size:clamp(28px,4vw,38px);line-height:1.02}.entry-modal-hero p{color:var(--muted);margin-top:6px;font-size:14px;font-weight:750}.entry-modal-grid{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding-block:8px;display:grid}.entry-modal-grid .preview-line{min-height:48px}.entry-modal-grid .preview-line strong{overflow-wrap:anywhere;text-align:right}.entry-money-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.entry-money-strip div{background:var(--soft);border-radius:8px;gap:6px;padding:14px;display:grid}.entry-money-strip span,.entry-modal-footer span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.entry-money-strip strong{overflow-wrap:anywhere;font-size:20px;line-height:1.1}.entry-money-strip .due{background:var(--yellow-soft);color:#805a00}.entry-money-strip .settled{background:var(--green-soft);color:#2d806c}.entry-modal-footer{border-top:1px solid var(--line);padding-top:14px}.free-unit-list{border-top:1px solid var(--line);flex-wrap:wrap;gap:7px;padding-top:12px;display:flex}.free-unit{background:var(--soft);color:#52636e;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900}.free-unit.sun{background:var(--yellow-soft);color:#956900}.free-unit.mint{color:#287d69;background:#def5ee}.free-unit.ink{color:#fff;background:#143d4f}.free-unit.clay{color:#b75138;background:#ffe1d8}.free-unit.cream{color:#7e634e;background:#f2dfcf}.free-unit.pool{background:var(--sky-soft);color:#3d7d91}.segmented{background:var(--soft);border-radius:8px;gap:3px;padding:3px;display:inline-flex}.segmented button{min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 12px;font-size:13px;font-weight:750}.segmented button.active{color:var(--text);background:#fff;box-shadow:0 4px 12px #27333f14}.booking-list,.client-list,.visit-list,.approval-list{display:grid;overflow:hidden}.booking-overview,.client-overview{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:22px;display:grid}.client-layout{grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);align-items:start;gap:20px;display:grid}.client-layout.directory-only{grid-template-columns:1fr}.client-list-panel,.client-detail-panel{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.client-list-panel{gap:0;display:grid}.client-list-panel.directory-panel{min-width:0}.client-toolbar{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 132px 96px;gap:10px;padding:12px;display:grid}.client-toolbar label{border:1px solid var(--line);background:var(--soft);min-height:40px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.client-toolbar label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.client-toolbar input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.client-rank-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;display:grid}.client-rank{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:8px;align-content:start;gap:5px;min-height:92px;padding:10px;display:grid}.client-rank.active,.client-rank:hover,.client-row.active,.client-row:hover{border-color:var(--teal);background:var(--teal-soft)}.client-rank span{background:var(--yellow);color:#6f4d00;border-radius:999px;place-items:center;width:24px;height:24px;font-size:12px;font-weight:900;display:grid}.client-rank strong,.client-rank small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-rank small,.client-row small,.visit-row small{color:var(--muted);font-size:12px}.client-list{max-height:560px;overflow:auto}.client-row{border:0;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:72px;padding:12px;display:grid}.client-row:last-child{border-bottom:0}.client-row strong,.client-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.client-row em{background:var(--yellow-soft);color:#8b6500;border-radius:999px;padding:7px 9px;font-size:11px;font-style:normal;font-weight:900}.client-avatar{background:var(--coral);color:#fff;border-radius:999px;place-items:center;width:38px;height:38px;font-size:12px;font-weight:900;display:grid}.client-avatar.large{width:54px;height:54px;font-size:16px}.client-detail-panel{gap:18px;padding:20px;display:grid}.client-detail-head{align-items:center;gap:14px;min-width:0;display:flex}.client-detail-head>div{min-width:0}.client-detail-head>div>span{color:var(--teal);text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:900;display:block}.client-detail-head h2,.client-detail-head p{overflow-wrap:anywhere;margin:0}.client-detail-head p{color:var(--muted);margin-top:4px;font-size:13px}.client-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.client-metrics .preview-line{border:1px solid var(--line);background:var(--soft);border-radius:8px;padding:12px}.client-history-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:12px;display:flex}.client-history-head small{color:var(--muted);font-size:12px}.visit-list{border:1px solid var(--line);background:#fff;border-radius:8px}.visit-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(150px,1fr) 78px minmax(130px,.8fr) minmax(120px,.7fr);align-items:center;gap:14px;min-height:74px;padding:13px 14px;display:grid}.visit-row:last-child{border-bottom:0}.visit-row>div{gap:4px;display:grid}.visit-row strong,.visit-row small{display:block}.visit-row>span{color:var(--navy);font-size:12px;font-weight:900}.client-profile-layer{z-index:124;place-items:center;padding:18px;display:grid}.client-profile-modal{z-index:1;border:1px solid var(--line);overscroll-behavior:contain;background:#fff;border-radius:8px;gap:18px;width:min(860px,100vw - 28px);max-height:calc(100svh - 36px);padding:18px;animation:.18s both sheet-in;display:grid;position:relative;overflow:auto;box-shadow:0 30px 80px #27333f38}.client-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;display:flex}.client-profile-modal .visit-list{max-height:min(420px,48svh);overflow:auto}.client-id-panel{border:1px solid var(--line);background:#fbfcfd;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);align-items:start;gap:14px;padding:14px;display:grid}.client-id-copy{align-content:start;gap:5px;display:grid}.client-id-copy strong,.client-id-copy small{display:block}.client-id-copy small{color:var(--muted);font-size:12px;font-weight:700}.client-id-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.client-id-panel .auth-error{grid-column:1/-1;margin:0}.balance-due{color:var(--coral-dark)!important}.client-credit{color:var(--teal)!important}.reservation-toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:22px;padding:12px;display:grid}.reservation-toolbar>label{border:1px solid var(--line);background:var(--soft);min-height:42px;color:var(--muted);border-radius:8px;align-items:center;gap:9px;padding:0 12px;display:flex}.reservation-toolbar>label input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.reservation-setting{align-items:center;gap:8px;display:flex}.reservation-setting span,.reservation-row label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.reservation-setting input{border:1px solid var(--line);width:74px;min-height:42px;color:var(--text);background:#fff;border-radius:8px;outline:0;padding:0 10px;font-weight:850}.reservation-setting input:disabled{background:var(--soft);color:var(--muted)}.reservation-setting small{color:var(--muted);font-size:12px;font-weight:800}.reservation-list{border:1px solid var(--line);background:#fff;border-radius:8px;display:grid;overflow:hidden}.reservation-row{border-bottom:1px solid var(--line);grid-template-columns:12px minmax(160px,1fr) minmax(140px,.85fr) minmax(150px,.85fr) minmax(132px,.72fr) 160px auto;align-items:center;gap:14px;min-height:88px;padding:15px 18px;display:grid}.reservation-row:last-child{border-bottom:0}.reservation-marker{background:var(--yellow);border-radius:999px;width:10px;height:42px}.reservation-row strong,.reservation-row small{display:block}.reservation-row small{color:var(--muted);margin-top:4px;font-size:12px}.reservation-row label{gap:6px;display:grid}.reservation-row select,.reservation-row input{min-height:38px}.reservation-confirm-toggle{border:1px solid var(--line);background:var(--soft);cursor:pointer;border-radius:8px;align-items:center;min-height:38px;padding:0 12px;gap:9px!important;display:flex!important}.reservation-confirm-toggle input{accent-color:var(--green);width:auto!important;min-height:0!important}.reservation-confirm-toggle span{color:var(--muted);text-transform:none;font-size:12px;font-weight:900}.reservation-confirm-toggle.active{background:var(--green-soft);border-color:#58bfa56b}.reservation-confirm-toggle.active span{color:#2d806c}.reservation-confirm-note{grid-column:5/-1;font-weight:800;color:var(--coral-dark)!important}.confirm-reservation-button:not(:disabled){background:var(--green);box-shadow:0 12px 24px #58bfa52e}.confirm-reservation-button:not(:disabled):hover{background:#45a98f}.primary-button:disabled{box-shadow:none;color:#71808d;cursor:not-allowed;background:#d9e0e5;transform:none}.primary-button:disabled:hover{background:#d9e0e5;transform:none}.booking-row,.approval-row{border-bottom:1px solid var(--line);align-items:center;gap:18px;min-height:92px;padding:16px 20px;display:grid}.booking-row{grid-template-columns:minmax(190px,1.1fr) 92px 110px minmax(150px,.8fr) minmax(150px,.75fr) 116px}.booking-money-stack,.booking-balance-cell{gap:4px;display:grid}.booking-money-stack small,.booking-balance-cell small{color:var(--muted);font-size:12px;font-weight:700}.booking-balance-cell .balance-due{color:var(--coral-dark)}.booking-balance-cell .client-credit{color:var(--teal);font-weight:850}.booking-staff-line{color:var(--teal)!important;font-weight:850!important}.checkout-button{min-width:104px}.collections-page{width:min(1240px,100%)}.collections-filter-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;margin-bottom:18px;padding:12px;display:grid}.collection-period-buttons{flex-wrap:wrap;gap:8px;display:flex}.collection-period-buttons button{border:1px solid var(--line);background:var(--soft);min-height:36px;color:var(--text);cursor:pointer;border-radius:8px;padding:0 13px;font-size:13px;font-weight:850}.collection-period-buttons button:hover{background:var(--teal-soft);border-color:#5a92a059}.collection-period-buttons button.active{background:var(--teal);color:#fff;border-color:#5a92a06b}.collections-filter-grid{grid-template-columns:minmax(220px,1fr) 160px 160px auto;align-items:end;gap:10px;display:grid}.collections-export-button{white-space:nowrap;min-height:50px}.collections-total-strip{grid-template-columns:1.15fr 1fr .85fr;gap:12px;margin-bottom:14px;display:grid}.collections-total-strip>div{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:center;gap:6px;min-height:116px;padding:18px;display:grid}.collections-total-strip>div:first-child{background:var(--yellow-soft);border-color:#f8e3a7}.collections-total-strip span,.collection-method-grid span,.collections-panel-head span{color:var(--muted);font-size:12px;font-weight:900}.collections-total-strip strong{overflow-wrap:anywhere;font-size:clamp(22px,3vw,34px);line-height:1.05}.collections-total-strip small{color:var(--muted);font-size:12px;font-weight:750}.collection-method-grid{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px;margin-bottom:18px;display:grid}.collection-method-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;min-height:82px;padding:14px;display:grid}.collection-method-grid article.active{background:var(--green-soft);border-color:#58bfa55c}.collection-method-grid strong{overflow-wrap:anywhere;font-size:18px}.collections-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:16px;display:grid}.collections-panel{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.collections-panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:16px;display:flex}.collections-panel-head strong{margin-top:4px;font-size:18px;display:block}.collector-total-list,.collection-record-list{display:grid}.collector-total-row,.collection-record-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 16px;display:grid}.collector-total-row:last-child,.collection-record-row:last-child{border-bottom:0}.collector-total-row{grid-template-columns:42px minmax(0,1fr) auto}.collector-total-row strong,.collector-total-row small,.collection-record-row strong,.collection-record-row small,.collection-record-row span{display:block}.collector-total-row small,.collection-record-row small{color:var(--muted);margin-top:4px;font-size:12px}.collector-total-row em{color:var(--navy);text-align:right;justify-self:end;font-style:normal;font-weight:900}.collection-record-row{grid-template-columns:minmax(170px,1fr) minmax(150px,.9fr) 126px 128px;min-height:76px}.collection-record-row>strong{text-align:right;justify-self:end}.collection-method-pill{background:var(--teal-soft);color:#2f7d86;white-space:nowrap;border-radius:999px;justify-self:start;padding:8px 10px;font-size:12px;font-weight:900}.approval-row{grid-template-columns:14px minmax(220px,1fr) 104px auto}.booking-row:last-child,.approval-row:last-child{border-bottom:0}.risk{border-radius:999px;width:10px;height:10px}.risk.low{background:var(--green)}.risk.medium{background:var(--yellow)}.risk.high{background:var(--coral)}.approval-actions{justify-content:flex-end;gap:10px;display:flex}.sheet-layer,.mobile-menu{z-index:80;position:fixed;inset:0}.sheet-layer.calendar-entry-layer{z-index:120}.sheet-scrim,.mobile-scrim{background:#2b3a4647;position:absolute;inset:0}.sheet,.confirm-sheet{z-index:1;border:1px solid var(--line);background:#fff;border-radius:8px;width:min(620px,100vw - 24px);max-height:calc(100svh - 36px);margin:18px auto 0;animation:.22s both sheet-in;position:relative;overflow:auto;box-shadow:0 24px 70px #27333f2e}.sheet.wide-sheet{width:min(920px,100vw - 24px)}.sheet header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:66px;padding:16px 18px;display:flex}.sheet h2,.confirm-sheet h2{letter-spacing:0;margin:0;font-size:22px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px;display:grid}.input-field{gap:8px;display:grid}.input-field span,.palette-field>span,.color-mode-field>span{color:var(--muted);font-size:12px;font-weight:850}.input-field input,.input-field select,.input-field textarea{width:100%}.input-field input:focus,.input-field select:focus,.input-field textarea:focus,.search:focus-within,.filter-bar label:focus-within,.price-edit:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px #5a92a024}.palette-field{grid-column:1/-1;gap:10px;display:grid}.palette-field.disabled{opacity:.62}.palette-swatches{grid-template-columns:repeat(6,minmax(42px,1fr));gap:10px;display:grid}.palette-swatch{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;place-items:center;min-height:42px;padding:5px;display:grid}.palette-swatch span{border-radius:7px;width:100%;height:100%;min-height:28px}.palette-swatch.active{border-color:var(--teal);box-shadow:0 0 0 4px #5a92a026}.palette-swatch:disabled{cursor:not-allowed}.palette-swatch.sun span{background:#f8cc46}.palette-swatch.mint span{background:#def5ee}.palette-swatch.ink span{background:#143d4f}.palette-swatch.clay span{background:#e87455}.palette-swatch.cream span{background:#f2dfcf}.palette-swatch.pool span{background:#75c6e3}.sheet-actions{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;padding:18px 22px;position:sticky;bottom:0}.booking-flow{grid-template-columns:minmax(0,1.05fr) minmax(320px,.8fr);gap:0;display:grid}.booking-search-panel,.booking-guest-panel{align-content:start;gap:18px;padding:22px;display:grid}.booking-search-panel{border-right:1px solid var(--line)}.booking-flow-title span{color:var(--coral);text-transform:uppercase;font-size:11px;font-weight:900}.booking-flow-title h3{color:#263744;letter-spacing:0;margin:5px 0 0;font-size:22px}.booking-search-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.booking-scope-row{gap:8px;display:grid}.booking-scope-row small{color:var(--muted);font-size:12px;font-weight:800}.booking-scope-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-scope-switch button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;min-width:0;display:flex}.booking-filter-grid{background:#fff8f4;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:12px;display:grid}.available-apartment-list{gap:10px;max-height:380px;padding-right:4px;display:grid;overflow:auto}.available-apartment{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:8px;grid-template-columns:14px minmax(0,1fr) auto auto;align-items:center;gap:11px;min-height:72px;padding:12px;display:grid}.available-apartment:hover,.available-apartment.active{border-color:var(--teal);background:var(--teal-soft)}.available-apartment strong,.available-apartment small{display:block}.available-apartment small:last-child{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2/-1;font-size:11px;overflow:hidden}.available-apartment em{color:#52636e;font-size:12px;font-style:normal;font-weight:850}.available-apartment b{background:var(--yellow-soft);color:#956900;border-radius:999px;padding:7px 9px;font-size:11px}.booking-empty-result{border:1px dashed var(--line-strong);background:var(--soft);min-height:210px;color:var(--muted);text-align:center;border-radius:8px;place-items:center;gap:8px;display:grid}.booking-empty-result strong{color:var(--text)}.booking-selected-unit{color:#263744;border-radius:8px;gap:5px;padding:16px;display:grid}.booking-selected-unit.sun{background:#f8cc46}.booking-selected-unit.mint{background:#def5ee}.booking-selected-unit.ink{color:#fff;background:#143d4f}.booking-selected-unit.clay{color:#fff;background:#e87455}.booking-selected-unit.cream{background:#f2dfcf}.booking-selected-unit.pool{background:#75c6e3}.booking-selected-unit strong{font-size:22px}.booking-selected-unit span{font-size:13px;font-weight:850}.booking-payment-preview{flex-wrap:wrap;gap:8px;display:flex}.booking-payment-preview small{background:#ffffff80;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.booking-guest-panel .form-grid{grid-template-columns:1fr;padding:0}.known-client-field{gap:8px;display:grid}.known-client-results,.known-client-match{gap:6px;display:grid}.known-client-results{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.known-client-results button,.known-client-match{text-align:left;background:#fff;border:0;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:10px;display:grid}.known-client-results button{cursor:pointer;border-bottom:1px solid var(--line)}.known-client-results button:last-child{border-bottom:0}.known-client-results button:hover,.known-client-match{background:var(--teal-soft)}.known-client-results strong,.known-client-results small,.known-client-match strong,.known-client-match small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.known-client-results small,.known-client-match small{color:var(--muted);font-size:12px}.known-client-results em,.known-client-match em{color:var(--teal);white-space:nowrap;background:#fff;border-radius:999px;padding:6px 8px;font-size:11px;font-style:normal;font-weight:900}.known-client-match{border:1px solid #cbecef;border-radius:8px}.identity-photo-booking-field{grid-column:1/-1}.identity-photo-field{gap:10px;min-width:0;display:grid}.identity-photo-preview{border:1px dashed var(--line-strong);background:var(--soft);min-height:132px;color:var(--muted);border-radius:8px;place-items:center;display:grid;overflow:hidden}.identity-photo-preview.has-photo{background:#fff;border-style:solid}.identity-photo-preview img{object-fit:contain;width:100%;max-height:240px;display:block}.identity-photo-preview div{text-align:center;place-items:center;gap:8px;padding:18px;display:grid}.identity-photo-preview span,.identity-photo-preview strong{color:var(--muted);font-size:12px;font-weight:850}.identity-photo-preview strong{color:var(--text);font-size:14px}.identity-document-tile a{color:var(--teal);font-size:12px;font-weight:850;text-decoration:none}.identity-document-tile a:hover{text-decoration:underline}.identity-photo-actions{align-items:center;gap:10px;display:flex}.identity-photo-actions .soft-button{width:fit-content}.identity-photo-actions input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.identity-photo-error{color:var(--coral-dark);font-size:12px;font-weight:750}.payment-status-preview{border:1px solid var(--line);background:var(--soft);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;display:flex}.payment-status-preview span{color:var(--muted);font-size:12px;font-weight:800}.booking-error,.booking-hold-note{margin:0}.booking-companions-field{grid-column:1/-1}.booking-actions{flex-wrap:wrap}.checkout-body{gap:18px;padding:22px;display:grid}.checkout-body .form-grid{padding:0}.checkout-summary{border:1px solid var(--line);background:var(--soft);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.checkout-summary span,.money-grid span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.checkout-summary strong,.checkout-summary small{display:block}.checkout-summary strong{margin-top:4px;font-size:20px}.checkout-summary small{color:var(--muted);margin-top:5px;font-size:12px}.money-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.money-grid>div{border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;padding:14px;display:grid}.money-grid strong{font-size:18px}.money-grid .warn{background:var(--coral-soft);border-color:#f2ccd3}.money-grid .ok{background:var(--green-soft);border-color:#bfe7dc}.checkout-credit-notice{background:var(--teal-soft);color:var(--teal);border:1px solid #58bfa566;border-radius:8px;align-items:center;gap:10px;padding:12px;font-size:13px;font-weight:850;display:flex}.checkout-note{grid-column:1/-1}.checkout-acknowledge{background:var(--yellow-soft);color:#6d520d;border:1px solid #f1d183;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;font-size:13px;font-weight:850;display:flex}.checkout-acknowledge input{margin-top:2px}.manage-booking-body{gap:18px;padding:22px;display:grid}.manage-booking-summary{border:1px solid var(--line);background:var(--soft);border-radius:8px;grid-template-columns:minmax(0,1.2fr) minmax(190px,.7fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.manage-booking-summary span,.manage-panel-title span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.manage-booking-summary strong,.manage-booking-summary small{display:block}.manage-booking-summary strong{margin-top:4px;font-size:19px}.manage-booking-summary small{color:var(--muted);margin-top:4px;font-size:12px}.booking-summary-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.receipt-button{color:var(--teal)}.booking-inline-notice{background:var(--teal-soft);color:var(--teal);border:1px solid #bde7da;border-radius:8px;justify-self:start;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:850;display:inline-flex}.manage-booking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.manage-panel,.payment-history-panel{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:start;gap:14px;padding:16px;display:grid}.manage-panel .form-grid{grid-template-columns:1fr;gap:12px;padding:0}.cart-panel{order:-1;grid-column:1/-1}.occupants-panel{order:-2;grid-column:1/-1}.cart-panel .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.occupants-panel .form-grid{grid-template-columns:180px minmax(0,1fr)}.manage-panel-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.manage-panel-title strong{color:var(--text);font-size:15px}.extension-calculation{border:1px solid var(--line);background:var(--soft);border-radius:8px;gap:8px;padding:12px;display:grid}.payment-method-hint{border:1px dashed var(--line-strong);background:var(--soft);min-height:46px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:850;display:inline-flex}.extension-availability{background:var(--teal-soft);color:var(--teal);border:1px solid #bde7da;border-radius:8px;align-items:flex-start;gap:10px;padding:11px 12px;font-size:12px;font-weight:800;display:flex}.extension-availability.conflict{background:var(--coral-soft);color:var(--coral-dark);border-color:#f4b5bd}.extension-availability strong,.extension-availability small{display:block}.extension-availability small{color:inherit;opacity:.86;margin-top:3px;font-weight:750}.service-confirm-panel{background:linear-gradient(#f1fbf8 0%,#fff 100%);border:1px solid #58bfa561;border-radius:8px;gap:13px;padding:15px;display:grid}.service-confirm-head{gap:4px;display:grid}.service-confirm-head span{color:var(--teal);text-transform:uppercase;font-size:11px;font-weight:900}.service-confirm-head strong{font-size:18px}.service-confirm-head small,.service-confirm-panel p{color:var(--muted);margin:0;font-size:12px;font-weight:750;line-height:1.45}.service-confirm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.service-confirm-grid .preview-line{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px}.service-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.manage-note{grid-column:1/-1}.occupants-textarea{grid-column:auto}.occupant-main{border:1px solid var(--line);background:var(--soft);border-radius:8px;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.occupant-main span{background:var(--coral-soft);color:var(--coral-dark);border-radius:999px;justify-content:center;padding:6px 9px;font-size:11px;font-weight:900;display:inline-flex}.occupant-main strong,.occupant-main small{display:block}.occupant-main small{color:var(--muted);font-size:12px;font-weight:750}.occupant-list{flex-wrap:wrap;gap:8px;display:flex}.occupant-list p{color:var(--muted);margin:0;font-size:13px;font-weight:750}.occupant-list span{background:var(--teal-soft);color:var(--teal);border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:850;display:inline-flex}.order-category-row{align-items:center;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.order-category-row button{border:1px solid var(--line);background:var(--soft);color:#61727e;cursor:pointer;white-space:nowrap;border-radius:999px;min-height:34px;padding:0 12px;font-size:12px;font-weight:850}.order-category-row button.active{background:var(--coral);color:#fff;border-color:#0000;box-shadow:0 10px 22px #ed5d702e}.order-calculation{grid-template-columns:repeat(3,minmax(0,1fr))}.cart-order-list{border:1px solid var(--line);background:var(--soft);border-radius:8px;display:grid;overflow:hidden}.cart-order-list p{color:var(--muted);margin:0;padding:14px;font-size:13px;font-weight:750}.cart-order-row{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.cart-order-row:last-child{border-bottom:0}.cart-order-row>span{background:var(--teal-soft);color:var(--teal);border-radius:999px;justify-content:center;padding:6px 9px;font-size:11px;font-weight:900;display:inline-flex}.cart-order-row strong,.cart-order-row small{display:block}.cart-order-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.cart-order-row small{color:var(--muted);margin-top:3px;font-size:11px;font-weight:750}.cart-order-row em{color:var(--text);white-space:nowrap;font-size:12px;font-style:normal;font-weight:900}.checkout-order-list{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.cart-order-list.compact{background:#fff}.payment-history-list{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.payment-history-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 128px;gap:12px;padding:12px;display:grid}.payment-history-row:last-child{border-bottom:0}.payment-history-row strong,.payment-history-row small,.payment-history-row em{display:block}.payment-history-row small{color:var(--muted);font-size:12px}.payment-history-row em{color:var(--muted);grid-column:1/-1;font-size:12px;font-style:normal}.confirm-sheet{text-align:center;justify-items:center;gap:14px;width:min(430px,100vw - 24px);padding:28px;display:grid}.confirm-sheet p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.confirm-icon{background:var(--teal-soft);width:54px;height:54px;color:var(--teal);border-radius:8px;place-items:center;display:grid}.confirm-icon.danger{background:var(--coral-soft);color:var(--coral-dark)}.confirm-sheet .sheet-actions{border-top:0;padding:0}.toast{z-index:100;box-shadow:var(--shadow);color:#2d806b;background:#f5fffb;border:1px solid #bee5dc;border-radius:8px;align-items:center;gap:9px;padding:12px 16px;font-size:14px;font-weight:800;animation:.18s both sheet-in;display:inline-flex;position:fixed;bottom:22px;right:22px}.mobile-tabs,.mobile-menu{display:none}.auth-shell{background:linear-gradient(135deg, #ffe7ebe6, #dff4f5c2 42%, #fbfbfcf2), var(--app-bg);grid-template-columns:minmax(0,.95fr) minmax(390px,.72fr);min-height:100svh;display:grid}.auth-brand-panel{align-content:center;gap:28px;min-height:100svh;padding:clamp(34px,7vw,86px);display:grid}.auth-language-row{justify-content:flex-start;display:flex}.brand.large .brand-logo{width:min(250px,100%)}.auth-brand-panel h1{color:#263744;letter-spacing:0;max-width:620px;margin:0;font-size:clamp(38px,5vw,72px);line-height:.98}.auth-brand-panel p{color:#596b76;max-width:500px;margin:0;font-size:17px;line-height:1.55}.auth-visual{align-items:center;min-height:300px;display:flex}.auth-phone{background:#fff;border:9px solid #263744;border-radius:28px;width:min(270px,70vw);padding:18px;transform:rotate(-3deg);box-shadow:0 30px 80px #27333f29}.auth-phone-top,.mini-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.auth-phone-top span{color:var(--muted);font-size:13px;font-weight:800}.auth-phone-top b{background:var(--yellow-soft);color:#9b6a00;border-radius:999px;padding:6px 10px;font-size:12px}.mini-room{border-radius:8px;gap:4px;min-height:92px;margin-top:14px;padding:16px;display:grid}.mini-room.sun{background:#f8cc46}.mini-room.mint{background:#def5ee}.mini-room strong,.mini-room small{display:block}.mini-room small{color:#5e6e78;font-weight:750}.mini-actions{margin-top:15px}.mini-actions span{background:var(--coral);color:#fff;text-align:center;border-radius:8px;flex:1;padding:10px;font-size:12px;font-weight:850}.mini-actions span:last-child{background:var(--teal)}.auth-card{border:1px solid var(--line);background:#ffffffeb;border-radius:8px;place-self:center;gap:18px;width:min(460px,100vw - 32px);padding:clamp(22px,4vw,34px);display:grid;box-shadow:0 24px 70px #27333f1f}.auth-header h2{color:#263744;letter-spacing:0;margin:0;font-size:clamp(28px,4vw,40px);line-height:1.06}.auth-header p,.auth-switch{color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.45}.auth-fields{gap:13px;display:grid}.auth-field{gap:7px;display:grid}.auth-field>span{color:#5e6e78;font-size:12px;font-weight:850}.auth-field div{border:1px solid var(--line);background:var(--soft);min-height:50px;color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:0 14px;display:flex}.auth-field input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.auth-primary{background:var(--coral);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:52px;padding:0 18px;font-weight:900;display:inline-flex;box-shadow:0 14px 30px #ed5d7038}.auth-primary:disabled{cursor:wait;opacity:.72}.auth-error{background:var(--coral-soft);color:var(--coral-dark);border-radius:8px;margin:-4px 0 0;padding:10px 12px;font-size:13px;font-weight:800}.auth-link,.password-toggle,.auth-switch button{color:var(--coral);cursor:pointer;background:0 0;border:0;padding:0;font-weight:850}.password-toggle{justify-self:start;align-items:center;gap:7px;min-height:30px;font-size:13px;display:inline-flex}.role-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.role-card{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:8px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:66px;padding:10px;display:grid}.role-card.selected{border-color:var(--teal);background:var(--teal-soft)}.role-card:disabled{cursor:not-allowed;opacity:.55}.role-card strong,.role-card small{display:block}.role-card small{color:var(--muted);margin-top:3px;font-size:11px}.role-avatar,.user-pill>span{color:#fff;border-radius:999px;place-items:center;width:34px;height:34px;font-size:11px;font-weight:900;display:grid}.role-avatar.coral,.user-pill>span.coral,.role-chip.coral{background:var(--coral)}.role-avatar.teal,.user-pill>span.teal,.role-chip.teal{background:var(--teal)}.forgot-progress{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.forgot-progress span{background:#e7edf1;border-radius:999px;height:6px}.forgot-progress span.active{background:var(--coral)}.success-ring{background:var(--green-soft);color:#29806b;border-radius:999px;place-items:center;width:76px;height:76px;display:grid}.role-chip,.signout-button{border-radius:999px;justify-content:center;align-items:center;min-height:38px;display:inline-flex}.role-chip{color:#fff;padding:0 14px;font-size:12px;font-weight:900}.signout-button{border:1px solid var(--line);color:#73818c;cursor:pointer;background:#fff;width:40px}.mobile-quick-panel{display:none}.access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.access-role-card{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:start;gap:18px;padding:24px;display:grid}.access-role-card h2{margin:0;font-size:24px}.access-role-card p{color:var(--muted);margin:8px 0 0;line-height:1.5}.access-role-card ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.access-role-card li{color:#52616d;align-items:center;gap:8px;font-size:13px;font-weight:750;display:flex}.access-role-card li svg{color:var(--green)}.team-section{margin-top:34px}.team-list{border:1px solid var(--line);background:#fff;border-radius:8px;display:grid;overflow:hidden}.team-row{border-bottom:1px solid var(--line);grid-template-columns:44px minmax(180px,1fr) 120px minmax(160px,.8fr) 90px 90px minmax(92px,auto);align-items:center;gap:16px;min-height:76px;padding:14px 18px;display:grid}.team-row:last-child{border-bottom:0}.team-row strong,.team-row small{display:block}.team-row small{color:var(--muted);font-size:12px}.team-access-scope{min-width:0}.team-access-scope strong{color:var(--navy);overflow-wrap:anywhere;line-height:1.25}.team-owner-lock{background:var(--soft);min-height:34px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:850;display:inline-flex}.permission-note{background:var(--teal-soft);color:var(--teal);border-radius:8px;align-items:flex-start;gap:10px;margin:0 22px 22px;padding:13px;font-size:13px;font-weight:750;line-height:1.4;display:flex}.building-access-picker{gap:16px;margin:0 22px 18px;display:grid}.access-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.access-mode-switch button{min-height:44px}.building-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.building-access-check{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:38px minmax(0,1fr);gap:8px 12px;min-height:86px;padding:14px;display:grid;position:relative}.building-access-check input{opacity:0;pointer-events:none;position:absolute}.building-access-check>span{background:var(--soft);width:38px;height:38px;color:var(--teal);border-radius:8px;grid-row:1/span 2;place-items:center;display:grid}.building-access-check strong,.building-access-check small{min-width:0;display:block}.building-access-check strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.building-access-check small{color:var(--muted);font-size:12px;line-height:1.35}.building-access-check.active{background:var(--teal-soft);border-color:#5a92a08c;box-shadow:inset 0 0 0 1px #5a92a029}.building-access-check.coral.active{background:var(--coral-soft);border-color:#ed5d7061}.building-access-check.peach.active,.building-access-check.terracotta.active{background:var(--peach-soft);border-color:#f2afa29e}.building-access-check.sky.active{background:var(--sky-soft);border-color:#8ac7d8ad}.accessory-toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:24px;padding:12px;display:flex}.accessory-toolbar label{border:1px solid var(--line);background:var(--soft);min-height:42px;color:var(--muted);border-radius:8px;align-items:center;gap:9px;padding:0 12px;display:flex}.accessory-toolbar select{min-width:180px;color:var(--text);background:0 0;border:0;outline:0;padding:0;font-weight:800}.accessory-toolbar>div{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.accessory-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:22px;display:grid}.accessory-unit-list,.accessory-panel{border:1px solid var(--line);background:#fff;border-radius:8px}.accessory-unit-list{gap:5px;padding:10px;display:grid}.accessory-unit-button{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:62px;padding:10px;display:grid}.accessory-unit-button:hover,.accessory-unit-button.active{background:var(--teal-soft)}.accessory-unit-button strong,.accessory-unit-button small{display:block}.accessory-unit-button strong{overflow-wrap:anywhere;font-size:14px}.accessory-unit-button small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}.accessory-unit-button em{min-width:27px;height:27px;color:var(--teal);background:#fff;border-radius:999px;place-items:center;font-size:12px;font-style:normal;font-weight:900;display:grid}.unit-color-dot{background:var(--yellow);border-radius:999px;width:12px;height:12px;box-shadow:0 0 0 4px #27333f0d}.unit-color-dot.sun{background:#f8cc46}.unit-color-dot.mint{background:#8adac5}.unit-color-dot.ink{background:#143d4f}.unit-color-dot.clay{background:#e87455}.unit-color-dot.cream{background:#d8bba4}.unit-color-dot.pool{background:#75c6e3}.accessory-panel{overflow:hidden}.accessory-panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:88px;padding:20px 22px;display:flex}.accessory-panel-head span{color:var(--muted);font-size:12px;font-weight:850}.accessory-panel-head h2{letter-spacing:0;margin:4px 0 0;font-size:clamp(24px,3vw,34px)}.accessory-panel-head>strong{background:var(--yellow-soft);color:#956900;white-space:nowrap;border-radius:999px;padding:8px 11px;font-size:12px}.accessory-rows{display:grid}.accessory-row{border-bottom:1px solid var(--line);grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:78px;padding:14px 18px;display:grid}.accessory-row:last-child{border-bottom:0}.accessory-qty{background:var(--coral-soft);width:44px;height:44px;color:var(--coral-dark);border-radius:999px;place-items:center;font-size:13px;font-weight:900;display:grid}.accessory-row strong,.accessory-row small{display:block}.accessory-row strong{font-size:15px}.accessory-row small{color:var(--muted);margin-top:5px;font-size:12px}.accessory-actions{justify-content:flex-end;gap:9px;display:flex}.empty-accessories{min-height:260px;color:var(--muted);text-align:center;place-items:center;gap:9px;padding:28px;display:grid}.empty-accessories h3,.empty-accessories p{margin:0}.empty-accessories h3{color:var(--text);font-size:20px}.unit-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 22px 22px;display:grid}.unit-check{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:18px 12px minmax(58px,auto) minmax(0,1fr);align-items:center;gap:9px;min-height:46px;padding:8px 10px;display:grid}.unit-check.active{border-color:var(--teal);background:var(--teal-soft)}.unit-check input{accent-color:var(--teal)}.unit-check strong{font-size:13px}.unit-check small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.form-note{background:var(--soft);color:var(--muted);border-radius:8px;margin:0 22px 18px;padding:12px;font-size:13px;font-weight:750}.inline-check{background:var(--soft);color:#52616d;border-radius:8px;align-items:center;gap:10px;margin:0 22px 22px;padding:13px;font-size:13px;font-weight:800;display:flex}.inline-check input{accent-color:var(--teal)}.demo-login{background:#fff6f8;border:1px solid #ffd1da;border-radius:8px;gap:10px;padding:12px;display:grid}.demo-login>span{color:var(--coral-dark);text-transform:uppercase;font-size:12px;font-weight:900}.demo-login div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.demo-login button{min-height:40px;color:var(--text);cursor:pointer;background:#fff;border:0;border-radius:8px;font-weight:850;box-shadow:0 8px 18px #ed5d7014}.empty-start{grid-template-columns:minmax(0,1fr) 360px;align-items:center;gap:34px;min-height:520px;display:grid}.empty-city{border:1px solid var(--line);background:linear-gradient(#dff4f58c,#ffffffe0),#fff;border-radius:8px;grid-template-columns:repeat(4,minmax(90px,1fr));align-items:end;gap:18px;padding:clamp(22px,4vw,42px);display:grid}.empty-building{border:0;border-radius:8px;place-items:center;gap:10px;min-height:180px;display:grid}.empty-building.big{background:var(--coral);color:#fff;cursor:pointer;font-weight:900;box-shadow:0 22px 52px #ed5d7033}.empty-building.ghost{color:#9ab4be;background:#edf7f9}.empty-building:nth-child(3){min-height:136px}.empty-building:nth-child(4){min-height:106px}.empty-copy{align-content:center;gap:16px;display:grid}.empty-copy span,.builder-copy span{color:var(--coral);text-transform:uppercase;font-size:12px;font-weight:900}.empty-copy h2,.builder-copy h2{color:#263744;letter-spacing:0;margin:0;font-size:clamp(30px,4vw,48px);line-height:1.02}.empty-copy p,.builder-copy p{color:var(--muted);margin:0;line-height:1.55}.building-create-page .page-header{margin-bottom:22px}.building-create-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:22px;display:grid}.building-create-form,.building-create-preview{border:1px solid var(--line);background:#fff;border-radius:8px}.building-create-form{gap:18px;padding:clamp(22px,4vw,36px);display:grid}.building-create-title{gap:8px;max-width:560px;display:grid}.building-create-title span{color:var(--coral);text-transform:uppercase;font-size:12px;font-weight:900}.building-create-title h2,.building-create-title p,.building-create-preview h2,.building-create-preview p{margin:0}.building-create-title h2{color:#263744;letter-spacing:0;font-size:clamp(26px,3vw,38px);line-height:1.08}.building-create-title p,.building-create-preview p{color:var(--muted);font-size:14px}.building-create-form .form-grid{grid-template-columns:1fr;max-width:560px;padding:0}.building-create-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.building-create-error{margin:0}.building-create-preview{background:linear-gradient(#dff4f5b8,#ffffffe6),#fff;align-content:start;gap:18px;min-height:330px;padding:24px;display:grid}.building-preview-icon{background:var(--coral);color:#fff;border-radius:8px;place-items:center;width:74px;height:74px;display:grid;box-shadow:0 18px 38px #ed5d7033}.building-create-preview small,.building-preview-next span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.building-create-preview h2{color:#263744;letter-spacing:0;margin-top:6px;font-size:26px;line-height:1.08}.building-preview-next{border-top:1px solid #5a92a02e;gap:6px;margin-top:8px;padding-top:16px;display:grid}.building-preview-next strong{color:var(--teal);font-size:14px}.back-link{min-height:36px;color:var(--teal);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:18px;padding:0;font-weight:850;display:inline-flex}.back-link svg{transform:rotate(180deg)}.building-summary{border-bottom:1px solid var(--line);grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;padding:4px 0 18px;display:grid}.building-summary-icon{color:#fff;border-radius:12px;place-items:center;width:46px;height:46px;display:grid}.building-summary-icon.coral{background:var(--coral)}.building-summary-icon.terracotta{background:#cf6b63}.building-summary-icon.peach{background:var(--peach)}.building-summary-icon.teal{background:var(--teal)}.building-summary-icon.sky{background:var(--sky)}.building-summary-icon.navy{background:var(--navy)}.building-summary span{color:var(--muted);font-size:12px;font-weight:800}.building-summary h1{letter-spacing:0;margin:3px 0 0;font-size:clamp(24px,3vw,34px);line-height:1.08}.building-summary-meta{justify-content:flex-end;align-items:center;gap:9px;display:flex}.building-summary-meta>span{background:var(--soft);color:#52636e;border-radius:999px;padding:7px 10px}.visual-builder{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:280px minmax(0,1fr);gap:24px;margin-top:28px;padding:24px;display:grid}.builder-copy{align-content:start;gap:12px;display:grid}.builder-copy h2{font-size:30px}.builder-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.mini-input,.color-mode-field{gap:7px;display:grid}.mini-input span,.color-mode-field>span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.mini-input input{border:1px solid var(--line);background:var(--soft);width:100%;min-height:42px;color:var(--text);border-radius:8px;outline:0;padding:0 11px;font-weight:800}.mini-segmented{background:var(--soft);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-height:42px;padding:4px;display:grid}.mini-segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;font-size:12px;font-weight:850}.mini-segmented button.active{color:var(--text);background:#fff;box-shadow:0 4px 12px #27333f14}.builder-controls .palette-field{grid-column:span 2}.builder-controls .palette-swatches{grid-template-columns:repeat(6,minmax(32px,1fr))}.builder-preview{background:var(--soft);border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:12px;max-height:250px;padding:14px;display:grid;overflow:auto}.mini-unit{color:#263744;border-radius:8px;place-items:center;gap:7px;min-height:88px;font-size:12px;font-weight:850;display:grid}.mini-unit.sun,.unit-house.sun{background:#f8cc46}.mini-unit.mint,.unit-house.mint{background:#def5ee}.mini-unit.ink,.unit-house.ink{color:#fff;background:#143d4f}.mini-unit.clay,.unit-house.clay{color:#fff;background:#e87455}.mini-unit.cream,.unit-house.cream{background:#f2dfcf}.mini-unit.pool,.unit-house.pool{background:#75c6e3}.visual-builder .button-row{grid-column:1/-1}.empty-units{border:1px dashed var(--line-strong);min-height:260px;color:var(--muted);text-align:center;background:#fff;border-radius:8px;place-items:center;gap:10px;padding:24px;display:grid}.empty-units h2,.empty-units p{margin:0}.structure-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));justify-content:stretch;gap:24px;display:grid}.unit-structure{min-height:176px}.unit-house{color:#263744;border-radius:8px;place-items:center;width:100%;min-height:104px;display:grid}.unit-structure strong,.unit-structure small{display:block}.unit-structure small{color:var(--muted);margin-top:4px;font-size:12px}.unit-spec-row{flex-wrap:wrap;gap:7px;display:flex}.unit-spec-row span{background:var(--soft);color:#60717c;border-radius:999px;padding:6px 8px;font-size:11px;font-weight:850}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1180px){.auth-shell{grid-template-columns:1fr}.auth-brand-panel{min-height:auto;padding-bottom:24px}.auth-card{margin-bottom:46px}.app{grid-template-columns:210px minmax(0,1fr)}.topbar{padding-right:32px}.workspace-scroll{padding-inline:28px}.folder-row{grid-template-columns:repeat(5,minmax(104px,1fr))}.buildings-folder-row{grid-template-columns:repeat(auto-fill,minmax(116px,1fr))}.card-grid,.card-grid.wide{grid-template-columns:repeat(3,minmax(190px,1fr))}.apartment-badge-grid,.apartment-badge-grid.wide,.structure-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.ops-metric-row{grid-template-columns:repeat(3,minmax(0,1fr))}.pricing-grid,.calendar-grid,.booking-calendar-grid,.access-grid,.empty-start,.visual-builder,.accessory-layout,.client-layout,.manage-booking-summary,.manage-booking-grid,.building-create-layout,.settings-layout,.booking-flow{grid-template-columns:1fr}.booking-search-panel{border-right:0;border-bottom:1px solid var(--line)}.reservation-row{grid-template-columns:12px minmax(0,1fr) minmax(140px,.8fr)}.reservation-row label,.reservation-row .primary-button{grid-column:2/-1}.builder-preview,.visual-builder .button-row{grid-column:auto}}@media (width<=900px){.auth-shell{background:var(--app-bg);min-height:100svh;display:block}.auth-brand-panel{gap:18px;min-height:auto;padding:22px 18px 12px}.auth-brand-panel .brand,.auth-language-row{justify-content:center}.auth-brand-panel h1,.auth-brand-panel p{display:none}.auth-visual{justify-content:center;min-height:190px}.auth-phone{width:min(250px,86vw);transform:none}.mini-room{min-height:58px;margin-top:10px;padding:12px}.auth-card{width:min(460px,100vw - 28px);margin:0 auto 28px;box-shadow:0 14px 36px #27333f14}.auth-primary{min-height:54px}.role-choice{grid-template-columns:1fr}.app{display:block}.sidebar{display:none}.workspace{height:auto;min-height:100svh;padding-bottom:76px;overflow:visible}.topbar{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfbfce0;justify-content:space-between;height:72px;padding:12px 16px;position:sticky;top:0}.icon-button.menu-toggle{display:inline-flex}.topbar>.language-switcher,.text-upgrade,.tiny-avatar,.role-chip,.top-actions .primary-button{display:none}.search{flex:1;width:auto}.workspace-scroll{height:auto;padding:24px 16px calc(112px + env(safe-area-inset-bottom));overflow:visible}.ops-dashboard{gap:14px;margin-bottom:32px}.ops-dashboard-hero{grid-template-columns:1fr;align-items:start;padding:22px}.ops-dashboard-hero .primary-button{width:100%}.today-movement{grid-template-columns:1fr}.page-header{align-items:flex-start;margin-bottom:28px}.mobile-quick-panel{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:-8px 0 28px;padding:14px;display:flex}.mobile-quick-panel span,.mobile-quick-panel strong{display:block}.mobile-quick-panel span{color:var(--muted);font-size:12px;font-weight:800}.mobile-quick-panel strong{margin-top:4px;font-size:20px}.page-icon{width:46px;height:46px}.folder-row{grid-template-columns:repeat(6,106px);gap:22px}.buildings-folder-row{grid-template-columns:repeat(auto-fill,minmax(112px,1fr))}.card-grid,.card-grid.wide{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.apartment-badge-board{padding:20px}.apartment-badge-grid,.apartment-badge-grid.wide,.structure-grid{grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:16px}.summary-band,.settings-layout,.empty-city,.revenue-ribbon{grid-template-columns:1fr}.revenue-metric{border-bottom:1px solid #ffffff24;border-right:0;min-height:74px}.revenue-metric:last-child{border-bottom:0}.empty-start{gap:22px;min-height:0}.empty-city{order:2;grid-template-columns:repeat(2,minmax(0,1fr))}.empty-building{min-height:132px}.builder-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar{flex-wrap:wrap}.filter-bar label{flex-basis:100%}.booking-overview,.client-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.booking-overview .summary-stat,.client-overview .summary-stat{min-height:98px;padding:14px}.booking-overview .summary-stat:last-child:nth-child(odd),.client-overview .summary-stat:last-child:nth-child(odd){grid-column:1/-1}.booking-overview .summary-stat span,.client-overview .summary-stat span{font-size:12px}.booking-overview .summary-stat strong,.client-overview .summary-stat strong{font-size:21px}.reservation-toolbar{grid-template-columns:1fr}.reservation-setting{flex-wrap:wrap}.calendar-toolbar{grid-template-columns:1fr;align-items:stretch}.calendar-toolbar label{min-width:0}.accessory-toolbar{flex-direction:column;align-items:stretch}.accessory-toolbar label,.accessory-toolbar>div{width:100%}.accessory-toolbar select{flex:1;min-width:0}.accessory-toolbar>div{justify-content:flex-start}.accessory-unit-list{grid-template-columns:repeat(2,minmax(0,1fr))}.rule-line{grid-template-columns:48px 1fr}.rule-line .direction,.rule-line>strong,.rule-line .rule-status{grid-column:2;justify-self:start}.calendar-surface,.booking-calendar-surface{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{gap:5px;min-height:76px;padding:7px 5px}.booking-calendar-surface .calendar-day{min-height:76px;padding:7px 5px}.calendar-day span{flex-direction:column;align-items:flex-start;gap:2px}.calendar-day strong{font-size:18px}.calendar-day small{font-size:9px}.booking-day-panel{grid-template-columns:1fr}.booking-day-panel .free-unit-list{border-top:1px solid var(--line);border-left:0;padding:12px 0 0}.calendar-weekday{text-align:center;padding:7px 2px;display:block}.calendar-stay-bar{height:8px;margin:calc(40px + (var(--lane) * 10px)) 4px 0;box-shadow:none;border-radius:999px;padding:0}.calendar-stay-bar span,.calendar-stay-bar small,.calendar-stay-bar:after{display:none}.calendar-booking-stack{flex-wrap:wrap;gap:3px;min-height:7px;display:flex}.calendar-booking-stack em{width:7px;height:7px;padding:0;font-size:0}.progress{height:3px}.calendar-day:nth-child(2n),.calendar-day:nth-child(4n){border-right:1px solid var(--line)}.calendar-day:nth-child(7n){border-right:0}.booking-row,.approval-row,.team-row,.visit-row,.reservation-row{grid-template-columns:1fr;align-items:start}.reservation-row label,.reservation-row .primary-button{grid-column:auto}.reservation-marker{width:100%;height:8px}.approval-actions{flex-wrap:wrap;justify-content:flex-start}.booking-summary-actions{justify-content:flex-start}.cart-panel .form-grid,.occupants-panel .form-grid,.order-calculation{grid-template-columns:1fr}.occupants-textarea{grid-column:1}.mobile-tabs{z-index:50;border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-tabs button{color:#778894;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;gap:4px;min-width:0;min-height:56px;font-size:10px;font-weight:750;display:grid;position:relative}.mobile-tabs button.active{background:var(--teal-soft);color:var(--teal)}.mobile-tabs b{position:absolute;top:5px;right:calc(50% - 25px)}.mobile-menu{pointer-events:none;visibility:hidden;display:block}.mobile-menu.open{pointer-events:auto;visibility:visible}.mobile-menu aside{background:var(--sidebar-bg);width:min(292px,86vw);box-shadow:var(--shadow);border-right:1px solid #dceff2;padding:20px 16px;transition:transform .2s;position:absolute;inset:0 auto 0 0;transform:translate(-100%)}.mobile-menu.open aside{transform:translate(0)}.mobile-menu header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.mobile-menu .user-pill{margin-bottom:20px}.sheet,.confirm-sheet{width:calc(100vw - 18px);margin-top:9px}.form-grid{grid-template-columns:1fr}}@media (width<=560px){body{background:#fff}.auth-brand-panel{padding-top:18px}.brand.large .brand-logo{width:min(216px,100%)}.auth-visual{display:none}.auth-card{width:100%;min-height:calc(100svh - 84px);padding:24px 18px max(24px, env(safe-area-inset-bottom));border-bottom:0;border-left:0;border-right:0;border-radius:8px 8px 0 0}.auth-header h2{font-size:30px}.auth-field div{min-height:54px}.topbar{gap:10px}.search{min-width:0}.page-header h1{font-size:32px}.page-header p{max-width:280px}.current-building-strip{grid-template-columns:42px minmax(0,1fr);align-items:start}.current-building-icon{width:42px;height:42px}.current-building-strip .soft-button{grid-column:1/-1;width:100%}.building-list-row{grid-template-columns:42px minmax(0,1fr);gap:10px 12px}.building-list-row .status,.building-list-row em,.building-list-open{text-align:left;grid-column:2;justify-self:start}.building-list-icon{width:38px;height:38px}.report-detail-row{grid-template-columns:1fr;gap:10px}.report-detail-row>strong{text-align:left;justify-self:start}.report-detail-row div>strong,.report-detail-row small{white-space:normal}.collection-period-buttons{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.collection-period-buttons button{padding-inline:6px}.collections-total-strip>div{min-height:96px;padding:15px}.collector-total-row{grid-template-columns:38px minmax(0,1fr)}.collector-total-row em{grid-column:2;justify-self:start}.collection-record-row{grid-template-columns:1fr}.collection-record-row>strong{text-align:left;justify-self:start}.ops-dashboard-hero h2{font-size:34px}.ops-metric-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-metric{grid-template-columns:32px minmax(0,1fr);min-height:90px;padding:12px}.dashboard-metric>span{width:32px;height:32px}.dashboard-metric strong{font-size:25px}.dashboard-metric.sky{grid-column:1/-1;grid-template-columns:32px minmax(0,1fr) auto;min-height:70px}.dashboard-metric.sky em{grid-column:auto;justify-self:end}.movement-row{grid-template-columns:32px minmax(0,1fr)}.movement-row em{grid-column:2;justify-self:start}.card-grid,.card-grid.wide{grid-template-columns:1fr}.apartment-badge-board{border-radius:14px;margin-inline:-6px;padding:14px}.apartment-badge-grid,.apartment-badge-grid.wide,.structure-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.apartment-badge{border-radius:12px;min-height:198px;padding:18px 10px}.apartment-badge .editable-name-button strong{font-size:21px}.apartment-badge-specs{gap:4px}.apartment-badge-specs span{padding:5px 6px;font-size:9px}.apartment-badge-rate{padding:6px 8px;font-size:10px}.apartment-badge-edit{width:32px;height:32px;min-height:32px;padding:0}.summary-stat{padding:18px}.summary-band{gap:12px;margin-top:28px}.folder-row{gap:18px;margin-inline:-16px;padding-inline:16px}.section{margin-top:28px}.document-section{margin-top:32px}.settings-form-row{grid-template-columns:1fr;align-items:stretch}.settings-form-row.currency-settings-row{grid-template-columns:1fr;max-width:none}.calendar-surface,.booking-calendar-surface{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day,.calendar-day:nth-child(2n),.calendar-day:nth-child(4n){border-right:1px solid var(--line)}.calendar-day:nth-child(7n){border-right:0}.calendar-day,.booking-calendar-surface .calendar-day{min-height:58px;padding:6px 4px}.calendar-day strong{font-size:16px}.calendar-day small{display:none}.calendar-stay-bar{height:7px;margin:calc(36px + (var(--lane) * 9px)) 4px 0}.booking-search-panel,.booking-guest-panel{padding:18px}.booking-search-grid,.booking-filter-grid{grid-template-columns:1fr}.booking-scope-switch button{padding:0 7px;font-size:11px}.known-client-results button,.known-client-match{grid-template-columns:34px minmax(0,1fr)}.known-client-results em,.known-client-match em{grid-column:2;justify-self:start}.checkout-summary{flex-direction:column;align-items:stretch}.manage-booking-body{padding:16px}.manage-panel-title{flex-direction:column;align-items:flex-start}.payment-history-row,.cart-order-row{grid-template-columns:1fr}.cart-order-row>span,.cart-order-row em{justify-self:start}.occupant-main{grid-template-columns:1fr}.manage-booking-summary .primary-button{justify-self:start}.money-grid{grid-template-columns:1fr}.available-apartment{grid-template-columns:14px minmax(0,1fr)}.available-apartment em,.available-apartment b,.available-apartment small:last-child{grid-column:2;justify-self:start}.price-card,.day-panel,.pricing-rules{padding:18px}.building-summary{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:12px}.building-summary-icon{width:42px;height:42px}.building-summary-meta{flex-wrap:wrap;grid-column:2;justify-content:flex-start}.building-create-form,.building-create-preview{padding:18px}.building-create-title h2{font-size:28px}.building-create-actions{flex-direction:column-reverse;align-items:stretch}.building-create-actions .primary-button,.building-create-actions .soft-button{width:100%}.building-create-preview{min-height:0}.building-preview-icon{width:58px;height:58px}.visual-builder{gap:18px;margin-top:18px;padding:18px}.builder-controls{grid-template-columns:1fr}.builder-controls .palette-field{grid-column:auto}.palette-swatches,.builder-controls .palette-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.builder-preview{grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:-6px;padding:10px}.mini-unit{min-height:74px}.unit-house{min-height:86px}.access-role-card,.team-section{margin-top:0}.client-toolbar,.client-rank-strip,.client-metrics{grid-template-columns:1fr}.client-list-panel,.client-detail-panel{margin-inline:-4px}.client-row{grid-template-columns:38px minmax(0,1fr)}.client-row em{grid-column:2;justify-self:start}.client-detail-panel{padding:16px}.client-history-head{flex-direction:column;align-items:flex-start}.access-grid{gap:14px}.accessory-unit-list,.unit-picker{grid-template-columns:1fr}.accessory-row{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:13px}.accessory-actions{flex-wrap:wrap;grid-column:2;justify-content:flex-start}.accessory-panel-head{flex-direction:column;align-items:flex-start;min-height:0;padding:18px}.accessory-toolbar .primary-button,.accessory-toolbar .soft-button{flex:1}.access-role-card{padding:18px}.team-row{gap:10px}.sheet{min-height:calc(100svh - 18px)}.sheet-actions{background:#fff;position:sticky;bottom:0}}.bookings-page,.clients-page,.reservations-page,.maintenance-page{width:min(1240px,100%)}.bookings-page .summary-stat,.clients-page .summary-stat,.maintenance-page .summary-stat{align-content:center;min-height:112px;padding:18px}.bookings-page .summary-stat strong,.clients-page .summary-stat strong,.maintenance-page .summary-stat strong{overflow-wrap:anywhere}.booking-overview,.client-overview,.maintenance-overview{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:12px}.maintenance-overview{margin-bottom:22px;display:grid}.maintenance-toolbar{flex-wrap:wrap;align-items:center;display:flex}.maintenance-toolbar label{flex:240px;min-width:0}.maintenance-toolbar>select,.maintenance-toolbar>input{border:1px solid var(--line);background:var(--soft);min-width:0;min-height:42px;color:var(--text);border-radius:8px;flex:0 156px;padding:0 12px}.maintenance-toolbar>input{flex:0 0 144px}.maintenance-toolbar-actions{flex:none;gap:10px;margin-left:auto;display:flex}.maintenance-toolbar-actions .soft-button,.maintenance-toolbar-actions .primary-button{border-radius:999px;padding-inline:15px}.income-report{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:18px;overflow:hidden}.income-report .section-title{border-bottom:1px solid var(--line);margin:0;padding:16px}.income-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 116px minmax(150px,.34fr) minmax(126px,.26fr);align-items:center;gap:14px;padding:14px 16px;display:grid}.income-row:last-child{border-bottom:0}.income-row strong,.income-row small{min-width:0;display:block}.income-row small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:700;line-height:1.35}.maintenance-layout{grid-template-columns:minmax(0,1fr) minmax(290px,.42fr);align-items:start;gap:18px;display:grid}.maintenance-ledger,.block-ledger{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.maintenance-ledger .section-title,.block-ledger .section-title{border-bottom:1px solid var(--line);margin:0;padding:16px}.ledger-count{color:var(--muted);font-size:12px;font-weight:850}.maintenance-row{border-bottom:1px solid var(--line);grid-template-columns:116px minmax(0,1fr) 96px 110px 116px;align-items:center;gap:14px;padding:14px 16px;display:grid}.maintenance-row:last-child{border-bottom:0}.maintenance-row strong,.maintenance-row small,.block-row strong,.block-row small{min-width:0;display:block}.maintenance-row small,.block-row small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:700;line-height:1.35}.unit-link{color:#287d69;cursor:pointer;background:#f2fbf8;border:1px solid #d6eee7;border-radius:999px;justify-content:center;min-width:0;min-height:32px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.unit-link.building-scope{color:#8f6500;text-overflow:ellipsis;white-space:nowrap;background:#fff7d9;overflow:hidden}.block-row{border-bottom:1px solid var(--line);gap:12px;padding:15px 16px;display:grid}.block-row:last-child{border-bottom:0}.block-row.released{opacity:.74}.block-row-actions{flex-wrap:wrap;gap:8px;display:flex}.block-row-actions .soft-button{border-radius:999px;min-height:34px;padding-inline:12px}.booking-action-bar{grid-template-columns:minmax(240px,1fr) auto minmax(120px,auto);align-items:center;display:grid}.booking-action-bar label{min-width:0}.booking-action-bar .segmented{justify-self:end}.booking-action-bar .primary-button{border-radius:999px;justify-self:end;width:auto;min-width:0;padding-inline:18px}.booking-row>*,.reservation-row>*,.visit-row>*,.client-toolbar>*,.client-detail-panel>*,.client-list-panel>*{min-width:0}.booking-row{grid-template-columns:minmax(160px,1.14fr) minmax(72px,.48fr) minmax(74px,.46fr) minmax(128px,.78fr) minmax(142px,.84fr) minmax(108px,auto);gap:14px;padding:14px 16px}.booking-row .primary-button,.booking-row .soft-button,.reservation-row .primary-button{width:100%;min-width:0;padding-inline:12px}.booking-row-actions{justify-content:flex-end;align-items:center;min-width:0;display:flex}.booking-row-actions .primary-button,.booking-row-actions .soft-button{width:auto;min-width:90px;min-height:34px;box-shadow:none;border-radius:999px;padding-inline:15px;font-size:12px}.booking-row-actions .primary-button{color:#287d69;background:#effaf6;border:1px solid #bee5dc}.booking-row-actions .primary-button:hover{color:#236e5f;background:#def5ee}.booking-row-actions .soft-button{color:var(--coral-dark);background:#fff7f8;border-color:#ffd8dd}.booking-row-actions .soft-button:hover{background:var(--coral-soft);border-color:#ffc4cd}.booking-balance-cell .status,.visit-row .status{text-overflow:ellipsis;max-width:100%;overflow:hidden}.booking-balance-cell .status{justify-self:start}.reservation-toolbar{grid-template-columns:minmax(260px,1fr) minmax(0,auto)}.reservation-setting{justify-content:flex-end}.reservation-row{grid-template-columns:10px minmax(150px,1fr) minmax(98px,.45fr) minmax(126px,.56fr) minmax(118px,.54fr) minmax(118px,.52fr) minmax(140px,.62fr) minmax(132px,auto);gap:12px;padding:14px 16px}.reservation-row label{min-width:0}.reservation-row select,.reservation-row input{width:100%}.client-toolbar{grid-template-columns:minmax(170px,1fr) minmax(142px,.48fr) minmax(122px,.42fr)}.client-toolbar label,.client-rank strong,.client-rank small,.client-row strong,.client-row small,.client-detail-panel{min-width:0}.client-metrics .preview-line{gap:8px;min-width:0;min-height:60px}.client-metrics .preview-line strong{overflow-wrap:anywhere;text-align:right;min-width:0}.visit-row{grid-template-columns:minmax(140px,1fr) minmax(58px,.35fr) minmax(120px,.72fr) minmax(128px,.78fr);gap:12px}.visit-row>div:last-child{min-width:0}@media (width<=1280px){.bookings-page,.clients-page,.reservations-page{width:100%}.booking-overview,.client-overview{grid-template-columns:repeat(auto-fit,minmax(126px,1fr))}.booking-action-bar{grid-template-columns:minmax(0,1fr) auto auto}.maintenance-toolbar{display:flex}.maintenance-toolbar label{flex-basis:100%}.booking-action-bar .primary-button{grid-column:auto;justify-self:end}.booking-row{grid-template-columns:minmax(0,1.2fr) minmax(76px,.42fr) minmax(74px,.42fr) minmax(118px,.7fr) minmax(128px,.78fr) auto}.booking-row-actions{justify-self:end}.maintenance-layout{grid-template-columns:1fr}.maintenance-row{grid-template-columns:104px minmax(0,1fr) 92px 104px 110px}.income-row{grid-template-columns:minmax(0,1fr) 108px minmax(136px,.34fr) minmax(112px,.26fr)}.reservation-row{grid-template-columns:10px minmax(0,1fr) minmax(116px,.46fr) minmax(130px,.55fr);align-items:start}.reservation-marker{grid-row:1/span 3;height:100%;min-height:46px}.reservation-row>div:first-of-type{grid-column:2}.reservation-row>div:nth-of-type(2){grid-column:3}.reservation-row>div:nth-of-type(3){grid-column:4}.reservation-row label:first-of-type{grid-column:2/span 2}.reservation-row label:nth-of-type(2){grid-column:4}.reservation-row label:nth-of-type(3),.reservation-confirm-note{grid-column:2/span 2}.reservation-row .primary-button{grid-column:4}.client-layout{grid-template-columns:1fr}.client-list{max-height:380px}}@media (width<=900px){.booking-overview,.client-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-overview .summary-stat:last-child:nth-child(odd),.client-overview .summary-stat:last-child:nth-child(odd){grid-column:1/-1}.booking-action-bar{grid-template-columns:1fr auto}.maintenance-toolbar{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;padding:10px;display:grid}.booking-action-bar label{grid-column:1/-1}.quick-report-head{flex-direction:column;align-items:stretch}.quick-report-controls{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.quick-report-dates{grid-template-columns:1fr 1fr;display:grid}.quick-report-dates input{width:100%}.quick-report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-detail-modal{width:min(680px,100vw - 20px);padding:14px}.maintenance-toolbar label,.maintenance-toolbar>select{grid-column:1/-1}.maintenance-toolbar label,.maintenance-toolbar>select,.maintenance-toolbar>input,.maintenance-toolbar-actions .soft-button,.maintenance-toolbar-actions .primary-button{min-height:38px}.maintenance-toolbar-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));margin-left:0;display:grid}.maintenance-toolbar-actions .soft-button,.maintenance-toolbar-actions .primary-button{width:100%}.booking-action-bar .segmented{justify-self:start;width:auto;display:inline-flex}.booking-action-bar .primary-button{grid-column:auto}.booking-row,.reservation-row,.visit-row{grid-template-columns:1fr}.maintenance-row,.income-row{grid-template-columns:1fr;align-items:start}.booking-row-actions{justify-content:flex-start}.reservation-marker{grid-row:auto;width:100%;height:8px;min-height:8px}.reservation-row>div:first-of-type,.reservation-row>div:nth-of-type(2),.reservation-row>div:nth-of-type(3),.reservation-row label:first-of-type,.reservation-row label:nth-of-type(2),.reservation-row label:nth-of-type(3),.reservation-confirm-note,.reservation-row .primary-button{grid-column:1}.reservation-toolbar{grid-template-columns:1fr}.reservation-setting{grid-template-columns:auto minmax(78px,1fr) auto auto;justify-content:stretch;width:100%;display:grid}.client-toolbar,.client-rank-strip,.client-metrics{grid-template-columns:1fr}}.input-field input:disabled{color:var(--muted);cursor:not-allowed}@media (width<=1320px){.topbar{gap:12px;padding-inline:32px}.search{width:min(260px,26vw)}.building-switcher{width:min(220px,23vw)}}@media (width<=1180px){.building-switcher,.building-scope-pill{max-width:100%}.team-row{grid-template-columns:44px minmax(0,1fr) minmax(100px,auto)}.team-access-scope{grid-column:2/-1}.team-row .status,.team-row>small,.team-row>.soft-button,.team-owner-lock{grid-column:2/-1;justify-self:start}}@media (width<=900px){.topbar{grid-template-columns:auto minmax(0,1fr) auto;height:auto;min-height:72px;display:grid}.topbar .search{width:100%}.top-actions{grid-area:1/3;justify-self:end}.building-switcher,.building-scope-pill{grid-column:1/-1;width:100%;min-height:38px}.building-access-grid{grid-template-columns:1fr}}@media (width<=640px){.quick-report-panel{gap:10px;margin:14px 0 18px;padding:10px}.quick-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-report-grid div{min-height:68px;padding:10px}.quick-report-grid strong{font-size:18px}.maintenance-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.maintenance-page .summary-stat{min-height:86px;padding:10px}.maintenance-page .summary-stat svg{width:16px;height:16px}.maintenance-page .summary-stat span{font-size:11px;line-height:1.15}.maintenance-page .summary-stat strong{font-size:20px;line-height:1.05}.building-access-picker{margin-inline:16px}.team-row{grid-template-columns:38px minmax(0,1fr);align-items:start;padding:14px}.team-row>span:nth-child(3),.team-access-scope,.team-row .status,.team-row>small,.team-row>.soft-button,.team-owner-lock{grid-column:2}.access-mode-switch{grid-template-columns:1fr}.calendar-entry-layer{place-items:center;padding:12px}.calendar-entry-modal{gap:11px;width:min(100%,430px);max-height:calc(100svh - 24px);padding:14px}.unit-history-layer{padding:12px}.unit-history-modal{gap:12px;width:min(100%,430px);max-height:calc(100svh - 24px);padding:14px}.unit-history-modal header h2{font-size:34px}.history-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.history-summary div{padding:10px}.history-event{grid-template-columns:1fr;align-items:start;gap:8px}.active-block-note{grid-template-columns:26px minmax(0,1fr)}.active-block-release{grid-column:1/-1;width:100%}.history-event-end{justify-self:stretch;width:100%}.history-event-action{flex:1}.history-event em{white-space:normal}.history-actions{justify-content:stretch;width:100%}.history-actions .soft-button,.history-actions .primary-button{flex:1}.calendar-entry-modal:before{width:4px}.calendar-entry-modal header{gap:8px}.calendar-entry-modal header>span{padding:6px 9px;font-size:10px}.entry-modal-hero{align-items:flex-start;gap:10px;padding-left:4px}.entry-modal-hero h2{font-size:27px}.entry-modal-hero p{margin-top:4px;font-size:12px}.entry-modal-hero .status{white-space:nowrap;padding:8px 10px}.entry-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;padding-block:4px}.entry-modal-grid .preview-line{gap:8px;min-height:36px;font-size:11px}.entry-money-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.entry-money-strip div{gap:4px;padding:10px 8px}.entry-money-strip strong{font-size:14px;line-height:1.1}.entry-money-strip span,.entry-modal-footer span{font-size:9px}.entry-modal-footer{gap:10px}.entry-modal-grid .preview-line strong{text-align:right}.entry-modal-footer .soft-button{min-height:40px;padding-inline:14px}}@media (width<=900px){.collections-filter-grid,.collections-total-strip,.collections-layout{grid-template-columns:1fr}.collections-export-button{width:100%}.collection-record-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.collection-record-row>div:nth-child(2){grid-column:1/-1}.collection-record-row>strong{justify-self:end}.client-profile-layer{padding:12px}.client-profile-modal{gap:13px;width:min(100%,430px);max-height:calc(100svh - 24px);padding:14px}.client-modal-head{gap:12px}.client-profile-modal .client-metrics,.client-id-panel{grid-template-columns:1fr}.client-id-actions,.identity-photo-actions{grid-template-columns:1fr;display:grid}.identity-photo-actions .soft-button{width:100%}.client-profile-modal .visit-row{grid-template-columns:1fr;align-items:start}.client-profile-modal .visit-list{max-height:none}}
