:root{--cream:#f4f1eb;--dark:#292c25;--ink:#24251f;--line:#d8d5cd;--muted:#777871;--paper:#fbfaf7;--sage:#9aa67d;--serif:Georgia, "Times New Roman", serif;--theme-page:var(--cream);--theme-surface:var(--paper);--theme-text:var(--ink);--theme-text-muted:#777970;--theme-text-subtle:#9b9d94;--theme-border:var(--line);--theme-border-strong:#c4c1b8;--theme-brand:var(--sage);--theme-on-brand:#fff;--theme-brand-text:#6d7958;--theme-action:var(--dark);--theme-on-action:#f4f1eb;--theme-danger:#ae7266;--theme-danger-surface:#f1e5df;--theme-danger-text:#75483f;--theme-success-surface:#e7eadf;--theme-success-text:#586044;--theme-font-display:var(--serif);--theme-font-body:Arial, Helvetica, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--theme-page);color:var(--theme-text);font-family:var(--theme-font-body);margin:0;font-size:14px}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.55}.logo{letter-spacing:.18em;align-items:baseline;gap:9px;font-size:19px;display:flex}.logo strong{font-weight:700}.logo span{color:var(--theme-text-muted);letter-spacing:.24em;font-weight:300}.site-header{justify-content:space-between;align-items:center;max-width:1100px;height:94px;margin:auto;padding:0 32px;display:flex}.header-cta,.text-button,.link-button{letter-spacing:.2em;font-size:10px;font-weight:600}.outline-button,.danger-button{border:1px solid var(--theme-border-strong);letter-spacing:.16em;border-radius:30px;padding:13px 19px;font-size:10px;display:inline-block}.danger-button{color:#8c5148;border-color:#caa9a2}.dark-button{background:var(--theme-action);color:var(--theme-on-action);letter-spacing:.16em;border:0;border-radius:30px;padding:16px 22px;font-size:10px;font-weight:600;display:inline-block}.arrow{margin-left:8px;font-size:17px;line-height:0}.eyebrow,.section-index{color:var(--theme-text-muted);letter-spacing:.2em;margin:0 0 25px;font-size:10px}.hero{grid-template-columns:46% 54%;align-items:center;max-width:1100px;min-height:585px;margin:auto;padding:75px 32px 72px;display:grid}.hero h1,.auth-intro h1,.booking-intro h1{font:normal 62px/1.02 var(--theme-font-display);letter-spacing:-.045em;max-width:510px;margin:0}.hero h1 em,.statement h2 em,.auth-intro h1 em,.booking-intro h1 em,.mini-title em{color:var(--theme-brand-text);font-style:italic}.hero-description,.auth-intro>p:not(.eyebrow){color:#64665e;max-width:420px;margin:30px 0;font-size:15px;line-height:1.7}.hero-actions,.heading-actions{align-items:center;gap:16px;display:flex}.hero-art{background:#dedbd0;height:400px;position:relative;overflow:hidden}.hero-art:before{content:"";background:radial-gradient(circle at 35% 32%,#fffdf8,#dbd7ca 48%,#bbb8aa);border-radius:50%;width:580px;height:580px;position:absolute;top:-90px;right:-210px}.art-card{position:absolute}.art-card.back{background:#d3d0c5;width:260px;height:300px;top:47px;right:57px;transform:rotate(8deg)}.art-card.front{background:#faf9f5;width:260px;height:300px;padding:25px;top:39px;right:82px;transform:rotate(-3deg);box-shadow:0 20px 35px #68655b25}.mini-top,.mini-line{color:#74766f;letter-spacing:.16em;justify-content:space-between;font-size:7px;display:flex}.mini-title{font:26px/1.05 var(--serif);margin:37px 0 22px}.mini-grid{font:12px var(--serif);text-align:center;grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.day-label{color:#999;font:7px Arial}.day{padding:4px}.selected{background:var(--sage);color:#fff;border-radius:50%}.mini-line{border-top:1px solid var(--line);margin-top:20px;padding-top:10px}.mini-line span,.unit-dot{background:var(--sage);border-radius:50%;width:9px;height:9px}.art-note{color:#65685d;letter-spacing:.16em;font-size:10px;line-height:1.6;position:absolute;bottom:25px;left:32px}.art-note em{font-family:var(--serif);letter-spacing:0;font-size:14px}.statement{border-top:1px solid var(--line);max-width:1100px;margin:auto;padding:76px 32px 105px}.statement h2{font:normal 43px/1.1 var(--serif);letter-spacing:-.03em;max-width:550px;margin:0 0 70px}.steps{grid-template-columns:repeat(3,1fr);gap:70px;display:grid}.steps b{color:#8c8e85;font-size:11px;font-weight:400}.steps h3{font:26px var(--serif);margin:21px 0 9px}.steps p{color:var(--muted);max-width:245px;margin:0;line-height:1.6}footer{border-top:1px solid var(--line);color:#777970;letter-spacing:.16em;justify-content:space-between;align-items:center;max-width:1100px;margin:auto;padding:25px 32px 35px;font-size:9px;display:flex}.app-shell{background:#f7f6f2;min-height:100vh;display:flex}.avatar,.table-avatar{letter-spacing:.08em;background:#c8c0aa;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:10px;display:flex}.admin-shell,.customer-shell{flex-direction:column}.navbar{border-bottom:1px solid var(--line);background:#eeece5;flex:none;align-items:center;gap:20px;padding:18px 32px;display:flex}.navbar .logo{margin-right:auto}.navbar-profile{align-items:center;gap:10px;display:flex}.navbar-profile b,.navbar-profile small{text-overflow:ellipsis;white-space:nowrap;max-width:200px;display:block;overflow:hidden}.navbar-profile b{font-size:12px}.navbar-profile small{color:#7e8078;margin-top:2px;font-size:10px}.navbar-logout{color:#7a7c73;letter-spacing:.06em;border-radius:4px;padding:12px 10px;font-size:11px}.dashboard{width:100%;max-width:1200px;margin:0 auto;padding:44px 56px}.dash-top,.page-heading,.panel-heading{justify-content:space-between;align-items:flex-start;display:flex}.dash-top h1,.page-heading h1{font:normal 42px var(--serif);letter-spacing:-.04em;margin:0 0 24px}.page-heading{margin-bottom:30px}.page-lead{color:var(--muted);max-width:560px;margin:10px 0 0;font-size:15px;line-height:1.6}.stat-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin:20px 0 30px;display:grid}.stat-grid>div{background:var(--paper);padding:22px 24px}.stat-grid span,.stat-grid small{color:#85877e;letter-spacing:.15em;font-size:9px;display:block}.stat-grid strong{font:36px var(--serif);margin:12px 0 8px;display:block}.stat-grid .status-word{letter-spacing:.12em;padding:12px 0 7px;font:18px Arial,sans-serif}.stat-grid small{color:var(--sage);letter-spacing:0}.panel{background:var(--paper);border:1px solid var(--line);padding:26px}.panel-heading h2{font:normal 27px var(--serif);margin:0 0 24px}.full-panel{width:100%}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{border-bottom:1px solid var(--line);color:#85877e;letter-spacing:.14em;text-align:left;padding:12px 8px;font-size:9px;font-weight:400}td{border-bottom:1px solid var(--line);padding:15px 8px}.clickable-row{cursor:pointer;transition:background .2s}.clickable-row:hover{background:#f0eee7}.table-name{align-items:center;gap:10px;display:flex}.search,.auth-card input,.modal input,.modal select,.range-row input,.range-row select{background:var(--paper);border:1px solid var(--line);color:var(--ink);outline:none;padding:12px 14px}.search{min-width:220px}.back-link{color:var(--muted);letter-spacing:.16em;margin-bottom:30px;font-size:10px}.admin-settings{gap:30px;margin-bottom:30px;display:grid}.admin-settings .panel{margin:0}.admin-detail-grid+.admin-settings{margin:30px 0 0}.branding-panel{margin-top:30px}.branding-panel .page-lead{max-width:none}.branding-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start;gap:28px;margin-top:22px;display:grid}.branding-form{align-content:start;gap:16px;display:grid}.branding-form label{color:var(--theme-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.branding-form input:not([type=checkbox]){background:var(--theme-surface);border:1px solid var(--theme-border);color:var(--theme-text);letter-spacing:0;outline:none;width:100%;margin-top:8px;padding:12px 14px;font-size:14px;display:block}.branding-form small{letter-spacing:0;text-transform:none;margin-top:6px;font-size:11px;display:block}.color-field{gap:8px;margin-top:8px;display:flex}.branding-form .color-field input{margin-top:0}.branding-form .color-field input[type=color]{flex:0 0 48px;height:auto;padding:3px}.branding-checkbox{accent-color:var(--theme-brand);align-items:center;gap:8px;display:flex}.branding-form .branding-checkbox{color:var(--theme-text);letter-spacing:0;text-transform:none;font-size:12px}.branding-actions{flex-wrap:wrap;gap:10px;display:flex}.brand-logo{object-fit:contain;max-width:180px;max-height:48px;display:block}.booking-page.brand-preview{border:1px solid var(--line);pointer-events:none;min-height:0;overflow:hidden}.brand-preview-nav{border-bottom:1px solid var(--theme-border);align-items:center;min-height:52px;padding:12px 18px;display:flex}.brand-preview .brand-logo{max-height:28px}.brand-preview-body{grid-template-columns:.8fr 1.2fr;gap:16px;padding:18px;display:grid}.brand-preview .booking-intro{padding:0}.brand-preview .booking-intro h1{font-size:30px}.brand-preview .booking-card{min-height:0;padding:16px}.brand-preview .booking-progress{margin-bottom:14px}.brand-preview .date-strip,.brand-preview .time-grid{grid-template-columns:repeat(3,1fr);margin:0 0 10px}.brand-preview .confirm{margin-top:6px}.discount-groups-panel{margin:30px 0}.discount-groups-panel .page-lead{max-width:none}.discount-group-modal .form-grid .confirm{grid-column:1/-1}.discount-members-input{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:12px 0;font-size:9px;display:block}.discount-members-input textarea{background:var(--paper);border:1px solid var(--line);color:var(--ink);letter-spacing:0;resize:vertical;text-transform:none;outline:none;width:100%;margin-top:8px;padding:12px 14px;font:14px Arial,sans-serif;display:block}.discount-members{max-height:260px;margin:16px 0 0;padding:0;list-style:none;overflow-y:auto}.discount-members li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.admin-detail-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.admin-unit-card{border-top:1px solid var(--line);padding:17px 0}.admin-unit-row{align-items:center;gap:13px;display:flex}.admin-unit-row>div{flex-direction:column;gap:5px;display:flex}.admin-unit-row span:not(.unit-dot){color:var(--muted);font-size:12px}.schedule-summary{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.schedule-summary span{color:#676a62;background:#eeece5;border-radius:20px;padding:6px 9px;font-size:10px}.unit-card-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin-top:20px;display:flex}.unit-card-actions .link-button{margin-right:auto}.booking-row{border-top:1px solid var(--line);grid-template-columns:70px 1fr 70px;align-items:center;gap:14px;padding:14px 0;display:grid}.date-block{border-right:1px solid var(--line);line-height:1}.date-block b,.date-block strong,.booking-row b,.booking-row span{display:block}.date-block b{color:#85877e;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:8px}.date-block strong{font:23px var(--serif)}.booking-row b{font-size:12px}.booking-row span{color:#85877e;margin-top:5px;font-size:11px}.booking-time{font:17px var(--serif);text-align:right}.unit-card{background:var(--paper);border:1px solid var(--line);margin-bottom:16px;display:flex}.unit-card-color{background:var(--sage);width:8px}.unit-card-body{flex:1;padding:24px}.unit-card-head{justify-content:space-between;display:flex}.unit-card h3{font:28px var(--serif);margin:0}.status-pill{color:#68764c;letter-spacing:.12em;background:#e4e8d8;border-radius:20px;height:max-content;padding:6px 9px;font-size:8px}.status-pill.off{color:#ae7266;background:#f1e5df}.help-details{border:1px solid var(--theme-border);color:var(--theme-text-muted);margin-top:18px;padding:12px 16px;font-size:13px;line-height:1.6}.help-details summary{color:var(--theme-text);cursor:pointer;letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:600}.help-details a{color:var(--theme-brand-text);text-decoration:underline}.help-details ol,.help-details ul{margin:8px 0;padding-left:20px}.help-details li{margin:6px 0}.help-details code{background:var(--theme-page);padding:2px 6px;font-size:12px}.help-details .help-url{overflow-wrap:anywhere}.mercado-pago-form{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px;display:grid}.mercado-pago-form label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.mercado-pago-form input{letter-spacing:0;text-transform:none;width:100%;margin-top:8px;font-size:14px;display:block}.mercado-pago-form .form-error,.mercado-pago-form .confirm{grid-column:1/-1}.unit-meta{border-top:1px solid var(--line);color:#7f8179;flex-wrap:wrap;gap:28px;margin-top:22px;padding-top:16px;font-size:11px;display:flex}.unit-meta b{color:var(--ink);font-weight:400}.notice,.form-error{background:var(--theme-danger-surface);border-left:3px solid var(--theme-danger);color:var(--theme-danger-text);padding:10px 13px;font-size:12px}.notice{background:var(--theme-success-surface);border-color:var(--theme-brand);color:var(--theme-success-text)}.auth-page{grid-template-columns:1fr 420px;align-items:center;gap:70px;max-width:1050px;min-height:100vh;margin:auto;padding:50px 30px;display:grid}.auth-card{background:var(--paper);border:1px solid var(--line);padding:38px}.auth-card h2,.modal h2,.booking-card h2{font:32px var(--theme-font-display);margin:0 0 28px}.auth-card label,.modal label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:20px 0;font-size:9px;display:block}.auth-card input,.modal label>input,.modal label>select{letter-spacing:0;text-transform:none;width:100%;margin-top:8px;font-size:14px;display:block}.form-help{color:var(--muted);line-height:1.6}.confirm{text-align:center;width:100%;margin-top:22px}.modal-backdrop{z-index:10;background:#282c2580;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--paper);width:min(430px,100%);max-height:calc(100vh - 40px);padding:35px;position:relative;overflow-y:auto}.modal-close{color:#777970;font-size:25px;position:absolute;top:16px;right:22px}.unit-form{width:min(720px,100%)}.form-grid{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.range-heading{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:24px;padding-top:24px;display:flex}.range-heading .eyebrow{margin-bottom:6px}.range-heading small{color:var(--muted)}.range-list{gap:8px;margin-top:18px;display:grid}.range-row{grid-template-columns:1.4fr 1fr auto 1fr auto;align-items:center;gap:8px;display:grid}.remove-button{color:#8c5148;font-size:20px}.booking-page{--theme-page:#ebe9e1;background:var(--theme-page);color:var(--theme-text);min-height:100vh}.booking-page ::placeholder{color:var(--theme-text-subtle)}.booking-nav{border-bottom:1px solid var(--theme-border);justify-content:space-between;align-items:center;height:94px;padding:0 7%;display:flex}.check-in{background:var(--theme-surface);border:1px solid var(--theme-border);max-width:280px;margin-top:45px;padding:22px}.check-in .eyebrow{margin:0 0 16px;line-height:1.6}.check-in-form label{color:var(--theme-text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:9px;display:block}.check-in-form input{background:var(--theme-surface);border:1px solid var(--theme-border);color:var(--theme-text);letter-spacing:.08em;text-transform:uppercase;outline:none;width:100%;margin-top:8px;padding:12px 14px;font-size:14px;display:block}.check-in-form .form-error{margin-top:12px}.booking-wrap{grid-template-columns:38% 62%;max-width:1000px;margin:0 auto;padding:80px 35px;display:grid}.booking-intro{padding:35px 40px 0 0}.booking-intro>p:not(.eyebrow){color:var(--theme-text-muted);max-width:245px;line-height:1.6}.booking-facts{letter-spacing:.12em;gap:8px;margin-top:45px;font-size:10px;display:flex}.booking-facts span{border:1px solid var(--theme-border-strong);border-radius:20px;padding:8px 11px}.booking-card{background:var(--theme-surface);border:1px solid var(--theme-border);min-height:600px;padding:32px 38px}.booking-progress{border-bottom:1px solid var(--theme-border);color:var(--theme-text-subtle);letter-spacing:.16em;gap:25px;margin-bottom:30px;padding-bottom:17px;font-size:9px;display:flex}.booking-progress .on{color:var(--theme-brand-text)}.date-strip{grid-template-columns:repeat(5,1fr);gap:7px;max-height:190px;margin-bottom:25px;display:grid;overflow-y:auto}.date-strip button{border:1px solid var(--theme-border);padding:10px 5px}.date-strip button.chosen{background:var(--theme-brand);color:var(--theme-on-brand)}.date-strip b,.date-strip span{display:block}.date-strip b{text-transform:uppercase;font-size:8px;font-weight:400}.date-strip span{font:19px var(--theme-font-display);margin-top:5px}.time-heading{border-top:1px solid var(--theme-border);color:var(--theme-text-muted);letter-spacing:.13em;justify-content:space-between;padding-top:18px;font-size:9px;display:flex}.time-heading b{color:var(--theme-text);text-transform:uppercase;font-weight:400}.time-grid{grid-template-columns:repeat(4,1fr);gap:7px;margin:14px 0 25px;display:grid}.time-grid button{border:1px solid var(--theme-border);font:14px var(--theme-font-display);padding:10px}.time-grid .time-selected{background:var(--theme-brand);border-color:var(--theme-brand);color:var(--theme-on-brand)}.guest-fields{border-top:1px solid var(--theme-border);grid-template-columns:repeat(4,1fr);gap:10px;padding-top:18px;display:grid}.guest-fields label{color:var(--theme-text-muted);letter-spacing:.12em;font-size:9px}.guest-fields input{border:0;border-bottom:1px solid var(--theme-border);color:var(--theme-text);background:0 0;outline:none;width:100%;margin-top:8px;padding:8px 0;font-size:11px;display:block}.guest-toggle{accent-color:var(--theme-brand);border-bottom:1px solid var(--theme-border);color:var(--theme-text);cursor:pointer;letter-spacing:0;align-items:center;gap:8px;margin-top:8px;padding:8px 0;font-size:11px;display:flex}.guest-fields .guest-toggle input{border:revert;width:14px;height:14px;margin:0;padding:0;display:inline-block}.success{text-align:center;padding:80px 20px}.success-mark{background:var(--theme-brand);color:var(--theme-on-brand);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 28px;font-size:22px;display:flex}.success p:not(.eyebrow){color:var(--theme-text-muted);margin-bottom:35px}.feedback-state,.empty-state{color:var(--theme-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:180px;padding:30px;display:flex}.feedback-state{min-height:100vh}.dashboard>.feedback-state{min-height:200px}.loading-mark{border:2px solid var(--theme-border);border-top-color:var(--theme-brand);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:800px){.site-header{height:78px;padding:0 20px}.hero{padding:56px 20px;display:block}.hero h1,.auth-intro h1,.booking-intro h1{font-size:48px}.hero-art{height:330px;margin-top:55px}.art-card.front{right:18%}.art-card.back{right:12%}.statement{padding:60px 20px}.steps,.auth-page,.admin-detail-grid,.mercado-pago-form,.stat-grid{grid-template-columns:1fr}.auth-page{gap:35px;padding:55px 20px}.navbar{gap:12px;padding:14px 18px}.navbar-profile>div:not(.avatar),.navbar-logout span{display:none}.dashboard{padding:30px 18px}.dash-top,.page-heading{gap:18px}.dash-top h1,.page-heading h1{font-size:34px}.heading-actions{flex-direction:column;align-items:stretch}.booking-wrap{padding:35px 18px;display:block}.booking-intro{flex-direction:column;padding:0 0 40px;display:flex}.booking-intro .check-in{order:-1;max-width:none;margin:0 0 40px}.booking-card{padding:25px 20px}.date-strip{grid-template-columns:repeat(3,1fr)}.guest-fields,.form-grid,.branding-layout,.brand-preview-body{grid-template-columns:1fr}.range-row{grid-template-columns:1fr 1fr}.range-row span{display:none}.range-row .remove-button{grid-column:2}.panel{padding:18px}.search{width:45%;min-width:120px}}
