:root{color:var(--text);background:var(--app-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--app-bg:#edf6f9;--text:#14213d;--strong:#14213d;--blue-dark:#033f63;--accent:#1b98e0;--accent-text:var(--blue-dark);--reserved-color:var(--blue-dark);--green:#2a9d8f;--green-soft:#d9f1ec;--red:#e76f51;--red-soft:#ffe2db;--sand:#ffddd2;--panel:#fff;--surface-soft:#f8fbfc;--surface-raised:#fbfdfe;--selected-soft:#e4f2f5;--line:#cfe3e8;--muted:#657786;--focus-ring:#033f631f;--selected-ring:#033f631f;--primary-shadow:#033f632e;--status-available-text:#135f55;--status-booked-text:#9b341d;--muted-day:#95aab2;--past-bg:#edf2f4;--past-text:#a3b0b8;--tooltip-bg:#14213d;--on-primary:#fff;--on-accent:#0f2830;--modal-backdrop:#14213d7a;--modal-shadow:#14213d42;--shadow:0 20px 50px #1d4ed824;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-shell[data-theme=dark]{--app-bg:#08111f;--text:#eaf2fb;--strong:#f8fbff;--blue-dark:#033f63;--accent:#1b98e0;--accent-text:var(--accent);--reserved-color:var(--accent);--green:#34d399;--green-soft:#34d39938;--red-soft:#e76f5133;--panel:#101a2b;--surface-soft:#162235;--surface-raised:#121f32;--selected-soft:#102f4a;--line:#2b3f59;--muted:#9fb0c4;--focus-ring:#1b98e038;--selected-ring:#1b98e033;--primary-shadow:#1b98e033;--status-available-text:#bbf7d0;--status-booked-text:#ffb19d;--muted-day:#64758b;--past-bg:#111a2a;--past-text:#64758b;--tooltip-bg:#050b14;--on-primary:#fff;--on-accent:#fff;--modal-backdrop:#030812bd;--modal-shadow:#0000006b;--shadow:0 22px 60px #0000005c}*{box-sizing:border-box}body{background:var(--app-bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}body:has(.app-shell[data-theme=dark]){color:#eaf2fb;background:#08111f}button,input,select{font:inherit}button{cursor:pointer;border:0}.app-shell{width:min(1280px,100% - 32px);margin:0 auto;padding:18px 0 48px}.app-header{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:26px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:18px 20px;display:flex}.app-header h1{letter-spacing:-.06em;margin:0;font-size:clamp(1.7rem,4vw,2.6rem)}.app-nav{flex-wrap:wrap;gap:8px;display:flex}.app-nav button{background:var(--surface-soft);min-height:42px;color:var(--muted);border-radius:999px;padding:0 14px;font-weight:800}.app-nav button.active{background:var(--blue-dark);color:var(--on-primary)}.theme-switch{border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;padding:4px;display:flex}.theme-toggle{background:var(--accent);width:42px;height:42px;color:var(--on-accent);border-radius:50%;place-items:center;display:grid}.theme-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:21px;height:21px}.theme-toggle svg circle{fill:currentColor;stroke:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:.74rem;font-weight:800}.workspace{grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);align-items:start;gap:18px;display:grid}.panel{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:26px;padding:22px}.calendar-column{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--muted) 45%, transparent) transparent;direction:rtl;background:0 0;border-radius:26px;max-height:calc(100vh - 36px);position:sticky;top:18px;overflow-y:auto}.calendar-column::-webkit-scrollbar{width:8px}.calendar-column::-webkit-scrollbar-track{background:0 0}.calendar-column::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--muted) 45%, transparent);background-clip:content-box;border:2px solid #0000;border-radius:999px}.calendar-column>*{direction:ltr}.calendar-stack{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);isolation:isolate;border-radius:26px;gap:0;display:grid;overflow:hidden}.calendar-stack .calendar-panel,.calendar-stack .board-calendar-panel{box-shadow:none;background:0 0;border:0;margin:0;border-radius:0!important}.calendar-stack .board-calendar-panel{border-top:1px solid var(--line)}.panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.panel h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.35rem,3vw,1.9rem)}.month-controls{gap:8px;display:flex}.month-controls button{border:1px solid var(--line);background:var(--surface-soft);min-height:38px;color:var(--accent-text);border-radius:999px;padding:0 12px;font-size:.85rem;font-weight:800}.month-controls button:hover{border-color:var(--blue-dark)}.date-inputs{grid-template-columns:1fr;gap:12px;margin-bottom:18px;display:grid}label{color:var(--muted);gap:7px;font-size:.88rem;font-weight:700;display:grid}input,select{border:1px solid var(--line);background:var(--surface-soft);width:100%;min-height:46px;color:var(--text);border-radius:14px;outline:none;padding:0 13px}input[type=date]::-webkit-calendar-picker-indicator{-webkit-appearance:none;display:none}input:focus,select:focus{border-color:var(--blue-dark);box-shadow:0 0 0 4px var(--focus-ring)}.calendar-legend{min-height:22px;color:var(--muted);flex-wrap:wrap;gap:14px;margin-bottom:10px;font-size:.86rem;font-weight:700;display:flex}.calendar-legend span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-dot.available{background:var(--green)}.legend-dot.booked{background:var(--red)}.legend-dot.reserved{background:var(--reserved-color)}.legend-dot.out{background:var(--red)}.legend-dot.returned{background:var(--green)}.weekday-grid,.day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.weekday-grid{color:var(--muted);text-align:center;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:800}.day-button{aspect-ratio:1;border:1px solid var(--line);background:var(--surface-soft);color:var(--text);border-radius:18px;font-weight:800;transition:transform .12s,border-color .12s,background .12s;position:relative}.day-button:hover{border-color:var(--blue-dark);transform:translateY(-1px)}.day-button.muted{color:var(--muted-day);opacity:.7}.day-button.past{cursor:not-allowed;background:var(--past-bg);color:var(--past-text);opacity:.7}.day-button.past:hover{border-color:var(--line);transform:none}.day-button.selected{border-color:var(--blue-dark);background:var(--blue-dark);color:var(--on-primary)}.day-button.board-day{border-color:#0000}.day-button.board-available{background:var(--green-soft);color:var(--status-available-text)}.day-button.board-booked{background:var(--red-soft);color:var(--status-booked-text)}.day-button.board-day.selected{outline:3px solid var(--blue-dark);outline-offset:2px}.side-panel{align-content:start;gap:16px;min-width:0;display:grid}.side-panel .eyebrow,.side-panel h2{margin-bottom:0}.helper-text{color:var(--muted);margin:0;line-height:1.5}.board-picker{padding-top:4px}.specific-picker-list{gap:14px;display:grid}.specific-picker{border:1px solid var(--line);background:var(--surface-raised);border-radius:20px;gap:12px;padding:14px;display:grid}.mode-switch{border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid}.mode-switch button{min-height:42px;color:var(--muted);background:0 0;border-radius:999px;font-weight:800}.mode-switch button.active{background:var(--blue-dark);color:var(--on-primary);box-shadow:0 10px 25px var(--primary-shadow)}.filters{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.available-filter{color:var(--muted);grid-column:1/-1;align-items:center;gap:9px;font-size:.88rem;font-weight:700;display:flex}.available-filter input{width:auto;min-height:auto;accent-color:var(--blue-dark);padding:0}.available-filter input:focus{box-shadow:none;border-color:#0000;outline:none}.status-card{border-radius:20px;gap:6px;padding:18px;font-size:1rem;display:grid}.status-card strong{font-size:1.1rem}.status-card.available{background:var(--green-soft);color:var(--status-available-text);border:1px solid #2a9d8f59}.status-card.booked{background:var(--red-soft);color:var(--status-booked-text);border:1px solid #e76f5159}.secondary-action,.primary-action{border-radius:16px;min-height:48px;font-weight:800}.secondary-action{border:1px solid var(--line);background:var(--surface-soft);color:var(--accent-text)}.secondary-action:hover{border-color:var(--blue-dark)}.secondary-action:disabled,.primary-action:disabled{cursor:not-allowed;opacity:.45}.primary-action{background:var(--blue-dark);color:var(--on-primary)}.selection-footer .primary-action{width:100%}.modal-actions .primary-action,.modal-actions .secondary-action{width:auto;padding:0 16px}.primary-action:hover{background:var(--blue-dark)}.card-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.board-card{border:1px solid var(--line);background:var(--surface-soft);min-height:118px;color:inherit;text-align:left;border-radius:18px;align-content:space-between;gap:12px;padding:16px;display:grid}.board-card:hover{border-color:var(--blue-dark);transform:translateY(-1px)}.board-card.selected{border-color:var(--blue-dark);background:var(--selected-soft);box-shadow:0 0 0 3px var(--selected-ring)}.board-card.unavailable{opacity:.72;filter:grayscale(.2)}.board-card.viewing{border-color:var(--accent);background:var(--selected-soft)}.tag-row .unavailable-tag{background:var(--red-soft);color:var(--status-booked-text)}.tag-row .viewing-tag{background:var(--accent);color:var(--on-accent)}.board-card p{color:var(--muted);margin:0 0 3px;font-size:.82rem;font-weight:800}.board-card h3{letter-spacing:-.03em;margin:0;line-height:1.1}.tag-row{flex-wrap:wrap;justify-content:flex-start;gap:7px;display:flex}.tag-row span{background:var(--selected-soft);color:var(--accent-text);border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:800}.tag-row .checkmark{background:var(--blue-dark);color:var(--on-primary)}.selection-footer{border-top:1px solid var(--line);gap:12px;padding-top:16px;display:grid}.selection-footer>div:first-child{color:var(--muted);justify-content:space-between;gap:12px;display:flex}.selection-footer strong{color:var(--strong)}.selected-list{flex-wrap:wrap;gap:8px;display:flex}.selected-list span{background:var(--selected-soft);color:var(--accent-text);border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:800}.empty-state{background:var(--surface-soft);color:var(--muted);text-align:center;border-radius:18px;margin:0;padding:18px}.placeholder-panel{gap:8px;display:grid}.placeholder-panel h2{margin:0}.dashboard-panel{gap:18px;display:grid}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.stat-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:20px;gap:10px;padding:18px;display:grid}.stat-card span,.dashboard-list-heading span,.board-rental-row span{color:var(--muted);font-size:.86rem;font-weight:800}.stat-card strong{color:var(--accent-text);font-size:clamp(2rem,5vw,3.4rem);line-height:1}.dashboard-list{gap:12px;display:grid}.dashboard-list-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.dashboard-list-heading h3{margin:0;font-size:1.2rem}.board-rental-list{gap:8px;display:grid}.board-rental-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.board-rental-row div{gap:3px;display:grid}.board-rental-row strong{color:var(--strong)}.board-editor-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px;display:grid}.board-editor-form label{color:var(--muted);gap:6px;font-size:.86rem;font-weight:800;display:grid}.board-editor-inline{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.board-editor-inline .board-manage-actions{grid-column:1/-1}.board-manage-row{align-items:center}.board-manage-row.inactive-board{opacity:.72}.board-manage-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.board-manage-actions .primary-action,.board-manage-actions .secondary-action,.board-manage-actions .danger-action,.board-editor-form .primary-action{width:auto;min-height:40px;padding:0 14px}.dashboard-menu{flex-wrap:wrap;gap:8px;display:flex}.dashboard-menu button,.segment-slider button{border:1px solid var(--line);background:var(--surface-soft);min-height:40px;color:var(--muted);border-radius:999px;padding:0 14px;font-weight:800}.dashboard-menu button.active,.segment-slider button.active{background:var(--blue-dark);color:var(--on-primary);border-color:#0000}.reservations-page{gap:14px;display:grid}.segment-slider{border:1px solid var(--line);background:var(--surface);border-radius:999px;flex-wrap:wrap;gap:8px;width:fit-content;max-width:100%;padding:6px;display:inline-flex}.customers-panel{gap:16px;display:grid}.customers-heading{align-items:end}.customers-layout{grid-template-columns:minmax(260px,.85fr) minmax(320px,1.15fr);align-items:start;gap:16px;display:grid}.customer-list-panel,.customer-detail-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:20px;gap:12px;padding:16px;display:grid}.customer-search{color:var(--muted);gap:6px;font-size:.86rem;font-weight:800;display:grid}.customer-count{color:var(--muted);margin:0;font-size:.86rem;font-weight:700}.customer-list{gap:8px;display:grid}.customer-list-item{border:1px solid var(--line);background:var(--surface);width:100%;color:inherit;text-align:left;cursor:pointer;border-radius:14px;gap:2px;padding:12px 14px;display:grid}.customer-list-item.selected,.customer-list-item:hover{border-color:var(--accent)}.customer-list-item strong{color:var(--strong)}.customer-list-item span{color:var(--muted);font-size:.86rem}.customer-detail-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.customer-detail-header h3{margin:0}.customer-detail-header p{color:var(--muted);margin:4px 0 0}.customer-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-stats>div{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:4px;padding:12px;display:grid}.customer-stats span{color:var(--muted);font-size:.8rem;font-weight:800}.customer-stats strong{color:var(--strong);font-size:1rem}.customer-credit-row{margin:0}.customer-rentals h4{justify-content:space-between;gap:8px;margin:0 0 8px;display:flex}.customer-rentals h4 span{color:var(--muted);font-weight:700}.customer-add-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;display:grid}.customer-add-form label{color:var(--muted);gap:6px;font-size:.86rem;font-weight:800;display:grid}.customer-add-form .primary-action,.customer-add-form .board-manage-actions{justify-self:start}.dashboard-board-filters label{color:var(--muted);gap:6px;font-size:.86rem;font-weight:800;display:grid}.records-panel{gap:16px;display:grid}.records-filters{grid-template-columns:minmax(220px,.8fr) minmax(300px,1fr);align-items:end;gap:12px;display:grid}.existing-customer-lookup{gap:8px;display:grid}.customer-entry-choice{border:1px solid var(--line);background:var(--surface-soft);border-radius:18px;gap:12px;padding:16px;display:grid}.customer-entry-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.customer-entry-actions button{min-height:48px}.customer-entry-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.customer-entry-header .eyebrow{margin:0}.text-button{color:var(--blue-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:.9rem;font-weight:800}.search-again-action{width:fit-content;margin-bottom:8px}.existing-customer-results{gap:6px;display:grid}.existing-customer-option{border:1px solid var(--line);background:var(--surface-soft);color:inherit;text-align:left;border-radius:14px;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.existing-customer-option:hover{border-color:var(--accent)}.existing-customer-option strong{color:var(--strong)}.existing-customer-option span{color:var(--muted);font-size:.86rem;font-weight:800}.match-notice{border:1px solid var(--line);background:var(--selected-soft);border-radius:18px;gap:10px;padding:14px;display:grid}.match-notice p{color:var(--strong);margin:0;line-height:1.4}.match-notice-actions{flex-wrap:wrap;gap:8px;display:flex}.match-notice-actions .primary-action,.match-notice-actions .secondary-action{width:auto;min-height:40px;padding:0 14px}.customer-update-notice{border:1px dashed var(--line);background:var(--surface-soft);border-radius:18px;gap:10px;padding:14px;display:grid}.customer-update-notice p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.4}.customer-update-notice .secondary-action{justify-self:start;width:auto;min-height:40px;padding:0 14px}.customer-update-message{margin:0}.customer-summary{gap:12px;display:grid}.customer-summary-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:20px;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:16px;display:grid}.credit-use-row{grid-template-columns:minmax(180px,240px) auto;align-items:end;gap:12px;display:grid}.credit-use-row .secondary-action{width:auto;padding:0 18px}.credit-use-message{grid-column:1/-1}.customer-summary-card.credit-warning{background:#facc1524;border-color:#facc15}.customer-summary-card div{gap:5px;display:grid}.customer-summary-card span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.customer-summary-card strong{color:var(--strong);font-size:1rem}.credit-inline-value{align-items:baseline;gap:0;display:inline-flex}.credit-inline-input{width:5.5ch;min-height:auto;color:inherit;font:inherit;font-weight:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.credit-inline-input:focus{box-shadow:none;border-color:#0000;outline:none}.record-list{gap:10px;display:grid}.booking-record{border:1px solid var(--line);background:var(--surface-soft);color:inherit;text-align:left;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.booking-record:hover{border-color:var(--accent);transform:translateY(-1px)}.booking-record div{gap:4px;display:grid}.booking-record strong{color:var(--strong);font-size:1rem}.booking-record span{color:var(--muted);font-size:.88rem;font-weight:800}.record-meta{justify-items:end}.status-pill{text-transform:uppercase;border-radius:999px;width:fit-content;padding:6px 10px;color:var(--on-primary)!important;font-size:.74rem!important}.status-pill.reserved{background:var(--reserved-color)}.status-pill.out{background:var(--red)}.status-pill.returned{background:var(--green)}.status-legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-bottom:14px;font-size:.86rem;font-weight:800;display:flex}.status-legend span{align-items:center;gap:6px;display:inline-flex}.calendar-table-wrap{border:1px solid var(--line);border-radius:18px;max-height:calc(100vh - 220px);overflow:auto}.calendar-table{border-collapse:separate;border-spacing:0;background:var(--panel);width:max-content;min-width:100%}.calendar-table th,.calendar-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;min-width:92px;height:48px;padding:8px}.calendar-table td{position:relative;overflow:visible}.calendar-table thead th{z-index:3;background:var(--surface-soft);color:var(--muted);font-size:.78rem;font-weight:900;position:sticky;top:0}.calendar-table thead th.today-column{background:var(--selected-soft);color:var(--accent-text);box-shadow:inset 0 -3px 0 var(--blue-dark)}.calendar-table .board-column{z-index:2;background:var(--surface-soft);text-align:left;min-width:230px;max-width:230px;position:sticky;left:0}.calendar-table thead .board-column{z-index:4}.calendar-table tbody .board-column{gap:3px;display:grid}.calendar-table tbody .board-column strong{color:var(--strong);font-size:.88rem;line-height:1.15}.calendar-table tbody .board-column span{color:var(--muted);font-size:.78rem}.booking-cell{color:var(--on-primary);font-size:.8rem;font-weight:900}.booking-cell:after{z-index:10;background:var(--tooltip-bg);content:attr(data-renter);opacity:0;white-space:nowrap;color:var(--on-primary);pointer-events:none;border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:900;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}.booking-cell:hover:after{opacity:1;transform:translate(-50%)translateY(0)}.booking-cell.reserved{background:var(--reserved-color)}.booking-cell.out{background:var(--red)}.booking-cell.returned{background:var(--green)}.modal-backdrop{z-index:50;background:var(--modal-backdrop);place-items:center;padding:18px;display:grid;position:fixed;inset:0}.booking-modal{background:var(--panel);width:min(680px,100%);max-height:min(760px,100vh - 36px);box-shadow:0 30px 90px var(--modal-shadow);border-radius:26px;gap:18px;padding:22px;display:grid;overflow:auto}.modal-heading,.modal-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.split-actions{justify-content:flex-end}.danger-action{background:var(--red-soft);min-height:48px;color:var(--status-booked-text);border-radius:16px;padding:0 16px;font-weight:900}.modal-heading h2{letter-spacing:-.04em;margin:0}.modal-close{background:var(--surface-soft);color:var(--accent-text);border-radius:999px;padding:9px 12px;font-weight:800}.booking-summary{grid-template-columns:1fr auto;gap:10px;display:grid}.booking-summary div,.booking-summary .status-summary{border:1px solid var(--line);background:var(--surface-soft);border-radius:18px;gap:4px;padding:14px;display:grid}.history-summary{grid-template-columns:1fr 1fr}.history-summary .status-pill{width:fit-content}.booking-summary .status-summary select{min-height:36px;color:var(--strong);background:0 0;border:0;border-radius:0;padding:0;font-size:1rem;font-weight:800}.booking-summary span,.modal-board-list span{color:var(--muted);font-size:.82rem;font-weight:800}.booking-summary strong{color:var(--strong)}.modal-board-list{flex-wrap:wrap;gap:8px;display:flex}.modal-board-list span{background:var(--selected-soft);color:var(--accent-text);border-radius:999px;padding:8px 10px}.customer-form{grid-template-columns:1fr 1fr;gap:12px;display:grid}.toast-notification{z-index:80;border:1px solid var(--line);background:var(--panel);color:var(--strong);box-shadow:var(--shadow);border-radius:999px;padding:12px 18px;font-weight:800;position:fixed;top:18px;left:50%;transform:translate(-50%)}.date-picker-trigger{border:1px solid var(--line);background:var(--surface-soft);width:100%;min-height:46px;color:var(--text);text-align:left;border-radius:14px;padding:0 13px;font-weight:800}.date-picker-trigger:hover{border-color:var(--blue-dark)}.edit-calendar-panel{border:1px solid var(--line);background:var(--surface-raised);border-radius:20px;gap:10px;padding:16px;display:grid}.edit-calendar-panel .panel-heading{margin-bottom:0}.edit-calendar-panel h3{margin:0;font-size:1.2rem}.warning-text{color:var(--status-booked-text);font-weight:800}.contract-check{grid-column:1/-1;align-items:center;gap:9px;display:flex}.contract-check input{width:auto;min-height:auto;accent-color:var(--blue-dark);padding:0}.contract-status-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:16px;grid-column:1/-1;gap:10px;padding:14px;display:grid}.contract-status-panel p{margin:0;font-size:.92rem}.contract-status-panel strong[data-status=valid]{color:var(--status-available-text)}.contract-status-panel strong[data-status=pending]{color:var(--blue-dark)}.contract-status-panel strong[data-status=missing]{color:var(--status-booked-text)}.contract-status-actions{flex-wrap:wrap;gap:8px;display:flex}.contract-status-actions button{min-height:42px}.contract-sign-shell{background:radial-gradient(circle at top, #1b98e029, transparent 42%), linear-gradient(180deg, #dceef5 0%, var(--app-bg) 48%, #e7f3f7 100%);min-height:100dvh;color:var(--text);justify-content:center;padding:0;display:flex}.contract-sign-card{background:var(--panel);width:100%;max-width:440px;min-height:100dvh;margin:0 auto;padding:28px 20px 40px;box-shadow:0 0 0 1px #033f630f}.contract-sign-eyebrow{color:var(--accent-text);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:800}.contract-sign-card h1{letter-spacing:-.04em;margin:0 0 10px;font-size:1.85rem;line-height:1.1}.contract-sign-copy{color:var(--muted);margin:0 0 22px;font-size:1rem;line-height:1.45}.contract-sign-form{gap:14px;display:grid}.contract-sign-form label{gap:8px;font-size:.92rem;font-weight:700;display:grid}.contract-sign-form input[type=text],.contract-sign-form input[type=tel],.contract-sign-form input:not([type=checkbox]){border:1px solid var(--line);background:var(--surface-raised);width:100%;min-height:52px;color:var(--text);font:inherit;border-radius:14px;padding:14px 16px;font-size:1.05rem}.contract-sign-terms{gap:10px;margin-top:4px;display:grid}.contract-sign-terms h2{margin:0;font-size:1rem}.contract-sign-terms-body{border:1px solid var(--line);background:var(--surface-soft);max-height:42vh;color:var(--text);white-space:pre-wrap;-webkit-overflow-scrolling:touch;border-radius:16px;padding:14px;font-size:.92rem;font-weight:500;line-height:1.5;overflow:auto}.contract-sign-agree{border:1px solid var(--line);background:var(--selected-soft);border-radius:16px;grid-template-columns:28px 1fr;align-items:start;gap:12px;padding:14px;line-height:1.35;font-size:1rem!important;display:grid!important}.contract-sign-agree input{height:22px;accent-color:var(--blue-dark);margin-top:2px;width:22px!important;min-height:22px!important}.contract-sign-error{color:var(--status-booked-text);margin:0;font-size:.92rem;font-weight:700}.contract-sign-submit{background:var(--blue-dark);width:100%;min-height:56px;color:var(--on-primary);font:inherit;box-shadow:0 12px 28px var(--primary-shadow);border:0;border-radius:16px;font-size:1.05rem;font-weight:800}.contract-sign-success h1{color:var(--status-available-text)}@media (width>=480px){.contract-sign-shell{align-items:center;padding:24px 16px}.contract-sign-card{min-height:auto;box-shadow:var(--shadow);border-radius:28px}}@media (width<=1100px){.card-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.workspace{grid-template-columns:1fr}.calendar-column{background:0 0;max-height:calc(100vh - 20px);position:sticky;top:10px}.card-list{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid{grid-template-columns:1fr}.customer-summary-card{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.app-shell{width:min(100% - 20px,1280px);padding:10px 0 28px}.panel{border-radius:22px;padding:18px}.app-header{padding:16px;display:grid}.app-nav{grid-template-columns:1fr;display:grid}.panel-heading,.date-inputs,.filters,.records-filters,.customer-summary-card,.credit-use-row,.booking-summary,.customer-form,.card-list{grid-template-columns:1fr}.modal-actions{grid-template-columns:1fr;display:grid}.booking-record,.record-meta,.board-rental-row{grid-template-columns:1fr;justify-items:start}.board-rental-row,.dashboard-list-heading{flex-direction:column;align-items:start}.board-editor-form,.board-editor-inline,.dashboard-board-filters,.customers-layout,.customer-add-form,.customer-stats{grid-template-columns:1fr}.customer-detail-header{flex-direction:column}.board-manage-actions{justify-content:flex-start}.panel-heading{display:grid}.month-controls{grid-template-columns:1fr 1fr;display:grid}.weekday-grid,.day-grid{gap:5px}.day-button{border-radius:12px;font-size:.86rem}.board-card{min-height:auto}.calendar-table-wrap{max-height:none}}
