:root{font-family:'DM Sans',sans-serif;color:#24312b;background:#f6f7f3;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#25342c;--muted:#849088;--line:#e8ebe5;--paper:#fff;--green:#315c45;--green-dark:#244b37;--soft-green:#edf5ee;--sage:#deeadf;--amber:#fbf1d9;--rose:#f8e9e5;--blue:#eaf1f7;--shadow:0 12px 35px rgba(36,49,43,.07)}*{box-sizing:border-box}body{margin:0;min-width:320px}.app-shell{min-height:100vh;display:flex}.sidebar{width:254px;background:#fbfcf9;border-right:1px solid var(--line);padding:27px 17px 18px;display:flex;flex-direction:column;flex-shrink:0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);padding:0 10px 27px}.brand-mark{width:31px;height:31px;display:flex;align-items:flex-end;gap:3px;padding:6px 5px;background:#e8efe8;border-radius:10px}.brand-mark span{display:block;width:5px;background:var(--green);border-radius:5px}.brand-mark span:nth-child(1){height:12px}.brand-mark span:nth-child(2){height:18px}.brand-mark span:nth-child(3){height:15px}.brand-copy strong{display:block;font-family:Manrope,sans-serif;font-size:19px;letter-spacing:-.8px;line-height:1}.brand-copy small{display:block;color:#89938b;font-size:9px;letter-spacing:.09em;text-transform:uppercase;margin-top:5px}.property-switcher{display:flex;align-items:center;gap:10px;padding:11px 10px;margin:0 0 30px;background:#f3f5f0;border:1px solid #edf0eb;border-radius:11px}.property-icon{width:30px;height:30px;display:grid;place-items:center;background:#fff;border-radius:8px;color:var(--green);font-size:17px}.property-switcher small,.property-switcher strong{display:block}.property-switcher small{font-size:8px;color:#909a92;letter-spacing:.1em;margin-bottom:3px}.property-switcher strong{font-size:11px;font-weight:700}.switch-caret{margin-left:auto;color:#879188}.nav-label{font-size:9px;color:#9aa39c;letter-spacing:.12em;font-weight:700;padding:0 11px;margin:0 0 11px}.main-nav{display:flex;flex-direction:column;gap:4px}.nav-item{border:0;background:transparent;color:#748078;text-align:left;font:500 13px 'DM Sans',sans-serif;padding:11px 12px;border-radius:9px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:.16s}.nav-item:hover{background:#f2f5f0;color:var(--ink)}.nav-item.active{background:#eaf1e9;color:var(--green);font-weight:700}.nav-icon{font-size:17px;width:20px;text-align:center}.nav-count{margin-left:auto;font-size:10px;color:#65806d;background:#dce9dc;padding:2px 7px;border-radius:20px}.sidebar-bottom{margin-top:auto}.help-card{background:#f1f5ee;border:1px solid #e8eee4;border-radius:12px;padding:14px;margin:0 1px 15px}.help-spark{font-size:17px;color:#6c8b6c;margin-bottom:6px}.help-card strong{font-size:11px}.help-card p{font-size:10px;line-height:1.55;color:#78847a;margin:5px 0 0}.profile-button{width:100%;display:flex;align-items:center;gap:9px;padding:12px 6px 0;border:0;border-top:1px solid var(--line);background:transparent;text-align:left;color:var(--ink)}.avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#dce7dc;color:#47634c;font-size:12px;font-weight:700}.profile-button strong,.profile-button small{display:block}.profile-button strong{font-size:10px}.profile-button small{font-size:9px;color:#8b958e;margin-top:3px}.more{margin-left:auto;font-size:18px;color:#9ba49d}.main-content{min-width:0;flex:1;padding:0 37px 35px}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:25px}.breadcrumbs{font-size:11px;color:#8b958d;display:flex;align-items:center;gap:10px}.breadcrumbs strong{font-weight:600;color:#46534b}.crumb-sep{color:#c1c8c0}.topbar-actions{display:flex;align-items:center;gap:17px}.demo-badge{font-size:10px;color:#8a7955;background:#fbf4e6;border:1px solid #f1e8d3;padding:6px 9px;border-radius:20px}.demo-badge span{display:inline-block;width:6px;height:6px;background:#d3ad5d;border-radius:50%;margin-right:5px;vertical-align:1px}.icon-button{position:relative;width:29px;height:29px;background:#fff;border:1px solid var(--line);border-radius:9px;font-size:15px;color:#77847b}.icon-button i{position:absolute;width:5px;height:5px;border-radius:50%;right:5px;top:4px;background:#d98b73}.top-avatar{width:28px;height:28px;font-size:11px}.page-view{max-width:1500px;margin:0 auto}.hidden{display:none!important}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 22px}.eyebrow{font-size:9px;line-height:1.3;color:#91a092;font-weight:700;letter-spacing:.14em;margin:0 0 8px}.page-heading h1{font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-1.1px;line-height:1.1;margin:0;color:#25342c}.page-subtitle{font-size:12px;color:#869188;margin:7px 0 0}.heading-actions{display:flex;gap:9px}.button{height:38px;padding:0 14px;border-radius:8px;font:600 11px 'DM Sans',sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.15s}.button-primary{border:1px solid var(--green);background:var(--green);color:#fff;box-shadow:0 3px 7px rgba(49,92,69,.13)}.button-primary:hover{background:var(--green-dark)}.button-secondary{background:#fff;border:1px solid #e3e8e1;color:#536158}.button-secondary:hover{border-color:#bdcbbd;background:#fbfcf9}.button span{font-size:15px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:19px}.stat-card{background:#fff;border:1px solid #ecefe9;border-radius:11px;padding:14px 16px 13px;min-height:98px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#7d8980;font-size:10px}.stat-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-size:13px}.stat-icon.green{background:#eaf2e9;color:#5d8062}.stat-icon.peach{background:#faeee8;color:#bc8067}.stat-icon.blue{background:#ecf2f7;color:#65819b}.stat-icon.yellow{background:#faf2dd;color:#a78a4c}.stat-card>strong{display:block;font-family:Manrope,sans-serif;font-size:22px;letter-spacing:-.6px;margin:9px 0 2px}.stat-card>small{font-size:9px;color:#97a098}.stat-card .stat-positive{color:#6b8b6f}.panel{background:#fff;border:1px solid #eaeee8;border-radius:12px;box-shadow:0 3px 13px rgba(38,52,44,.025)}.calendar-panel{overflow:hidden}.calendar-toolbar{min-height:65px;padding:12px 17px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line)}.period-control,.toolbar-right{display:flex;align-items:center;gap:7px}.period-control h2{font-family:Manrope,sans-serif;font-size:14px;letter-spacing:-.3px;margin:0 0 0 12px;min-width:150px}.round-button,.today-button{height:28px;border:1px solid #e6eae4;background:#fff;border-radius:7px;color:#65736a;cursor:pointer}.round-button{width:28px;font-size:18px;line-height:20px}.today-button{padding:0 10px;font:600 10px 'DM Sans',sans-serif;margin-right:5px}.round-button:hover,.today-button:hover{background:#f5f8f4}.search-box{height:31px;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid #e7ebe5;border-radius:7px;color:#9ca69e;background:#fff}.search-box>span{font-size:18px;line-height:1}.search-box input{width:158px;border:0;outline:0;font:10px 'DM Sans',sans-serif;color:#45534a;background:transparent}.search-box input::placeholder{color:#a0a8a1}.filter-button{height:31px;border:1px solid #e7ebe5;background:#fff;border-radius:7px;padding:0 9px;display:flex;align-items:center;gap:8px;font:500 10px 'DM Sans',sans-serif;color:#5e6a61;cursor:pointer}.filter-button span:first-child{font-size:14px}.calendar-scroll{overflow-x:auto}.calendar-grid{display:grid;grid-template-columns:170px repeat(7,minmax(88px,1fr));min-width:790px}.calendar-corner,.day-heading{min-height:58px;padding:10px 9px;border-bottom:1px solid var(--line);border-right:1px solid #f0f2ee;display:flex;flex-direction:column;justify-content:center}.calendar-corner{padding-left:17px;color:#9aa49c;font-size:8px;letter-spacing:.1em;font-weight:700}.day-heading{text-align:center;align-items:center;gap:4px}.day-heading span{color:#939e95;text-transform:uppercase;font-size:8px;letter-spacing:.07em}.day-heading strong{font-family:Manrope,sans-serif;font-size:13px;font-weight:600}.day-heading.today{background:#f2f7f1}.day-heading.today strong{color:var(--green)}.day-heading.holiday{background:#fff8e9}.day-heading.holiday strong{color:#9b7b3e}.cabin-label{min-height:86px;padding:13px 12px 11px 17px;border-right:1px solid var(--line);border-bottom:1px solid #f0f2ee;display:flex;align-items:center;gap:10px}.cabin-thumb{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;font-size:15px;color:#536f57;background:#eaf1e8}.cabin-thumb.tone-2{background:#eff0e6;color:#837d51}.cabin-thumb.tone-3{background:#e8eff0;color:#5f7d7d}.cabin-thumb.tone-4{background:#f4ebe4;color:#967759}.cabin-thumb.tone-5{background:#ece8f1;color:#827090}.cabin-meta{min-width:0}.cabin-meta strong{display:block;font-size:10px;white-space:nowrap}.cabin-meta small{display:block;font-size:8px;color:#9aa39c;margin-top:4px}.day-cell{min-height:86px;padding:7px 6px 6px;border-right:1px solid #f0f2ee;border-bottom:1px solid #f0f2ee;position:relative;background:#fff;cursor:pointer;transition:background .12s}.day-cell:hover{background:#f8faf6}.day-cell.is-holiday{background:#fffdf7}.day-cell.is-holiday:hover{background:#fff8e9}.day-price{display:block;color:#87958a;font-size:8px;margin:0 0 5px 1px}.day-booking{display:block;border-radius:5px;padding:5px 5px 4px;background:#e9f2e8;border-left:2px solid #73a077;color:#426348;min-height:37px;overflow:hidden}.day-booking.booking-warm{background:#f9eee7;border-color:#d19472;color:#825c46}.day-booking.booking-blue{background:#eaf0f6;border-color:#7694ad;color:#536e84}.day-booking.booking-purple{background:#f1edf5;border-color:#a18fb1;color:#6d5c79}.day-booking strong{display:block;font-size:8px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-booking small{display:block;font-size:7px;margin-top:3px;white-space:nowrap}.holiday-tag{position:absolute;right:5px;top:7px;color:#a48a53;font-size:7px;background:#fbf1d9;border-radius:4px;padding:2px 4px}.calendar-legend{display:flex;align-items:center;gap:17px;padding:12px 17px;color:#869188;font-size:9px}.calendar-legend>span{display:flex;align-items:center;gap:5px}.legend-dot{width:7px;height:7px;border-radius:50%;display:block}.legend-dot.occupied{background:#75a27a}.legend-dot.available{background:#d4ddd4}.legend-dot.holiday{background:#d4b96e}.calendar-legend .legend-note{margin-left:auto;color:#a0a8a1}.prototype-note{font-size:9px;color:#9aa49c;display:flex;align-items:center;gap:6px;margin:12px 2px}.prototype-note span{color:#8caa8d;font-size:12px}.list-panel{overflow:hidden}.list-toolbar{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.list-toolbar .search-box input{width:260px}.list-toolbar select{height:31px;border:1px solid #e7ebe5;border-radius:7px;background:#fff;padding:0 9px;color:#5e6a61;font:10px 'DM Sans',sans-serif;outline:none}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:890px}th{text-align:left;padding:11px 13px;background:#fbfcf9;border-bottom:1px solid var(--line);font-size:8px;letter-spacing:.08em;color:#9aa49c;white-space:nowrap}td{padding:12px 13px;border-bottom:1px solid #f0f2ee;color:#5c6a60;font-size:10px;white-space:nowrap}tbody tr:last-child td{border-bottom:0}.guest-cell{display:flex;align-items:center;gap:8px}.guest-avatar{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#edf2e9;color:#5c785c;font-size:9px;font-weight:700}.guest-name{font-size:10px;font-weight:700;color:#34443a}.guest-email{display:block;color:#9aa49c;font-size:8px;margin-top:2px}.status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:4px 7px;font-size:8px;font-weight:600}.status-pill::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.status-confirmada{background:#eaf3ea;color:#618165}.status-consulta{background:#fbf2dd;color:#a18549}.status-cancelada{background:#f7eae7;color:#ae7466}.source-pill{padding:4px 7px;border-radius:5px;background:#f5f6f3;color:#78847a;font-size:8px}.guest-grid{padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.guest-card{border:1px solid #ecefe9;border-radius:10px;padding:14px}.guest-card-top{display:flex;align-items:center;gap:9px}.guest-card h3{font-size:11px;margin:0}.guest-card .contact{font-size:9px;color:#87928a;margin:4px 0 0}.guest-card-stats{display:flex;justify-content:space-between;margin-top:15px;padding-top:12px;border-top:1px solid #eff1ed;font-size:9px;color:#8c978f}.guest-card-stats strong{display:block;color:#435148;font-size:11px;margin-bottom:3px}.result-count{font-size:9px;color:#929d94}.rate-tip{display:flex;align-items:flex-start;gap:12px;background:#f0f5ee;border:1px solid #e4ece2;border-radius:10px;padding:13px 15px;margin-bottom:15px;color:#68836a}.rate-tip>span{font-size:18px}.rate-tip strong{font-size:10px;color:#47644a}.rate-tip p{font-size:9px;color:#819082;margin:4px 0 0}.rates-panel{overflow:hidden}.rates-toolbar{height:49px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 17px}.rates-toolbar strong{font-family:Manrope,sans-serif;font-size:12px}.rates-toolbar span{font-size:9px;color:#929c94}.rates-grid{display:grid;grid-template-columns:170px repeat(7,minmax(88px,1fr));min-width:790px}.rates-corner,.rate-day-head,.rate-cabin{display:flex;align-items:center;padding:12px;border-bottom:1px solid #eff1ed;border-right:1px solid #eff1ed}.rates-corner{font-size:8px;color:#9aa49c;font-weight:700;letter-spacing:.09em}.rate-day-head{justify-content:center;flex-direction:column;gap:4px}.rate-day-head small{font-size:8px;text-transform:uppercase;color:#929d94}.rate-day-head strong{font-size:11px}.rate-cabin{gap:8px;font-size:10px;font-weight:600}.rate-price{border:0;border-bottom:1px solid #eff1ed;border-right:1px solid #eff1ed;background:white;min-height:52px;color:#52645a;font:600 10px 'DM Sans',sans-serif;cursor:pointer}.rate-price:hover{background:#eef5ed;color:var(--green)}.rate-price span{display:block;font-size:7px;color:#a0aaa1;font-weight:400;margin-top:3px}.holiday-rate-head{background:#fffaf0}.empty-state{padding:28px;text-align:center;color:#9ba59d;font-size:11px;grid-column:1/-1}.modal-backdrop{position:fixed;inset:0;z-index:10;background:rgba(30,41,34,.35);display:flex;justify-content:flex-end;backdrop-filter:blur(2px)}.reservation-modal{width:min(540px,100%);height:100%;background:#fbfcf9;overflow:auto;box-shadow:-15px 0 45px rgba(28,43,34,.16);padding:25px 29px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line)}.modal-header .eyebrow{margin-bottom:6px}.modal-header h2{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.6px;margin:0}.modal-close{width:30px;height:30px;border:1px solid #e5eae4;border-radius:8px;background:#fff;color:#78847b;font-size:20px;line-height:20px;cursor:pointer}.form-section{padding:18px 0;border-bottom:1px solid var(--line)}.form-section h3{font-size:11px;margin:0 0 12px;color:#45534a}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.field{display:flex;flex-direction:column;gap:6px;font-size:9px;color:#727f76}.field input,.field select,.field textarea{width:100%;border:1px solid #e4e9e2;border-radius:7px;background:#fff;padding:9px 10px;color:#3f4d43;font:10px 'DM Sans',sans-serif;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#96b296;box-shadow:0 0 0 3px #eaf2e9}.field input::placeholder,.field textarea::placeholder{color:#b1b9b2}.field textarea{resize:vertical}.span-2{grid-column:span 2}.toggle-row{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding:11px 12px;background:#f1f5ef;border-radius:8px}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{font-size:9px;color:#526452}.toggle-row small{font-size:8px;color:#96a097;margin-top:4px}.switch{position:relative;width:34px;height:19px}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:#cfd7cf;border-radius:20px;cursor:pointer;transition:.2s}.switch span:before{content:'';position:absolute;width:13px;height:13px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px #aeb7ae}.switch input:checked+span{background:#709273}.switch input:checked+span:before{transform:translateX(15px)}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:17px 0 5px}.toast{position:fixed;right:24px;bottom:23px;background:#2f5b43;color:#fff;border-radius:9px;padding:11px 15px;font-size:10px;box-shadow:var(--shadow);z-index:20}.filtered-out{display:none!important}
@media(max-width:1100px){.sidebar{width:220px}.main-content{padding:0 23px 30px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-toolbar{align-items:flex-start;flex-direction:column}.toolbar-right{width:100%}.toolbar-right .search-box{flex:1}.toolbar-right .search-box input{width:100%}.guest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.app-shell{display:block}.sidebar{width:auto;height:auto;padding:12px 14px;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;align-items:center;gap:14px}.brand{padding:0}.brand-mark{width:29px;height:29px}.brand-copy strong{font-size:17px}.brand-copy small,.property-switcher,.sidebar-bottom,.nav-label{display:none}.main-nav{display:flex;flex-direction:row;gap:2px;margin-left:auto}.nav-item{padding:8px 9px;font-size:10px;gap:5px}.nav-icon{font-size:14px;width:auto}.nav-count{display:none}.main-content{padding:0 13px 25px}.topbar{height:51px;margin-bottom:19px}.breadcrumbs{font-size:9px}.topbar-actions{gap:8px}.demo-badge{font-size:8px;padding:5px 7px}.icon-button{display:none}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:16px}.calendar-heading{gap:14px}.page-heading h1{font-size:23px}.page-subtitle{font-size:10px}.heading-actions{width:100%}.heading-actions .button{flex:1;padding:0 7px;font-size:9px}.stats-grid{gap:8px;margin-bottom:13px}.stat-card{padding:11px;min-height:88px}.stat-top{font-size:8px}.stat-icon{width:22px;height:22px}.stat-card>strong{font-size:19px;margin-top:7px}.stat-card>small{font-size:8px}.calendar-toolbar{padding:12px}.period-control{width:100%;flex-wrap:wrap}.period-control h2{font-size:12px;min-width:0;margin-left:3px}.toolbar-right{gap:5px}.filter-button{font-size:8px;padding:0 6px;gap:4px}.calendar-legend{gap:9px;padding:11px;font-size:8px;flex-wrap:wrap}.calendar-legend .legend-note{display:none}.guest-grid{grid-template-columns:1fr}.list-toolbar{align-items:stretch;flex-direction:column}.list-toolbar .search-box input{width:100%}.list-toolbar select{width:100%}.reservation-modal{padding:20px 17px}.page-heading>.button{width:100%}}
.cabin-info-banner{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-bottom:16px;background:#f0f5ee;border:1px solid #e3ece1;border-radius:10px}.cabin-info-banner>span{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#fff;color:#648365;font-size:17px}.cabin-info-banner strong{font-size:10px;color:#47634b}.cabin-info-banner p{margin:4px 0 0;color:#829083;font-size:9px}.cabin-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cabin-card{background:#fff;border:1px solid #eaeee8;border-radius:12px;overflow:hidden}.cabin-card-head{display:flex;align-items:center;gap:11px;padding:15px 16px;border-bottom:1px solid #eff1ed}.cabin-card-head .cabin-thumb{width:39px;height:39px}.cabin-card-title{min-width:0;flex:1}.cabin-card-title h2{font-family:Manrope,sans-serif;font-size:13px;letter-spacing:-.2px;margin:0;color:#334239}.cabin-card-title p{font-size:9px;color:#8f9a91;margin:4px 0 0}.cabin-edit-button{height:29px;border:1px solid #e5eae4;background:#fff;border-radius:7px;padding:0 9px;color:#66756a;font:600 9px 'DM Sans',sans-serif;cursor:pointer}.cabin-edit-button:hover{border-color:#b6c8b5;background:#f8faf7}.cabin-card-body{padding:13px 16px 15px}.cabin-description{font-size:10px;line-height:1.55;color:#738077;margin:0 0 12px}.cabin-description.is-empty{color:#a4ada5;font-style:italic}.amenity-label{font-size:8px;letter-spacing:.08em;color:#9aa49b;font-weight:700;margin-bottom:7px}.amenity-list{display:flex;flex-wrap:wrap;gap:6px;min-height:24px}.amenity-chip{background:#f2f5f0;border-radius:5px;padding:5px 7px;color:#69786c;font-size:8px}.amenity-empty{font-size:9px;color:#a4ada5}.cabin-custom-details{display:flex;flex-wrap:wrap;gap:6px 15px;margin-top:12px;padding-top:10px;border-top:1px solid #f0f2ee}.cabin-custom-detail{font-size:9px;color:#879189}.cabin-custom-detail strong{color:#53645a;font-weight:600}.field-hint{font-size:8px!important;color:#99a39b!important;line-height:1.45}.detail-intro{margin:-5px 0 12px}.section-heading-inline{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.section-heading-inline h3{margin:0}.text-button{border:0;background:transparent;color:#5e8062;font:600 9px 'DM Sans',sans-serif;cursor:pointer;padding:4px}.text-button:hover{text-decoration:underline}.cabin-details-list{display:flex;flex-direction:column;gap:8px}.cabin-detail-row{display:grid;grid-template-columns:1fr 1.2fr 29px;gap:7px}.cabin-detail-row input{width:100%;border:1px solid #e4e9e2;border-radius:7px;background:#fff;padding:8px 9px;color:#3f4d43;font:9px 'DM Sans',sans-serif;outline:none}.remove-detail{border:1px solid #e8eae6;background:#fff;border-radius:7px;color:#a07f73;font-size:14px;cursor:pointer}.cabin-modal{width:min(520px,100%)}
@media(max-width:800px){.cabin-cards{grid-template-columns:1fr}}
@media(max-width:700px){.main-nav{max-width:calc(100vw - 125px);overflow-x:auto;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.nav-item{flex-shrink:0}}
.guest-filters{display:flex;align-items:center;gap:5px;padding:11px 16px;border-bottom:1px solid #eff1ed;overflow-x:auto;scrollbar-width:none}.guest-filters::-webkit-scrollbar{display:none}.guest-filter{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border:1px solid transparent;border-radius:7px;background:transparent;padding:7px 9px;color:#7d8980;font:500 9px 'DM Sans',sans-serif;cursor:pointer}.guest-filter:hover{background:#f5f7f3}.guest-filter.active{background:#eaf1e9;color:#46664c;font-weight:700}.guest-filter span{min-width:17px;text-align:center;padding:2px 4px;border-radius:10px;background:#f0f2ee;color:#8d988f;font-size:8px}.guest-filter.active span{background:#d8e6d7;color:#5c7c5e}.guest-status-label{display:inline-block;margin-top:7px;padding:3px 6px;border-radius:5px;background:#eef4ec;color:#668166;font-size:8px;font-weight:600}.guest-status-label.future{background:#edf2f6;color:#667f93}.guest-status-label.departed{background:#f3f1ec;color:#8b8574}
.guest-filter-note{margin:0;padding:8px 16px 0;font-size:8px;color:#9aa49c}
.quote-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:#f0f5ee;border:1px solid #e3ece1;border-radius:8px}.quote-preview small,.quote-preview strong,.quote-preview span{display:block}.quote-preview small{font-size:7px;letter-spacing:.08em;color:#8a9a89;font-weight:700}.quote-preview strong{font-family:Manrope,sans-serif;font-size:13px;color:#405d45;margin-top:4px}.quote-preview span{font-size:8px;color:#879387;margin-top:3px}.quote-preview .text-button{white-space:nowrap}
.pricing-intro,.weekend-hint{margin:0 0 12px}.weekend-hint{margin:10px 0 0}.pricing-group{border:1px solid #edf0eb;border-radius:8px;padding:11px;margin-top:9px;background:#fff}.pricing-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:9px}.pricing-group-heading strong{font-size:9px;color:#536459}.pricing-group-heading small{font-size:8px;color:#99a39b;text-align:right}.pricing-long .pricing-group-heading{align-items:flex-start;flex-direction:column;gap:4px}.pricing-long .pricing-group-heading small{text-align:left;line-height:1.45}.discount-field{max-width:170px}.pricing-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:13px;padding-top:11px;border-top:1px solid #eff1ed}.pricing-summary-item small{display:block;color:#9ba59d;font-size:8px;margin-bottom:4px}.pricing-summary-item strong{font-size:9px;color:#55655a}
 .status-pendiente{background:#fbf2dd;color:#a18549}.status-consulta{background:#edf2f6;color:#71879b}.status-select{max-width:132px;border:1px solid transparent;border-radius:20px;padding:5px 7px;font:600 8px 'DM Sans',sans-serif;cursor:pointer;outline:none}.status-select:focus{border-color:#91a990}
.table-edit-button{border:1px solid #e2e9e1;border-radius:6px;background:#fff;padding:5px 8px;color:#557258;font:600 9px 'DM Sans',sans-serif;cursor:pointer}.table-edit-button:hover{background:#f0f5ee;border-color:#c4d4c1}
.breakfast-rate-panel{display:flex;align-items:center;gap:14px;padding:14px 16px;margin:0 0 14px}.breakfast-rate-panel>div{flex:1}.breakfast-rate-panel>div strong{font-size:10px;color:#43544a}.breakfast-rate-panel>div p{font-size:9px;color:#89958d;margin:4px 0 0}.breakfast-rate-input{height:34px;width:150px;display:flex;align-items:center;gap:7px;border:1px solid #e4e9e2;border-radius:7px;background:#fff;padding:0 9px;color:#9aa39c;font-size:9px}.breakfast-rate-input input{width:100%;min-width:0;border:0;outline:0;color:#47554b;font:10px 'DM Sans',sans-serif}.breakfast-rate-panel .button{height:34px}@media(max-width:700px){.breakfast-rate-panel{align-items:stretch;flex-wrap:wrap}.breakfast-rate-panel>div{flex-basis:100%}.breakfast-rate-input{flex:1;width:auto}}
.rate-cabin-button{width:100%;text-align:left;background:#fff;font:600 10px 'DM Sans',sans-serif;color:#46564b;cursor:pointer}.rate-cabin-button:hover{background:#f4f8f2;color:var(--green)}.rate-detail-modal{height:auto;max-height:92vh;width:min(680px,100%);margin:auto;align-self:center;border-radius:14px;padding:24px;overflow:auto}.rate-detail-period{margin:5px 0 0;color:#8b978e;font-size:9px}.rate-detail-content{padding-top:5px}.rate-detail-section{padding:14px 0;border-bottom:1px solid var(--line)}.rate-detail-section h3{font-size:10px;color:#536157;margin:0 0 10px}.rate-detail-section-heading{display:flex;align-items:center;justify-content:space-between}.rate-detail-section-heading span{font-size:8px;color:#9aa49c}.rate-detail-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.rate-detail-tiers article{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:11px;border:1px solid #edf0eb;border-radius:8px;background:#fff}.rate-detail-tiers article>small{font-size:8px;color:#8b978e;margin-bottom:3px}.rate-detail-tiers article>strong{font-family:Manrope,sans-serif;font-size:11px;color:#405c46}.rate-detail-tiers article>span{font-size:8px;color:#9aa49c;margin-bottom:3px}.rate-detail-tiers .long-tier>strong:first-of-type{font-size:10px}.rate-detail-tiers .long-tier>strong:last-of-type{font-size:9px}.rate-detail-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.rate-detail-day{min-height:66px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;border:1px solid #edf0eb;border-radius:7px;background:#fbfcf9}.rate-detail-day.is-holiday{background:#fff8e9;border-color:#f2ead6}.rate-detail-day small{font-size:8px;color:#89958c;text-transform:capitalize}.rate-detail-day strong{font-size:9px;color:#4e6453}.rate-detail-day span{font-size:7px;color:#a0aaa1}.rate-detail-breakfast{display:flex;justify-content:space-between;align-items:center;padding:12px 0 2px;color:#829086;font-size:9px}.rate-detail-breakfast strong{color:#4d6552;font-size:10px}.rate-detail-note{margin:9px 0 0;color:#9ba49d;font-size:8px}.rate-detail-modal .modal-footer{padding-bottom:0}@media(max-width:600px){.rate-detail-modal{padding:18px 14px}.rate-detail-tiers{grid-template-columns:1fr}.rate-detail-tiers article{display:grid;grid-template-columns:1fr 1fr;align-items:baseline}.rate-detail-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rate-cabin-name{flex:1}.rate-open-indicator{margin-left:auto;color:#9aa69c;font-size:15px;font-weight:400}.rate-cabin-button:hover .rate-open-indicator{color:#557258}
.date-picker-actions{display:flex;align-items:center;justify-content:space-between;margin:8px 0 0}.date-picker-actions .text-button{padding-left:0}.date-picker-actions>span{font-size:8px;color:#96a098}.inline-date-picker{max-width:370px;margin-top:8px;padding:13px;border:1px solid #e4eae2;border-radius:10px;background:#fff;box-shadow:0 7px 22px rgba(37,52,44,.07)}.date-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.date-picker-header strong{font-family:Manrope,sans-serif;font-size:11px;color:#435348;text-transform:capitalize}.date-picker-targets{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.date-target{display:flex;align-items:center;justify-content:space-between;border:1px solid #e8ece6;border-radius:7px;background:#fbfcfa;padding:8px;color:#89948c;font:9px 'DM Sans',sans-serif;cursor:pointer}.date-target strong{color:#506055;font-size:9px}.date-target.active{border-color:#94ad91;background:#f0f5ee;color:#59765a}.date-target.active strong{color:#3f6243}.date-picker-weekdays,.date-picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.date-picker-weekdays{text-align:center;margin-bottom:4px}.date-picker-weekdays span{font-size:8px;color:#98a29a;padding:4px 0}.date-picker-day,.date-picker-blank{height:34px}.date-picker-day{position:relative;border:1px solid transparent;border-radius:7px;background:#fff;color:#4e5b52;font:10px 'DM Sans',sans-serif;cursor:pointer}.date-picker-day:hover:not(:disabled){background:#edf4eb;border-color:#dce8d9}.date-picker-day.today{box-shadow:inset 0 0 0 1px #9cb59b}.date-picker-day.is-start,.date-picker-day.is-end{background:#315c45;border-color:#315c45;color:#fff}.date-picker-day.in-range{background:#eaf2e8;color:#527255}.date-picker-day.busy:disabled{background:#f7eae7;color:#bd9286;text-decoration:line-through;cursor:not-allowed}.date-picker-day.busy.checkout-allowed:disabled{background:#fbf2dd;color:#a68b51;text-decoration:none}.date-picker-legend{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:8px;border-top:1px solid #eff1ed}.date-picker-legend>span{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:8px;color:#89958c}.date-picker-legend small{font-size:7px;color:#a0aaa1;text-align:right}
.date-picker-day.busy:not(:disabled){background:#fff6ef;color:#af7e6f}.date-picker-day.busy:not(:disabled)::after{content:'•';position:absolute;right:5px;top:0;color:#d29783;font-size:10px}.date-picker-day.busy.checkout-allowed:not(:disabled){background:#fbf5e6;color:#9b8550}
.date-picker-backdrop{align-items:center;justify-content:center}.date-picker-modal{width:min(820px,calc(100vw - 32px));max-height:92vh;overflow:auto;padding:26px 30px;background:#fff;border:1px solid #e8ece6;border-radius:16px;box-shadow:0 25px 70px rgba(27,42,32,.22)}.date-picker-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:17px;border-bottom:1px solid #edf0eb}.date-picker-modal-header h2{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.5px;margin:0;color:#304137}.date-picker-modal-header p:last-child{margin:5px 0 0;color:#8a958d;font-size:10px}.date-picker-modal .date-picker-header{margin:16px 0 13px}.date-picker-modal .date-picker-header strong{font-size:13px}.date-picker-modal .date-target{padding:10px 12px;font-size:10px}.date-picker-modal .date-target strong{font-size:10px}.date-picker-months{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:3px 0 8px}.date-picker-month h3{font-family:Manrope,sans-serif;font-size:12px;text-align:center;color:#47564b;margin:0 0 10px;text-transform:capitalize}.date-picker-month .date-picker-weekdays{gap:5px;margin-bottom:5px}.date-picker-month .date-picker-weekdays span{font-size:9px;padding:6px 0}.date-picker-month .date-picker-grid{gap:5px}.date-picker-month .date-picker-day,.date-picker-month .date-picker-blank{height:43px}.date-picker-month .date-picker-day{font-size:11px}.date-picker-month .date-picker-day.busy:not(:disabled)::after{right:7px;top:1px}.date-picker-modal .date-picker-legend{margin-top:12px}.date-picker-modal .date-picker-legend>span{font-size:9px}.date-picker-modal .date-picker-legend small{font-size:8px}.date-picker-modal-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0eb;margin-top:14px;padding-top:14px}.date-picker-modal-footer>span{font-size:10px;color:#607263;font-weight:600}.date-picker-modal-footer .button{height:34px;min-width:90px}@media(max-width:650px){.date-picker-modal{padding:20px 16px;width:calc(100vw - 20px)}.date-picker-months{grid-template-columns:1fr;gap:17px}.date-picker-month .date-picker-day,.date-picker-month .date-picker-blank{height:37px}.date-picker-modal-header h2{font-size:18px}}

/* Legibility and touch targets for everyday use */
body{font-size:16px;line-height:1.5;color:#25342c}
button,input,select,textarea{font:inherit}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #527d52;outline-offset:2px}
.sidebar{width:275px;padding:28px 19px 20px}
.brand-copy strong{font-size:22px}.brand-copy small{font-size:11px}
.property-switcher{min-height:58px}.property-switcher small{font-size:10px}.property-switcher strong{font-size:13px}
.nav-label{font-size:11px}.nav-item{min-height:48px;font-size:15px;padding:12px 14px;gap:13px}.nav-icon{font-size:20px;width:22px}.nav-count{font-size:11px;padding:3px 8px}
.help-card{padding:16px}.help-card strong{font-size:13px}.help-card p{font-size:12px}.profile-button{min-height:54px}.profile-button strong{font-size:12px}.profile-button small{font-size:11px}
.main-content{padding:0 34px 38px}.topbar{height:76px;margin-bottom:30px}.breadcrumbs{font-size:13px}.demo-badge{font-size:12px;padding:8px 11px}.avatar{width:36px;height:36px;font-size:14px}.top-avatar{width:36px;height:36px}
.eyebrow{font-size:11px;margin-bottom:9px}.page-heading h1{font-size:32px;letter-spacing:-.8px}.page-subtitle{font-size:14px;margin-top:9px}.page-heading{margin-bottom:26px}
.button{min-height:46px;height:auto;padding:11px 17px;border-radius:9px;font-size:14px;gap:9px}.button span{font-size:18px}.heading-actions{gap:11px}
.stats-grid{gap:16px;margin-bottom:22px}.stat-card{min-height:122px;padding:18px 19px}.stat-top{font-size:13px}.stat-icon{width:34px;height:34px;font-size:17px}.stat-card>strong{font-size:27px;margin:10px 0 3px}.stat-card>small{font-size:11px}
.panel{border-radius:14px}.calendar-toolbar{min-height:76px;padding:15px 20px}.period-control h2{font-size:17px;min-width:175px}.round-button{height:40px;width:40px;font-size:25px}.today-button{height:40px;padding:0 14px;font-size:13px}.search-box{height:42px;padding:0 12px;gap:10px}.search-box>span{font-size:22px}.search-box input{font-size:13px;width:210px}.filter-button{height:42px;padding:0 12px;gap:9px;font-size:13px}
.calendar-grid,.rates-grid{grid-template-columns:205px repeat(7,minmax(100px,1fr));min-width:905px}.calendar-corner,.day-heading{min-height:70px;padding:12px 10px}.calendar-corner{padding-left:19px;font-size:10px}.day-heading{gap:5px}.day-heading span{font-size:10px}.day-heading strong{font-size:17px}.cabin-label{min-height:102px;padding:14px 13px 13px 18px;gap:12px}.cabin-thumb{width:44px;height:44px;border-radius:10px;font-size:19px}.cabin-meta strong{font-size:13px}.cabin-meta small{font-size:11px;margin-top:5px}.day-cell{min-height:102px;padding:9px 8px}.day-price{font-size:11px;margin-bottom:7px}.day-booking{min-height:45px;padding:6px}.day-booking strong{font-size:11px}.day-booking small{font-size:9px}.holiday-tag{font-size:9px;padding:3px 5px}.calendar-legend{gap:20px;padding:15px 20px;font-size:12px}.legend-dot{width:9px;height:9px}.calendar-legend .legend-note{font-size:11px}.prototype-note{font-size:11px;margin-top:15px}
.list-toolbar{padding:17px 20px;gap:15px}.list-toolbar .search-box input{width:300px}.list-toolbar select{height:42px;padding:0 12px;font-size:12px}table{min-width:1050px}th{padding:14px 15px;font-size:10px}td{padding:15px;font-size:12px}.guest-avatar{width:34px;height:34px;font-size:12px}.guest-name{font-size:12px}.guest-email{font-size:10px}.source-pill{font-size:10px;padding:5px 8px}.status-select{min-height:38px;max-width:155px;padding:7px 9px;font-size:10px}.table-edit-button{min-height:38px;padding:7px 11px;font-size:11px}
.guest-filters{gap:8px;padding:14px 20px}.guest-filter{min-height:42px;padding:9px 13px;gap:8px;font-size:12px}.guest-filter span{min-width:22px;padding:3px 6px;font-size:10px}.guest-filter-note{padding:10px 20px 0;font-size:10px}.guest-grid{padding:20px;gap:15px}.guest-card{padding:17px;border-radius:12px}.guest-card h3{font-size:14px}.guest-card .contact{font-size:11px}.guest-status-label{font-size:10px;padding:5px 8px}.guest-card-stats{margin-top:17px;padding-top:14px;font-size:10px}.guest-card-stats strong{font-size:13px}
.cabin-info-banner{padding:17px 19px;margin-bottom:19px}.cabin-info-banner>span{width:40px;height:40px;font-size:21px}.cabin-info-banner strong{font-size:13px}.cabin-info-banner p{font-size:11px}.cabin-cards{gap:17px}.cabin-card-head{padding:18px}.cabin-card-head .cabin-thumb{width:48px;height:48px}.cabin-card-title h2{font-size:16px}.cabin-card-title p{font-size:11px}.cabin-edit-button{min-height:38px;padding:0 12px;font-size:11px}.cabin-card-body{padding:16px 18px 18px}.cabin-description{font-size:12px}.amenity-label{font-size:10px}.amenity-chip{padding:6px 9px;font-size:10px}.amenity-empty{font-size:11px}.pricing-summary-item small{font-size:9px}.pricing-summary-item strong{font-size:11px}.cabin-custom-detail{font-size:11px}
.rate-tip{padding:16px 18px;margin-bottom:18px}.rate-tip>span{font-size:22px}.rate-tip strong{font-size:13px}.rate-tip p{font-size:11px}.breakfast-rate-panel{padding:17px 20px;gap:17px}.breakfast-rate-panel>div strong{font-size:13px}.breakfast-rate-panel>div p{font-size:11px}.breakfast-rate-input{height:44px;width:180px;font-size:11px}.breakfast-rate-input input{font-size:13px}.rates-toolbar{height:58px;padding:0 20px}.rates-toolbar strong{font-size:14px}.rates-toolbar span{font-size:10px}.rates-corner,.rate-cabin{padding:15px;font-size:12px}.rate-day-head{padding:14px}.rate-day-head small{font-size:10px}.rate-day-head strong{font-size:13px}.rate-price{min-height:62px;font-size:12px}.rate-price span{font-size:9px}
.rate-cabin-button{font-size:12px}.rate-open-indicator{font-size:19px}.rate-detail-modal{width:min(760px,calc(100vw - 32px));padding:28px}.rate-detail-modal .modal-header h2,.modal-header h2{font-size:23px}.rate-detail-period{font-size:12px}.rate-detail-section h3{font-size:13px}.rate-detail-tiers article{padding:14px}.rate-detail-tiers article>small{font-size:10px}.rate-detail-tiers article>strong{font-size:14px}.rate-detail-tiers article>span{font-size:10px}.rate-detail-day{min-height:78px}.rate-detail-day small{font-size:10px}.rate-detail-day strong{font-size:12px}.rate-detail-day span{font-size:9px}.rate-detail-breakfast{font-size:12px}.rate-detail-breakfast strong{font-size:13px}.rate-detail-note{font-size:10px}
.reservation-modal{padding:30px 32px}.modal-header{padding-bottom:21px}.modal-header h2{font-size:24px}.modal-close{width:42px;height:42px;font-size:26px}.form-section{padding:22px 0}.form-section h3{font-size:14px;margin-bottom:15px}.form-grid{gap:15px}.field{gap:8px;font-size:12px}.field input,.field select,.field textarea{min-height:46px;padding:11px 12px;font-size:13px;border-radius:8px}.field textarea{min-height:90px}.field-hint{font-size:10px!important}.toggle-row{margin-top:16px;padding:14px}.toggle-row strong{font-size:12px}.toggle-row small{font-size:10px}.switch{width:42px;height:24px}.switch span:before{width:18px;height:18px}.switch input:checked+span:before{transform:translateX(18px)}.quote-preview{padding:14px}.quote-preview small{font-size:9px}.quote-preview strong{font-size:17px}.quote-preview span{font-size:10px}.modal-footer{padding-top:20px}.date-picker-actions .text-button{font-size:12px}.date-picker-actions>span{font-size:10px}
.date-picker-modal{width:min(940px,calc(100vw - 32px));padding:32px 36px}.date-picker-modal-header h2{font-size:26px}.date-picker-modal-header p:last-child{font-size:13px}.date-picker-modal .date-picker-header{margin:20px 0 17px}.date-picker-modal .date-picker-header strong{font-size:16px}.date-picker-modal .date-target{min-height:52px;padding:12px 15px;font-size:13px}.date-picker-modal .date-target strong{font-size:13px}.date-picker-months{gap:35px}.date-picker-month h3{font-size:16px;margin-bottom:13px}.date-picker-month .date-picker-weekdays span{font-size:12px;padding:8px 0}.date-picker-month .date-picker-grid{gap:7px}.date-picker-month .date-picker-day,.date-picker-month .date-picker-blank{height:50px}.date-picker-month .date-picker-day{font-size:14px}.date-picker-modal .date-picker-legend>span{font-size:11px}.date-picker-modal .date-picker-legend small{font-size:10px}.date-picker-modal-footer>span{font-size:13px}.date-picker-modal-footer .button{min-height:44px;height:44px}
.empty-state{padding:36px;font-size:14px}.toast{right:28px;bottom:28px;padding:14px 18px;font-size:13px}
:root{--muted:#5e6d62;--line:#dce3db}
.page-subtitle,.property-switcher small,.profile-button small,.stat-top,.stat-card>small,.calendar-corner,.day-heading span,.day-price,.calendar-legend,.prototype-note,.cabin-meta small,.cabin-card-title p,.cabin-description,.amenity-empty,.guest-email,.contact,.guest-card-stats,.result-count,.rate-tip p,.rates-toolbar span,.rate-day-head small,.rate-detail-period,.rate-detail-note,.date-picker-modal-header p:last-child,.date-picker-modal .date-picker-legend small,.field-hint{color:#5e6d62}
input::placeholder,textarea::placeholder{color:#66746a}
.calendar-grid,.rates-grid{border-color:#dce3db}.day-cell,.calendar-corner,.day-heading,.cabin-label,.rates-corner,.rate-day-head,.rate-cabin,.rate-price{border-color:#dfe5de}
.dashboard-notice{padding:14px 15px 13px;margin-bottom:12px;background:#eef4eb;border-color:#dce8d9}.notice-kicker{font-size:10px!important;letter-spacing:.09em;font-weight:700;color:#5a765e!important;margin:0 0 7px!important}.dashboard-notice>strong{display:block;font-size:14px!important;line-height:1.35;color:#304a36}.dashboard-notice>p:not(.notice-kicker){font-size:11px!important;line-height:1.45;color:#596b5c;margin:5px 0 0!important}.notice-pending{margin-top:10px;padding:8px 11px;border-radius:8px;background:#e3eee1;color:#4e704f;font-size:11px;font-weight:700}.notice-pending.has-pending{background:#fff1d8;color:#79613a}.help-action{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;margin-top:11px;padding:0 12px;border:0;border-radius:8px;background:var(--green);color:#fff;font:700 12px 'DM Sans',sans-serif;text-align:center;cursor:pointer}.help-action:hover{background:var(--green-dark)}.help-action span{font-size:18px}
@media(max-width:1100px){.main-content{padding:0 24px 32px}.sidebar{width:250px}}
@media(max-width:700px){body{font-size:15px}.sidebar{padding:12px 14px;gap:10px}.brand-mark{width:34px;height:34px}.brand-copy strong{font-size:19px}.main-nav{max-width:calc(100vw - 125px);overflow-x:auto;scrollbar-width:none}.nav-item{min-height:44px;padding:9px 11px;font-size:12px}.nav-icon{font-size:17px}.main-content{padding:0 14px 28px}.topbar{height:58px;margin-bottom:20px}.breadcrumbs{font-size:11px}.demo-badge{font-size:10px;padding:6px 8px}.page-heading h1{font-size:27px}.page-subtitle{font-size:12px}.button{min-height:44px;padding:10px 12px;font-size:12px}.stats-grid{gap:9px}.stat-card{padding:13px;min-height:105px}.stat-top{font-size:10px}.stat-card>strong{font-size:22px}.stat-card>small{font-size:9px}.calendar-grid,.rates-grid{grid-template-columns:165px repeat(7,minmax(92px,1fr));min-width:810px}.calendar-corner,.day-heading{min-height:62px}.cabin-label,.day-cell{min-height:92px}.cabin-meta strong{font-size:11px}.cabin-meta small{font-size:9px}.day-price{font-size:9px}.day-booking strong{font-size:10px}.day-booking small{font-size:8px}.calendar-toolbar{padding:12px}.period-control h2{font-size:14px}.round-button,.today-button{height:38px}.search-box{height:40px}.search-box input{font-size:12px}.filter-button{height:40px;font-size:11px}.calendar-legend{font-size:10px}.guest-filters{padding:10px}.guest-filter{min-height:40px;font-size:11px}.guest-filter-note{font-size:9px;padding-left:12px;padding-right:12px}.guest-grid{padding:12px}.cabin-card-title h2{font-size:14px}.cabin-description{font-size:11px}.reservation-modal{padding:21px 17px}.form-section h3{font-size:13px}.field{font-size:11px}.field input,.field select,.field textarea{font-size:12px;min-height:44px}.rate-detail-modal{padding:20px 16px}.date-picker-modal{padding:22px 17px;width:calc(100vw - 20px)}.date-picker-modal-header h2{font-size:21px}.date-picker-months{grid-template-columns:1fr;gap:17px}.date-picker-month .date-picker-day,.date-picker-month .date-picker-blank{height:42px}.date-picker-month .date-picker-day{font-size:12px}}

/* Statistics: readable cards, clear filters, and charts that work on small screens. */
.analytics-filters{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr auto;align-items:end;gap:14px;padding:18px 20px;margin-bottom:20px}
.analytics-filters .field{min-width:0;margin:0;font-size:12px}
.analytics-filters .field input,.analytics-filters .field select{width:100%;min-height:46px;padding:10px 11px;border:1px solid #dce3db;border-radius:8px;background:#fff;color:#34443a;font:13px 'DM Sans',sans-serif}
.analytics-filters .field input:disabled{background:#f5f7f3;color:#67746a}
.analytics-filters .button{white-space:nowrap}
.analytics-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.analytics-panel{min-width:0;overflow:hidden}
.analytics-wide{grid-column:1/-1}
.analytics-panel-heading{padding:18px 20px 0}
.analytics-panel-heading h2{margin:0;color:#34443a;font:700 16px Manrope,sans-serif}
.analytics-panel-heading p{margin:6px 0 0;color:#5e6d62;font-size:12px;line-height:1.5}
.analytics-chart{height:230px;padding:25px 20px 16px;display:flex;align-items:stretch;gap:12px;overflow-x:auto}
.analytics-bar-column{min-width:70px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}
.analytics-bar-column>strong{min-height:18px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5e6d62;font-size:10px;font-weight:600}
.analytics-bar-track{height:145px;width:min(42px,75%);display:flex;align-items:flex-end;border-radius:8px 8px 3px 3px;background:#f0f4ee;overflow:hidden}
.analytics-bar-track span{display:block;width:100%;min-height:2px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,#8eaf88,#5f8964)}
.analytics-bar-column small{color:#5e6d62;font-size:11px;text-transform:capitalize}
.analytics-source-list,.analytics-followup{padding:18px 20px 20px;display:grid;gap:16px}
.analytics-source-row>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px}
.analytics-source-row strong{color:#34443a;font-size:13px}
.analytics-source-row span{color:#5e6d62;font-size:11px;text-align:right}
.analytics-source-track{height:9px;border-radius:9px;background:#f0f3ef;overflow:hidden}
.analytics-source-track span{display:block;height:100%;border-radius:9px;background:#83a884}
.analytics-table{min-width:700px}
.analytics-table th{font-size:10px}
.analytics-table td{font-size:13px}
.analytics-table td strong{color:#34443a}
.analytics-followup>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #edf0ec}
.analytics-followup>div:last-child{padding-bottom:0;border-bottom:0}
.analytics-followup span{color:#5e6d62;font-size:12px}
.analytics-followup strong{color:#34443a;font-size:13px;text-align:right}
@media(max-width:1100px){.analytics-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-filters .button{grid-column:1/-1}.analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.analytics-filters{grid-template-columns:1fr;padding:14px}.analytics-filters .button{grid-column:auto}.analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid{grid-template-columns:1fr;gap:13px;margin-top:14px}.analytics-wide{grid-column:auto}.analytics-panel-heading{padding:15px 15px 0}.analytics-panel-heading h2{font-size:15px}.analytics-panel-heading p{font-size:11px}.analytics-chart{height:205px;padding:20px 14px 14px;gap:9px}.analytics-bar-column{min-width:64px}.analytics-bar-column>strong{font-size:9px}.analytics-bar-track{height:125px}.analytics-source-list,.analytics-followup{padding:16px}.analytics-source-row strong,.analytics-followup strong{font-size:12px}.analytics-source-row span,.analytics-followup span{font-size:11px}}

/* Keep the complete seven-day calendar visible on typical laptop screens. */
@media(min-width:701px){
  #calendar-view .page-heading{margin-bottom:14px}
  #calendar-view .stats-grid{gap:10px;margin-bottom:13px}
  #calendar-view .stat-card{min-height:78px;padding:10px 14px}
  #calendar-view .stat-top{font-size:11px}
  #calendar-view .stat-card>strong{font-size:22px;margin:6px 0 0}
  #calendar-view .stat-card>small{font-size:10px}
  #calendar-view .calendar-toolbar{min-height:58px;padding:8px 14px;gap:10px}
  #calendar-view .period-control h2{min-width:145px;font-size:15px}
  #calendar-view .calendar-corner,#calendar-view .day-heading{min-height:48px;padding-top:7px;padding-bottom:7px}
  #calendar-view .calendar-corner{font-size:10px}
  #calendar-view .day-heading span{font-size:10px}
  #calendar-view .day-heading strong{font-size:15px}
  #calendar-view .cabin-label,#calendar-view .day-cell{min-height:68px}
  #calendar-view .cabin-label{padding:8px 10px;gap:9px}
  #calendar-view .cabin-thumb{width:34px;height:34px;font-size:16px}
  #calendar-view .cabin-meta strong{font-size:12px}
  #calendar-view .cabin-meta small{font-size:10px;margin-top:3px}
  #calendar-view .day-cell{padding:6px}
  #calendar-view .day-price{font-size:10px;margin-bottom:3px}
  #calendar-view .day-booking{min-height:35px;padding:4px 5px}
  #calendar-view .day-booking strong{font-size:11px}
  #calendar-view .day-booking small{font-size:9px;margin-top:2px}
  #calendar-view .holiday-tag{font-size:9px;top:5px;right:4px}
  #calendar-view .calendar-legend{padding:10px 14px;font-size:11px}
  #calendar-view .calendar-scroll{overflow-x:auto}
}
@media(min-width:1101px){#calendar-view .calendar-grid{grid-template-columns:minmax(170px,1fr) repeat(7,minmax(0,1fr));min-width:0}}
@media(min-width:701px) and (max-width:1100px){
  #calendar-view .calendar-toolbar{align-items:center;flex-direction:row;flex-wrap:wrap}
  #calendar-view .toolbar-right{width:auto;flex:1;justify-content:flex-end}
  #calendar-view .toolbar-right .search-box{flex:0 1 180px}
  #calendar-view .toolbar-right .search-box input{width:100%}
  #calendar-view .period-control h2{min-width:120px;font-size:13px}
  #calendar-view .calendar-grid{grid-template-columns:145px repeat(7,minmax(76px,1fr));min-width:677px}
}

/* Calendar colors communicate occupancy state; cabin names identify each row. */
.cabin-thumb{background:#eaf1e8!important;color:#536f57!important}
.cabin-thumb.tone-2,.cabin-thumb.tone-3,.cabin-thumb.tone-4,.cabin-thumb.tone-5{background:#eaf1e8;color:#536f57}
.day-booking.booking-confirmed{background:#e9f2e8;border-left-color:#5f8964;color:#35583b}
.day-booking.booking-warm{background:#fff0e3;border-left-color:#cf864d;color:#784b27}
.day-booking.booking-blocked{background:#eaf0f6;border-left-color:#718ca6;color:#425e78}
.calendar-legend{flex-wrap:wrap;row-gap:9px}
.calendar-legend>span{white-space:nowrap}
.cabin-thumb svg{display:block;width:27px;height:27px;overflow:visible}
.legend-dot{width:11px;height:11px;flex:0 0 11px}
.legend-dot.occupied{background:#6f9b73}
.legend-dot.pending{background:#cf864d}
.legend-dot.blocked{background:#7894ad}
.legend-dot.available{background:#fff;border:2px solid #cbd5cb}
.legend-dot.holiday{background:#d4b96e}
.legend-dot.date-busy{background:#d29783}
.calendar-legend .legend-note{margin-left:auto;color:#596b5c}
.status-select.status-confirmada{background:#eaf3ea;color:#426b48}
.status-select.status-pendiente{background:#fff0e3;color:#784b27}
.status-select.status-consulta{background:#edf2f6;color:#506b83}
.status-select.status-cancelada{background:#f7eae7;color:#8d5145}
.main-content{padding-top:24px}
@media(max-width:700px){.main-content{padding-top:14px}}
.reservation-addons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.reservation-addons .toggle-row{height:100%;margin:0;gap:9px}
.reservation-addons .toggle-row>span{min-width:0}
.reservation-addons .toggle-row strong{font-size:13px}
.reservation-addons .toggle-row small{font-size:11px;line-height:1.4}
.rate-detail-late-checkout{display:flex;justify-content:space-between;align-items:center;padding:12px 0 2px;color:#829086;font-size:9px}
.rate-detail-late-checkout strong{color:#4d6552;font-size:10px}
@media(max-width:600px){.reservation-addons{grid-template-columns:1fr}}

/* Keep navigation and urgent account details in place while each section scrolls. */
@media(min-width:701px){
  body{height:100vh;overflow:hidden}
  .app-shell{height:100vh;min-height:0;overflow:hidden}
  .sidebar{position:sticky;top:0;height:100vh;min-height:0;overflow:hidden}
  .sidebar>.brand{flex:0 0 auto}
  .sidebar>.main-nav{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cbd8cb transparent;padding:0 3px 8px 0}
  .sidebar>.main-nav::-webkit-scrollbar{width:6px}
  .sidebar>.main-nav::-webkit-scrollbar-thumb{border-radius:6px;background:#cbd8cb}
  .sidebar>.main-nav::-webkit-scrollbar-track{background:transparent}
  .sidebar>.sidebar-bottom{flex:0 0 auto;margin-top:auto;padding-top:8px;background:#fbfcf9}
  .main-content{height:100vh;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
}
@media(max-width:700px){
  .app-shell{height:auto;min-height:100vh;overflow:visible}
  .sidebar,.main-content{height:auto;min-height:0;overflow:visible}
}

.reservation-row-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}
.table-delete-button{min-height:38px;padding:7px 11px;border:1px solid #ecd9d5;border-radius:7px;background:#fff;color:#98564c;font:600 11px 'DM Sans',sans-serif;cursor:pointer}
.table-delete-button:hover{background:#fff4f1;border-color:#d8aaa2}
.delete-confirm-backdrop{z-index:30;align-items:center;justify-content:center;padding:18px}
.delete-confirm-modal{width:min(480px,100%);padding:30px;background:#fff;border:1px solid #e8ece6;border-radius:18px;box-shadow:0 25px 70px rgba(27,42,32,.22)}
.delete-confirm-modal h2{margin:0 0 12px;color:#304137;font:700 23px Manrope,sans-serif}
.delete-confirm-modal p{margin:0 0 12px;color:#5e6d62;font-size:15px;line-height:1.5}
.delete-confirm-modal .delete-confirm-summary{padding:12px 14px;background:#f2f5f0;border-radius:9px;color:#354a3b;font-weight:700}
.delete-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}
.button-danger{border:1px solid #98564c;background:#98564c;color:#fff}
.button-danger:hover{border-color:#82443c;background:#82443c}
.reservation-modal-footer{justify-content:space-between;align-items:center;gap:14px}
.reservation-modal-footer-actions{display:flex;justify-content:flex-end;gap:8px}
.reservation-delete-action{flex:0 0 auto}
@media(max-width:520px){.reservation-modal-footer{align-items:stretch;flex-direction:column-reverse}.reservation-modal-footer-actions{width:100%}.reservation-modal-footer-actions .button{flex:1}.reservation-delete-action{width:100%}}
@media(max-width:520px){.delete-confirm-modal{padding:24px 20px}.delete-confirm-modal h2{font-size:20px}.delete-confirm-actions{flex-direction:column-reverse}.delete-confirm-actions .button{width:100%}}

/* Mobile navigation: full-width, easy-to-tap sections that stay available while scrolling. */
@media(max-width:700px){
  .app-shell{display:block;min-height:100vh;overflow:visible}
  .sidebar{
    position:sticky;top:0;z-index:25;width:100%;height:auto;min-height:0;overflow:visible;
    display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:42px auto auto;
    align-items:center;gap:0;padding:6px 12px 0;background:rgba(251,252,249,.98);
    border-right:0;border-bottom:1px solid #dce5da;box-shadow:0 4px 14px rgba(36,49,43,.07)
  }
  .brand{grid-column:1;grid-row:1;width:auto;min-width:0;max-width:160px;justify-content:flex-start;padding:0 2px}
  .brand-logo{width:132px;max-width:100%;height:38px;object-fit:contain;object-position:left center}
  .sidebar-bottom{display:contents}
  .profile-button{grid-column:2;grid-row:1;width:auto;min-height:40px;padding:0;border:0;gap:7px;justify-content:flex-end}
  .profile-button>span:last-child{display:block;text-align:right}
  .profile-button strong{font-size:11px;white-space:nowrap}
  .profile-button small{display:none}
  .avatar{width:38px;height:38px;font-size:13px}
  .main-nav{
    grid-column:1/-1;grid-row:2;display:flex;flex-direction:row;align-items:center;gap:6px;
    width:calc(100% + 24px);max-width:none;min-width:0;margin:0 -12px;padding:5px 12px 8px;
    overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#cbd8cb transparent;
    overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:pan-x
  }
  .main-nav::-webkit-scrollbar{height:4px;display:block}
  .main-nav::-webkit-scrollbar-thumb{border-radius:4px;background:#cbd8cb}
  .nav-label{display:none}
  .nav-item{
    flex:0 0 auto;min-height:46px;padding:8px 12px;gap:8px;white-space:nowrap;
    border:1px solid #e3e9e1;border-radius:10px;background:#fff;font-size:13px;scroll-snap-align:start
  }
  .nav-item.active{border-color:#cbdcc9;background:#eaf1e9;box-shadow:0 1px 4px rgba(49,92,69,.08)}
  .nav-icon{width:20px;font-size:17px}
  .nav-count{display:inline-flex;margin-left:0;padding:2px 7px;font-size:10px}
  .dashboard-notice{
    grid-column:1/-1;grid-row:3;display:flex;align-items:center;gap:7px;min-width:0;
    margin:2px 1px 8px;padding:6px 8px;border-radius:10px;overflow:hidden
  }
  .dashboard-notice .notice-kicker{display:none}
  .dashboard-notice>strong{flex:1 1 70px;min-width:0;font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dashboard-notice>p:not(.notice-kicker){display:none}
  .notice-pending{flex:0 1 auto;margin:0;padding:4px 7px;max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
  .help-action{flex:0 0 auto;width:auto;min-height:34px;margin:0;padding:0 8px;font-size:10px;white-space:nowrap}
  .main-content{min-width:0;height:auto;min-height:0;overflow:visible;padding:16px 14px calc(28px + env(safe-area-inset-bottom))}
  .modal-backdrop{z-index:40}
  .page-heading h1{font-size:25px}
  .page-subtitle{font-size:13px}
  .button{min-height:46px;font-size:13px}
}

#calendar-view .period-control h2{display:flex;align-items:center;justify-content:center;min-width:205px;min-height:42px;margin:0 0 0 5px;padding:8px 14px;border:1px solid #dce8dc;border-radius:11px;background:linear-gradient(180deg,#fff 0%,#f1f6f0 100%);box-shadow:0 2px 8px rgba(49,92,69,.08);color:#315c45;font:700 14px Manrope,sans-serif;letter-spacing:-.2px;text-align:center;white-space:nowrap}
@media(max-width:700px){#calendar-view .period-control h2{width:100%;min-width:0;margin:4px 0 0;justify-content:flex-start;text-align:left}}

/* Private sign-in for the shared Arauca account. */
.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#eef4eb 0,#f6f7f3 58%)}
.auth-card{width:min(100%,460px);padding:38px;border:1px solid #e2e9e0;border-radius:20px;background:#fff;box-shadow:0 18px 55px rgba(36,49,43,.09)}
.auth-mark{width:54px;height:54px;display:grid;place-items:center;margin-bottom:22px;border-radius:16px;background:#eaf1e8;color:#315c45;font-size:29px}
.auth-card .eyebrow{margin:0 0 7px;color:#6d8370}
.auth-card h1{margin:0;color:#25342c;font:800 34px Manrope,sans-serif;letter-spacing:-1px}
.auth-description{margin:10px 0 25px;color:#5e6d62;font-size:15px;line-height:1.5}
.auth-form{display:grid;gap:15px}
.auth-form .field{margin:0;font-size:13px}
.auth-form .field input,.auth-form .field select{min-height:50px;margin-top:7px;padding:12px 13px;border:1px solid #dce3db;border-radius:9px;background:#fff;color:#34443a;font:15px 'DM Sans',sans-serif}
.auth-submit{width:100%;min-height:50px;font-size:15px}
.auth-submit:disabled{opacity:.7;cursor:wait}
.auth-error{margin:0;padding:12px 13px;border-radius:9px;background:#fbefec;color:#8a4e41;font-size:13px;line-height:1.45}
.first-setup{margin-top:23px;padding-top:17px;border-top:1px solid #e8ebe5}
.first-setup summary{color:#315c45;font-size:13px;font-weight:700;cursor:pointer}
.first-setup>p{color:#5e6d62;font-size:12px;line-height:1.5}
.first-setup .auth-form{margin-top:15px}
.profile-button{cursor:pointer;font-family:'DM Sans',sans-serif}
.profile-button:hover strong{color:#315c45}
.brand{width:100%;justify-content:center;padding:2px 6px 24px}
.brand-logo{display:block;width:100%;max-width:100%;height:auto}
.auth-card .eyebrow{text-align:center;margin-bottom:10px}
.auth-card h1{display:flex;justify-content:center;line-height:1;margin:0 0 12px}
.auth-logo{display:block;width:min(100%,285px);height:auto;margin:0}
.auth-description{text-align:center;margin:0 0 25px}
@media(max-width:520px){.auth-screen{padding:16px}.auth-card{padding:27px 22px;border-radius:16px}.auth-card h1{font-size:30px}.auth-description{font-size:14px}}
@media(max-width:700px){.brand{justify-content:flex-start;padding:0 4px 10px}.brand-logo{width:100%;max-width:100%}.auth-logo{width:min(100%,270px)}}

.guest-list-toolbar{align-items:center}
.guest-list-tools{display:flex;align-items:center;gap:16px;margin-left:auto}
.view-toggle{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #e4eae2;border-radius:9px;background:#f7f9f6}
.view-toggle-button{min-height:40px;padding:8px 13px;border:0;border-radius:7px;background:transparent;color:#5e6d62;font:600 13px 'DM Sans',sans-serif;cursor:pointer;white-space:nowrap}
.view-toggle-button:hover{background:#edf3eb}
.view-toggle-button.active{background:#e2ede1;color:#315c45;box-shadow:0 1px 3px rgba(36,49,43,.08)}
.guest-list table{min-width:740px}
.guest-list td{vertical-align:middle}
.guest-list td .guest-email{display:block;margin-top:4px}
.guest-list .guest-status-label{font-size:11px;padding:5px 9px}
.guest-list .guest-cell{min-width:190px}
.guest-list .guest-cell .guest-avatar{flex:0 0 36px}
@media(max-width:700px){.guest-list-toolbar{align-items:stretch}.guest-list-tools{width:100%;justify-content:space-between;margin-left:0}.view-toggle-button{min-height:42px;padding:8px 14px}.guest-list table{min-width:700px}}
.guest-profile-backdrop{z-index:25}
.guest-profile-modal{height:100%;border-left:1px solid #e8ece6}
.guest-profile-action-row{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:12px}
.guest-profile-action-row .text-button{font-size:14px}
.guest-profile-action-row small,.guest-profile-privacy{color:#647268;font-size:12px;line-height:1.45}
.guest-profile-privacy{display:block;margin-top:8px}
.guest-profile-modal .rate-detail-period{font-size:13px}
.guest-profile-overview{padding:15px 0 2px}
.guest-profile-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.guest-profile-contact-item{min-width:0;padding:11px 12px;border:1px solid #e7ece5;border-radius:9px;background:#fff}
.guest-profile-contact-item small,.guest-profile-contact-item strong{display:block;overflow-wrap:anywhere}
.guest-profile-contact-item small{margin-bottom:4px;color:#849088;font-size:10px}
.guest-profile-contact-item strong{color:#34443a;font-size:13px}
.guest-profile-secondary-heading{padding:17px 0 0;color:#849088;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.guest-profile-stays{display:grid;gap:8px}
.guest-history-card{padding:11px 12px;border:1px solid #e7ece5;border-radius:9px;background:#fff}
.guest-history-heading,.guest-history-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
.guest-history-heading>strong{color:#34443a;font-size:13px}
.guest-history-status{padding:4px 7px;border-radius:20px;background:#edf1ed;color:#67736a;font-size:10px;font-weight:700}
.guest-history-status.is-confirmada{background:#eaf3ea;color:#55765b}.guest-history-status.is-pendiente-de-sena{background:#fbf2dd;color:#947443}.guest-history-status.is-cancelada{background:#f7eae7;color:#a66d62}.guest-history-status.is-consulta{background:#eaf1f7;color:#5b7185}
.guest-history-dates{margin:5px 0 2px;color:#354c3d;font-size:12px;font-weight:700}
.guest-history-meta,.guest-history-note{margin:0;color:#78847a;font-size:10px;line-height:1.45}
.guest-history-footer{margin-top:8px;padding-top:8px;border-top:1px solid #eff1ed}
.guest-history-amount strong,.guest-history-amount small{display:block}
.guest-history-amount strong{color:#315c45;font-size:12px}
.guest-history-amount small{margin-top:2px;color:#849088;font-size:9px}
.guest-history-footer .text-button{font-size:10px}
.guest-profile-empty{margin:0;color:#78847a;font-size:11px}
.guest-history-note{margin-top:7px;padding-top:7px;border-top:1px dashed #e7ece5}
.date-picker-actions{justify-content:flex-start;gap:14px;margin-top:12px}
.date-picker-open-button{min-height:44px;padding:0 15px;border-color:#bfd0bd;background:#f0f5ee;color:#315c45;font-size:12px;font-weight:700}
.date-picker-open-button:hover{border-color:#91ad91;background:#e6efe4}
.date-picker-open-button span{font-size:16px}
.date-picker-actions>#date-range-summary{color:#53675a;font-size:11px;font-weight:600}
.date-picker-day{touch-action:none;user-select:none}
@media(max-width:520px){.date-picker-actions{align-items:stretch;flex-direction:column;gap:7px}.date-picker-open-button{width:100%}.date-picker-actions>#date-range-summary{font-size:11px}}
.guest-residence{margin:4px 0 0;color:#627368;font-size:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.guest-profile-modal{width:100%;padding:21px 17px}.guest-profile-action-row .text-button{font-size:13px}.guest-profile-action-row small,.guest-profile-privacy{font-size:11px}.guest-profile-contact-item{padding:9px}.guest-profile-contact-item strong{font-size:12px}.guest-history-card{padding:10px}}
.reservation-table-wrap table{min-width:980px}
@media(min-width:1300px){
  .reservation-table-wrap table{width:100%;min-width:0;table-layout:fixed}
  .reservation-table-wrap th,.reservation-table-wrap td{padding:12px 12px}
  .reservation-table-wrap th:nth-child(1){width:17%}
  .reservation-table-wrap th:nth-child(2){width:9%}
  .reservation-table-wrap th:nth-child(3){width:12%}
  .reservation-table-wrap th:nth-child(4){width:7%}
  .reservation-table-wrap th:nth-child(5){width:10%}
  .reservation-table-wrap th:nth-child(6){width:17%}
  .reservation-table-wrap th:nth-child(7){width:12%}
  .reservation-table-wrap th:nth-child(8){width:8%}
  .reservation-table-wrap th:nth-child(9){width:8%}
  .reservation-table-wrap th{letter-spacing:.035em}
  .reservation-table-wrap td{font-size:11px;overflow-wrap:anywhere;vertical-align:middle}
  .reservation-table-wrap .source-pill{display:inline-block;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
  .reservation-table-wrap td:nth-child(6){padding-right:16px}
  .reservation-table-wrap td:nth-child(7){padding-left:16px}
  .reservation-table-wrap .guest-cell{gap:7px}
  .reservation-table-wrap .guest-cell .guest-avatar{flex:0 0 30px;width:30px;height:30px}
  .reservation-table-wrap .status-select{width:100%;min-width:0;padding:6px 5px;font-size:10px}
  .reservation-table-wrap .table-edit-button{min-width:0;padding:7px 9px}
}

@media(max-width:700px){
  .brand{width:auto;max-width:160px;justify-content:flex-start;padding:0 2px}
  .brand-logo{width:132px;max-width:100%;height:38px;object-fit:contain;object-position:left center}
  .modal-backdrop,.guest-profile-backdrop{z-index:40}
}

.reservation-conditions{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;line-height:1.35;overflow-wrap:anywhere}
.reservation-conditions>span{display:block;max-width:100%;color:#52645a;overflow-wrap:anywhere}
.reservation-condition-note{display:block;margin-top:2px;color:#718077;font-size:10px;line-height:1.4;overflow-wrap:anywhere}

#use-quote-button{flex:0 0 auto;min-height:48px;padding:0 20px;border:1px solid #315c45;border-radius:9px;background:#315c45;color:#fff;font-size:14px;font-weight:700;box-shadow:0 2px 5px rgba(36,75,55,.14)}
#use-quote-button:hover{background:#244b37;border-color:#244b37;text-decoration:none}
#use-quote-button:focus-visible{outline:3px solid #b7ceb7;outline-offset:2px}
@media(max-width:520px){.quote-preview{align-items:stretch;flex-direction:column}#use-quote-button{width:100%}}

.guest-profile-name{border:0;padding:0;background:transparent;color:#34443a;font:inherit;font-weight:700;text-align:left;cursor:pointer}
.guest-profile-name:hover{color:#315c45;text-decoration:underline;text-underline-offset:3px}
.guest-profile-name:focus-visible{outline:2px solid #8eab90;outline-offset:3px;border-radius:2px}
.guest-profile-backdrop{justify-content:center;align-items:center;padding:20px}
.guest-profile-modal{width:min(620px,100%);height:auto;max-height:calc(100vh - 40px);border:1px solid #e8ece6;border-radius:16px;box-shadow:0 20px 60px rgba(28,43,34,.22)}
@media(max-width:700px){.guest-profile-backdrop{padding:12px}.guest-profile-modal{width:100%;max-height:calc(100vh - 24px);border-radius:14px;padding:21px 17px}}
.pricing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
.booking-commission-panel .percent-rate-input{max-width:150px}
@media(max-width:520px){.pricing-summary{grid-template-columns:1fr 1fr}.booking-commission-panel .button{width:100%}}
.quick-quote-backdrop{z-index:50;display:flex;justify-content:center;align-items:center;padding:18px}
.quick-quote-modal{width:min(760px,100%);max-height:calc(100vh - 36px);overflow:hidden;padding:22px 24px 16px;background:#fbfcf9;border:1px solid #e5ebe4;border-radius:18px;box-shadow:0 22px 64px rgba(28,43,34,.24)}
.quick-quote-modal .modal-header{align-items:flex-start;padding-bottom:15px;border-bottom:1px solid #e9eee7}
.quick-quote-modal .modal-header h2{margin:0;color:#2c4034;font:700 23px Manrope,sans-serif;letter-spacing:-.5px}
.quick-quote-modal .modal-header p{margin:5px 0 0;color:#718077;font-size:13px}
.quick-quote-layout{display:grid;grid-template-columns:minmax(210px,.78fr) minmax(0,1.22fr);gap:16px;margin:16px 0 12px}
.quick-quote-options,.quick-quote-date-panel{min-width:0;padding:15px;border:1px solid #e6ece4;border-radius:13px;background:#fff}
.quick-quote-options{background:#f7f9f5}
.quick-quote-options h3,.quick-quote-date-panel h3{margin:0 0 12px;color:#425348;font:700 14px Manrope,sans-serif}
.quick-quote-options>.field{margin:0}
.quick-quote-options .field{gap:5px;color:#657369;font-size:11px;font-weight:600}
.quick-quote-options .field input,.quick-quote-options .field select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dfe7de;border-radius:8px;background:#fff;color:#34443a;font:13px 'DM Sans',sans-serif}
.quick-quote-fields{display:grid;grid-template-columns:minmax(78px,.72fr) minmax(110px,1.28fr);gap:9px;margin:10px 0 0}
.quick-quote-fields .field{min-width:0;gap:5px;color:#657369;font-size:11px;font-weight:600}
.quick-quote-fields .field input,.quick-quote-fields .field select{width:100%;min-height:42px;padding:8px 9px;border:1px solid #dfe7de;border-radius:8px;background:#fff;color:#34443a;font:13px 'DM Sans',sans-serif}
.quick-quote-addons{display:grid;gap:7px;margin:13px 0 0;padding:11px 12px;border-radius:10px;background:#edf3eb}
.quick-quote-addons>span{margin-bottom:1px;color:#758177;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.quick-quote-addons label{display:flex;align-items:center;gap:8px;color:#425b48;font-size:12px;font-weight:600;cursor:pointer}
.quick-quote-addons input{width:17px;height:17px;margin:0;accent-color:#315c45}
.quick-quote-date-selectors{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 9px}
.quick-quote-date-selectors button{min-width:0;min-height:47px;padding:7px 10px;border:1px solid #e0e8df;border-radius:9px;background:#f9fbf8;text-align:left;cursor:pointer}
.quick-quote-date-selectors button.active{border-color:#86a487;background:#edf4ec;box-shadow:0 0 0 2px rgba(141,169,143,.13)}
.quick-quote-date-selectors span,.quick-quote-date-selectors strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.quick-quote-date-selectors span{color:#78867b;font-size:10px}
.quick-quote-date-selectors strong{margin-top:3px;color:#315c45;font-size:13px}
.quick-quote-calendar{padding:8px 10px 9px;border:1px solid #e5ebe4;border-radius:11px;background:#fff}
.quick-quote-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.quick-quote-calendar-header strong{text-transform:capitalize;color:#435348;font-size:13px;font-weight:700}
.quick-quote-calendar-header button{width:32px;height:32px;border:1px solid #e4eae3;border-radius:8px;background:#fbfcfa;color:#47654d;font-size:21px;cursor:pointer}
.quick-quote-calendar-instruction{min-height:16px;margin:0 0 5px;color:#7b887e;font-size:10px}
.quick-quote-months{display:grid;grid-template-columns:minmax(0,1fr)}
.quick-quote-weekdays,.quick-quote-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.quick-quote-weekdays{margin-bottom:3px;text-align:center}
.quick-quote-weekdays span{padding:2px 0;color:#829086;font-size:10px;font-weight:600}
.quick-quote-day,.quick-quote-day-blank{height:33px;min-width:0}
.quick-quote-day{border:1px solid transparent;border-radius:8px;background:#fff;color:#45564a;font:600 12px 'DM Sans',sans-serif;cursor:pointer;touch-action:none;user-select:none}
.quick-quote-day:hover{border-color:#c9d9c8;background:#f0f5ef}
.quick-quote-day.in-range{border-radius:5px;background:#e7f0e6;color:#345a3d}
.quick-quote-day.is-start,.quick-quote-day.is-end{border-color:#315c45;background:#315c45;color:#fff}
.quick-quote-day:focus-visible,.quick-quote-date-selectors button:focus-visible{outline:2px solid #8da98f;outline-offset:1px}
.quick-quote-result{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr);align-items:center;gap:14px;padding:13px 15px;border:1px solid #dfe9dd;border-radius:12px;background:linear-gradient(105deg,#eff5ed,#f7f9f5)}
.quick-quote-result .quick-quote-total{min-width:0}
.quick-quote-result-heading{display:flex;align-items:center;gap:8px}
.quick-quote-result-heading small{color:#718676;font-size:10px;font-weight:700;letter-spacing:.07em}
.quick-quote-result-heading span{padding:3px 7px;border-radius:999px;background:#e4eee1;color:#56745a;font-size:9px;font-weight:700;white-space:nowrap}
.quick-quote-result .quick-quote-total>strong{display:block;margin-top:3px;color:#315c45;font:700 27px Manrope,sans-serif;white-space:nowrap}
.quick-quote-result.is-message .quick-quote-total>strong{max-width:100%;font-size:16px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
.quick-quote-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:6px}
.quick-quote-breakdown-item{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;min-height:43px;padding:7px 9px;border:1px solid #e4ece2;border-radius:8px;background:rgba(255,255,255,.78)}
.quick-quote-breakdown-item span{color:#718077;font-size:9px;line-height:1.25}
.quick-quote-breakdown-item strong{color:#3f5745;font-size:11px;line-height:1.2}
.quick-quote-breakdown.is-empty{display:flex;align-items:center;min-height:42px;padding:8px 10px;color:#768379;font-size:11px;line-height:1.4}
.quick-quote-no-save{margin:8px 2px 0;color:#89948b;font-size:10px;text-align:right}
@media(max-width:700px){.quick-quote-backdrop{padding:10px}.quick-quote-modal{max-height:calc(100vh - 20px);padding:16px;border-radius:15px}.quick-quote-modal .modal-header h2{font-size:21px}.quick-quote-layout{grid-template-columns:minmax(0,1fr);gap:10px;margin:11px 0 9px}.quick-quote-options,.quick-quote-date-panel{padding:11px}.quick-quote-options h3,.quick-quote-date-panel h3{margin-bottom:8px}.quick-quote-options>.field{max-width:none}.quick-quote-fields{margin-top:8px}.quick-quote-addons{grid-template-columns:1fr 1fr;align-items:center;margin-top:9px;padding:8px 10px}.quick-quote-addons>span{grid-column:1/-1}.quick-quote-day,.quick-quote-day-blank{height:29px}.quick-quote-result{grid-template-columns:1fr;gap:9px;padding:10px 12px}.quick-quote-result .quick-quote-total{display:flex;align-items:center;justify-content:space-between;gap:8px}.quick-quote-result .quick-quote-total>strong{margin:0;font-size:22px}.quick-quote-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-quote-breakdown-item{min-height:38px}}
@media(max-width:420px){.quick-quote-modal{padding:12px}.quick-quote-modal .modal-header{padding-bottom:9px}.quick-quote-modal .modal-header p{font-size:11px}.quick-quote-layout{gap:8px;margin:8px 0}.quick-quote-options,.quick-quote-date-panel{padding:9px}.quick-quote-options h3,.quick-quote-date-panel h3{font-size:13px}.quick-quote-addons{grid-template-columns:1fr 1fr;gap:6px;padding:7px}.quick-quote-addons label{font-size:10px}.quick-quote-day,.quick-quote-day-blank{height:25px}.quick-quote-weekdays span{font-size:9px}.quick-quote-result{gap:7px;padding:8px}.quick-quote-result .quick-quote-total>strong{font-size:20px}.quick-quote-result-heading{gap:5px}.quick-quote-result-heading small{font-size:9px}.quick-quote-result-heading span{font-size:8px}.quick-quote-breakdown{gap:5px}.quick-quote-breakdown-item{min-height:34px;padding:5px 7px}.quick-quote-breakdown-item span{font-size:8px}.quick-quote-breakdown-item strong{font-size:10px}.quick-quote-no-save{margin-top:5px;font-size:9px}}
@media(max-height:720px){.quick-quote-modal{padding-top:12px;padding-bottom:10px}.quick-quote-modal .modal-header{padding-bottom:9px}.quick-quote-layout{margin-top:9px;margin-bottom:8px}.quick-quote-options,.quick-quote-date-panel{padding-top:10px;padding-bottom:10px}.quick-quote-options h3,.quick-quote-date-panel h3{margin-bottom:7px}.quick-quote-date-selectors button{min-height:40px}.quick-quote-day,.quick-quote-day-blank{height:26px}.quick-quote-addons{margin-top:8px;padding:7px 9px}.quick-quote-result{padding:8px 12px}.quick-quote-result>div>strong{font-size:22px}}
@media(max-height:600px){.quick-quote-modal{padding-top:8px;padding-bottom:7px}.quick-quote-modal .modal-header{padding-bottom:6px}.quick-quote-layout{gap:7px;margin:6px 0}.quick-quote-options,.quick-quote-date-panel{padding:7px}.quick-quote-options h3,.quick-quote-date-panel h3{margin-bottom:5px;font-size:12px}.quick-quote-fields{margin-top:5px}.quick-quote-fields .field input,.quick-quote-fields .field select,.quick-quote-options .field input,.quick-quote-options .field select{min-height:34px}.quick-quote-addons{gap:4px;margin-top:5px;padding:5px 7px}.quick-quote-date-selectors{margin-bottom:5px}.quick-quote-date-selectors button{min-height:34px}.quick-quote-calendar{padding:4px 7px}.quick-quote-calendar-header button{width:27px;height:27px}.quick-quote-calendar-instruction{min-height:12px;margin-bottom:2px;font-size:9px}.quick-quote-day,.quick-quote-day-blank{height:22px}.quick-quote-result{padding:6px 9px}.quick-quote-result>div>strong{font-size:20px}.quick-quote-no-save{margin-top:4px}}
@media(max-width:700px) and (max-height:760px){.quick-quote-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px 10px;align-items:end}.quick-quote-options h3{grid-column:1/-1;margin:0}.quick-quote-options>.field{grid-column:1/-1}.quick-quote-fields{grid-column:1/-1;margin:0}.quick-quote-addons{grid-column:1/-1;grid-template-columns:1fr 1fr;margin:0}.quick-quote-date-panel{padding-top:8px;padding-bottom:8px}}
@media(max-width:700px) and (max-height:640px){.quick-quote-options,.quick-quote-date-panel{padding:6px}.quick-quote-options h3,.quick-quote-date-panel h3{margin-bottom:4px}.quick-quote-fields .field input,.quick-quote-fields .field select,.quick-quote-options .field input,.quick-quote-options .field select{min-height:31px;padding:5px 7px}.quick-quote-addons{gap:3px;padding:4px 6px}.quick-quote-day,.quick-quote-day-blank{height:20px}}
@media(max-width:700px){#rates-view .page-heading{align-items:stretch;flex-wrap:wrap}#rates-view .heading-actions{width:100%;flex-wrap:wrap;gap:7px}#quick-quote-open{flex:1 0 100%}#rates-prev,#rates-next{flex:1}}

.rate-price.is-special{background:#fffaf0;color:#725b31;box-shadow:inset 3px 0 #d2ae62}
.rate-price.is-special:hover{background:#fff3d9;color:#624b22}
.rate-price.is-special span{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 6px;border-radius:999px;background:#f7ebca;color:#765d2d;font-size:8px;font-weight:700;line-height:1.2}
.rate-price.is-special span::before{content:"";width:5px;height:5px;border-radius:50%;background:#bd9140}

.reservation-preview-trigger{border:0;padding:0;background:transparent;color:#365b42;font:700 11px 'DM Sans',sans-serif;text-align:left;cursor:pointer}
.reservation-preview-trigger:hover{text-decoration:underline;text-underline-offset:3px}
.reservation-date-trigger{font-weight:600;white-space:nowrap}
.reservation-preview-trigger:focus-visible{outline:2px solid #8eab90;outline-offset:3px;border-radius:2px}
.reservation-view-backdrop{z-index:45;justify-content:center;align-items:center;padding:18px}
.reservation-view-modal{width:min(500px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:22px;background:#fbfcf9;border:1px solid #e5ebe4;border-radius:16px;box-shadow:0 22px 64px rgba(28,43,34,.24)}
.reservation-view-modal .modal-header{padding-bottom:12px}
.reservation-view-modal .modal-header h2{color:#2c4034;font-size:21px}
.reservation-view-modal .modal-header p{margin:4px 0 0;color:#728076;font-size:12px}
.reservation-view-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:14px 0;padding:10px;border:1px solid #e6ece4;border-radius:11px;background:#f4f7f2}
.reservation-view-dates>div{min-width:0}
.reservation-view-dates small,.reservation-view-dates strong{display:block}
.reservation-view-dates small{color:#829086;font-size:10px}
.reservation-view-dates strong{margin-top:3px;color:#355b40;font-size:12px;text-transform:capitalize}
.reservation-view-dates>span{color:#93a092;font-size:17px}
.reservation-view-calendar{padding:11px;border:1px solid #e5ebe4;border-radius:12px;background:#fff}
.reservation-view-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.reservation-view-calendar-header strong{color:#435348;font-size:14px;text-transform:capitalize}
.reservation-view-calendar-header button{width:34px;height:34px;border:1px solid #e4eae3;border-radius:8px;background:#fbfcfa;color:#47654d;font-size:22px;cursor:pointer}
.reservation-view-weekdays,.reservation-view-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.reservation-view-weekdays{margin-bottom:5px;text-align:center}
.reservation-view-weekdays span{padding:4px 0;color:#829086;font-size:10px;font-weight:700}
.reservation-view-day,.reservation-view-day-blank{height:38px;min-width:0}
.reservation-view-day{display:grid;place-items:center;border-radius:8px;color:#4f6054;font-size:12px}
.reservation-view-day.is-stay{background:#e5efe3;color:#3c6243}
.reservation-view-day.is-entry,.reservation-view-day.is-departure{background:#315c45;color:#fff;font-weight:700}
.reservation-view-legend{display:flex;justify-content:center;gap:16px;margin-top:9px;color:#7b887e;font-size:10px}
.reservation-view-legend span{display:flex;align-items:center;gap:5px}
.reservation-view-legend i{width:9px;height:9px;border-radius:3px;background:#e5efe3}
.reservation-view-legend i.entry,.reservation-view-legend i.departure{background:#315c45}
.reservation-view-details{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:12px}
.reservation-view-details>span{padding:6px 9px;border:1px solid #e6ece4;border-radius:999px;background:#fff;color:#5f6e63;font-size:10px}
.reservation-view-details>span.reservation-view-status{border-color:transparent;background:#eaf3ea;color:#426b48;font-weight:700}
.reservation-view-details>span.pending{background:#fff0e3;color:#784b27}
.reservation-view-details>span.cancelled{background:#f7eae7;color:#8d5145}
.reservation-view-details>span.inquiry{background:#edf2f6;color:#506b83}
.reservation-view-details>strong{margin-left:auto;color:#315c45;font:700 17px Manrope,sans-serif}
.reservation-view-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}
@media(max-width:520px){.reservation-view-backdrop{padding:10px}.reservation-view-modal{max-height:calc(100vh - 20px);padding:16px;border-radius:14px}.reservation-view-modal .modal-header h2{font-size:19px}.reservation-view-dates{gap:7px;padding:9px}.reservation-view-dates strong{font-size:11px}.reservation-view-calendar{padding:8px}.reservation-view-day,.reservation-view-day-blank{height:34px}.reservation-view-weekdays,.reservation-view-days{gap:3px}.reservation-view-day{font-size:11px}.reservation-view-legend{gap:11px;font-size:9px}.reservation-view-actions .button{flex:1}}

.block-date-backdrop{z-index:45;justify-content:center;align-items:center;padding:18px}
.block-date-modal{width:min(480px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:22px;background:#fbfcf9;border:1px solid #e5ebe4;border-radius:16px;box-shadow:0 22px 64px rgba(28,43,34,.24)}
.block-date-modal .modal-header{padding-bottom:13px}
.block-date-modal .modal-header h2{color:#2c4034;font-size:22px}
.block-date-modal .modal-header p{max-width:350px;margin:5px 0 0;color:#718077;font-size:12px;line-height:1.4}
.block-date-cabin-field{margin:14px 0 12px;color:#657369;font-size:11px;font-weight:600}
.block-date-cabin-field select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #dfe7de;border-radius:8px;background:#fff;color:#34443a;font:13px 'DM Sans',sans-serif}
.block-date-selectors{margin:0 0 9px}
.block-date-calendar{padding:9px 11px}
.block-date-calendar .quick-quote-day,.block-date-calendar .quick-quote-day-blank{height:38px}
.block-date-calendar .quick-quote-day{font-size:13px}
.block-date-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}
@media(max-width:520px){.block-date-backdrop{padding:10px}.block-date-modal{max-height:calc(100vh - 20px);padding:16px;border-radius:14px}.block-date-modal .modal-header h2{font-size:20px}.block-date-calendar{padding:7px}.block-date-calendar .quick-quote-day,.block-date-calendar .quick-quote-day-blank{height:34px}.block-date-actions .button{flex:1}}
@media(max-width:700px){#calendar-view .calendar-heading .heading-actions{gap:7px}#calendar-view .calendar-heading .heading-actions .button{min-width:0;padding-left:8px;padding-right:8px}}

#calendar-view .cabin-label{width:100%;border:0;border-right:1px solid #dfe5de;border-bottom:1px solid #dfe5de;border-radius:0;background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .15s ease}
#calendar-view .cabin-label:hover{background:#f1f6f0}
#calendar-view .cabin-label:focus-visible{position:relative;z-index:1;outline:3px solid #8eab90;outline-offset:-3px}
.cabin-card{transition:border-color .2s ease,box-shadow .2s ease}
.cabin-card.is-highlighted{border-color:#86a487;box-shadow:0 0 0 3px rgba(134,164,135,.22),0 8px 24px rgba(49,92,69,.11)}

/* Readability and the compact three-day calendar on phones. */
.page-subtitle{font-size:14px;color:#59685e}
.nav-item{min-height:44px;font-size:14px}
.button{min-height:44px;font-size:12px}
.field{font-size:12px}
.field input,.field select,.field textarea{font-size:14px}
.field-hint{font-size:12px!important;line-height:1.5}
.form-section h3{font-size:15px}
th{font-size:11px;color:#66756b}
td{font-size:13px}
.calendar-legend{font-size:11px;color:#5e6d62}
.stat-top{font-size:12px;color:#5e6d62}
.stat-card>small{font-size:11px;color:#68776d}
#show-all-button{height:42px;min-width:155px;max-width:230px;padding:0 30px 0 11px;font-size:12px;color:#4c5c51}
@media(max-width:700px){
  #calendar-view .calendar-grid{grid-template-columns:minmax(112px,1.25fr) repeat(3,minmax(0,1fr));min-width:0}
  #calendar-view .cabin-label,#calendar-view .day-cell{min-height:78px}
  #calendar-view .cabin-label{padding:8px 7px;gap:6px}
  #calendar-view .cabin-thumb{width:28px;height:28px;flex:0 0 28px}
  #calendar-view .cabin-thumb svg{width:21px;height:21px}
  #calendar-view .cabin-meta strong{font-size:11px;white-space:normal;line-height:1.2}
  #calendar-view .cabin-meta small{font-size:10px}
  #calendar-view .day-cell{padding:6px 3px}
  #calendar-view .day-price{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #calendar-view .day-booking{padding:4px 3px;min-height:37px}
  #calendar-view .day-booking strong{font-size:10px}
  #calendar-view .day-booking small{font-size:9px;white-space:normal}
  #calendar-view .calendar-heading .heading-actions .button{font-size:11px}
  #calendar-view .page-subtitle{font-size:13px}
  #show-all-button{min-width:0;max-width:48%;font-size:12px}
  .page-subtitle{font-size:13px}
  .field{font-size:12px}
  .field input,.field select,.field textarea{font-size:14px}
  th{font-size:11px}
  td{font-size:12px}
}

.rate-override-backdrop{z-index:46;justify-content:center;align-items:center;padding:18px}
.rate-override-modal{width:min(480px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:23px;background:#fbfcf9;border:1px solid #e5ebe4;border-radius:16px;box-shadow:0 22px 64px rgba(28,43,34,.24)}
.rate-override-modal .modal-header{padding-bottom:13px}
.rate-override-modal .modal-header h2{color:#2c4034;font-size:22px}
.rate-override-modal .modal-header p{margin:5px 0 0;color:#647268;font-size:13px}
.rate-override-modal .field{margin-top:17px;color:#4f6055;font-size:13px}
.rate-override-input{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 13px;border:1px solid #dfe7de;border-radius:9px;background:#fff;color:#768378;font-size:13px}
.rate-override-input input{width:100%;min-width:0;border:0;outline:0;color:#34443a;font:600 18px 'DM Sans',sans-serif}
.rate-override-help{margin:10px 0 0;color:#647268;font-size:12px;line-height:1.5}
.rate-override-actions,.block-remove-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;margin-top:19px}
.block-remove-backdrop{z-index:47;justify-content:center;align-items:center;padding:18px}
.block-remove-modal{width:min(460px,100%);padding:23px;background:#fbfcf9;border:1px solid #e5ebe4;border-radius:16px;box-shadow:0 22px 64px rgba(28,43,34,.24)}
.block-remove-modal .modal-header{padding-bottom:13px}
.block-remove-modal .modal-header h2{color:#2c4034;font-size:21px}
.block-remove-modal .modal-header p{margin:5px 0 0;color:#435b48;font-size:14px;font-weight:700}
.block-remove-description{margin:13px 0 0;color:#647268;font-size:13px;line-height:1.5}
.quick-quote-availability{margin:9px 0 0;padding:9px 11px;border:1px solid #dce9dc;border-radius:9px;background:#edf5ed;color:#426b48;font-size:12px;line-height:1.4}
.quick-quote-availability.is-conflict{border-color:#f0d8c8;background:#fff2e9;color:#805232;font-weight:600}
@media(max-width:520px){.rate-override-backdrop,.block-remove-backdrop{padding:10px}.rate-override-modal,.block-remove-modal{max-height:calc(100vh - 20px);padding:17px;border-radius:14px}.rate-override-actions,.block-remove-actions{flex-direction:column}.rate-override-actions .button,.block-remove-actions .button{width:100%}}

.reservation-view-status-control{position:relative;display:inline-flex;flex:0 1 auto;align-items:center;gap:7px;min-width:0;min-height:40px;max-width:100%;padding:6px 31px 6px 11px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.reservation-view-status-label{font-size:10px;font-weight:600;opacity:.76}
.reservation-view-status-control select{width:138px;min-width:0;max-width:100%;min-height:28px;padding:0;border:0;outline:0;appearance:none;-webkit-appearance:none;background:transparent;color:inherit;font:inherit;cursor:pointer}
.reservation-view-status-arrow{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:15px;line-height:1}
.reservation-view-status-control.confirmed{background:#eaf3ea;color:#426b48}
.reservation-view-status-control.pending{background:#fff0e3;color:#784b27}
.reservation-view-status-control.cancelled{background:#f7eae7;color:#8d5145}
.reservation-view-status-control.inquiry{background:#edf2f6;color:#506b83}
.reservation-view-status-control:focus-within{outline:3px solid #c4d7c2;outline-offset:2px}
@media(max-width:520px){.reservation-view-status-control{min-height:42px;font-size:12px;padding-left:10px;padding-right:29px}.reservation-view-status-control select{width:128px}.reservation-view-status-arrow{right:10px}}

.quick-quote-result-info{min-width:0;display:grid;gap:7px}
.quick-quote-result .quick-quote-per-night{display:block;margin-top:5px;color:#68796d;font-size:11px;font-weight:600;line-height:1.35}
.quick-quote-breakdown-toggle{justify-self:start;min-height:36px;padding:7px 11px;border:1px solid #cfddce;border-radius:8px;background:#fff;color:#315c45;font:700 11px 'DM Sans',sans-serif;cursor:pointer}
.quick-quote-breakdown-toggle:hover{background:#f0f5ef}
.quick-quote-breakdown-toggle:focus-visible{outline:3px solid #b7ceb7;outline-offset:2px}
.quick-quote-full-breakdown{grid-column:1/-1;min-width:0;padding:12px 14px;border:1px solid #e1e9df;border-radius:10px;background:rgba(255,255,255,.9)}
.quick-quote-detail-section h3{margin:0 0 9px;color:#40584a;font-size:12px}
.quick-quote-detail-nights{display:grid;gap:5px}
.quick-quote-detail-night{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #edf1eb}
.quick-quote-detail-night>div{min-width:0;display:grid;gap:3px}
.quick-quote-detail-night>div>strong{color:#43594a;font-size:11px}
.quick-quote-detail-night small{color:#77857a;font-size:10px;line-height:1.35}
.quick-quote-detail-night>b{flex:0 0 auto;color:#405b47;font-size:12px}
.quick-quote-detail-caption{margin:8px 0;color:#829086;font-size:10px;line-height:1.4}
.quick-quote-detail-extras{display:grid;gap:5px;padding-top:8px;border-top:1px solid #e8eee6}
.quick-quote-detail-line{display:flex;justify-content:space-between;gap:12px;color:#6b796e;font-size:10px;line-height:1.4}
.quick-quote-detail-line strong{color:#4d6252;text-align:right;font-weight:600}
.quick-quote-detail-total{display:flex;justify-content:space-between;gap:10px;margin-top:9px;padding-top:9px;border-top:1px solid #dfe8dd;color:#506557;font-size:12px;font-weight:700}
.quick-quote-detail-total strong{color:#315c45;font-size:14px}
@media(max-width:700px){
  .quick-quote-result .quick-quote-total{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .quick-quote-result .quick-quote-total>strong{grid-column:2;grid-row:1;margin:0;font-size:22px}
  .quick-quote-result .quick-quote-per-night{grid-column:1/-1;grid-row:2;margin-top:3px}
  .quick-quote-result-info{width:100%}
  .quick-quote-breakdown-toggle{min-height:40px}
  .quick-quote-full-breakdown{padding:10px}
  .quick-quote-detail-night small{font-size:9px}
  .quick-quote-detail-line{flex-direction:column;gap:1px}
  .quick-quote-detail-line strong{text-align:left}
}

.quick-quote-detail-backdrop{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(30,41,34,.48);backdrop-filter:blur(2px)}
.quick-quote-detail-modal{width:min(500px,100%);max-height:calc(100dvh - 32px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:18px;background:#fbfcf9;border:1px solid #e5ebe4;border-radius:16px;box-shadow:0 22px 64px rgba(28,43,34,.3)}
.quick-quote-detail-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e8eee6}
.quick-quote-detail-modal-header h2{margin:0;color:#2c4034;font:700 20px Manrope,sans-serif}
.quick-quote-detail-modal-header p{margin:4px 0 0;color:#718077;font-size:12px}
.quick-quote-detail-modal .modal-close{flex:0 0 auto;width:36px;height:36px}
.quick-quote-detail-modal .quick-quote-full-breakdown{min-height:0;max-height:100%;overflow:hidden;padding:0;border:0;background:transparent}
.quick-quote-detail-section{display:grid;gap:7px}
.quick-quote-detail-lines{display:grid;gap:0}
.quick-quote-detail-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:31px;padding:5px 0;border-bottom:1px solid #edf1eb;color:#5d6d62;font-size:11px;line-height:1.3}
.quick-quote-detail-line>div{min-width:0;display:grid;gap:2px}
.quick-quote-detail-line span{font-size:11px}
.quick-quote-detail-line small{color:#869187;font-size:9px;line-height:1.25}
.quick-quote-detail-line strong{flex:0 0 auto;color:#43594a;font-size:11px;text-align:right}
.quick-quote-detail-line.is-total{margin-top:3px;border-top:1px solid #dfe8dd;border-bottom:0;color:#315c45;font-weight:700}
.quick-quote-detail-line.is-total strong{color:#315c45;font-size:13px}
.quick-quote-detail-caption{margin:2px 0 0;color:#78867b;font-size:10px;line-height:1.35}
.quick-quote-detail-modal>.button{width:100%;min-height:42px}
@media(max-width:520px){
  .quick-quote-detail-backdrop{padding:12px}
  .quick-quote-detail-modal{gap:9px;padding:14px;border-radius:14px}
  .quick-quote-detail-modal-header{padding-bottom:8px}
  .quick-quote-detail-modal-header h2{font-size:18px}
  .quick-quote-detail-modal-header p{font-size:11px}
  .quick-quote-detail-line{min-height:28px;padding:4px 0;font-size:10px}
  .quick-quote-detail-line span,.quick-quote-detail-line strong{font-size:10px}
  .quick-quote-detail-line small{font-size:8px}
  .quick-quote-detail-caption{font-size:9px}
}

.reservation-view-price{margin-top:11px}
.reservation-view-price-card{padding:12px;border:1px solid #e1e9df;border-radius:12px;background:#f4f8f2}
.reservation-view-price-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.reservation-view-price-summary>div{display:grid;gap:3px;min-width:0}
.reservation-view-price-summary small{color:#718077;font-size:9px;font-weight:800;letter-spacing:.055em}
.reservation-view-price-summary strong{color:#315c45;font:700 17px Manrope,sans-serif;line-height:1.2}
.reservation-view-price-breakdown{margin-top:9px;border-top:1px solid #dfe8dd}
.reservation-view-price-breakdown summary{width:fit-content;min-height:34px;padding:9px 0 0;color:#315c45;font-size:11px;font-weight:700;cursor:pointer;list-style:none}
.reservation-view-price-breakdown summary::-webkit-details-marker{display:none}
.reservation-view-price-breakdown summary::after{content:'⌄';display:inline-block;margin-left:8px;color:#6c806f;transition:transform .15s ease}
.reservation-view-price-breakdown[open] summary::after{transform:rotate(180deg)}
.reservation-price-lines{display:grid;margin-top:5px}
.reservation-price-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;padding:5px 0;border-bottom:1px solid #e5ece3;color:#5d6d62;font-size:11px;line-height:1.3}
.reservation-price-line>div{min-width:0;display:grid;gap:2px}
.reservation-price-line small{color:#869187;font-size:9px;line-height:1.25}
.reservation-price-line strong{flex:0 0 auto;color:#43594a;font-size:11px;text-align:right}
.reservation-price-line.is-total{margin-top:3px;border-top:1px solid #dfe8dd;border-bottom:0;color:#315c45;font-weight:700}
.reservation-price-line.is-total strong{color:#315c45;font-size:12px}
.reservation-view-price-breakdown>p{margin:8px 0 0;color:#78867b;font-size:9px;line-height:1.35}
@media(max-width:520px){.reservation-view-price-card{padding:10px}.reservation-view-price-summary{gap:6px}.reservation-view-price-summary strong{font-size:15px}.reservation-price-line{font-size:10px}.reservation-price-line strong{font-size:10px}.reservation-view-price-breakdown summary{min-height:38px;font-size:11px}}

.rates-toolbar{height:auto;min-height:58px;flex-wrap:wrap;gap:8px 14px;padding:8px 16px}
.rates-period-control{display:flex;align-items:center;gap:9px;min-width:0}
.rates-period-control strong{min-width:120px;text-align:center;text-transform:capitalize;white-space:nowrap}
.rates-week-button{min-height:38px;padding:7px 11px;border:1px solid #dfe7dd;border-radius:9px;background:#fff;color:#49624f;font:700 11px 'DM Sans',sans-serif;white-space:nowrap;cursor:pointer}
.rates-week-button:hover{background:#f0f5ef}
.rates-week-button:focus-visible{outline:3px solid #c5d9c3;outline-offset:2px}
@media(max-width:520px){.rates-toolbar{align-items:flex-start;padding:9px 10px}.rates-period-control{width:100%;justify-content:space-between;gap:5px}.rates-period-control strong{min-width:0;flex:1;font-size:12px}.rates-week-button{min-height:40px;padding:7px 9px;font-size:10px}.rates-toolbar>span{margin-left:2px;font-size:9px}}

.custom-extras-panel{display:grid;gap:13px;padding:17px 20px}
.custom-extras-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.custom-extras-heading strong{color:#46584b;font-size:13px}
.custom-extras-heading p{margin:4px 0 0;color:#77857a;font-size:11px;line-height:1.4}
.custom-extras-heading .button{flex:0 0 auto}
.custom-extras-list{display:grid;gap:9px}
.custom-extra-editor-row{display:grid;grid-template-columns:minmax(150px,1.15fr) minmax(190px,1.1fr) minmax(140px,.8fr) auto;align-items:end;gap:10px;padding:11px;border:1px solid #e3eae1;border-radius:10px;background:#fff}
.custom-extra-editor-row>label{display:grid;gap:5px;min-width:0;color:#657469;font-size:10px;font-weight:600}
.custom-extra-editor-row input,.custom-extra-editor-row select{width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid #dfe7dd;border-radius:8px;background:#fff;color:#415347;font:12px 'DM Sans',sans-serif}
.custom-extra-mode-fixed{display:flex;align-items:center;min-height:42px;padding:8px 10px;border:1px solid #e7ece5;border-radius:8px;background:#f7f9f5;color:#718077;font-size:10px;font-weight:500}
.custom-extra-price{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 10px;border:1px solid #dfe7dd;border-radius:8px;background:#fff;color:#718077;font-size:10px}
.custom-extra-price input{min-height:38px;padding:5px 0;border:0;outline:0}
.custom-extra-remove{min-width:64px;height:42px;padding:7px 9px;border:1px solid #eadfdb;border-radius:8px;background:#fff;color:#915a50;font:700 10px 'DM Sans',sans-serif;cursor:pointer}
.custom-extras-footer{display:flex;justify-content:flex-end}
.remove-standard-extra{display:inline-flex;align-items:center;min-height:27px;margin-top:4px;padding:3px 0;border:0;background:transparent;color:#915a50;font:700 10px 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.disabled-standard-extras{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding-top:10px;border-top:1px solid #e5ece3;color:#6d7b70;font-size:10px}
.disabled-standard-extras button{min-height:34px;padding:6px 10px;border:1px solid #d8e4d7;border-radius:8px;background:#fff;color:#315c45;font:700 10px 'DM Sans',sans-serif;cursor:pointer}
.custom-extra-choices{display:grid;gap:7px;margin-top:10px}
.custom-extra-choice{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:42px;padding:7px 10px;border:1px solid #e4ebe2;border-radius:9px;background:#f7f9f5;color:#526457;font-size:11px;cursor:pointer}
.custom-extra-choice input{width:18px;height:18px;accent-color:#315c45}
.custom-extra-choice strong{color:#4d6654;font-size:10px;white-space:nowrap}
@media(max-width:700px){.custom-extras-panel{padding:14px}.custom-extras-heading{align-items:flex-start}.custom-extras-heading>.button{min-height:40px;padding:8px 10px;font-size:11px}.custom-extra-editor-row{grid-template-columns:minmax(0,1fr) minmax(85px,.75fr) minmax(105px,.9fr) 58px;gap:7px;padding:8px}.custom-extra-editor-row>label{font-size:9px}.custom-extra-editor-row input,.custom-extra-editor-row select{min-height:40px;padding:7px}.custom-extra-mode-fixed{min-height:40px;padding:7px;font-size:9px}.custom-extra-price{min-height:40px;padding:0 7px;gap:4px;font-size:9px}.custom-extra-price input{min-height:36px}.custom-extra-remove{min-width:58px;height:40px;padding:7px 5px;font-size:9px}.custom-extra-choice{grid-template-columns:20px minmax(0,1fr);font-size:10px}.custom-extra-choice strong{grid-column:2;font-size:9px}.custom-extra-choice input{grid-row:span 2}}
@media(max-width:520px){.custom-extra-editor-row{grid-template-columns:minmax(0,1fr) 62px;gap:7px}.custom-extra-editor-row>label:first-child{grid-column:1/-1}.custom-extra-editor-row>label:nth-child(2){grid-column:1}.custom-extra-editor-row>label:nth-child(3){grid-column:1;grid-row:3}.custom-extra-editor-row>.custom-extra-remove{grid-column:2;grid-row:2/4;align-self:stretch;height:auto}.custom-extra-mode-fixed{font-size:8px}}

.booking-sync-notice,.booking-sync-note{padding:16px 18px;color:#46584b}
.booking-sync-notice{border-color:#dce8da;background:#f0f5ef}
.booking-sync-notice strong,.booking-sync-note strong{font-size:13px;color:#315c45}
.booking-sync-notice p,.booking-sync-note p{margin:6px 0 0;color:#6f7d72;font-size:12px;line-height:1.55}
.booking-sync-note ol{display:grid;gap:7px;margin:10px 0 0;padding-left:21px;color:#5d6e61;font-size:12px;line-height:1.5}
.booking-sync-note ol+p{margin-top:11px}
.booking-connections{display:grid;gap:12px;margin:13px 0}
.booking-sync-loading{padding:22px;color:#6d7c71;font-size:13px}
.booking-connection-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:18px}
.booking-connection-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e7ede5}
.booking-connection-heading h2{margin:0;color:#31473a;font:700 17px 'Manrope',sans-serif}
.booking-connection-state{display:inline-flex;align-items:center;min-height:25px;margin-top:5px;padding:4px 9px;border-radius:99px;background:#f5f1e8;color:#776548;font-size:10px;font-weight:700}
.booking-connection-state.is-connected{background:#eaf3e9;color:#406849}
.booking-event-count{color:#748278;font-size:11px;white-space:nowrap}
.booking-incoming-field{font-size:12px}
.booking-incoming-field input{min-height:46px;font-size:13px}
.booking-incoming-field small,.booking-outgoing-field small{color:#89958b;font-size:10px;line-height:1.4}
.booking-outgoing-field{display:grid;align-content:start;gap:6px;color:#68776c;font-size:12px;font-weight:600}
.booking-outgoing-field>div{display:flex;align-items:stretch;gap:8px}
.booking-outgoing-field input{width:100%;min-width:0;height:46px;padding:0 10px;border:1px solid #dfe7de;border-radius:9px;background:#f7f9f6;color:#526356;font:11px 'DM Sans',sans-serif}
.booking-outgoing-field .button{min-height:46px;flex:0 0 auto;padding:8px 11px;font-size:11px}
.booking-connection-footer{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;color:#829086;font-size:10px}
.booking-conflict-warning{color:#9b6039}
.booking-sync-actions{display:flex;justify-content:flex-end;margin:10px 0 14px}
.booking-sync-status{min-height:24px;color:#617365;font-size:12px}
.booking-external{background:#e8f0f6;color:#49677f;border-color:#d6e4ef}
.calendar-legend .booking-ical-dot{background:#6b879a}

/* Full-month calendar overlay. */
.month-view-open{min-height:42px;flex:0 0 auto;padding-inline:14px;white-space:nowrap}
.month-view-backdrop{z-index:55;align-items:center;justify-content:center;padding:16px}
.month-view-modal{width:min(98vw,1660px);height:min(90dvh,920px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:13px;padding:21px;background:#fbfcf9;border:1px solid #e2e9e0;border-radius:18px;box-shadow:0 25px 75px rgba(28,43,34,.3)}
.month-view-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid #e6ece4}
.month-view-header h2{margin:0;color:#2c4034;font:750 23px Manrope,sans-serif;letter-spacing:-.4px}
.month-view-header p{margin:4px 0 0;color:#718077;font-size:12px}
.month-view-controls{display:flex;align-items:center;gap:10px}
.month-view-controls strong{min-width:190px;color:#315c45;font:700 17px Manrope,sans-serif;text-align:center}
.month-view-controls .round-button{width:38px;height:38px}
.month-view-controls .modal-close{width:38px;height:38px;font-size:24px}
.month-view-scroll{min-height:0;overflow:auto;border:1px solid #e2e9e0;border-radius:12px;background:#fff;overscroll-behavior:contain}
.month-view-grid{display:grid;grid-template-columns:168px minmax(0,1fr);align-content:start;width:100%;min-height:100%}
.month-view-corner,.month-view-day-head{position:sticky;top:0;z-index:3;min-height:52px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e8ede7;border-bottom:1px solid #dde6dc;background:#f5f8f3}
.month-view-corner{left:0;z-index:5;justify-content:flex-start;padding:0 14px;color:#78867b;font-size:10px;font-weight:800;letter-spacing:.07em}
.month-view-days,.month-view-track{display:grid;grid-template-columns:repeat(var(--month-days),minmax(0,1fr));min-width:0}
.month-view-day-head{flex-direction:column;gap:2px;background:#f5f8f3}
.month-view-day-head small{color:#859187;font-size:9px;text-transform:uppercase}
.month-view-day-head strong{color:#3d5546;font-size:13px}
.month-view-day-head.is-today{background:#e8f1e7}
.month-view-day-head.is-holiday{background:#fff4e8}
.month-view-day-head i{position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:#ca8c46}
.month-view-cabin{position:sticky;left:0;z-index:2;min-width:0;min-height:62px;display:flex;align-items:center;gap:9px;padding:8px 10px;border:0;border-right:1px solid #e4eae3;border-bottom:1px solid #e4eae3;background:#fff;color:#35483b;text-align:left;cursor:pointer}
.month-view-cabin:hover{background:#f2f6f0}
.month-view-cabin .cabin-thumb{width:34px;height:34px;flex:0 0 auto;font-size:15px}
.month-view-cabin strong{font-size:11px;line-height:1.25}
.month-view-track{min-height:62px;grid-auto-rows:1fr;background:#fff}
.month-view-cell{position:relative;min-width:0;min-height:62px;padding:0;border:0;border-right:1px solid #edf0eb;border-bottom:1px solid #e4eae3;background:#fff;cursor:pointer}
.month-view-cell.is-free:hover{background:#f4f8f2}
.month-view-cell.is-holiday{background:#fffaf2}
.month-view-cell.is-today{box-shadow:inset 0 0 0 1px #9db59d}
.month-view-cell.has-confirmed{background:#dcebdc}
.month-view-cell.has-pending{background:#f9e5d0}
.month-view-cell.has-booking-block{background:#dfe8ef}
.month-view-cell.has-private-block{background:#e8ece8}
.month-view-cell.is-start:before{position:absolute;inset:8px 0 8px 0;content:"";background:inherit}
.month-view-cell.is-start.has-confirmed:before{background:#5f8964}
.month-view-cell.is-start.has-pending:before{background:#cf864d}
.month-view-cell.is-start.has-booking-block:before{background:#718ca6}
.month-view-cell.is-start.has-private-block:before{background:#89958b}
.month-view-cell.has-booking-reservation{background:#dfe8ef}
.month-view-cell.is-start.has-booking-reservation:before{background:#718ca6}
.month-view-cell.is-start.has-booking-reservation span{color:#46647f}

/* Reservation preview: status first, then compact, labeled facts and conditions. */
#reservation-view-details{display:grid;align-items:start;gap:9px;margin-top:12px}
#reservation-view-details .reservation-view-status-control{justify-self:start;width:max-content;min-width:185px;max-width:100%;min-height:39px;padding:6px 30px 6px 11px;flex:none;border-radius:10px}
#reservation-view-details .reservation-view-status-control select{width:128px}
.reservation-view-facts{display:flex;align-items:stretch;flex-wrap:wrap;gap:8px;min-width:0}
.reservation-view-fact{min-width:100px;display:grid;align-content:center;gap:3px;padding:8px 11px;border:1px solid #e5ebe3;border-radius:10px;background:#fff;color:#526458}
.reservation-view-fact>small{color:#87948a;font-size:9px;line-height:1.2}
.reservation-view-fact>strong{color:#40594a;font-size:12px;line-height:1.3}
.reservation-view-conditions{min-width:170px;flex:1 1 200px}
.reservation-view-conditions>div{display:flex;flex-wrap:wrap;gap:5px}
.reservation-view-extra{display:inline-flex;align-items:center;min-height:23px;padding:4px 8px;border-radius:999px;background:#edf4ec;color:#45684a;font-size:10px;font-weight:600}
.reservation-view-extra.is-empty{background:#f3f5f1;color:#78857b;font-weight:500}
.booking-money-fields{min-width:0;padding:15px;border:1px solid #dce7de;border-radius:12px;background:#f5f8f3}
.booking-money-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.booking-money-heading h4{margin:0;color:#385644;font:700 13px Manrope,sans-serif}
.booking-money-heading p{margin:4px 0 0;color:#77867b;font-size:10px;line-height:1.4}
.booking-money-currency{display:inline-flex;align-items:center;justify-content:center;min-width:39px;min-height:27px;padding:4px 8px;border-radius:99px;background:#e7efe5;color:#41634a;font-size:10px;font-weight:800}
.booking-money-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.booking-money-inputs .field{font-size:10px}
.booking-money-inputs .field input{min-height:42px;font-size:13px}
.booking-total-derived input{background:#f1f5ef!important;color:#526b57!important;font-weight:700}
.booking-money-result{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 10px;margin-top:11px;padding:10px 12px;border:1px solid #e0e9de;border-radius:9px;background:#fff;color:#66766a;font-size:10px}
.booking-money-result strong{justify-self:end;color:#315c45;font:700 14px Manrope,sans-serif;text-align:right}
.booking-money-result strong i{padding:0 4px;color:#92a194;font-style:normal;font-size:11px}
.booking-money-result small{grid-column:1/-1;color:#849087;font-size:9px;line-height:1.4}
.reservation-view-price-origin{font-size:9px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none}
@media(max-width:700px){.booking-money-fields{padding:12px}.booking-money-inputs{grid-template-columns:1fr;gap:8px}.booking-money-result{grid-template-columns:1fr;gap:4px}.booking-money-result strong{justify-self:start;text-align:left}.booking-money-result small{grid-column:auto}}
.month-view-cell.is-start:not(.is-last-night):before{border-radius:7px 0 0 7px}
.month-view-cell.is-last-night:before{position:absolute;inset:8px 0 8px 0;content:"";border-radius:0 7px 7px 0;background:inherit}
.month-view-cell.is-last-night.is-start:before{border-radius:7px}
.month-view-cell.is-start span{position:absolute;z-index:1;top:50%;left:50%;display:grid;place-items:center;width:25px;height:25px;transform:translate(-50%,-50%);border-radius:50%;background:rgba(255,255,255,.9);color:#385d42;font-size:9px;font-weight:800}
.month-view-cell.is-start.has-pending span{color:#855329}
.month-view-cell.is-start.has-booking-block span{color:#46647f}
.month-view-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}
.month-view-legend{display:flex;align-items:center;flex-wrap:wrap;gap:15px;color:#637267;font-size:11px}
.month-view-footer>small{color:#78867b;font-size:10px;text-align:right}
@media(max-width:700px){
  .month-view-open{min-height:40px;padding-inline:10px}
  .month-view-backdrop{padding:7px}
  .month-view-modal{width:100%;height:calc(100dvh - 14px);gap:9px;padding:13px;border-radius:14px}
  .month-view-header{align-items:flex-start;flex-direction:column;gap:9px;padding-bottom:9px}
  .month-view-header h2{font-size:20px}
  .month-view-header p{font-size:11px}
  .month-view-controls{width:100%;gap:7px}
  .month-view-controls strong{flex:1;min-width:0;font-size:15px}
  .month-view-controls .round-button,.month-view-controls .modal-close{width:38px;height:38px}
  .month-view-grid{grid-template-columns:118px minmax(0,1fr)}
  .month-view-corner,.month-view-day-head{min-height:46px}
  .month-view-corner{padding:0 8px;font-size:9px}
  .month-view-day-head small{font-size:8px}
  .month-view-day-head strong{font-size:11px}
  .month-view-cabin,.month-view-track,.month-view-cell{min-height:55px}
  .month-view-cabin{gap:6px;padding:6px}
  .month-view-cabin .cabin-thumb{width:28px;height:28px;font-size:13px}
  .month-view-cabin strong{font-size:10px}
  .month-view-footer{align-items:flex-start;flex-direction:column;gap:7px}
  .month-view-legend{gap:8px 12px;font-size:10px}
  .month-view-footer>small{text-align:left;font-size:9px}
}
@media(max-width:700px){
  .booking-sync-notice,.booking-sync-note{padding:14px}
  .booking-sync-notice p,.booking-sync-note p,.booking-sync-note ol{font-size:11px}
  .booking-connection-card{grid-template-columns:1fr;gap:13px;padding:14px}
  .booking-connection-heading{align-items:flex-start}
  .booking-connection-heading h2{font-size:15px}
  .booking-connection-footer{grid-column:auto}
  .booking-outgoing-field>div{align-items:stretch}
  .booking-outgoing-field .button{min-width:96px;padding:7px;font-size:10px}
}

/* On phones, use one clear section picker instead of a clipped horizontal nav. */
.mobile-section-picker{display:none}
@media(max-width:700px){
  .sidebar{grid-template-rows:42px auto auto}
  .main-nav{display:none!important}
  .mobile-section-picker{grid-column:1/-1;grid-row:2;display:grid;gap:4px;width:100%;padding:3px 0 7px}
  .mobile-section-label{color:#65746a;font-size:12px;font-weight:700;letter-spacing:.01em}
  .mobile-section-select{width:100%;min-height:48px;padding:0 42px 0 14px;border:1px solid #cbd9ca;border-radius:11px;background-color:#fff;color:#2f4938;font:600 16px 'DM Sans',sans-serif;box-shadow:0 1px 3px rgba(36,49,43,.05)}
  .mobile-section-select:focus-visible{outline:3px solid #b7ceb7;outline-offset:2px}
}

/* Keep the long reservation and cabin forms in comfortable centered dialogs. */
#modal-backdrop,#cabin-modal-backdrop{justify-content:center;align-items:center;padding:20px}
#modal-backdrop .reservation-modal,#cabin-modal-backdrop .cabin-modal{
  width:min(760px,100%);height:auto;max-height:calc(100vh - 40px);overflow:auto;
  border:1px solid #e3e9e1;border-radius:18px;box-shadow:0 22px 64px rgba(28,43,34,.24)
}
@media(max-width:700px){
  #modal-backdrop,#cabin-modal-backdrop{padding:12px}
  #modal-backdrop .reservation-modal,#cabin-modal-backdrop .cabin-modal{
    width:100%;max-height:calc(100dvh - 24px);padding:20px 17px;border-radius:15px
  }
}

/* Compact, scannable price editor for cabin cards. */
.pricing-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.form-section .pricing-group-compact{min-width:0;margin:0;padding:12px 13px;border-color:#e4eae2;border-radius:11px;background:#fff}
.form-section .pricing-group-compact .pricing-group-heading{align-items:flex-start;margin-bottom:10px}
.form-section .pricing-group-compact .pricing-group-heading strong{font-size:13px;line-height:1.3;color:#405347}
.form-section .pricing-group-compact .pricing-group-heading small{font-size:11px;line-height:1.35;color:#849187}
.pricing-inline-field{display:flex;align-items:center;justify-content:space-between;gap:9px;min-width:0;color:#66746a;font-size:12px;font-weight:600}
.pricing-inline-input{display:flex;align-items:center;gap:7px;width:min(170px,55%);min-width:85px;height:42px;padding:0 10px;border:1px solid #dfe7de;border-radius:9px;background:#fbfcfa;color:#78867b;font-size:14px}
.pricing-inline-input input{width:100%;min-width:0;height:100%;padding:0;border:0;outline:0;background:transparent;color:#2e4938;font:600 15px 'DM Sans',sans-serif}
.pricing-inline-input input::placeholder{color:#a2aca3}
.pricing-stay-group{grid-column:1/-1}
.pricing-discount-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pricing-discount-options .pricing-inline-field{gap:12px}
.pricing-discount-options .pricing-inline-input{width:120px}
.weekend-hint{margin-top:9px!important;font-size:11px!important;line-height:1.45}
@media(max-width:700px){.pricing-editor-grid{grid-template-columns:1fr}.pricing-stay-group{grid-column:auto}.pricing-inline-input{width:min(180px,52%)}.pricing-discount-options .pricing-inline-input{width:min(140px,45%)}}

.data-transfer-button{width:100%;min-height:42px;margin:0 1px 12px;padding:9px 12px;font-size:11px}
@media(max-width:700px){.data-transfer-button{grid-column:1/-1;grid-row:3;width:100%;margin:0 0 7px;font-size:12px}}

.notice-booking-conflicts{display:grid;gap:7px;margin-top:9px;padding:10px 11px;border:1px solid #ead4bd;border-radius:9px;background:#fff2e4;color:#794b2c}
.notice-booking-conflicts>strong{font-size:12px!important;color:inherit}
.notice-booking-conflicts button{justify-self:start;padding:0;border:0;background:transparent;color:#794b2c;font:700 11px 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.booking-conflict-panel{margin:13px 0;padding:16px 18px;border-color:#efd8c0;background:#fffaf4}
.booking-conflict-panel-heading h2{margin:0;color:#71492d;font:700 16px Manrope,sans-serif}
.booking-conflict-panel-heading p{margin:5px 0 0;color:#806c5a;font-size:12px;line-height:1.4}
.booking-conflict-rows{display:grid;gap:8px;margin-top:12px}
.booking-conflict-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #f0e1d1;border-radius:9px;background:#fff}
.booking-conflict-row>div{display:grid;gap:4px;min-width:0}
.booking-conflict-row strong{color:#594735;font-size:12px}
.booking-conflict-row span{color:#7c7165;font-size:11px;line-height:1.4}
.booking-imported-events{grid-column:1/-1;min-width:0;padding-top:2px}
.booking-imported-events summary{width:max-content;max-width:100%;color:#49634f;font-size:12px;font-weight:700;cursor:pointer}
.booking-imported-events>div{display:grid;gap:7px;margin-top:9px}
.booking-imported-event{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid #e8eee6;border-radius:9px;background:#fbfcfa}
.booking-imported-event>div{display:grid;gap:3px;min-width:0}
.booking-imported-event strong{color:#43574a;font-size:12px}
.booking-imported-event small,.booking-no-imported-events{color:#7c897f;font-size:11px;line-height:1.4}
.booking-no-imported-events{grid-column:1/-1;margin:0;padding-top:3px}
@media(max-width:700px){.booking-conflict-panel{padding:13px}.booking-conflict-row,.booking-imported-event{align-items:flex-start;flex-direction:column}.booking-conflict-row .button,.booking-imported-event .button{width:100%}}
