:root{--admin-ink: #1f241c;--admin-slate: #2f3629;--admin-slate-mid: #3e4736;--admin-border: #4d5644;--admin-muted: #c4b8a6;--admin-text: #f7f3ec;--admin-accent: #4a6741;--admin-accent-hover: #3a5233;--admin-accent-soft: #c49a5c;--admin-success: #3f6b45;--admin-warning: #c08a3e;--admin-danger: #b24a3d;--admin-surface: #f0e8dc;--admin-card: #fffcf7;--admin-line: #ddd4c6;--admin-content-text: #1f241c;--admin-content-muted: #5e574c;--admin-radius: 8px;--admin-shadow: 0 1px 2px rgba(31, 36, 28, .05), 0 12px 32px rgba(31, 36, 28, .08);--admin-font: "Source Sans 3", "Segoe UI", sans-serif;--admin-display: "Cormorant Garamond", Georgia, serif;--admin-sidebar-w: 268px;--cal-reserved: #3f6b45;--cal-reserved-end: #2f5234;--cal-pending: #c08a3e;--cal-pending-end: #d4a45a;--cal-blocked: #c5c0b6;--cal-blocked-alt: #d4cfc5;--cal-today: #4a6741;--cal-hover: #ebe3d4;--cal-weekend: #f6f0e6;--cal-muted-bg: #efe8dc;--cal-muted-text: #8a7f70;--cal-grid: #e2d7c7;--cal-select: #e4d5b8;--cal-select-edge: #d2bc8f;--cal-price-override: #dce6d6;--cal-price-selected: #e4d5b8;--cal-price-override-text: #355230;--cal-price-text: #5e574c}*,*:before,*:after{box-sizing:border-box}html{font-size:15px}body.admin-body{margin:0;min-height:100vh;font-family:var(--admin-font);background:radial-gradient(ellipse at 100% 0%,rgba(196,154,92,.12),transparent 42%),var(--admin-surface);color:var(--admin-content-text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.admin-shell{display:grid;grid-template-columns:var(--admin-sidebar-w) 1fr;min-height:100vh}.admin-sidebar{background:radial-gradient(ellipse at 20% 0%,rgba(196,154,92,.18),transparent 55%),linear-gradient(180deg,var(--admin-ink) 0%,var(--admin-slate) 100%);color:var(--admin-text);padding:1.15rem 1rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem;position:sticky;top:0;height:100vh}.admin-sidebar--test{background:radial-gradient(ellipse at 20% 0%,rgba(196,90,80,.22),transparent 55%),linear-gradient(180deg,#3a2426,#4a2a2e 55%,#3d282b)}.admin-sidebar--test .admin-nav a.is-active{background:linear-gradient(135deg,#c4786e52,#5a323780);box-shadow:inset 0 0 0 1px #c4786e4d}.admin-brand{display:block;margin:0 .15rem;border-radius:10px;background:var(--admin-surface);border:1px solid rgba(228,221,211,.35);text-align:center;transition:opacity .15s ease;overflow:hidden}.admin-brand:hover{opacity:.92}.admin-brand__logo{display:block;width:100%;height:auto;margin:0 auto}.admin-nav{display:flex;flex-direction:column;gap:.25rem;flex:1}.admin-nav a{display:flex;align-items:center;gap:.65rem;padding:.7rem .85rem;border-radius:8px;color:var(--admin-muted);font-size:.92rem;font-weight:500;transition:background .15s ease,color .15s ease}.admin-nav a:hover{background:#f5f2ed14;color:var(--admin-text)}.admin-nav a.is-active{background:linear-gradient(135deg,#c49a5c59,#4a674173);color:#fff;box-shadow:inset 0 0 0 1px #c49a5c59}.admin-nav__icon{width:1.1rem;opacity:.85}.admin-sidebar__foot{padding-top:1rem;border-top:1px solid var(--admin-border)}.admin-main{display:flex;flex-direction:column;min-width:0}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.75rem;background:var(--admin-card);border-bottom:1px solid var(--admin-line);position:sticky;top:0;z-index:20}.admin-topbar__title{font-family:var(--admin-display);font-size:1.45rem;font-weight:600;margin:0 auto 0 0;letter-spacing:.03em}.admin-topbar__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.65rem;min-height:2.25rem}.admin-topbar__actions-inner{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:flex-end;gap:.65rem}.admin-topbar__actions-inner .panel__filter{display:flex}.admin-topbar__actions-inner .panel__filter select,.admin-topbar__actions-inner .btn{height:2.35rem;box-sizing:border-box;display:inline-flex;align-items:center;padding-top:0;padding-bottom:0;font-size:.88rem;line-height:1}.admin-content{padding:1.5rem 1.75rem 2.5rem;flex:1}.admin-menu-toggle{display:none;background:var(--admin-slate);color:#fff;border:0;border-radius:8px;padding:.55rem .75rem;cursor:pointer;font:inherit}.admin-overlay{display:none}.stat-grid{display:flex;flex-wrap:nowrap;align-items:stretch;gap:.75rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.15rem}.stat-card{flex:1 1 0;min-width:8.5rem;background:var(--admin-card);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);padding:1rem 1.1rem;border:1px solid var(--admin-line)}.stat-card__label{color:var(--admin-content-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .4rem;line-height:1.25}.stat-card__value{font-family:var(--admin-display);font-size:1.75rem;font-weight:560;margin:0;letter-spacing:-.03em;line-height:1.15;word-break:break-word}.stat-card__value--money{font-size:1.35rem}.stat-card__meta{margin:.35rem 0 0;font-size:.8rem;color:var(--admin-content-muted)}.panel{background:var(--admin-card);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);border:1px solid var(--admin-line);overflow:hidden}.panel__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--admin-line)}.panel__title{margin:0;font-family:var(--admin-display);font-size:1.2rem;font-weight:600;letter-spacing:.02em}.panel__header-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.65rem;margin-left:auto}.reservation-show-header{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem}.reservation-show-header__meta{min-width:0;flex:1 1 auto}.reservation-show-header__sub{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .7rem;margin:.4rem 0 0;color:var(--admin-content-muted)}.reservation-show-header__apartment{font-weight:500}.reservation-show-header__badges{display:inline-flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.reservation-show-header__actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem;flex:0 0 auto;max-width:100%}.reservation-show-header__actions .btn{white-space:nowrap;flex:0 0 auto}.panel__filter{min-width:10.5rem;max-width:15rem}.panel__filter select{width:100%;margin:0}.panel__body{padding:1.25rem}.dashboard-pilotage .panel__body{padding:0}.dashboard-pilotage__note{margin:0;padding:1rem 1.25rem 1.15rem;color:var(--admin-content-muted);font-size:.85rem;border-top:1px solid var(--admin-line)}.dashboard-pilotage table.data-table tfoot th{font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none;color:var(--admin-content-text);padding-top:.95rem;padding-bottom:.95rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.reservation-form-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(260px,320px);gap:1rem;align-items:start}.reservation-form-layout>.panel,.reservation-form-layout__side{min-width:0}.reservation-form-layout__side{display:flex;flex-direction:column;gap:1rem}.reservation-form-layout__price{grid-column:1}.reservation-form-layout__comments{grid-column:2 / -1}.reservation-form-side{display:flex;flex-direction:column;gap:1rem}.reservation-form-side__empty{margin:0;color:var(--admin-content-muted);font-size:.88rem}.reservation-price-preview__total{margin-top:.35rem;padding-top:.65rem;border-top:1px solid var(--admin-line)}.reservation-price-preview__total dt,.reservation-price-preview__total dd{font-size:1rem;font-weight:700;color:var(--admin-content-text)}.reservation-extras{display:flex;flex-direction:column;gap:.4rem;margin-top:.2rem}.reservation-extras--columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}@media(max-width:640px){.reservation-extras--columns{grid-template-columns:1fr}}.reservation-extras__item{display:flex;gap:.55rem;align-items:flex-start;font-weight:500;color:inherit;padding:.45rem .55rem;border:1px solid var(--admin-line);border-radius:8px;background:var(--admin-card)}.reservation-extras__item small{display:block;margin-top:.1rem;color:var(--admin-content-muted);font-weight:500}.form-field{display:flex;flex-direction:column;gap:.35rem}.form-field--full{grid-column:1 / -1}.extra-flags-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem;align-items:center}.extra-flags-row__item{display:flex;gap:.5rem;align-items:center;font-weight:500;color:inherit;margin:0}.extra-price-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1rem;align-items:end}.extra-price-row__price label{display:block;margin-bottom:.35rem}.extra-price-row__price p{margin:0;color:var(--admin-content-muted);font-size:.9rem}.extra-price-row__flag{display:flex;gap:.5rem;align-items:center;font-weight:500;color:inherit;margin:0}@media(max-width:640px){.extra-flags-row,.extra-price-row{grid-template-columns:1fr}.extra-price-row__spacer{display:none}}.form-field label{font-size:.82rem;font-weight:600;color:var(--admin-content-muted)}.form-field input,.form-field select,.form-field textarea,.panel__filter select{font:inherit;padding:.65rem .75rem;border:1px solid #cfd8e6;border-radius:8px;background:#fff;color:var(--admin-content-text);transition:border-color .15s ease,box-shadow .15s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.panel__filter select:focus{outline:none;border-color:var(--admin-accent);box-shadow:0 0 0 3px #5a635433}.deposit-actions,.deposit-capture{display:inline-flex;align-items:center;gap:.45rem;justify-content:flex-end;flex-wrap:wrap}.deposit-capture__amount{width:6rem}.deposit-capture__amount input{width:100%;padding:.45rem .55rem}.deposit-capture__currency{font-size:.85rem;color:var(--admin-content-muted)}.panel__filter select{padding:.45rem .65rem;font-size:.88rem}.form-error{color:var(--admin-danger);font-size:.78rem}.filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.table-wrap{overflow-x:auto}.sort-hint{margin:0 0 .75rem;color:var(--admin-content-muted);font-size:.82rem}.sort-col{width:2.25rem;padding-right:0!important}.sort-handle{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin:0;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--admin-content-muted);cursor:grab;font-size:.95rem;line-height:1;letter-spacing:-.08em;-webkit-user-select:none;user-select:none}.sort-handle:hover{border-color:var(--admin-border, #e5e5e5);background:#00000008;color:inherit}.sort-handle:active{cursor:grabbing}[wire\:sort] tr[wire\:sort\:item]{background:var(--admin-panel-bg, #fff)}table.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem}table.data-table th,table.data-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--admin-line);white-space:nowrap;vertical-align:middle}table.data-table tbody tr:last-child>*{border-bottom:0}table.data-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-content-muted);font-weight:600;background:var(--cal-weekend)}table.data-table tfoot th{border-top:1px solid var(--admin-line);border-bottom:0;color:var(--admin-content-text);background:var(--cal-muted-bg);white-space:nowrap}table.data-table tr:hover td{background:var(--cal-hover)}table.data-table tr.data-table__row--clickable{cursor:pointer}table.data-table tr.data-table__row--clickable:focus-visible{outline:2px solid var(--admin-accent);outline-offset:-2px}table.data-table td.data-table__actions,table.data-table td.actions{cursor:default;white-space:nowrap;display:table-cell;vertical-align:middle}table.data-table td.actions>*+*,table.data-table td.data-table__actions>*+*{margin-inline-start:.5rem}.table-shortcuts{display:flex;flex-wrap:wrap;gap:.35rem .85rem;align-items:center}table.data-table a.link{color:var(--admin-accent);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font:inherit;font-weight:600;font-size:.88rem;padding:.6rem 1rem;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn-primary{background:var(--admin-accent);color:#fffcf7;box-shadow:0 1px 2px #1f241c1f}.btn-primary:hover{background:var(--admin-accent-hover)}.btn-secondary{background:var(--admin-card);border-color:#cfc3b0;color:var(--admin-content-text)}.btn-secondary:hover{background:#ebe3d4;border-color:var(--admin-accent-soft)}.btn-danger{background:var(--admin-danger);color:#fff}.btn-success{background:var(--admin-success);color:#fff}.btn-sm{padding:.4rem .7rem;font-size:.8rem}.btn--external{display:inline-flex;align-items:center;gap:.35rem}.btn__external-icon{width:12px;height:12px;flex-shrink:0;display:block}.btn-ghost{background:transparent;color:var(--admin-muted);border-color:var(--admin-border)}.btn-ghost:hover{color:#fff;background:#ffffff0f}.badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:650;letter-spacing:.02em}.badge--pending{background:#f3e0b8;color:#7a4f12}.badge--confirmed{background:#d4e3cf;color:#2a4526}.badge--ongoing{background:#d7e4f2;color:#1f4a73}.badge--past{background:#e6dfd3;color:#3d3830}.badge--cancelled{background:#f2d4ce;color:#8a2f26}.badge--completed{background:#e6dfd3;color:#3d3830}.badge--source{background:#ead9bc;color:#6a4e28}.badge--payment-pending{background:#f3e0b8;color:#7a4f12}.badge--payment-authorized{background:#d7e4f2;color:#1f4a73}.badge--payment-paid{background:#d4e3cf;color:#2a4526}.badge--payment-expired{background:#e6dfd3;color:#3d3830}.badge--payment-canceled,.badge--payment-failed{background:#f2d4ce;color:#8a2f26}.badge--deposit-authorized{background:#d7e4f2;color:#1f4a73}.badge--deposit-scheduled{background:#ead9bc;color:#6a4e28}.badge--deposit-paid{background:#f2d4ce;color:#8a2f26}.badge--deposit-canceled{background:#d4e3cf;color:#2a4526}.badge--deposit-failed{background:#f2d4ce;color:#8a2f26}.badge--deposit-pending{background:#f3e0b8;color:#7a4f12}.badge--deposit-expired{background:#e6dfd3;color:#3d3830}.data-table__status{width:3.5rem;text-align:center}.status-icon{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem}.status-icon svg{width:1.35rem;height:1.35rem;display:block}.status-icon--on{color:var(--admin-success)}.status-icon--off{color:#b5a997}.flash{padding:.85rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.flash--success{background:#dcead7;color:#2a4526}.flash--error{background:#f2d4ce;color:#8a2f26}.flash--info{background:#ead9bc;color:#6a4e28}.admin-toast{position:fixed;z-index:80;right:1.25rem;bottom:1.25rem;max-width:min(24rem,calc(100vw - 2rem));padding:.9rem 1.1rem;border-radius:10px;font-size:.9rem;font-weight:500;box-shadow:0 10px 30px #0f141929}.admin-toast--success{background:var(--admin-accent);color:#fffcf7}.admin-toast--error{background:var(--admin-danger);color:#fff8f6}[x-cloak]{display:none!important}.empty-state{text-align:center;padding:2.5rem 1rem;color:var(--admin-content-muted)}.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}div.actions{display:flex}.stack-editor__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.stack-editor__header label{margin:0}.stack-editor__empty{margin:0;color:var(--admin-content-muted);font-size:.88rem}.stack-editor{display:grid;gap:.45rem}.stack-editor__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:.45rem;align-items:center}.stack-editor__row input{width:100%;font:inherit;padding:.65rem .75rem;border:1px solid #cfd8e6;border-radius:8px;background:#fff;color:var(--admin-content-text);transition:border-color .15s ease,box-shadow .15s ease}.stack-editor__row input:focus{outline:none;border-color:var(--admin-accent);box-shadow:0 0 0 3px #5a635433}@media(max-width:640px){.stack-editor__row{grid-template-columns:1fr auto}.stack-editor__row input:first-child{grid-column:1 / -1}}.stack-editor--places{gap:.5rem}.stack-editor__place{display:grid;gap:0;padding:0;border:1px solid #cfd8e6;border-radius:10px;background:#f8fafc;overflow:hidden}.stack-editor__place.is-open{background:#f1f5f9}.stack-editor__place-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.35rem;align-items:center;padding:.45rem .5rem .45rem .35rem}.stack-editor__place-toggle{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;margin:0;padding:.35rem .25rem;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;min-width:0}.stack-editor__place-toggle:hover .stack-editor__place-title{color:var(--admin-accent)}.stack-editor__place-title{font-weight:600;font-size:.92rem;color:var(--admin-content-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack-editor__place-type{font-size:.8rem;color:var(--admin-content-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack-editor__place-body{display:grid;gap:.45rem;padding:.75rem;border-top:1px solid #e2e8f0}.stack-editor__place-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);gap:.45rem;align-items:center}.stack-editor__place-city{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.45rem}.stack-editor__place input{width:100%;font:inherit;padding:.65rem .75rem;border:1px solid #cfd8e6;border-radius:8px;background:#fff;color:var(--admin-content-text);transition:border-color .15s ease,box-shadow .15s ease}.stack-editor__place input:focus{outline:none;border-color:var(--admin-accent);box-shadow:0 0 0 3px #5a635433}.reservation-show-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem;align-items:start}.reservation-show-row>.panel{margin-bottom:0;min-width:0}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem 1.5rem}.detail-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid--mail-templates{grid-template-columns:minmax(240px,.9fr) minmax(0,2.1fr);align-items:start}.mail-template-nav{display:flex;flex-direction:column}.mail-template-nav__item{display:flex;flex-direction:column;gap:.2rem;width:100%;padding:.9rem 1rem;border:0;border-bottom:1px solid #e2e8f0;background:transparent;text-align:left;cursor:pointer;color:inherit;font:inherit}.mail-template-nav__item:hover{background:#f8fafc}.mail-template-nav__item.is-active{background:#f1f5f9;box-shadow:inset 3px 0 0 var(--admin-accent, #8a2f26)}.mail-template-nav__label{font-weight:600}.mail-template-nav__hint{font-size:.8rem;color:var(--admin-content-muted);line-height:1.35}.detail-block--wide{grid-column:1 / -1}.detail-block h3{margin:0 0 .75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--admin-content-muted)}.detail-list{margin:0;display:grid;gap:.55rem}.detail-list dt{font-size:.75rem;color:var(--admin-content-muted)}.detail-list dd{margin:.1rem 0 0;font-weight:550}.avail__panel .panel__body{padding-top:.85rem}.avail__header{align-items:center;gap:1rem}.avail__count{margin:.2rem 0 0;font-size:.82rem;color:var(--admin-content-muted)}.avail__controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-left:auto}.avail__view-toggle{display:inline-flex;padding:.15rem;border:1px solid var(--admin-line);border-radius:999px;background:var(--cal-muted-bg)}.avail__view-btn{border:0;background:transparent;font:inherit;font-size:.8rem;font-weight:600;padding:.4rem .85rem;border-radius:999px;color:var(--admin-content-muted);cursor:pointer}.avail__view-btn.is-active{background:var(--cal-reserved);color:#fffcf8}.avail__nav{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.avail__month{min-width:8.5rem;text-align:center;text-transform:capitalize;font-size:.95rem}.avail__filters{display:grid;grid-template-columns:minmax(0,280px);gap:.75rem;margin-bottom:.85rem}.avail__legend{margin:0 0 1rem}.avail__hint{color:var(--admin-content-muted);font-size:.78rem}.avail__hint:before{display:none!important}.legend{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.1rem;font-size:.8rem;color:var(--admin-content-muted)}.legend span:before{content:"";display:inline-block;width:.75rem;height:.75rem;border-radius:3px;margin-right:.35rem;vertical-align:-1px}.legend .blocked:before{background:var(--cal-blocked)}.legend .reserved:before{background:var(--cal-reserved)}.legend .pending:before{background:var(--cal-pending)}.timeline{--timeline-listing-w: 170px;--timeline-day-w: 42px;--timeline-row-h: 64px;display:grid;grid-template-columns:var(--timeline-listing-w) minmax(0,1fr);border:1px solid var(--admin-line);border-radius:12px;overflow:hidden;background:var(--admin-card)}.timeline__sidebar{border-right:1px solid var(--admin-line);background:var(--cal-weekend)}.timeline__corner{height:52px;border-bottom:1px solid var(--admin-line)}.timeline__listing{display:flex;align-items:center;gap:.7rem;height:var(--timeline-row-h);padding:0 .85rem;border-bottom:1px solid var(--cal-grid)}.timeline__listing-name{margin:0;font-size:.86rem;font-weight:650;line-height:1.25}.timeline__listing-meta{margin:.1rem 0 0;font-size:.72rem;color:var(--admin-content-muted);text-transform:uppercase;letter-spacing:.04em}.timeline__scroll{overflow-x:auto;overscroll-behavior-x:contain}.timeline__grid{min-width:calc(var(--timeline-days) * var(--timeline-day-w))}.timeline__dates{display:grid;grid-template-columns:repeat(var(--timeline-days),minmax(var(--timeline-day-w),1fr));height:52px;border-bottom:1px solid var(--admin-line);background:var(--admin-card);position:sticky;top:0;z-index:2}.timeline__date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;border-right:1px solid var(--cal-grid);font-size:.7rem;color:var(--admin-content-muted)}.timeline__date.is-weekend{background:var(--cal-weekend)}.timeline__date.is-today .timeline__dom{background:var(--cal-today);color:#fffcf8;width:1.55rem;height:1.55rem;border-radius:999px;display:grid;place-items:center}.timeline__dow{text-transform:capitalize;font-weight:600}.timeline__dom{font-weight:700;color:var(--admin-content-text);font-size:.85rem}.timeline__row{position:relative;height:var(--timeline-row-h);border-bottom:1px solid var(--cal-grid)}.timeline__cells{display:grid;grid-template-columns:repeat(var(--timeline-days),minmax(var(--timeline-day-w),1fr));height:100%}.timeline__cell{border:0;border-right:1px solid var(--cal-grid);height:100%;width:100%;padding:0;margin:0;background:transparent;font:inherit;color:inherit;appearance:none}.timeline__cell.is-clickable{cursor:pointer}.timeline__cell.is-clickable:hover{background:var(--cal-hover)}.timeline__cell.is-today{background:#4a67411f}.timeline__cell.is-selected{background:var(--cal-select)}.timeline__cell.is-range-edge{background:var(--cal-select-edge)}.timeline__bars{position:absolute;inset:0;pointer-events:none}.timeline__bar{position:absolute;top:50%;transform:translateY(-50%);height:28px;border-radius:999px;display:flex;align-items:center;gap:.35rem;padding:0 .55rem;color:#fffcf7;font-size:.68rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:auto;box-shadow:0 2px 6px #1f241c2e;z-index:1}.timeline__bar--reserved{background:linear-gradient(180deg,var(--cal-reserved) 0%,var(--cal-reserved-end) 100%);z-index:2}.timeline__bar--pending{background:linear-gradient(180deg,var(--cal-pending) 0%,var(--cal-pending-end) 100%);z-index:2}button.timeline__bar{border:0;text-align:left;cursor:pointer}.timeline__bar--blocked{background:repeating-linear-gradient(-45deg,var(--cal-blocked),var(--cal-blocked) 5px,var(--cal-blocked-alt) 5px,var(--cal-blocked-alt) 10px);border-radius:8px;color:#5e574c;opacity:.75;box-shadow:none;z-index:1}.timeline__bar-label{overflow:hidden;text-overflow:ellipsis}.timeline__bar-meta{font-size:.6rem;font-weight:500;opacity:.88}.timeline__bar:hover{filter:brightness(1.05)}.monthcal{border:1px solid var(--admin-line);border-radius:12px;overflow:hidden;background:var(--admin-card)}.monthcal__dows{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--admin-line);background:var(--cal-weekend)}.monthcal__dows>div{padding:.55rem;text-align:center;font-size:.72rem;font-weight:700;color:var(--admin-content-muted);text-transform:uppercase}.monthcal__week{position:relative;min-height:80px;border-bottom:1px solid var(--admin-line)}.monthcal__week:last-child{border-bottom:0}.monthcal__cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:80px}.monthcal__cell{min-height:80px;border:0;border-right:1px solid var(--cal-grid);padding:.45rem .5rem;position:relative;width:100%;margin:0;background:transparent;font:inherit;color:inherit;text-align:left;appearance:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.monthcal__cell:last-child{border-right:0}.monthcal__cell.is-muted{background:var(--cal-muted-bg);color:var(--cal-muted-text)}.monthcal__cell.is-today .monthcal__num{color:var(--cal-today);font-weight:750}.monthcal--avail .monthcal__cell.is-clickable{cursor:pointer;transition:background .12s ease}.monthcal--avail .monthcal__cell.is-clickable:hover{background:var(--cal-hover)}.monthcal--avail .monthcal__cell.is-selected{background:var(--cal-select)}.monthcal--avail .monthcal__cell.is-range-edge{background:var(--cal-select-edge)}.monthcal__num{display:inline-flex;align-items:baseline;gap:.35rem;font-weight:650;font-size:.9rem}.monthcal__num small{font-size:.68rem;font-weight:600;color:var(--cal-reserved)}.monthcal__block-label{display:block;margin-top:.35rem;font-size:.68rem;color:var(--admin-content-muted)}.monthcal__bars{position:absolute;left:0;right:0;top:2.1rem;height:28px;pointer-events:none}.monthcal__bar{position:absolute;top:0;height:28px;border-radius:999px;display:inline-flex;align-items:center;gap:.35rem;padding:0 .55rem 0 .3rem;color:#fffcf7;font-size:.75rem;font-weight:650;white-space:nowrap;overflow:hidden;pointer-events:auto;box-shadow:0 2px 6px #1f241c2e}.monthcal__bar--reserved{background:var(--cal-reserved)}.monthcal__bar--pending{background:var(--cal-pending)}.monthcal__bar--blocked{background:repeating-linear-gradient(-45deg,var(--cal-blocked),var(--cal-blocked) 4px,var(--cal-blocked-alt) 4px,var(--cal-blocked-alt) 8px);color:#5e574c;opacity:.75}button.monthcal__bar{border:0;text-align:left;cursor:pointer}.block-form{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--admin-line)}.block-form__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.block-form__title{margin:0;font-size:.95rem;font-weight:650}.monthcal__bar-avatar{width:1.2rem;height:1.2rem;border-radius:999px;background:#ffffff38;display:grid;place-items:center;font-size:.65rem;flex:0 0 auto}@media(max-width:900px){.avail__filters{grid-template-columns:1fr}.timeline{--timeline-listing-w: 150px;--timeline-day-w: 36px}.timeline__listing-meta{display:none}}.monthcal--prices .monthcal__week,.monthcal--prices .monthcal__cells,.monthcal--prices .monthcal__cell{min-height:64px}.monthcal--prices .monthcal__cell{padding:.3rem .4rem}.monthcal--prices .monthcal__cell .monthcal__price{margin-top:.3rem;font-size:.78rem}.monthcal--prices .monthcal__cell.is-clickable{cursor:pointer;transition:background .12s ease}.monthcal--prices .monthcal__cell.is-clickable:hover{background:var(--cal-hover)}.monthcal--prices .monthcal__cell.is-clickable:focus-visible{outline:2px solid var(--cal-reserved);outline-offset:-2px;z-index:1}.monthcal--prices .monthcal__cell.is-past{background:var(--cal-muted-bg);color:var(--cal-muted-text);cursor:default;opacity:.72}.monthcal--prices .monthcal__cell.is-past .monthcal__price,.monthcal--prices .monthcal__cell.is-past .monthcal__price-note{color:var(--cal-muted-text)}.monthcal--prices .monthcal__cell.is-price-override{background:var(--cal-price-override)}.monthcal--prices .monthcal__cell.is-price-weekend:not(.is-price-override):not(.is-price-selected){background:#f3e8d4}.monthcal--prices .monthcal__cell.is-price-selected{background:var(--cal-price-selected)}.monthcal--prices .monthcal__cell.is-price-edge{box-shadow:inset 0 0 0 2px var(--cal-reserved)}.monthcal__price{display:block;margin-top:.55rem;font-size:.82rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--cal-price-text);line-height:1.2}.monthcal--prices .monthcal__cell.is-price-override .monthcal__price{color:var(--cal-price-override-text)}.monthcal--prices .monthcal__cell.is-price-weekend:not(.is-price-override) .monthcal__price{color:#7a4f12}.monthcal__price-note{display:block;margin-top:.25rem;max-width:100%;font-size:.65rem;font-weight:500;line-height:1.2;color:var(--cal-price-override-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-form{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--admin-line)}.price-form__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.price-form__title{margin:0;font-size:.95rem;font-weight:650}.apartment-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:1rem;align-items:start}.apartment-layout__params,.apartment-layout__guest{min-width:0}.apartment-layout__actions{grid-column:1 / -1;margin-bottom:2rem}.apartment-settings{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.7fr);gap:1rem;align-items:start}.apartment-settings__params,.apartment-settings__capacity{min-width:0}.apartment-show-header__identity{display:flex;align-items:center;gap:1rem;min-width:0}.apartment-show-header__active{display:flex;align-items:center;flex:0 0 auto;margin-left:.75rem}.form-switch__label{font-size:.78rem;font-weight:600;color:var(--admin-content-muted)}.form-switch{position:relative;display:inline-flex;cursor:pointer}.form-switch__input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.form-switch__track{display:block;width:2.6rem;height:1.45rem;border-radius:999px;background:#c5ced9;box-shadow:inset 0 0 0 1px #0f172a14;transition:background .18s ease}.form-switch__track:after{content:"";position:absolute;top:.18rem;left:.18rem;width:1.1rem;height:1.1rem;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a33;transition:transform .18s ease}.form-switch__input:checked+.form-switch__track{background:#3f6b45}.form-switch__input:checked+.form-switch__track:after{transform:translate(1.15rem)}.form-switch__input:focus-visible+.form-switch__track{outline:2px solid #3f6b45;outline-offset:2px}.danger-zone{margin:2.5rem 0 1rem;padding-top:1.25rem;border-top:1px solid #e8edf4;display:flex;justify-content:flex-start}.btn-text-danger{appearance:none;border:0;background:transparent;padding:0;font:inherit;font-size:.82rem;color:#94a3b8;cursor:pointer;text-decoration:underline;text-underline-offset:.18em}.btn-text-danger:hover{color:var(--admin-danger)}.form-stack{display:flex;flex-direction:column;gap:.75rem}.apartment-layout__section-label{margin:.5rem 0 0;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--admin-content-muted)}.apartment-layout__hint{margin:0 0 .75rem;color:var(--admin-content-muted);font-size:.82rem;line-height:1.4}.apartment-guest-header{flex-wrap:wrap;gap:.85rem 1rem}.apartment-guest-tabs{display:flex;flex-wrap:wrap;gap:.35rem}.apartment-guest-tabs__btn{appearance:none;border:1px solid #d5dee9;background:#f8fafc;color:var(--admin-content-muted);font:inherit;font-size:.82rem;font-weight:600;padding:.4rem .75rem;border-radius:8px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.apartment-guest-tabs__btn:hover{background:#eef2f7;color:var(--admin-content-text)}.apartment-guest-tabs__btn.is-active{background:#e8eef4;border-color:#b8c5d6;color:var(--admin-content-text)}.apartment-guest-sections{display:flex;flex-direction:column;gap:1.5rem}.apartment-guest-section h3{margin:0 0 .75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--admin-content-muted)}.apartment-guest-section+.apartment-guest-section{padding-top:1.25rem;border-top:1px solid #e8eef4}.tariffs-layout{display:grid;grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(240px,280px);gap:1rem;align-items:start}.tariffs-col .panel__body{padding:1rem}.tariffs-base-form,.tariffs-discount-form{display:flex;flex-direction:column;gap:.75rem}.tariffs-hint{margin:0 0 .85rem;color:var(--admin-content-muted);font-size:.8rem;line-height:1.4}.tariffs-discount-list{list-style:none;margin:0 0 .85rem;padding:0;display:flex;flex-direction:column;gap:.35rem}.tariffs-discount-list__item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .65rem;border:1px solid var(--admin-line);border-radius:8px;background:var(--cal-muted-bg)}.tariffs-discount-list__item.is-active{border-color:#b8c2b0;background:var(--cal-price-override)}.tariffs-discount-list__item strong{display:block;font-size:.88rem}.tariffs-discount-list__item span{font-size:.82rem;color:var(--admin-content-muted)}.tariffs-discount-list__actions{display:flex;align-items:center;gap:.15rem;flex-shrink:0}.tariffs-override-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.tariffs-override-form__note{grid-column:1 / -1}.tariffs-override-form__actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.legend .price-legend__base:before{background:var(--admin-card);border:1px solid var(--admin-line)}.legend .price-legend__weekend:before{background:#f3e8d4;border:1px solid #d2bc8f}.legend .price-legend__override:before{background:var(--cal-price-override);border:1px solid #b8c2b0}.legend .price-legend__selected:before{background:var(--cal-price-selected);border:1px solid var(--cal-reserved)}.legend .price-legend__past:before{background:var(--cal-muted-bg);border:1px solid var(--admin-line)}.auth-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 18% 12%,rgba(166,139,109,.18),transparent 48%),radial-gradient(ellipse at 85% 88%,rgba(90,99,84,.12),transparent 42%),var(--admin-surface);padding:1.5rem}.auth-card{width:min(440px,100%);background:var(--admin-card);border-radius:14px;box-shadow:var(--admin-shadow);border:1px solid var(--admin-line);padding:2rem 1.75rem}.auth-card__brand{display:flex;justify-content:center;margin:0 0 1.25rem}.auth-card__logo{width:min(340px,100%);height:auto;display:block}.auth-card h1{font-family:var(--admin-display);font-size:1.85rem;font-weight:600;letter-spacing:.04em;margin:0 0 .35rem;text-align:center}.auth-card p{margin:0 0 1.5rem;color:var(--admin-content-muted);text-align:center;letter-spacing:.02em}.auth-card .form-field{margin-bottom:1rem}.auth-card .btn{width:100%;margin-top:.5rem}.pagination{display:flex;justify-content:flex-end;padding:1rem 1.25rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}@media(max-width:1100px){.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid--2,.detail-grid--3,.detail-grid--mail-templates,.reservation-show-row{grid-template-columns:1fr}.reservation-show-header{gap:.75rem}.reservation-show-header__actions{display:flex;align-items:stretch;justify-content:flex-start}.reservation-show-header__actions .btn{justify-content:center}.reservation-show-header__actions .btn-secondary{grid-column:auto}}@media(max-width:980px){.filters,.form-grid,.form-grid--3,.reservation-form-layout{grid-template-columns:1fr 1fr}.reservation-form-layout__side{grid-column:1 / -1}.reservation-form-layout__price{grid-column:1}.reservation-form-layout__comments{grid-column:2}.tariffs-layout{grid-template-columns:1fr 1fr}.tariffs-calendar{grid-column:1 / -1;order:-1}.apartment-layout,.apartment-settings{grid-template-columns:1fr}.tariffs-override-form{grid-template-columns:1fr 1fr}}@media(max-width:820px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:min(280px,86vw);z-index:40;transform:translate(-105%);transition:transform .2s ease}body.nav-open .admin-sidebar{transform:translate(0)}.admin-overlay{display:block;position:fixed;inset:0;background:#0f141973;z-index:30;opacity:0;pointer-events:none;transition:opacity .2s ease}body.nav-open .admin-overlay{opacity:1;pointer-events:auto}.admin-menu-toggle{display:inline-flex}.filters,.form-grid,.form-grid--3,.detail-grid,.reservation-form-layout{grid-template-columns:1fr}.reservation-form-layout__side,.reservation-form-layout__price,.reservation-form-layout__comments{grid-column:auto}.tariffs-layout{grid-template-columns:1fr}.tariffs-calendar{grid-column:auto;order:0}.tariffs-override-form{grid-template-columns:1fr}.admin-content,.admin-topbar{padding-left:1rem;padding-right:1rem}.reservation-show-header{flex-direction:row;align-items:flex-start;padding-top:.95rem;padding-bottom:.95rem;gap:.65rem}.reservation-show-header__actions{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;width:auto;max-width:8.75rem;margin-left:0}.reservation-show-header__actions .btn{width:100%;justify-content:center;min-height:2.2rem}.reservation-show-header__actions .btn-secondary{grid-column:auto}}@media(max-width:420px){.reservation-show-header__actions{max-width:7.75rem}}
