.admin-app,.admin-login{--a-surface:#fff;--a-border:color-mix(in oklab, var(--border) 88%, transparent);--a-border-soft:color-mix(in oklab, var(--border) 55%, transparent);--a-muted:var(--muted-foreground);--a-hover:color-mix(in oklab, var(--sand) 26%, white);--a-head:color-mix(in oklab, var(--sand) 16%, white);--a-shadow-card:0 1px 2px oklch(30% .03 200/.04), 0 8px 24px -8px oklch(30% .03 200/.07);--a-shadow-pop:0 8px 20px oklch(30% .03 200/.1), 0 32px 80px -12px oklch(30% .03 200/.28);--a-radius-lg:12px;--a-radius:8px;--a-radius-sm:6px}[data-room-status=ready]{--st:#2e7d5b}[data-room-status=dirty]{--st:#b07d14}[data-room-status=cleaning]{--st:#2c6ea4}[data-room-status=inspection]{--st:#6a54a0}[data-room-status=maintenance]{--st:#b34237}.admin-app{background:var(--background);min-height:100vh;color:var(--foreground);font-family:var(--font-sans);grid-template-columns:236px 1fr;font-size:13px;display:grid;overflow-x:clip}.admin-sidebar{background:linear-gradient(180deg, var(--primary) 0%, color-mix(in oklab, var(--primary) 88%, black) 100%);color:#fff;z-index:50;flex-direction:column;width:236px;display:flex;position:fixed;inset:0 auto 0 0}.admin-logo{width:148px;margin:26px auto 0}.admin-product{color:var(--accent);text-align:center;font:italic 400 22px var(--font-display);letter-spacing:.04em;margin:6px 0 24px}.admin-sidebar nav{scrollbar-width:none;-ms-overflow-style:none;align-content:start;gap:2px;padding:0 12px;display:grid;overflow-y:auto}.admin-sidebar nav::-webkit-scrollbar{display:none}.admin-sidebar nav button{border-radius:var(--a-radius);color:#ffffffb8;width:100%;min-height:42px;font:500 13px var(--font-sans);letter-spacing:.01em;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0 12px;transition:background .2s,color .2s;display:flex}.admin-sidebar nav button:hover{color:#fff;background:#ffffff12}.admin-sidebar nav button.active{color:#fff;box-shadow:inset 2px 0 0 var(--accent);background:#ffffff1a}.admin-sidebar nav button.active svg{color:var(--accent)}.admin-sidebar nav svg{stroke-width:1.6px;width:18px;height:18px}.admin-user{background:#0000001f;border-top:1px solid #ffffff1f;grid-template-columns:36px 1fr 28px;align-items:center;gap:10px;min-width:0;margin-top:auto;padding:16px 14px;display:grid}.admin-avatar{border:1px solid color-mix(in oklab, var(--accent) 65%, transparent);width:36px;height:36px;color:var(--accent);letter-spacing:.06em;border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.admin-user span{min-width:0}.admin-user strong,.admin-user small{text-overflow:ellipsis;display:block;overflow:hidden}.admin-user strong{font-size:11.5px;font-weight:600}.admin-user small{color:#fff9;text-transform:capitalize;margin-top:2px;font-size:10px}.admin-user button,.admin-sidebar-close{color:#ffffffbf;cursor:pointer;background:0 0;border:0;transition:color .2s}.admin-user button:hover,.admin-sidebar-close:hover{color:#fff}.admin-user svg{width:17px}.admin-sidebar-close,.admin-sidebar-backdrop{display:none}.admin-workspace{grid-column:2;width:100%;min-width:0;overflow-x:clip}.admin-mobile-header{display:none}.admin-page{max-width:1600px;margin:0 auto;padding:30px 34px 64px}.admin-page-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.admin-page-header h1{color:var(--primary);margin:0;font-size:32px}.admin-page-header p{color:var(--a-muted);margin:6px 0 0;font-size:13px}.admin-page-header p:first-letter{text-transform:uppercase}.admin-page-actions{align-items:center;gap:10px;display:flex}.admin-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-primary,.admin-secondary{border-radius:var(--a-radius);height:40px;min-height:40px;font:600 12.5px var(--font-sans);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:background .2s,border-color .2s,box-shadow .2s,color .2s;display:inline-flex}.admin-primary{border:1px solid var(--primary);background:var(--primary);color:var(--primary-foreground)}.admin-primary:hover{background:color-mix(in oklab, var(--primary) 90%, white);border-color:color-mix(in oklab, var(--primary) 90%, white);box-shadow:0 10px 24px -10px color-mix(in oklab, var(--primary) 55%, transparent)}.admin-secondary{border:1px solid var(--a-border);background:var(--a-surface);color:var(--primary)}.admin-secondary:hover{border-color:color-mix(in oklab, var(--primary) 35%, var(--a-border));background:var(--a-hover)}.admin-primary svg,.admin-secondary svg{width:16px}.admin-primary:disabled{opacity:.55;box-shadow:none}.admin-metrics{grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 20px;padding:0;display:grid}.admin-metric{background:var(--a-surface);border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);box-shadow:var(--a-shadow-card);grid-template-columns:44px 1fr;align-items:center;gap:14px;padding:18px 20px;display:grid}.admin-metric i{background:color-mix(in oklab, var(--secondary) 12%, white);width:44px;height:44px;color:var(--secondary);border-radius:10px;place-items:center;display:grid}.admin-metric i svg{stroke-width:1.8px;width:22px}.admin-metric small,.admin-metric strong,.admin-metric em{font-style:normal;display:block}.admin-metric small{letter-spacing:.1em;text-transform:uppercase;color:var(--a-muted);font-size:10.5px;font-weight:600}.admin-metric strong{color:var(--primary);font:500 28px var(--font-display);margin:3px 0 2px;line-height:1.1}.admin-metric em{color:var(--a-muted);font-size:11.5px}.admin-overview-grid{grid-template-columns:1.05fr 1fr;gap:14px;display:grid}.admin-bottom-grid{grid-template-columns:.8fr 1.1fr .9fr;gap:14px;margin-top:14px;display:grid}.admin-panel{background:var(--a-surface);border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);min-width:0;box-shadow:var(--a-shadow-card);padding:18px 20px}.admin-panel h2{color:var(--primary);border-bottom:1px solid var(--a-border-soft);margin:0 0 14px;padding-bottom:11px;font-size:20px}.admin-table .table-head,.admin-table .table-row{border-bottom:1px solid var(--a-border-soft);grid-template-columns:60px 1fr 1.2fr 120px;align-items:center;gap:10px;min-height:40px;font-size:12.5px;display:grid}.admin-table .table-row:last-child{border-bottom:0}.admin-table .table-head{color:var(--a-muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:600}.admin-status{border:1px solid color-mix(in oklab, var(--secondary) 30%, white);width:fit-content;color:color-mix(in oklab, var(--secondary) 75%, black);background:color-mix(in oklab, var(--secondary) 10%, white);white-space:nowrap;border-radius:999px;align-items:center;padding:3px 9px;font-size:10.5px;font-weight:600;display:inline-flex}.admin-status.pending_payment,.admin-status.hold{background:color-mix(in oklab, var(--accent) 14%, white);color:color-mix(in oklab, var(--accent) 62%, black);border-color:color-mix(in oklab, var(--accent) 38%, white)}.admin-status.checked_in{color:#23608f;background:#ecf4fc;border-color:#c3daee}.admin-status.conflict,.admin-status.cancelled{background:color-mix(in oklab, var(--destructive) 8%, white);color:color-mix(in oklab, var(--destructive) 72%, black);border-color:color-mix(in oklab, var(--destructive) 25%, white)}.admin-status[data-room-status]{background:color-mix(in oklab, var(--st) 12%, white);color:color-mix(in oklab, var(--st) 82%, black);border-color:color-mix(in oklab, var(--st) 32%, white)}.arrival-list>div,.channel-row{border-bottom:1px solid var(--a-border-soft);align-items:center;gap:14px;min-height:52px;font-size:12.5px;display:flex}.finance-row{border-bottom:1px solid var(--a-border-soft);min-height:48px;font-size:12.5px}.arrival-list>div>span{flex:1}.finance-row>span{min-width:0}.finance-row>span.admin-row-actions{justify-content:flex-end;gap:6px;display:flex}.arrival-list strong,.arrival-list small,.finance-row strong,.finance-row small{display:block}.arrival-list small,.finance-row small{color:var(--a-muted);margin-top:3px;font-size:11.5px}.arrival-list button{border:1px solid color-mix(in oklab, var(--primary) 35%, white);color:var(--primary);border-radius:var(--a-radius-sm);cursor:pointer;background:#fff;padding:8px 12px;font-size:11px;font-weight:600;transition:background .2s,border-color .2s}.arrival-list button:hover{background:var(--a-hover);border-color:var(--primary)}.admin-empty-compact{padding:10px 0 4px}.admin-btn-sm{width:fit-content;height:32px;min-height:32px;padding:0 12px;font-size:11.5px}.pending-list{margin:0;padding:0;list-style:none}.pending-list li{border-bottom:1px solid var(--a-border-soft);align-items:center;gap:10px;min-height:40px;font-size:12.5px;display:flex}.pending-list li:last-child{border-bottom:0}.pending-list svg{width:17px;color:color-mix(in oklab, var(--destructive) 75%, black)}.cash-box>div{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.cash-box span{border-right:1px solid var(--a-border-soft);min-width:0;color:var(--a-muted);letter-spacing:.08em;text-transform:uppercase;padding:9px 10px;font-size:10.5px;font-weight:600}.cash-box span:first-child{padding-left:0}.cash-box span:last-child{border:0}.cash-box strong{color:var(--secondary);font:500 clamp(15px, 1.35vw, 19px) var(--font-display);white-space:nowrap;letter-spacing:0;text-transform:none;margin-top:8px;display:block}.channel-row{justify-content:space-between}.channel-row .healthy,.channel-table .healthy{color:color-mix(in oklab, var(--secondary) 82%, black);font-weight:600}.channel-row .error,.channel-table .error{color:color-mix(in oklab, var(--destructive) 78%, black);font-weight:600}.channel-row .stale,.channel-table .stale{color:color-mix(in oklab, var(--accent) 55%, black);font-weight:600}.calendar-health{border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);background:var(--a-surface);min-height:68px;box-shadow:var(--a-shadow-card);color:var(--a-muted);align-items:center;gap:28px;margin-bottom:14px;padding:12px 20px;font-size:12px;display:flex}.calendar-availability{border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);background:var(--a-surface);box-shadow:var(--a-shadow-card);flex-wrap:wrap;align-items:end;gap:12px 16px;margin-bottom:12px;padding:14px 16px;display:flex}.calendar-availability-fields{flex-wrap:wrap;flex:1;gap:12px;min-width:0;display:flex}.calendar-availability label{color:var(--a-muted);text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:6px;font-size:10.5px;font-weight:600;display:flex}.calendar-availability input,.calendar-availability select{border:1px solid var(--a-border);border-radius:var(--a-radius);min-width:132px;min-height:40px;font:13px var(--font-sans);color:var(--foreground);background:#fff;outline:0;padding:8px 11px}.calendar-availability input:focus,.calendar-availability select:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 14%, transparent)}.calendar-availability>button{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.calendar-availability>button svg{width:16px;height:16px}.calendar-availability-error{color:color-mix(in oklab, var(--destructive) 78%, black);margin:-4px 0 12px;font-size:13px;font-weight:600}.calendar-availability-results{border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);background:color-mix(in oklab, var(--a-surface) 92%, var(--primary));box-shadow:var(--a-shadow-card);margin-bottom:14px;padding:14px 16px}.calendar-availability-results>header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:12px;display:flex}.calendar-availability-results>header strong{color:var(--foreground);font:500 16px var(--font-display)}.calendar-availability-results>header span,.calendar-availability-results>p{color:var(--a-muted);font-size:13px}.calendar-availability-results>ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.calendar-availability-results>ul>li{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.calendar-availability-results>ul>li strong{color:var(--foreground);font-size:14px;display:block}.calendar-availability-results>ul>li span{color:var(--a-muted);font-size:12px}.calendar-availability-results>ul>li button{flex-shrink:0}.calendar-availability-unavailable{color:var(--a-muted);margin-top:12px;font-size:12px}.calendar-availability-unavailable summary{cursor:pointer;font-weight:600}.calendar-availability-unavailable ul{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.calendar-availability-unavailable li{border-radius:var(--a-radius);background:oklab(100% 0 5.96046e-8/.7);justify-content:space-between;gap:12px;padding:8px 10px;display:flex}.calendar-health span{align-items:baseline;gap:6px;display:flex}.calendar-health strong{color:var(--primary);font:500 19px var(--font-display)}.calendar-health button{color:var(--primary);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-left:auto;font-weight:600;display:flex}.calendar-health button:hover{color:color-mix(in oklab, var(--primary) 75%, var(--secondary))}.calendar-health button svg{width:16px}.calendar-health .conflict{color:color-mix(in oklab, var(--destructive) 75%, black);margin-left:0;font-weight:600}.calendar-scroll{background:var(--a-surface);border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);box-shadow:var(--a-shadow-card);overflow-x:auto}.calendar-grid{grid-template-columns:140px repeat(14,minmax(68px,1fr));min-width:1100px;display:grid}.calendar-head{border-bottom:1px solid var(--a-border);align-items:stretch;min-height:52px}.calendar-head>*{border-right:1px solid var(--a-border-soft);color:var(--a-muted);text-transform:capitalize;place-items:center;font-size:10.5px;font-weight:500;display:grid}.calendar-scroll section h2{font:600 10.5px var(--font-sans);letter-spacing:.12em;color:var(--a-muted);text-transform:uppercase;background:var(--a-head);border-bottom:1px solid var(--a-border-soft);margin:0;padding:12px 18px}.calendar-room{border-bottom:1px solid var(--a-border-soft);min-height:58px}.calendar-room>strong{border-right:1px solid var(--a-border-soft);justify-content:space-between;align-items:center;gap:8px;padding-left:18px;padding-right:10px;font-size:13px;display:flex}.calendar-room-label button{border-radius:var(--a-radius);width:28px;height:28px;color:var(--a-muted);cursor:pointer;opacity:0;background:0 0;border:1px solid #0000;place-items:center;transition:background .18s,border-color .18s,color .18s,opacity .18s;display:inline-grid}.calendar-room:hover .calendar-room-label button,.calendar-room-label button.open,.calendar-room-label button:focus-visible{opacity:1}.calendar-room-label button.open{background:color-mix(in oklab, var(--destructive) 8%, white);border-color:color-mix(in oklab, var(--destructive) 28%, white);color:color-mix(in oklab, var(--destructive) 70%, black)}.calendar-room-label button:hover,.calendar-room-label button:focus-visible{background:color-mix(in oklab, var(--destructive) 10%, white);border-color:color-mix(in oklab, var(--destructive) 34%, white);color:color-mix(in oklab, var(--destructive) 72%, black)}.calendar-room-label svg{width:15px;height:15px}.calendar-room-name{align-items:center;gap:8px;min-width:0;display:inline-flex}.calendar-room-dot{background:var(--st,var(--a-border));width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in oklab, var(--st,var(--border)) 16%, transparent);border-radius:999px;flex:none}.calendar-room[data-room-status]>.calendar-room-label{box-shadow:inset 3px 0 0 var(--st)}.calendar-cell.maintenance{background:color-mix(in oklab, var(--st) 6%, transparent)}.calendar-cell{border-right:1px dashed var(--a-border-soft);min-width:0;position:relative}.calendar-event{z-index:2;border-radius:var(--a-radius-sm);background:color-mix(in oklab, var(--secondary) 12%, white);border:1px solid color-mix(in oklab, var(--secondary) 38%, white);max-width:700px;color:color-mix(in oklab, var(--secondary) 75%, black);white-space:nowrap;align-items:center;gap:7px;padding:0 10px;font-size:10px;font-weight:500;display:flex;position:absolute;inset:8px auto 8px 4px;overflow:hidden}.calendar-event.stay{cursor:pointer;text-align:left;max-width:none;font:inherit}.calendar-event.stay:hover{filter:brightness(.97)}.calendar-event.stay:focus-visible{outline:2px solid color-mix(in oklab, var(--secondary) 55%, white);outline-offset:1px}.calendar-event.pending_payment{background:color-mix(in oklab, var(--accent) 16%, white);border-color:color-mix(in oklab, var(--accent) 48%, white);color:color-mix(in oklab, var(--accent) 58%, black)}.calendar-event.checked_in{color:#23608f;background:#eaf3fb;border-color:#a9cbe8}.calendar-event.conflict{background:color-mix(in oklab, var(--destructive) 9%, white);border-color:color-mix(in oklab, var(--destructive) 32%, white);color:color-mix(in oklab, var(--destructive) 72%, black)}.calendar-event.maintenance{z-index:1;background:repeating-linear-gradient(135deg, color-mix(in oklab, var(--st) 11%, white) 0 8px, color-mix(in oklab, var(--st) 18%, white) 8px 16px);border-color:color-mix(in oklab, var(--st) 40%, white);max-width:none;color:color-mix(in oklab, var(--st) 80%, black);white-space:normal;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px}.calendar-event.maintenance small{opacity:.8;font-size:8.5px}.calendar-cell.closed{background:color-mix(in oklab, var(--destructive) 7%, transparent)}.calendar-event.closed,.calendar-event.blocked{background:color-mix(in oklab, var(--destructive) 14%, white);border-color:color-mix(in oklab, var(--destructive) 42%, white);color:color-mix(in oklab, var(--destructive) 76%, black);white-space:normal;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px}.calendar-event.closed small,.calendar-event.blocked small{opacity:.8;font-size:8.5px}.calendar-today{color:color-mix(in oklab, var(--accent) 60%, black);font-weight:700}.calendar-month{text-transform:capitalize}.admin-empty{color:var(--a-muted);padding:18px 16px;font-size:13px}.priority-urgent,.priority-high{color:color-mix(in oklab, var(--destructive) 78%, black);text-transform:capitalize;font-weight:600}.priority-normal,.priority-low{text-transform:capitalize;color:var(--a-muted)}.admin-status.open{background:color-mix(in oklab, var(--accent) 14%, white);color:color-mix(in oklab, var(--accent) 62%, black);border-color:color-mix(in oklab, var(--accent) 38%, white)}.admin-status.in_progress{color:#23608f;background:#ecf4fc;border-color:#c3daee}.admin-status.done{background:color-mix(in oklab, var(--secondary) 10%, white);color:color-mix(in oklab, var(--secondary) 75%, black);border-color:color-mix(in oklab, var(--secondary) 30%, white)}.guests-row{text-align:left;cursor:pointer;border:0;border-bottom:1px solid var(--a-border-soft);background:0 0;width:100%;transition:background .15s}.guests-row:hover{background:var(--a-hover)}.guests-head{grid-template-columns:repeat(6,minmax(0,1fr)) 40px}.guests-panel{overflow:visible}.guests-head{grid-template-columns:minmax(170px,1.25fr) minmax(180px,1.35fr) minmax(98px,.75fr) minmax(70px,.55fr) minmax(82px,.6fr) 28px;min-width:0}.guests-row{gap:inherit;min-width:0;padding:inherit;grid-template-columns:minmax(170px,1.25fr) minmax(180px,1.35fr) minmax(98px,.75fr) minmax(70px,.55fr) minmax(82px,.6fr) 28px;align-items:center;display:grid}.guests-row>strong,.guests-row>span{min-width:0}.guests-row>strong,.guests-row>span:not(.row-action){overflow-wrap:anywhere}.guests-row>span:not(.row-action){color:var(--foreground)}.guest-total{color:var(--primary);font-weight:600}.row-action{color:var(--a-muted);justify-content:flex-end;display:flex}.row-action svg{width:15px;height:15px}.admin-dialog-wide{width:min(920px,100vw - 24px);max-height:min(90vh,900px);overflow:auto}.guest-detail{padding:0 4px 8px}.guest-profile{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin-bottom:16px;display:grid}.guest-profile .full{grid-column:1/-1}.guest-profile dt{text-transform:uppercase;letter-spacing:.08em;color:var(--a-muted);font-size:10.5px;font-weight:600}.guest-profile dd{color:var(--foreground);margin:3px 0 0;font-size:14px}.guest-detail h3{color:var(--primary);margin:10px 0 12px;font-size:16px}.folio-section{border-top:1px solid var(--a-border-soft);margin:8px 0 18px;padding-top:8px}.folio-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.folio-head h3{margin:0}.folio-layout{grid-template-columns:minmax(0,1fr) 200px;align-items:start;gap:16px;display:grid}.folio-table{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);overflow:hidden}.folio-row{border-bottom:1px solid var(--a-border-soft);grid-template-columns:minmax(0,1.6fr) .5fr .8fr .8fr .4fr;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:grid}.folio-table.full .folio-row{grid-template-columns:minmax(0,1.6fr) .5fr .8fr .4fr}.folio-row:last-child{border-bottom:0}.folio-row.head{background:color-mix(in srgb, var(--a-surface) 88%, var(--a-muted) 12%);text-transform:uppercase;letter-spacing:.06em;color:var(--a-muted);font-size:11px;font-weight:600}.folio-row strong{flex-direction:column;gap:2px;font-weight:600;display:flex}.folio-row small{color:var(--a-muted);text-transform:none;letter-spacing:0;font-size:11px;font-weight:500}.folio-summary{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:color-mix(in srgb, var(--a-surface) 92%, var(--primary) 8%);padding:14px 16px}.folio-summary h4{text-transform:uppercase;letter-spacing:.08em;color:var(--a-muted);margin:0 0 12px;font-size:12px}.folio-summary dl{gap:10px;margin:0;display:grid}.folio-summary dl>div{justify-content:space-between;gap:12px;font-size:13px;display:flex}.folio-summary dt{color:var(--a-muted)}.folio-summary dd{margin:0;font-weight:600}.folio-summary-total{border-top:1px solid var(--a-border-soft);padding-top:8px;font-size:15px!important}.admin-link{color:var(--primary);cursor:pointer;font:inherit;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.admin-link.danger{color:#b42318;align-items:center;text-decoration:none;display:inline-flex}.products-table .table-head,.products-table .table-row{grid-template-columns:minmax(0,1.4fr) .8fr .7fr .7fr .6fr .5fr}.products-table .table-row small{color:var(--a-muted);font-size:11px;display:block}@media (width<=720px){.admin-page{padding:20px 14px 48px}.admin-page-header{flex-direction:column;gap:14px}.admin-page-header h1{font-size:26px}.admin-page-actions,.admin-header-actions{flex-wrap:wrap;width:100%}.admin-page-actions>button,.admin-page-actions>.admin-header-actions,.admin-header-actions>button{flex:auto;justify-content:center;min-width:min(100%,140px)}.admin-toolbar{gap:8px}.admin-toolbar label:not(.admin-toolbar-check),.admin-toolbar-search,.admin-toolbar-date,.admin-toolbar select{flex:100%;width:100%;min-width:0}.admin-toolbar-check,.admin-toolbar-clear{flex:auto}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid label.full{grid-column:auto}.admin-dialog-backdrop{padding:12px;padding-bottom:max(12px, env(safe-area-inset-bottom));align-items:center}.admin-dialog{border-radius:14px 14px 10px 10px;width:100%;max-height:min(92vh,100%);padding:18px 16px 20px}.admin-dialog-wide{width:100%}.admin-dialog h2{font-size:22px}.guest-profile{grid-template-columns:1fr}.reservation-table,.inventory-panel{overflow-x:visible}.reservation-row.head{display:none}.reservation-row:not(.head){border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:color-mix(in oklab, var(--a-head) 55%, white);align-items:stretch;gap:10px;min-height:0;margin:0 0 10px;padding:14px;grid-template-columns:1fr!important;min-width:0!important}.reservation-row:not(.head):last-child{margin-bottom:0}.reservation-row>[data-label]{gap:3px;min-width:0;display:grid}.reservation-row>[data-label]:before{content:attr(data-label);letter-spacing:.08em;text-transform:uppercase;color:var(--a-muted);font-size:10px;font-weight:600}.reservation-actions{border-top:1px solid var(--a-border-soft);gap:10px;padding-top:4px;display:grid}.reservation-action-links{flex-wrap:wrap;gap:8px 12px;display:flex}.reservation-row select,.reservation-actions select,.rate-input{width:100%;max-width:none;height:40px}.rate-input input{width:100%}.channel-export-url{white-space:normal;overflow-wrap:anywhere;word-break:break-all}.admin-btn-sm{justify-content:center;width:100%}.guests-panel .guests-row{grid-template-columns:1fr!important}.guests-panel .guests-row>strong,.guests-panel .guests-row>span:not(.row-action),.guests-panel .guests-row .row-action{grid-area:auto/1}.guests-panel .guests-row .row-action{justify-self:end}.admin-table .table-head{display:none}.admin-table .table-row{align-items:start;gap:8px;min-height:0;padding:12px 0;grid-template-columns:1fr!important}.admin-table .table-row>[data-label]{gap:2px;display:grid}.admin-table .table-row>[data-label]:before{content:attr(data-label);letter-spacing:.08em;text-transform:uppercase;color:var(--a-muted);font-size:10px;font-weight:600}.products-table .table-row{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:color-mix(in oklab, var(--a-head) 55%, white);margin-bottom:10px;padding:14px}.folio-layout{grid-template-columns:1fr}.folio-row.head{display:none}.folio-row,.folio-table.full .folio-row{align-items:start;gap:8px;grid-template-columns:1fr!important}.folio-row>[data-label]{gap:2px;display:grid}.folio-row>[data-label]:before{content:attr(data-label);letter-spacing:.08em;text-transform:uppercase;color:var(--a-muted);font-size:10px;font-weight:600}.folio-head{flex-direction:column;align-items:stretch}.folio-head .admin-secondary,.folio-head .admin-primary{justify-content:center;width:100%}.calendar-grid{grid-template-columns:100px repeat(14,minmax(56px,1fr));min-width:920px}.calendar-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.calendar-scroll:before{content:"Deslize para ver os dias →";letter-spacing:.04em;color:var(--a-muted);background:var(--a-head);border-bottom:1px solid var(--a-border-soft);padding:8px 12px;font-size:11px;font-weight:600;display:block}.crop-controls,.crop-actions{flex-wrap:wrap}.crop-actions button{flex:auto}.site-list-header{flex-direction:column;align-items:stretch}.integration-heading{flex-direction:column;align-items:stretch;gap:10px}}.guest-history{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);overflow:hidden}.calendar-event .admin-status{padding:2px 6px;font-size:8.5px}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.admin-toolbar label:not(.admin-toolbar-check),.admin-toolbar-search,.admin-toolbar-date{background:var(--a-surface);border:1px solid var(--a-border);border-radius:var(--a-radius);align-items:center;gap:9px;height:42px;padding:0 13px;transition:border-color .2s,box-shadow .2s;display:flex}.admin-toolbar-search{flex:220px;width:min(320px,100%)}.admin-toolbar label:not(.admin-toolbar-check):focus-within,.admin-toolbar-search:focus-within,.admin-toolbar-date:focus-within,.admin-toolbar select:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 14%, transparent)}.admin-toolbar svg{width:16px;color:var(--a-muted);flex-shrink:0}.admin-toolbar-search input{min-width:0;font:13px var(--font-sans);color:var(--foreground);background:0 0;border:0;outline:0;flex:1}.admin-toolbar select{background:var(--a-surface);border:1px solid var(--a-border);border-radius:var(--a-radius);min-width:150px;height:42px;font:13px var(--font-sans);color:var(--foreground);cursor:pointer;outline:0;padding:0 12px}.admin-toolbar-date{gap:8px;padding-right:10px}.admin-toolbar-date span{font:11px/1 var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--a-muted);white-space:nowrap}.admin-toolbar-date input[type=date]{font:13px var(--font-sans);color:var(--foreground);background:0 0;border:0;outline:0;min-width:118px}.admin-toolbar-check{background:var(--a-surface);border:1px solid var(--a-border);border-radius:var(--a-radius);height:42px;font:13px var(--font-sans);color:var(--foreground);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.admin-toolbar-check input{width:15px;height:15px;accent-color:var(--ring);cursor:pointer}.admin-toolbar-clear{border:1px solid var(--a-border);border-radius:var(--a-radius);height:42px;font:13px var(--font-sans);color:var(--a-muted);cursor:pointer;background:0 0;padding:0 14px;transition:color .15s,border-color .15s,background .15s}.admin-toolbar-clear:hover{color:var(--foreground);border-color:color-mix(in oklab, var(--foreground) 24%, var(--a-border));background:color-mix(in oklab, var(--a-surface) 70%, transparent)}.reservation-table{padding:0;overflow-x:auto}.reservation-row{border-bottom:1px solid var(--a-border-soft);grid-template-columns:128px minmax(140px,1.2fr) 100px 110px 108px 88px minmax(168px,1fr);align-items:center;gap:12px;min-width:980px;min-height:52px;padding:10px 18px;font-size:12.5px;display:grid}.reservation-row.head{background:var(--a-head);min-height:40px;color:var(--a-muted);letter-spacing:.1em;text-transform:uppercase;padding-top:0;padding-bottom:0;font-size:10px;font-weight:600}.reservation-row strong,.reservation-row>span{min-width:0}.reservation-row strong small,.reservation-row span small{color:var(--a-muted);margin-top:3px;font-size:11px;font-weight:400;display:block}.inventory-panel{overflow-x:auto}.inventory-types-row{grid-template-columns:minmax(150px,1.3fr) minmax(140px,1.1fr) 110px 88px 100px 88px;min-width:760px}.inventory-rooms-row{grid-template-columns:88px minmax(140px,1.2fr) 72px 110px 64px 88px;min-width:720px}.maintenance-row{grid-template-columns:minmax(160px,1.4fr) 80px 100px 100px 90px minmax(130px,1fr);min-width:780px}.guest-history-row{grid-template-columns:minmax(110px,1.1fr) minmax(100px,1fr) minmax(90px,1fr) 100px 100px;min-width:0}.guests-panel .reservation-row{min-width:0}.guests-panel .guests-head,.guests-panel .guests-row{grid-template-columns:minmax(165px,1.25fr) minmax(185px,1.35fr) minmax(100px,.75fr) minmax(68px,.55fr) minmax(86px,.6fr) 28px}.guests-panel .guests-row{min-height:64px;line-height:1.35}.reservation-row select{border:1px solid var(--a-border);border-radius:var(--a-radius-sm);width:100%;max-width:160px;height:32px;font:11.5px var(--font-sans);color:var(--foreground);background:#fff;padding:0 6px}.reservation-actions{justify-items:stretch;gap:6px;min-width:0;display:grid}.reservation-action-links{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.reservation-actions button,.reservation-action-links button{color:var(--primary);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:11.5px;font-weight:600}.reservation-actions button:hover,.reservation-action-links button:hover{text-underline-offset:3px;text-decoration:underline}.cancellation-policy{border-radius:var(--a-radius);background:color-mix(in oklab, var(--sand) 45%, white);border:1px solid color-mix(in oklab, var(--accent) 22%, white);color:color-mix(in oklab, var(--accent) 45%, black);margin:0;padding:12px 16px;font-size:12.5px}.room-board{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-bottom:14px;display:grid}.room-tile{background:var(--a-surface);border:1px solid var(--a-border-soft);border-top:3px solid var(--secondary);border-radius:var(--a-radius);box-shadow:var(--a-shadow-card);gap:8px;min-width:0;padding:12px 14px;transition:box-shadow .25s,transform .25s;display:grid}.room-tile:hover{box-shadow:var(--a-shadow-pop);transform:translateY(-1px)}.room-tile[data-room-status]{border-color:color-mix(in oklab, var(--st) 26%, var(--a-border-soft));border-top-color:var(--st);background:linear-gradient(180deg, color-mix(in oklab, var(--st) 9%, white) 0%, color-mix(in oklab, var(--st) 3%, white) 100%)}.room-tile[data-room-status=maintenance]{border-top-width:4px}.room-tile-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.room-tile-head>div{min-width:0}.room-tile-blocked{color:color-mix(in oklab, var(--st) 82%, black);align-items:center;gap:4px;margin-top:4px;font-size:10.5px;font-weight:600;display:inline-flex}.room-tile-blocked svg{flex-shrink:0;width:11px;height:11px}.room-tile-head strong,.room-tile>div strong{font:500 18px var(--font-display);color:var(--primary);line-height:1.15;display:block}.room-tile-head small,.room-tile>div small{color:var(--a-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.room-tile p{color:var(--a-muted);min-height:0;margin:0;font-size:11.5px;line-height:1.35}.room-tile select{border:1px solid var(--a-border);border-radius:var(--a-radius-sm);width:100%;height:32px;font:11.5px var(--font-sans);color:var(--foreground);background:#fff;padding:0 8px}.finance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.finance-grid article{background:var(--a-surface);border:1px solid var(--a-border-soft);border-radius:var(--a-radius);box-shadow:var(--a-shadow-card);min-width:0;padding:12px 14px}.finance-grid small,.finance-grid strong{display:block}.finance-grid small{color:var(--a-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.finance-grid strong{color:var(--primary);font:500 22px var(--font-display);overflow-wrap:anywhere;margin-top:4px;line-height:1.15}.finance-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:48px;padding:8px 0;display:grid}.finance-row-action{grid-template-columns:minmax(0,1fr) auto auto auto}.finance-row-simple{grid-template-columns:minmax(0,1fr) auto}.finance-row>.admin-secondary,.finance-row>.admin-primary{justify-self:end}.finance-amount{text-align:right;white-space:nowrap;color:var(--primary)}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.rules-board{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.rule-card{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:color-mix(in oklab, var(--sand) 12%, white);gap:10px;min-width:0;padding:12px 14px;display:grid}.rule-card header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.rule-card header strong{font:500 16px var(--font-display);color:var(--primary);line-height:1.2}.rule-card header em{color:var(--primary);white-space:nowrap;font-size:13px;font-style:normal;font-weight:600}.rule-card ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.rule-card li{color:var(--a-muted);font-size:11.5px;line-height:1.35}.channel-table{grid-template-columns:1fr 100px 160px 100px 1.1fr 88px}.channel-export-table{grid-template-columns:100px minmax(0,1fr) 110px}.channel-export-url{text-overflow:ellipsis;white-space:nowrap;color:var(--a-muted);font-size:12px;font-weight:500;overflow:hidden}.admin-panel-hint{color:var(--a-muted);margin:0 0 14px;font-size:13px;line-height:1.45}.admin-danger{margin-right:auto;color:#9f1239!important;border-color:color-mix(in srgb, #9f1239 28%, var(--a-border))!important}.admin-danger:hover{background:#f7ecef!important}.rates-table{grid-template-columns:minmax(140px,1.1fr) minmax(130px,1fr) 80px 120px minmax(160px,1.3fr) 96px;min-width:860px}.rate-input{border:1px solid var(--a-border);border-radius:var(--a-radius-sm);background:#fff;align-items:center;max-width:120px;height:32px;padding-left:8px;transition:border-color .2s,box-shadow .2s;display:flex}.rate-input:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 14%, transparent)}.rate-input input{width:72px;min-width:0;font:12px var(--font-sans);background:0 0;border:0;outline:0}.rates-note{color:var(--a-muted);margin-top:14px;font-size:12.5px;line-height:1.7}.settings-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.settings-grid dl{margin:0}.settings-grid dl div{border-bottom:1px solid var(--a-border-soft);justify-content:space-between;padding:12px 0;font-size:12.5px;display:flex}.settings-grid dd{color:var(--primary);font-weight:600}.google-reviews-settings{grid-column:1/-1}.integration-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;display:flex}.integration-heading h2{margin-bottom:5px}.integration-heading p,.integration-note,.settings-loading{color:var(--a-muted);font-size:12.5px;line-height:1.6}.integration-heading>span{border:1px solid var(--a-border);color:var(--a-muted);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:6px 11px;font-size:9px;font-weight:700}.integration-heading>span.ready{border-color:color-mix(in oklab, var(--secondary) 35%, white);background:color-mix(in oklab, var(--secondary) 10%, white);color:color-mix(in oklab, var(--secondary) 75%, black)}.google-settings-form{max-width:760px}.google-enable{align-items:center;min-height:42px;text-transform:none!important;letter-spacing:0!important;flex-direction:row!important}.google-enable input{width:18px;min-height:18px;accent-color:var(--primary)}.integration-status{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:var(--a-head);color:var(--a-muted);justify-content:space-between;align-items:center;gap:20px;padding:12px 14px;font-size:11.5px;display:flex}.integration-status strong{color:var(--primary)}.settings-loading{align-items:center;gap:8px;display:flex}.settings-loading svg{width:16px;height:16px}.spin{animation:1s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-global-error{z-index:40;background:color-mix(in oklab, var(--destructive) 7%, white);min-height:44px;color:color-mix(in oklab, var(--destructive) 75%, black);border-bottom:1px solid color-mix(in oklab, var(--destructive) 22%, white);justify-content:space-between;align-items:center;padding:0 18px;font-size:12.5px;display:flex;position:sticky;top:0}.admin-global-error button{color:inherit;cursor:pointer;background:0 0;border:0}.admin-dialog-backdrop{z-index:90;background:color-mix(in oklab, var(--primary) 45%, black 10%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-dialog{border:1px solid var(--a-border-soft);width:min(620px,100%);max-height:90vh;box-shadow:var(--a-shadow-pop);background:#fff;border-radius:14px;padding:26px;overflow-y:auto}.admin-dialog>header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-dialog h2{color:var(--primary);margin:0;font-size:26px}.admin-dialog-description{color:var(--a-muted);margin:-8px 0 20px;font-size:13px;line-height:1.55}.admin-dialog header button{color:var(--a-muted);cursor:pointer;background:0 0;border:0;transition:color .2s}.admin-dialog header button:hover{color:var(--foreground)}.admin-form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.admin-form-grid label{color:var(--a-muted);text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:6px;font-size:10.5px;font-weight:600;display:flex}.admin-form-grid label.full{grid-column:1/-1}.weekday-picker{flex-wrap:wrap;gap:6px;display:flex}.weekday-picker label{border:1px solid var(--a-border);border-radius:var(--a-radius);cursor:pointer;background:#fff;flex-direction:row;align-items:center;gap:5px;padding:7px 10px;display:flex}.weekday-picker input{width:14px;height:14px;min-height:0;accent-color:var(--primary);padding:0}.admin-form-hint{color:var(--a-muted);grid-column:1/-1;margin:0;font-size:11.5px;line-height:1.45}.admin-form-grid label small{color:var(--a-muted);text-transform:none;letter-spacing:0;font-size:11px;font-weight:400;line-height:1.35}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{border:1px solid var(--a-border);border-radius:var(--a-radius);min-height:42px;font:13px var(--font-sans);color:var(--foreground);text-transform:none;letter-spacing:0;background:#fff;outline:0;padding:9px 12px;font-weight:400;transition:border-color .2s,box-shadow .2s}.admin-form-grid input:focus,.admin-form-grid select:focus,.admin-form-grid textarea:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 14%, transparent)}.admin-form-grid textarea{min-height:80px}.reservation-guest-search{position:relative}.reservation-guest-search>input{width:100%}.reservation-guest-results{z-index:10;border:1px solid var(--a-border);border-radius:var(--a-radius);box-shadow:var(--a-shadow-pop);background:#fff;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:hidden}.reservation-guest-results button{border:0;border-bottom:1px solid var(--a-border-soft);width:100%;color:var(--foreground);cursor:pointer;text-align:left;text-transform:none;letter-spacing:0;background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:11px 13px;display:flex}.reservation-guest-results button:last-child{border-bottom:0}.reservation-guest-results button:hover,.reservation-guest-results button:focus-visible{background:var(--a-hover);outline:0}.reservation-guest-results strong{font-size:13px}.reservation-guest-results span{color:var(--a-muted);white-space:nowrap;font-size:11.5px;font-weight:400}.selected-guest-hint{color:color-mix(in oklab, var(--secondary) 82%, black);letter-spacing:0;text-transform:none;justify-content:space-between;align-items:center;gap:12px;margin-top:7px;font-size:11.5px;font-weight:500;line-height:1.4;display:flex}.selected-guest-hint button{color:var(--primary);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.unregistered-guest-hint{color:color-mix(in oklab, var(--secondary) 82%, black);justify-content:space-between;align-items:center;gap:12px;margin-top:7px;font-size:11.5px;font-weight:500;line-height:1.4;display:flex}.reservation-guest-register{border:1px solid color-mix(in oklab, var(--primary) 30%, white);border-radius:var(--a-radius);background:color-mix(in oklab, var(--primary) 8%, white);color:var(--primary);cursor:pointer;font:600 11.5px var(--font-sans);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;transition:background .18s,border-color .18s;display:inline-flex}.group-status-radios{flex-wrap:wrap;gap:12px 18px;margin-top:4px;display:flex}.group-status-option{cursor:pointer;align-items:center;text-transform:none!important;letter-spacing:0!important;color:var(--foreground)!important;flex-direction:row!important;gap:8px!important;font-size:14px!important;font-weight:500!important;display:inline-flex!important}.group-status-option input{opacity:0;width:1px;height:1px;position:absolute}.group-status-dot{width:12px;height:12px;box-shadow:0 0 0 1px color-mix(in oklab, var(--a-muted) 40%, transparent);border:2px solid #0000;border-radius:999px}.group-status-dot.hold{background:#e4b84a}.group-status-dot.confirmed{background:#3b82f6}.group-status-option:has(input:checked) .group-status-dot{box-shadow:0 0 0 2px color-mix(in oklab, var(--foreground) 25%, transparent)}.group-room-multiselect{flex-direction:column;gap:10px;display:flex}.group-room-tags{border:1px solid color-mix(in oklab, var(--a-muted) 28%, transparent);background:color-mix(in oklab, var(--background) 88%, var(--a-muted));border-radius:10px;flex-wrap:wrap;gap:8px;min-height:40px;padding:8px;display:flex}.group-room-empty{color:var(--a-muted);text-transform:none;letter-spacing:0;align-self:center;font-size:13px;font-weight:500}.group-room-tag{background:color-mix(in oklab, var(--foreground) 8%, transparent);color:var(--foreground);text-transform:none;letter-spacing:0;border-radius:999px;align-items:center;gap:6px;padding:4px 8px 4px 10px;font-size:13px;font-weight:600;display:inline-flex}.group-room-tag small{color:var(--a-muted);font-weight:500}.group-room-tag button{width:20px;height:20px;color:var(--a-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.group-room-tag button:hover{color:var(--foreground);background:color-mix(in oklab, var(--foreground) 10%, transparent)}.group-room-tag button svg{width:12px;height:12px}.group-badge{color:#0f766e;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;background:oklab(60.0224% -.103488 -.00851551/.18);border-radius:999px;align-items:center;margin-left:8px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.reservation-row strong{flex-wrap:wrap;align-items:center;gap:4px 0;display:flex}.reservation-row strong .group-badge{margin-left:0}.guest-profile dd .group-badge{margin-left:8px}.reservation-guest-register:hover,.reservation-guest-register:focus-visible{background:color-mix(in oklab, var(--primary) 14%, white);border-color:color-mix(in oklab, var(--primary) 42%, white)}.reservation-guest-register svg{width:14px;height:14px}.admin-form-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.admin-form-error{color:color-mix(in oklab, var(--destructive) 75%, black);margin-top:12px;font-size:12.5px}.admin-login{background:var(--background);min-height:100vh;font-family:var(--font-sans);grid-template-columns:1.05fr .95fr;display:grid}.admin-login-brand{background:radial-gradient(120% 90% at 85% -10%, color-mix(in oklab, var(--accent) 22%, transparent) 0%, transparent 55%), linear-gradient(165deg, var(--primary) 0%, color-mix(in oklab, var(--primary) 82%, black) 100%);color:#fff;flex-direction:column;justify-content:center;padding:70px;display:flex}.admin-login-brand img{width:220px}.admin-login-brand h1{letter-spacing:-.01em;margin:40px 0 16px;font-size:44px}.admin-login-brand p{color:#ffffffb8;max-width:480px;font-size:14.5px;line-height:1.8}.admin-login-form-wrap{place-items:center;padding:30px;display:grid}.admin-login-form{width:min(400px,100%)}.admin-login-form h2{color:var(--primary);margin-bottom:8px;font-size:38px}.admin-login-form>p{color:var(--a-muted);margin-bottom:28px;font-size:13.5px}.admin-login-form label{letter-spacing:.08em;text-transform:uppercase;color:var(--a-muted);flex-direction:column;gap:7px;margin:16px 0;font-size:10.5px;font-weight:600;display:flex}.admin-login-form input{border:1px solid var(--a-border);border-radius:var(--a-radius);height:48px;font:14px var(--font-sans);letter-spacing:normal;color:var(--foreground);background:#fff;outline:0;padding:0 14px;font-weight:400;transition:border-color .2s,box-shadow .2s}.admin-login-form input:focus{border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 14%, transparent)}.admin-login-form button{border-radius:var(--a-radius);background:var(--primary);width:100%;height:50px;color:var(--primary-foreground);font:600 13px var(--font-sans);cursor:pointer;border:0;margin-top:12px;transition:background .25s,box-shadow .25s}.admin-login-form button:hover{background:color-mix(in oklab, var(--primary) 90%, white);box-shadow:0 14px 30px -12px color-mix(in oklab, var(--primary) 60%, transparent)}.demo-notice{background:color-mix(in oklab, var(--accent) 14%, white);border:1px solid color-mix(in oklab, var(--accent) 40%, white);border-radius:var(--a-radius);padding:12px 14px;color:color-mix(in oklab, var(--accent) 52%, black)!important;letter-spacing:normal!important;text-transform:none!important;font-size:12.5px!important;font-weight:500!important}@media (width<=980px){.admin-app{display:block}.admin-sidebar{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);transition:transform .25s;transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-sidebar-backdrop{z-index:40;background:color-mix(in oklab, var(--primary) 40%, black 8%);border:0;display:block;position:fixed;inset:0}.admin-sidebar-close{right:8px;top:max(8px, env(safe-area-inset-top));display:block;position:absolute}.admin-workspace{min-width:0}.admin-mobile-header{z-index:30;padding:0 18px;padding-top:env(safe-area-inset-top);height:calc(64px + env(safe-area-inset-top));border-bottom:1px solid var(--a-border-soft);background:#fff;justify-content:center;align-items:center;display:flex;position:sticky;top:0}.admin-mobile-header button{color:var(--primary);background:0 0;border:0;position:absolute;bottom:12px;left:18px}.admin-mobile-logo{object-fit:contain;width:92px;max-height:48px;margin-top:env(safe-area-inset-top)}.admin-overview-grid,.admin-bottom-grid{grid-template-columns:1fr}.admin-metrics,.finance-grid{grid-template-columns:1fr 1fr}.rules-board,.room-board{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-login{grid-template-columns:1fr}.admin-login-brand{display:none}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid label.full{grid-column:auto}}.site-editor-tabs{flex-wrap:wrap;gap:7px;margin-bottom:16px;display:flex}.site-editor-tabs button{border:1px solid var(--a-border);color:var(--foreground);font:600 12px var(--font-sans);cursor:pointer;background:#fff;border-radius:999px;padding:8px 15px;transition:background .2s,border-color .2s,color .2s}.site-editor-tabs button:hover{border-color:color-mix(in oklab, var(--primary) 35%, var(--a-border));background:var(--a-hover)}.site-editor-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}.site-editor-panel .site-list-header,.site-list-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.site-list-header h3{font:600 15px var(--font-sans);color:var(--primary);margin:0}.site-list,.site-cards{gap:10px;display:grid}.site-list-row{grid-template-columns:140px 1fr 40px;align-items:center;gap:8px;display:grid}.site-card-editor{border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);background:var(--a-head);gap:10px;padding:16px;display:grid}.site-color-field{grid-template-columns:44px 1fr;gap:8px;display:grid}.site-color-field input[type=color]{border:1px solid var(--a-border);border-radius:var(--a-radius-sm);background:#fff;width:44px;height:42px;padding:0}.site-theme-preview{border-radius:var(--a-radius-lg);border:1px solid var(--a-border-soft);flex-wrap:wrap;gap:8px;padding:14px;display:flex}.site-theme-preview span{border-radius:var(--a-radius-sm);height:34px;font:600 11px var(--font-sans);text-transform:uppercase;letter-spacing:.08em;align-items:center;padding:0 12px;display:inline-flex}.site-dirty-flag{font:600 11px var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--a-muted);align-self:center}.site-image-field{gap:8px;display:grid}.site-image-field>span{font:500 12px var(--font-sans);color:var(--a-muted)}.site-image-row{grid-template-columns:96px 1fr;align-items:start;gap:12px;display:grid}.site-image-preview{object-fit:cover;border-radius:var(--a-radius-sm);border:1px solid var(--a-border-soft);background:var(--a-head);width:96px;height:72px}.site-image-controls{gap:8px;display:grid}.site-upload-btn{cursor:pointer;align-items:center;gap:8px;width:fit-content;display:inline-flex}.site-image-ratio{font:500 11px var(--font-sans);color:var(--a-muted)}.crop-dialog{width:fit-content;max-width:100%}.crop-viewport{border-radius:var(--a-radius-sm);border:1px solid var(--a-border);background:var(--a-head);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;max-width:100%;display:grid;position:relative;overflow:hidden}.crop-viewport:active{cursor:grabbing}.crop-viewport img{pointer-events:none;max-width:none;position:absolute}.crop-loading{color:var(--a-muted)}.crop-grid{pointer-events:none;background:linear-gradient(90deg,#0000 33.33%,#ffffff57 33.33% 33.5%,#0000 33.5%),linear-gradient(90deg,#0000 66.5%,#ffffff57 66.5% 66.67%,#0000 66.67%),linear-gradient(#0000 33.33%,#ffffff57 33.33% 33.5%,#0000 33.5%),linear-gradient(#0000 66.5%,#ffffff57 66.5% 66.67%,#0000 66.67%);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff80}.crop-controls{color:var(--a-muted);align-items:center;gap:12px;margin-top:16px;display:flex}.crop-controls input[type=range]{min-width:0;accent-color:var(--primary);cursor:pointer;flex:1}.crop-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.admin-icon-btn{border:1px solid var(--a-border);border-radius:var(--a-radius-sm);cursor:pointer;width:40px;height:40px;color:var(--a-muted);background:#fff;place-items:center;transition:border-color .2s,color .2s,background .2s;display:grid}.admin-icon-btn:hover{border-color:color-mix(in oklab, var(--primary) 35%, var(--a-border));color:var(--primary);background:var(--a-hover)}.admin-icon-btn svg{width:16px;height:16px}@media (width<=620px){.admin-page{padding:16px 12px 44px}.site-list-row,.site-image-row{grid-template-columns:1fr}.admin-page-header h1{font-size:24px}.admin-page-actions button,.admin-header-actions button{flex:100%}.admin-metrics{grid-template-columns:1fr}.admin-metric strong{font-size:24px}.room-board,.rules-board,.finance-grid{grid-template-columns:1fr}.finance-row,.finance-row-action,.finance-row-simple{grid-template-columns:1fr;align-items:start;gap:8px;padding:12px 0}.finance-amount{text-align:left}.admin-row-actions{flex-wrap:wrap;justify-content:flex-start}.cash-box>div{grid-template-columns:1fr}.cash-box span,.cash-box span:first-child{border-right:0;border-bottom:1px solid var(--a-border-soft);padding:12px 0}.cash-box span:last-child{border-bottom:0}.cash-box strong{font-size:18px}.calendar-health{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-items:center;overflow-x:auto}.calendar-health>*{flex:none}.calendar-availability{align-items:stretch}.calendar-availability>button{justify-content:center;width:100%}.calendar-availability-fields label{flex:100%}.calendar-availability-fields input,.calendar-availability-fields select{width:100%;min-width:0}.calendar-availability-results>ul>li{flex-direction:column;align-items:stretch}.settings-grid{grid-template-columns:1fr}.arrival-list>div{flex-wrap:wrap;align-items:flex-start;gap:10px;padding:12px 0}.arrival-list>div>button{justify-content:center;width:100%}.admin-panel{padding:14px}.admin-panel h2{font-size:17px}.site-editor-tabs button{text-align:center;flex:auto}.admin-form-actions{flex-wrap:wrap}.admin-form-actions button{flex:auto;justify-content:center}}@media (width<=720px){.reservation-table,.inventory-panel{padding:12px!important;overflow-x:visible!important}.reservation-row.head{display:none!important}.reservation-row:not(.head){box-sizing:border-box;border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:color-mix(in oklab, var(--a-head) 55%, white);align-items:stretch;gap:10px;width:100%;min-height:0;margin:0 0 10px;padding:14px;grid-template-columns:1fr!important;min-width:0!important}.reservation-row:not(.head):last-child{margin-bottom:0}.guests-panel .guests-row{text-align:left;font:inherit;color:inherit;cursor:pointer;grid-template-columns:1fr!important}.guests-panel .guests-row>strong,.guests-panel .guests-row>span:not(.row-action),.guests-panel .guests-row .row-action{grid-area:auto/1}.guests-panel .guests-row .row-action{justify-self:end}.admin-table .table-head,.folio-row.head{display:none!important}.admin-table .table-row,.folio-row,.folio-table.full .folio-row{grid-template-columns:1fr!important}.admin-table .table-row{border:1px solid var(--a-border-soft);border-radius:var(--a-radius);background:color-mix(in oklab, var(--a-head) 55%, white);align-items:start;gap:8px;margin-bottom:8px;padding:12px}.admin-table .table-row:last-child{margin-bottom:0}.folio-row:not(.head){border-bottom:1px solid var(--a-border-soft);align-items:start;gap:8px;padding:12px}.channel-table,.rates-table,.maintenance-row,.inventory-types-row,.inventory-rooms-row,.channel-export-table,.guest-history-row{min-width:0!important}.finance-row,.finance-row-action,.finance-row-simple{align-items:start;gap:8px;grid-template-columns:1fr!important}.finance-amount{text-align:left}.reservation-actions{border-top:1px solid var(--a-border-soft);gap:10px;padding-top:4px;display:grid!important}.reservation-row select,.reservation-actions select,.rate-input{width:100%;max-width:none!important}}.reports-toolbar{flex-wrap:wrap;align-items:center;gap:8px}.reports-presets{flex-wrap:wrap;gap:6px;margin-right:4px;display:flex}.reports-presets .admin-primary,.reports-presets .admin-secondary{padding:6px 10px;font-size:12px}.reports-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.reports-kpi-grid.is-loading{opacity:.65}.reports-kpi-hint{color:var(--a-muted);margin-top:6px;font-size:11px;line-height:1.35;display:block}.reports-ops-strip{background:color-mix(in oklab, var(--sand) 18%, white);border:1px solid var(--a-border-soft);border-radius:var(--a-radius);color:var(--a-muted);flex-wrap:wrap;gap:10px 18px;margin:0 0 14px;padding:10px 14px;font-size:12px;display:flex}.reports-ops-strip strong{color:var(--primary);margin-right:4px;font-weight:600}.reports-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.reports-chart{width:100%;min-height:240px}.reports-tables{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.reports-products{grid-column:1/-1}.reports-table{gap:0;display:grid}.reports-table-head,.reports-table-row{grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(56px,.7fr));align-items:center;gap:8px;padding:8px 0;display:grid}.reports-table-head{color:var(--a-muted);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--a-border-soft);font-size:10px;font-weight:600}.reports-table-row{border-bottom:1px solid var(--a-border-soft)}.reports-table-row:last-child{border-bottom:0}.reports-table-row span,.reports-table-head span{text-align:right}.reports-table-row strong:first-child,.reports-table-head span:first-child{text-align:left}.reports-products .reports-table-head,.reports-products .reports-table-row{grid-template-columns:minmax(0,1.6fr) minmax(80px,.8fr) minmax(48px,.5fr) minmax(88px,.7fr)}.reports-muted{color:var(--a-muted);font-weight:400}.reports-loading{align-items:center;gap:8px;display:flex}.reports-loading .spin{width:16px;height:16px;animation:.8s linear infinite reports-spin}@keyframes reports-spin{to{transform:rotate(360deg)}}@media (width<=1100px){.reports-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-charts,.reports-tables{grid-template-columns:1fr}}@media (width<=640px){.reports-kpi-grid{grid-template-columns:1fr}.reports-table-head,.reports-table-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.reports-table-head span:nth-child(n+3),.reports-table-row span:nth-child(n+2):not(:last-child),.reports-table-row strong:not(:first-child):not(.finance-amount){display:none}.reports-products .reports-table-head,.reports-products .reports-table-row{grid-template-columns:minmax(0,1fr) auto}}.promo-page .promo-date-filter{color:var(--a-muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.promo-page .promo-date-filter input{border:1px solid var(--a-border);background:var(--a-surface);border-radius:8px;padding:6px 8px}.promo-banner{border:1px solid var(--a-border-soft);border-radius:10px;align-items:center;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.promo-banner.error{color:#8a1c14;background:oklab(96.0027% .0126743 .00717457)}.promo-banner.ok{color:#027a48;background:oklab(96.0801% -.00894149 .00387719)}.promo-banner button{cursor:pointer;background:0 0;border:0;margin-left:auto}.promo-tabs{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.promo-tabs button{border:1px solid var(--a-border);background:var(--a-surface);color:var(--a-muted);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:13px}.promo-tabs button.active{background:color-mix(in oklab, var(--primary) 10%, white);border-color:color-mix(in oklab, var(--primary) 35%, var(--a-border));color:var(--primary);font-weight:600}.promo-section h3{font:500 20px var(--font-display);color:var(--primary);margin:0 0 12px}.promo-section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;display:flex}.promo-section-head p{color:var(--a-muted);margin:0;font-size:13px}.promo-chart{border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);background:var(--a-surface);grid-auto-columns:minmax(18px,1fr);grid-auto-flow:column;align-items:end;gap:6px;height:160px;margin-bottom:20px;padding:12px;display:grid}.promo-chart-bar{grid-template-rows:1fr auto;place-items:end center;gap:4px;height:100%;display:grid}.promo-chart-bar span{background:color-mix(in oklab, var(--secondary) 70%, var(--primary));border-radius:6px 6px 2px 2px;width:100%;max-width:18px}.promo-chart-bar small{color:var(--a-muted);font-size:10px}.promo-rec-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.promo-rec-card{border:1px solid var(--a-border-soft);border-radius:var(--a-radius-lg);background:var(--a-surface);box-shadow:var(--a-shadow-card);padding:16px}.promo-rec-card header{gap:10px;margin-bottom:10px;display:flex}.promo-rec-card header svg{width:20px;color:var(--secondary)}.promo-rec-card strong{color:var(--primary);display:block}.promo-rec-card small{color:var(--a-muted)}.promo-rec-card dl{gap:8px;margin:12px 0;display:grid}.promo-rec-card dt{text-transform:uppercase;letter-spacing:.06em;color:var(--a-muted);font-size:11px}.promo-rec-card dd{margin:2px 0 0;font-size:13px}.promo-rec-card footer{flex-wrap:wrap;gap:8px;display:flex}.promo-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.promo-kpi-grid article{border:1px solid var(--a-border-soft);background:var(--a-surface);border-radius:12px;padding:14px}.promo-kpi-grid small{color:var(--a-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;display:block}.promo-kpi-grid strong{font:500 22px var(--font-display);color:var(--primary);margin-top:6px;display:block}.promo-calendar-modes{gap:8px;margin-bottom:10px;display:flex}.promo-calendar-modes button{border:1px solid var(--a-border);background:var(--a-surface);cursor:pointer;border-radius:8px;padding:6px 10px}.promo-calendar-modes button.active{border-color:var(--primary);color:var(--primary)}.promo-calendar-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.promo-calendar-list li{border:1px solid var(--a-border-soft);background:var(--a-surface);border-radius:10px;grid-template-columns:110px 1fr auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.promo-row-actions{flex-wrap:wrap;gap:6px;display:flex}.promo-form-row{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:16px;display:flex}.promo-form-row label,.promo-wizard-pane label{color:var(--a-muted);flex:1;gap:6px;min-width:160px;font-size:13px;display:grid}.promo-form-row input,.promo-form-row select,.promo-wizard-pane input,.promo-wizard-pane select,.promo-wizard-pane textarea{border:1px solid var(--a-border);color:var(--primary);background:#fff;border-radius:8px;padding:8px 10px}.promo-hint{color:var(--a-muted);font-size:13px}.promo-json{white-space:nowrap;text-overflow:ellipsis;max-width:280px;font-size:11px;display:inline-block;overflow:hidden}.promo-steps{gap:8px;margin:0 0 18px;padding:0;list-style:none;display:flex}.promo-steps button{border:1px solid var(--a-border);background:var(--a-surface);cursor:pointer;border-radius:999px;width:34px;height:34px}.promo-steps .active button{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.promo-steps .done button{background:color-mix(in oklab, var(--secondary) 18%, white);border-color:var(--secondary)}.promo-choice-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:12px 0;display:grid}.promo-choice-grid button{border:1px solid var(--a-border);background:var(--a-surface);text-align:left;cursor:pointer;border-radius:10px;padding:12px}.promo-choice-grid button.active{border-color:var(--primary);background:color-mix(in oklab, var(--primary) 8%, white)}.promo-wizard-pane{gap:12px;display:grid}.promo-wizard-footer{justify-content:space-between;gap:12px;margin-top:18px;display:flex}.promo-review{gap:10px;display:grid}.promo-review div{border-bottom:1px solid var(--a-border-soft);grid-template-columns:180px 1fr;gap:10px;padding:10px 0;display:grid}.promo-review dt{color:var(--a-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.promo-modal{z-index:80;background:oklab(0% none none/.35);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.promo-modal-card{background:#fff;border-radius:16px;width:min(560px,100%);padding:18px;box-shadow:0 24px 60px -20px #00000059}.promo-modal-card header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.promo-modal-card header button{cursor:pointer;background:0 0;border:0}.promo-loading{align-items:center;gap:10px;display:flex}.promo-loading .spin{animation:1s linear infinite promo-spin}@keyframes promo-spin{to{transform:rotate(360deg)}}@media (width<=980px){.promo-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-calendar-list li,.promo-review div{grid-template-columns:1fr}}@media (width<=640px){.promo-kpi-grid{grid-template-columns:1fr}.admin-page.promo-page .admin-metrics{grid-template-columns:1fr 1fr}}
