:root{--bg: #f5f7f6;--surface: #ffffff;--surface-strong: #f9fbfa;--text: #1f2933;--muted: #63717d;--border: #dfe5e8;--border-soft: #edf0f2;--primary: #0f766e;--primary-strong: #0b5f59;--accent: #b94b35;--success: #167447;--success-bg: #e9f7ef;--warning: #a16207;--warning-bg: #fff6db;--danger: #b42318;--danger-bg: #fff3f0;--site-gradient: linear-gradient(135deg, #eef7f4 0%, #f5f7f6 42%, #fff1e8 100%);--hero-overlay: linear-gradient(90deg, rgb(12 14 16 / .72), rgb(12 14 16 / .36) 54%, rgb(12 14 16 / .12));--shadow: 0 18px 50px rgb(31 41 51 / .1);color:var(--text);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}:root[data-theme=dark]{--bg: #141414;--surface: #202020;--surface-strong: #282828;--text: #f4f4f2;--muted: #b8b8b0;--border: #3a3a38;--border-soft: #30302e;--primary: #31b7a8;--primary-strong: #52d3c4;--accent: #df735b;--success: #7dd99f;--success-bg: #173624;--warning: #f0bf4e;--warning-bg: #3a2d12;--danger: #ff8c7c;--danger-bg: #3a1e1a;--site-gradient: linear-gradient(135deg, #141414 0%, #102523 44%, #2a1c18 100%);--hero-overlay: linear-gradient(90deg, rgb(0 0 0 / .78), rgb(0 0 0 / .48) 54%, rgb(0 0 0 / .16));--shadow: 0 18px 50px rgb(0 0 0 / .35)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--site-gradient);background-attachment:fixed;color:var(--text);margin:0;min-height:100vh;min-width:320px}a{color:inherit}h1,h2{letter-spacing:0;margin:0}h1{font-size:clamp(30px,4vw,52px);line-height:1.05}h2{font-size:clamp(20px,2vw,28px);line-height:1.2}p{color:var(--muted);line-height:1.6}button,.button-link{align-items:center;background:var(--primary);border:1px solid var(--primary);border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-weight:750;gap:8px;justify-content:center;min-height:42px;padding:0 16px;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}button:hover,.button-link:hover{background:var(--primary-strong);border-color:var(--primary-strong)}button:disabled{cursor:not-allowed;opacity:.68}button.secondary,.button-link.secondary{background:var(--surface);color:var(--primary)}button.secondary:hover,.button-link.secondary:hover{background:var(--surface-strong);color:var(--primary-strong)}.button-link.compact{min-height:36px;padding:0 12px}.button-link.profile-icon-button{min-width:44px;padding:0}.ghost-button,.icon-toggle{background:transparent;border-color:var(--border);color:var(--text);min-height:36px;padding:0 10px}.icon-toggle{min-width:38px}.ghost-button:hover,.icon-toggle:hover{background:var(--surface-strong);border-color:var(--border);color:var(--primary)}.ghost-button.danger{color:var(--danger)}.button-link.login-button,.mobile-dropdown a.login-button,.mobile-dropdown a.login-button.active{background:var(--primary);border-color:var(--primary);color:#fff}.button-link.login-button:hover,.mobile-dropdown a.login-button:hover,.mobile-dropdown a.login-button.active:hover{background:var(--primary-strong);border-color:var(--primary-strong);color:#fff}.ghost-button.logout-button,.mobile-dropdown>.logout-button{border-color:color-mix(in srgb,var(--danger) 42%,transparent);color:var(--danger)}.ghost-button.logout-button:hover,.mobile-dropdown>.logout-button:hover{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.site-shell{min-height:100vh}.site-header{align-items:center;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border);display:grid;gap:18px;grid-template-columns:auto minmax(0,1fr) auto;min-height:72px;padding:12px clamp(18px,4vw,44px);position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-booking-shortcut,.mobile-menu-wrap{display:none}.brand{align-items:center;display:inline-flex;font-size:20px;font-weight:850;gap:10px;text-decoration:none;white-space:nowrap}.brand-logo{display:block;height:42px;max-width:min(240px,32vw);object-fit:contain}.top-nav{align-items:center;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.top-nav a{align-items:center;border-radius:8px;color:var(--muted);display:inline-flex;font-size:14px;font-weight:720;gap:7px;min-height:36px;padding:0 10px;text-decoration:none}.top-nav a.active,.top-nav a:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.top-nav .equipment-nav{display:inline-flex}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.header-toggles{align-items:center;display:inline-flex;gap:8px;margin-left:auto}.main-content{min-height:calc(100vh - 72px)}.main-content>section{margin:0 auto;max-width:1180px;padding:32px 24px}.site-footer{align-items:start;background:var(--surface);border-top:1px solid var(--border);display:grid;gap:22px;grid-template-columns:1.5fr 1fr auto;padding:28px clamp(18px,4vw,44px)}.site-footer p{margin:8px 0 0;max-width:620px}.footer-contacts,.footer-links{display:grid;gap:10px}.footer-contacts{color:var(--muted);font-style:normal}.footer-contacts span,.footer-links a,.contact-list a,.contact-list span{align-items:center;display:inline-flex;gap:8px}.footer-links a,.contact-list a{color:var(--primary);font-weight:750;text-decoration:none}.page-heading{margin-bottom:24px}.page-heading p{margin-bottom:0;max-width:720px}.page-heading.with-action{align-items:center;display:flex;gap:16px;justify-content:space-between}.home-page{overflow:hidden}.hero-section{align-items:end;background-image:var(--hero-overlay),var(--hero-image);background-position:center;background-size:cover;color:#fff;display:grid;min-height:clamp(520px,72vh,720px);padding:clamp(28px,5vw,70px);position:relative}.hero-copy{max-width:760px;position:relative;z-index:1}.hero-copy p{color:#ffffffe0;font-size:18px;max-width:640px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.eyebrow{color:var(--accent);display:inline-flex;font-size:13px;font-weight:850;letter-spacing:0;margin-bottom:10px;text-transform:uppercase}.hero-section .eyebrow{color:#ffd27a}.home-section{padding:56px 24px}.section-inner{margin:0 auto;max-width:1180px}.about-band,.contacts-band{background:var(--surface);border-bottom:1px solid var(--border);border-top:1px solid var(--border)}.split-layout,.contact-layout{align-items:start;display:grid;gap:32px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.studio-facts{display:grid;gap:10px}.studio-facts span{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;color:var(--text);font-weight:800;padding:14px 16px}.reviews-band{background:var(--surface-strong)}.rooms-band{background:color-mix(in srgb,var(--surface) 80%,transparent)}.room-showcase-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.room-showcase-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.room-showcase-card img{aspect-ratio:1920 / 680;display:block;object-fit:cover;width:100%}.room-showcase-card div{display:grid;gap:8px;padding:18px}.room-showcase-card h3,.room-showcase-card p{margin:0}.reminder-band{background:var(--surface-strong);border-bottom:1px solid var(--border)}.reminder-grid{display:grid;gap:12px}.reminder-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;gap:14px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:14px}.reminder-card div{display:grid;gap:4px}.reminder-card div span{color:var(--muted);font-size:14px}.review-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.review-card,.resource-card,.stat-panel,.panel,.admin-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:18px}.review-card{display:grid;gap:12px}.review-card p{margin:0}.stars{color:#e0a106;display:flex;gap:4px}.contact-list{display:grid;gap:12px}.social-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.auth-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);margin:6vh auto;max-width:460px;padding:28px}.form-grid,.inline-form{display:grid;gap:14px}.inline-form{align-items:end;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:16px}label{color:var(--text);display:grid;font-size:14px;font-weight:760;gap:6px}input,select,textarea{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font:inherit;min-height:42px;width:100%}input,select{padding:0 12px}textarea{min-height:88px;padding:10px 12px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:2px}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger)}.form-error,.form-success,.success-message{border-radius:8px;margin:0;padding:10px 12px}.form-error{background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger)}.form-success,.success-message{background:var(--success-bg);border:1px solid color-mix(in srgb,var(--success) 35%,transparent);color:var(--success)}.muted,.hint{color:var(--muted);font-size:14px}.field-message{font-size:13px;font-weight:650;margin:0}.verification-code-row{align-items:end;display:grid;gap:8px 12px;grid-template-columns:minmax(0,1fr) auto}.verification-code-row .field-message{grid-column:1 / -1}.field-message.success{color:var(--success)}.field-message.warning{color:var(--warning)}.field-message.error{color:var(--danger)}.resource-grid,.stat-grid,.chart-grid{display:grid;gap:16px}.resource-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:22px}.profile-settings{display:grid;gap:16px;margin-top:24px}.profile-settings-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.profile-settings h3,.account-exit-panel h3{align-items:center;display:inline-flex;gap:8px;margin:0}.account-exit-panel{align-content:start;display:grid;gap:12px}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:22px}.resource-card{display:grid;gap:10px}.equipment-section{display:grid;gap:16px;margin-top:22px}.equipment-section-header{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(240px,.75fr) minmax(0,1fr);overflow:hidden}.equipment-section-header img{aspect-ratio:1920 / 680;display:block;height:100%;object-fit:cover;width:100%}.equipment-section-header div{align-content:center;display:grid;gap:8px;padding:18px}.equipment-section-header h2,.equipment-section-header p,.equipment-card h3{margin:0}.equipment-card{align-content:start}.equipment-card>img{aspect-ratio:4 / 3;background:var(--surface-strong);border-radius:8px;display:block;object-fit:cover;width:100%}.equipment-card h3{font-size:18px}.resource-card p{margin:0}.pill,.status{border-radius:999px;display:inline-flex;font-size:13px;font-weight:760;justify-self:start;padding:4px 9px}.pill{background:var(--surface-strong);color:var(--muted)}.status.paid{background:var(--success-bg);color:var(--success)}.status.pending{background:var(--warning-bg);color:var(--warning)}.status.cancelled,.status.failed{background:var(--danger-bg);color:var(--danger)}.stat-panel{display:grid;gap:6px}.stat-panel span{color:var(--muted);font-size:14px}.stat-panel strong{font-size:26px}.performance-panel{display:grid;gap:16px;margin-bottom:22px}.performance-panel h2,.performance-panel h3{margin:0}.performance-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.performance-grid div{background:var(--surface-strong);border:1px solid var(--border-soft);border-radius:8px;display:grid;gap:6px;padding:12px}.performance-grid span{color:var(--muted);font-size:13px;font-weight:760}.performance-grid strong{font-size:22px}.action-row{display:flex;flex-wrap:wrap;gap:12px}.booking-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}.booking-options-column{display:grid;gap:16px}.booking-schedule-column{display:grid;gap:16px;min-width:0}.selected-time{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:6px;padding:12px}.selected-time span{color:var(--muted);font-size:13px}.booking-client-fields{border-bottom:1px solid var(--border-soft);display:grid;gap:12px;padding-bottom:14px}.booking-client-fields h2{font-size:18px;margin:0}.booking-client-fields input[readonly]{background:var(--surface-strong);color:var(--muted)}.room-brief-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:18px}.room-brief-panel p{margin:0}.room-profile-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:0;grid-template-columns:1fr;overflow:hidden}.room-profile-card img{aspect-ratio:1920 / 520;display:block;height:auto;min-height:0;object-fit:cover;width:100%}.room-profile-toggle{background:var(--surface);border:0;border-radius:0;color:var(--text);display:grid;gap:4px 12px;grid-template-columns:minmax(0,1fr) auto;justify-items:start;min-height:68px;padding:14px 18px;text-align:left;width:100%}.room-profile-toggle:hover{background:var(--surface-strong);border-color:transparent}.room-profile-toggle span{color:var(--muted);font-size:12px;font-weight:780;grid-column:1;text-transform:uppercase}.room-profile-toggle strong{font-size:18px;grid-column:1}.room-profile-toggle svg{align-self:center;color:var(--primary);grid-column:2;grid-row:1 / span 2}.room-profile-content{display:grid;gap:16px;padding:22px}.room-profile-content h2,.room-profile-content h3,.room-profile-content p{margin:0}.room-profile-highlights{display:grid;gap:12px}.room-profile-highlights section{border-left:3px solid var(--primary);display:grid;gap:5px;padding-left:12px}.room-profile-highlights h3{font-size:16px}.included-equipment{display:grid;gap:10px}.included-equipment div{display:flex;flex-wrap:wrap;gap:8px}.included-equipment span{background:var(--surface-strong);border:1px solid var(--border-soft);border-radius:999px;color:var(--muted);font-size:13px;font-weight:760;padding:6px 10px}.check-list{display:grid;gap:10px;margin-top:12px}.check-list label{align-items:center;border:1px solid var(--border-soft);border-radius:8px;display:grid;gap:10px;grid-template-columns:auto 1fr auto;padding:10px}.check-list input[type=checkbox]{min-height:18px;width:18px}.check-list input[type=number]{max-width:90px}.summary-panel{align-items:center;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}.summary-panel strong{font-size:24px}.table-wrap{overflow-x:auto}table{background:var(--surface);border:1px solid var(--border);border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}th,td{border-bottom:1px solid var(--border-soft);padding:12px;text-align:left;vertical-align:top}th{background:var(--surface-strong);color:var(--muted);font-size:13px;text-transform:uppercase}.admin-section{margin-top:22px}.admin-section-header{align-items:start;display:flex;gap:16px;justify-content:space-between}.admin-section-header h2,.admin-section-header p{margin:0}.admin-section-header p{margin-top:6px}.admin-section h2,.panel h2{margin-bottom:14px}.admin-section .admin-section-header h2{margin-bottom:0}.statistics-admin-panel,.bookings-admin-panel,.rooms-admin-panel,.room-admin-grid{display:grid;gap:16px}.room-admin-card{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:18px;padding:16px}.room-admin-card h3,.room-admin-subsection h3,.room-admin-subsection h4{margin:0}.room-admin-subsection{display:grid;gap:12px}.compact-inline-form{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:0}.image-upload-field input{align-content:center;padding:9px 12px}.admin-image-preview{align-items:center;background:var(--surface-strong);border:1px solid var(--border-soft);border-radius:8px;display:flex;gap:12px;margin-top:-4px;max-width:420px;padding:10px}.admin-image-preview img{aspect-ratio:4 / 3;border-radius:8px;object-fit:cover;width:96px}.admin-image-preview span{color:var(--muted);font-size:13px;font-weight:720;overflow-wrap:anywhere}.booking-admin-controls{display:grid;gap:12px;grid-template-columns:minmax(240px,1fr) minmax(180px,240px) minmax(180px,240px)}.admin-booking-list{display:grid;gap:12px}.admin-booking-card{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:14px;padding:14px}.admin-booking-summary{align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto}.admin-booking-summary>div{display:flex;flex-wrap:wrap;gap:8px}.admin-booking-summary h3{font-size:18px;margin:0}.admin-booking-summary>strong{font-size:20px}.admin-booking-details,.booking-line-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.admin-booking-details div,.booking-line-grid>div{background:var(--surface);border:1px solid var(--border-soft);border-radius:8px;display:grid;gap:5px;padding:11px}.admin-booking-details span,.admin-booking-details small{color:var(--muted);font-size:13px}.booking-line-grid h4{margin:0 0 6px}.booking-line-grid p{align-items:center;border-top:1px solid var(--border-soft);color:var(--text);display:flex;gap:10px;justify-content:space-between;margin:0;padding-top:8px}.salary-note{margin:-4px 0 4px}.infographic-panel{align-content:start;display:grid;gap:12px}.infographic-panel h2,.infographic-panel p{margin:0}.infographic-bars{display:grid;gap:13px}.infographic-row{display:grid;gap:7px}.infographic-row>div:first-child{align-items:center;display:flex;gap:10px;justify-content:space-between}.infographic-row span{color:var(--muted);font-size:14px;font-weight:720}.infographic-row strong{font-size:18px}.infographic-track{background:var(--surface-strong);border:1px solid var(--border-soft);border-radius:999px;height:12px;overflow:hidden}.infographic-track span{background:linear-gradient(90deg,var(--primary),var(--accent));display:block;height:100%}.assignment-grid{display:grid;gap:16px}.assignment-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;gap:14px;padding:16px}.assignment-card.past-assignment{filter:grayscale(.35);opacity:.52}.assignment-card-header{align-items:start;display:flex;gap:16px;justify-content:space-between}.assignment-card-header h2{margin-top:8px}.assignment-card-header>strong{font-size:22px;white-space:nowrap}.row-actions{display:flex;flex-wrap:wrap;gap:8px}.schedule-widget{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:18px;padding:18px}.schedule-toolbar{align-items:end;display:flex;gap:16px;justify-content:space-between}.schedule-toolbar h2,.schedule-toolbar p{margin:0}.compact-field{min-width:min(260px,100%)}.calendar-shell{border:1px solid var(--border);border-radius:8px;overflow:hidden}.calendar-header{align-items:center;background:var(--surface-strong);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:10px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.week-row{background:var(--surface-strong);border-bottom:1px solid var(--border)}.week-row span{color:var(--muted);font-size:12px;font-weight:800;padding:8px 6px;text-align:center;text-transform:uppercase}.calendar-day{align-items:stretch;background:transparent;border:0;border-bottom:1px solid var(--border-soft);border-radius:0;border-right:1px solid var(--border-soft);color:var(--text);display:grid;gap:6px;justify-items:start;min-height:72px;padding:10px}.calendar-day:nth-child(7n){border-right:0}.calendar-day span{font-size:16px;font-weight:850}.calendar-day small{border-radius:999px;font-size:12px;font-weight:850;padding:3px 7px}.calendar-day.free{background:color-mix(in srgb,var(--success) 13%,var(--surface))}.calendar-day.free small{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.calendar-day.partial{background:color-mix(in srgb,var(--warning) 18%,var(--surface))}.calendar-day.partial small{background:color-mix(in srgb,var(--warning) 20%,transparent);color:var(--warning)}.calendar-day.full{background:color-mix(in srgb,var(--danger) 16%,var(--surface))}.calendar-day.full small{background:color-mix(in srgb,var(--danger) 18%,transparent);color:var(--danger)}.calendar-day.outside{opacity:.45}.calendar-day.selected{box-shadow:inset 0 0 0 3px var(--primary)}.calendar-day.disabled{cursor:not-allowed;filter:grayscale(.65);opacity:.36}.calendar-legend{display:flex;flex-wrap:wrap;gap:12px}.calendar-legend span{align-items:center;color:var(--muted);display:inline-flex;font-size:13px;font-weight:760;gap:7px}.legend-dot{border-radius:999px;display:inline-flex;height:10px;width:10px}.legend-dot.free{background:var(--success)}.legend-dot.partial{background:var(--warning)}.legend-dot.full{background:var(--danger)}.timeline-panel{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;display:grid;gap:14px;padding:14px}.home-page .timeline-panel{padding:25px}.timeline-title{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.timeline-title span{color:var(--muted)}.timeline-range{padding-bottom:30px;position:relative}.timeline-track{background:var(--surface);border:1px solid var(--border);border-radius:999px;height:30px;overflow:hidden;position:relative}.booked-segment,.selected-segment{border-radius:999px;bottom:4px;pointer-events:none;position:absolute;top:4px}.booked-segment{background:color-mix(in srgb,var(--danger) 72%,#fff);z-index:1}.selected-segment{background:color-mix(in srgb,var(--primary) 76%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 30%,transparent);z-index:2}.timeline-axis{align-items:center;color:var(--muted);display:flex;font-size:13px;justify-content:space-between}.timeline-axis strong{color:var(--text);font-size:14px}.range-editor{border-radius:999px;height:30px;left:0;position:absolute;right:0;top:0;z-index:8}.range-editor:focus-within{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:3px}.range-editor>input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;height:30px;left:0;min-height:30px;padding:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:9}.range-editor>input[type=range]:focus{outline:none}.range-editor>input[type=range]::-webkit-slider-runnable-track{background:transparent;height:30px}.range-editor>input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface);border:4px solid var(--primary);border-radius:999px;box-shadow:0 0 0 3px var(--surface),0 4px 12px #00000038;cursor:grab;height:24px;pointer-events:auto;width:24px}.range-editor>input[type=range]::-moz-range-track{background:transparent}.range-editor>input[type=range]::-moz-range-thumb{background:var(--surface);border:4px solid var(--primary);border-radius:999px;box-shadow:0 0 0 3px var(--surface),0 4px 12px #00000038;cursor:grab;height:18px;pointer-events:auto;width:18px}.timeline-ticks{top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute;z-index:4}.timeline-tick{align-items:center;color:var(--muted);display:grid;gap:4px;justify-items:center;position:absolute;top:0;transform:translate(-50%)}.timeline-tick i{background:color-mix(in srgb,var(--text) 30%,transparent);display:block;height:30px;width:1px}.timeline-tick.edge i{background:transparent}.timeline-tick small{font-size:11px;font-weight:760}.timeline-warning{background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--warning) 36%,transparent);border-radius:8px;color:var(--warning);margin:-4px 0 0;padding:9px 11px}.time-inputs{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.time-step-hint{color:var(--muted);font-size:12px;font-weight:700;margin:-4px 0 0}.booking-chips{display:flex;flex-wrap:wrap;gap:8px}.booking-chips span{background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger) 26%,transparent);border-radius:999px;color:var(--danger);font-size:13px;font-weight:760;padding:5px 9px}.payment-shell{max-width:1060px}.payment-layout{display:grid;gap:18px;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr)}.order-list{display:grid;gap:12px;margin:0}.order-list div{border-bottom:1px solid var(--border-soft);display:grid;gap:4px;padding-bottom:10px}.order-list dt{color:var(--muted);font-size:13px;font-weight:760}.order-list dd{margin:0}.payment-total{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-top:18px}.payment-total strong{font-size:28px}.payment-method-panel{display:grid;gap:14px}.method-grid{display:grid;gap:10px}.method-card{align-items:center;border:1px solid var(--border);border-radius:8px;cursor:pointer;display:grid;gap:12px;grid-template-columns:auto auto 1fr;padding:12px}.method-card input{min-height:18px;width:18px}.method-card.selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.payment-result{align-items:center;display:flex;gap:8px}.empty-payment{align-items:center;display:grid;justify-items:center;margin:8vh auto;max-width:520px;text-align:center}@media(max-width:1040px){.site-header{grid-template-columns:1fr}.top-nav{justify-content:flex-start}.header-actions{justify-content:flex-end}.site-footer,.split-layout,.contact-layout,.booking-layout,.payment-layout,.equipment-section-header,.room-showcase-grid,.room-profile-card{grid-template-columns:1fr}.room-profile-card img{max-height:420px}.review-grid{grid-template-columns:1fr}}@media(max-width:680px){.site-header{padding:12px 16px}.main-content>section,.home-section{padding-left:16px;padding-right:16px}.hero-section{min-height:620px;padding:24px 16px}.page-heading.with-action,.schedule-toolbar,.admin-section-header,.assignment-card-header,.summary-panel,.payment-total{align-items:flex-start;flex-direction:column}.booking-admin-controls,.admin-booking-summary{grid-template-columns:1fr}.calendar-day{min-height:58px;padding:7px}.calendar-day small{font-size:11px;padding:2px 5px}.time-inputs,.verification-code-row{grid-template-columns:1fr}.reminder-card{align-items:start;grid-template-columns:auto minmax(0,1fr)}.reminder-card>.status,.reminder-card>strong:last-child{grid-column:2}.check-list label{grid-template-columns:auto minmax(0,1fr)}.check-list label strong,.check-list label small,.check-list input[type=number]{grid-column:2}}@media(min-width:620px)and (max-width:1250px){.site-header{align-items:center;gap:10px 18px;grid-template-areas:"brand actions" "nav nav";grid-template-columns:auto minmax(0,1fr);min-height:112px}.brand{grid-area:brand}.brand-logo{max-width:min(220px,30vw)}.header-actions{flex-wrap:nowrap;grid-area:actions;justify-content:flex-end;justify-self:end;margin-left:auto}.top-nav{border-top:1px solid var(--border-soft);grid-area:nav;justify-content:center;padding-top:8px;width:100%}.top-nav .equipment-nav{display:inline-flex}}@media(max-width:619.98px){.site-header{gap:8px;grid-template-areas:"menu brand booking";grid-template-columns:44px minmax(0,1fr) 44px;min-height:64px;padding:10px 14px}.brand{grid-area:brand;justify-self:center;min-width:0}.brand-logo{height:36px;max-width:min(190px,52vw)}.header-actions,.top-nav{display:none}.mobile-menu-wrap{align-items:center;display:flex;grid-area:menu;justify-self:start}.mobile-menu-trigger,.mobile-booking-shortcut{min-height:40px;min-width:40px;padding:0}.mobile-booking-shortcut{display:inline-flex;grid-area:booking;justify-self:end}.mobile-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:8px;left:14px;padding:12px;position:absolute;right:14px;top:calc(100% + 8px);z-index:40}.mobile-dropdown a,.mobile-dropdown>button{align-items:center;background:transparent;border:1px solid var(--border-soft);border-radius:8px;color:var(--text);display:inline-flex;font:inherit;font-weight:740;gap:9px;justify-content:flex-start;min-height:40px;padding:0 11px;text-decoration:none}.mobile-dropdown a.active,.mobile-dropdown a:hover,.mobile-dropdown>button:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.mobile-dropdown-top{align-items:center;display:flex;gap:10px;justify-content:space-between}.mobile-dropdown-primary{display:flex;flex-wrap:wrap;gap:8px}.mobile-dropdown-primary a{min-width:96px}.mobile-admin-links{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-admin-links a{justify-content:center;text-align:center}.mobile-dropdown-toggles{display:flex;gap:8px;justify-content:flex-end;margin-left:auto}.mobile-dropdown-toggles .icon-toggle{min-height:40px;min-width:46px}}
