/* Owner workspace. Public booking pages keep their own stylesheet. */
@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-display:swap;src:url('/vendor/roboto/roboto-400.ttf') format('truetype')}
@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-display:swap;src:url('/vendor/roboto/roboto-500.ttf') format('truetype')}
@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-display:swap;src:url('/vendor/roboto/roboto-700.ttf') format('truetype')}
:root{font-family:Roboto,'Helvetica Neue',Arial,sans-serif;font-size:14px;color:#262626;background:#eceeef;--workspace-green:#00a541;--workspace-line:#d5d5d5;--workspace-toolbar:#eee;--workspace-muted:#757575}
*{box-sizing:border-box}body{margin:0}header{padding:14px 24px;background:var(--workspace-green);color:#fff;display:flex;gap:24px;align-items:center}header a{color:inherit;font-size:22px;font-weight:500;text-decoration:none}header button{margin-left:auto}main{max-width:1280px;margin:auto;padding:24px;display:grid;gap:18px}h1{font-size:24px;font-weight:400;margin:0 0 18px}h2{font-size:20px;font-weight:400}h3{font-size:16px;font-weight:500}p{line-height:1.5}button,input,select,textarea{font:inherit;padding:9px 12px;border:1px solid #ccc;border-radius:2px;color:inherit}button{cursor:pointer;background:#fafafa;min-height:36px}button.primary{background:var(--workspace-green);border-color:var(--workspace-green);color:white}button:disabled{opacity:.55;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(.98)}input,select,textarea{width:100%;background:#fff}textarea{min-height:100px}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--workspace-green)}label{display:grid;gap:7px;margin:15px 0}form,.card{padding:18px;background:#fff;border:1px solid #ddd;border-radius:2px}form{max-width:720px}.layout{display:grid;grid-template-columns:220px 1fr;gap:20px}nav{display:flex;flex-direction:column;gap:4px}nav button{text-align:left;background:transparent;border-color:transparent}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.muted{color:var(--workspace-muted)}.status{border-left:3px solid #d2a139;padding:12px;background:#fff8e5}.ok{border-color:#00a541;background:#e7f4e8}ol{padding-left:24px}li{padding:7px}#notice{position:sticky;bottom:0;padding:12px 24px;background:#3a3a3a;color:#fff}#notice:empty{display:none}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:10px;border-bottom:1px solid #ddd}.scroll{overflow:auto}code{overflow-wrap:anywhere}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #008c38;outline-offset:2px}.message{margin-top:12px;overflow-wrap:anywhere}.message>p{white-space:pre-wrap}.response-feedback{padding:12px 0;border:0}.card h3{margin-top:0}.layout article{min-width:0}#login{width:min(100%,420px);margin:7vh auto;padding:28px}#login .primary{width:100%}
/* One shell, all existing modules. Sidebar remains discoverable on desktop. */
body:has(.workspace-frame)>header{display:none}body:has(.workspace-frame) #workspace{max-width:none;padding:0!important;display:block}body:has(.workspace-frame) #notice{z-index:80}
.workspace-frame{display:grid;grid-template-columns:214px minmax(0,1fr);min-height:100dvh;gap:0}.workspace-sidebar{background:#f7f7f7;color:#333;border-right:1px solid var(--workspace-line);position:sticky;top:0;height:100dvh;overflow:auto;overscroll-behavior:contain;z-index:45;padding:0}.workspace-sidebar .pms-menu-head{display:flex;align-items:center;gap:10px;height:44px;min-height:44px;padding:0 16px;margin:0;background:var(--workspace-green);color:#fff}.workspace-sidebar .pms-menu-head strong{font-size:20px;letter-spacing:-.4px;font-weight:500}.workspace-sidebar .pms-menu-head small{font-size:10px}.workspace-sidebar [data-main-menu-close]{display:none}.workspace-sidebar .workspace-business{display:grid;margin:14px 12px 10px;font-size:11px;color:#666;gap:5px}.workspace-sidebar .workspace-business select{width:100%;max-width:100%;min-width:0;margin:0;border:0;border-bottom:1px solid #ccc;border-radius:0;font-size:12px;padding:8px 0;background:transparent;color:#333}.workspace-sidebar nav{display:grid;grid-template-columns:1fr;gap:0;overflow:visible;padding:0 6px}.workspace-nav-group{padding:10px 0;border-bottom:1px solid #ddd}.workspace-nav-group:last-child{border:0}.workspace-nav-label{display:block;padding:0 10px 6px;font-size:10px;color:#777;letter-spacing:.05em;text-transform:uppercase}.workspace-sidebar nav button{display:flex;align-items:center;gap:12px;width:100%;min-height:38px;padding:8px 10px!important;color:#3a3a3a;border:0;border-left:3px solid transparent;border-radius:0;font-size:13px!important;text-align:left;background:transparent;white-space:normal;font-weight:400}.workspace-sidebar nav button.active{background:#e4e7e5;border-left-color:var(--workspace-green);color:#008333;font-weight:500}.workspace-icon{width:21px;height:21px;flex:0 0 21px;vertical-align:middle}.workspace-sidebar nav .workspace-icon{color:#757575}.workspace-sidebar nav .active .workspace-icon{color:#008333}.workspace-menu-tools{display:grid;padding:8px 16px 16px;gap:0;border-top:1px solid #ddd;margin-top:8px}.workspace-menu-tools :is(button,a){color:#666;text-align:left;font-size:12px;border:0;background:transparent;padding:8px 0;text-decoration:none;min-height:32px}.workspace-main{min-width:0;background:#eceeef}.workspace-topbar{display:flex;align-items:center;gap:10px;height:44px;padding:0 18px 0 8px;color:white;background:var(--workspace-green);position:sticky;top:0;z-index:40}.workspace-topbar>button{display:grid;place-items:center;width:36px;height:36px;min-height:36px;border:0;background:transparent;padding:6px;color:inherit}.workspace-topbar>strong{font-size:15px;font-weight:400;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.workspace-topbar-business{margin-left:auto;font-size:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.workspace-topbar>small{font-size:10px;opacity:.85}.workspace-main>article{padding:20px 24px}.workspace-main>.workspace-content{min-height:calc(100dvh - 44px)}.workspace-page-title{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.workspace-menu-shade{display:none}.workspace-menu-shade[hidden]{display:none!important}
.workspace-content>button{margin:0 6px 14px 0}.workspace-content>p:first-of-type{margin-top:0}.workspace-content>details{padding:14px 0}.workspace-content summary{cursor:pointer;min-height:36px;display:list-item;padding:9px 0;color:#555}.workspace-content>form{margin-bottom:16px}.workspace-content label{color:#757575;font-size:13px}.workspace-content :is(input,select,textarea){color:#262626}.workspace-content form>label :is(input,select,textarea){border:0;border-bottom:1px solid #aaa;border-radius:0;padding:10px 2px}.workspace-content form>button{margin-top:8px}.workspace-content .cards .card{box-shadow:0 1px 2px #00000008}.workspace-content .card p:last-child{margin-bottom:0}.workspace-settings{display:grid;max-width:800px;border:1px solid #ddd;background:#fff}.workspace-settings button,.workspace-settings summary{display:block;width:100%;text-align:left;padding:16px 20px;border:0;border-bottom:1px solid #e0e0e0;border-radius:0;background:white;color:#444;min-height:48px}.workspace-settings details button{padding-left:34px;background:#fafafa}.workspace-settings summary{display:list-item;list-style-position:inside;font-size:13px}.workspace-settings>button:hover{background:#f5f5f5}
/* Dense master/detail lists retain exact customer/conversation links. */
.workspace-records{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);background:white;border:1px solid #ddd;min-height:calc(100dvh - 142px);align-items:start}.workspace-record-list{min-width:0;max-height:calc(100dvh - 116px);overflow:auto}.workspace-record{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:18px 14px;border:0;border-bottom:1px solid #e2e2e2;border-radius:0;background:#fff;min-height:64px;font-size:14px}.workspace-record>.workspace-icon{color:#999;align-self:flex-start;margin-top:2px}.workspace-record>span:not(.workspace-row-arrow){flex:1;min-width:0}.workspace-record strong{font-weight:500;overflow-wrap:anywhere}.workspace-record p{font-size:12px;color:#777;margin:7px 0}.workspace-record small{font-size:11px;color:#888}.workspace-record.is-selected{background:#edf6ee;box-shadow:inset 3px 0 #00a541}.workspace-row-arrow{font-size:22px;color:#999;margin-left:auto}.workspace-record-detail{min-height:100%;padding:22px 28px;border-left:1px solid #ddd;scroll-margin-top:68px;min-width:0;overflow-wrap:anywhere}.workspace-record-detail>h2{margin-top:0}.workspace-record-detail>h3{margin:22px 0 12px}.workspace-record-detail>h3:first-child{margin-top:0}.workspace-record-detail>.card{border:0;border-bottom:1px solid #e0e0e0;padding:14px 0;box-shadow:none}.workspace-record-detail>.message{border:1px solid #e0e0e0;padding:16px;background:#fafafa}.workspace-record-detail>.message strong{font-size:12px;color:#666}.workspace-record-detail>button{margin-top:12px}.workspace-empty{margin:24px 0;color:#888;text-align:center;font-size:14px}.workspace-record-detail>.workspace-empty{margin:18vh auto;max-width:300px;line-height:1.6}
/* Shared presentation for configuration modules; no changes to their contracts. */
.workspace-content :is(.native-pms,.booking-admin){font-family:inherit;color:#262626;--np-ink:#262626;--np-muted:#757575;--np-line:#ddd;--np-soft:#f4f4f4;max-width:none}
.workspace-content :is(.native-pms,.booking-admin) :is(h2,h3,h4,.np-month-label){font-family:inherit;letter-spacing:normal;font-weight:400}.workspace-content :is(.native-pms,.booking-admin) h2{font-size:22px}.workspace-content :is(.native-pms,.booking-admin) h3{font-size:18px}.workspace-content :is(.np-head,.booking-admin-head){margin-bottom:16px}.workspace-content :is(.np-head,.booking-admin-head)>div>p{color:#757575}.workspace-content :is(.np-eyebrow,.np-lab){display:none}
.workspace-content :is(.native-pms,.booking-admin) :is(button,input,select,textarea,a){border-radius:2px;font-family:inherit;font-size:13px}.workspace-content :is(.native-pms,.booking-admin) :is(input,select,textarea){border-color:#bbb}.workspace-content :is(.native-pms,.booking-admin) label{font-weight:400;font-size:13px;color:#757575}.workspace-content :is(.native-pms,.booking-admin) label small{font-size:12px;color:#757575}.workspace-content :is(.np-tabs,.booking-admin-tabs){gap:0;border-bottom:1px solid #ccc;margin-bottom:18px;padding:0}.workspace-content :is(.np-tabs,.booking-admin-tabs) button{border:0;background:transparent;color:#555;border-bottom:3px solid transparent;padding:10px 18px}.workspace-content :is(.np-tabs,.booking-admin-tabs) button[aria-pressed=true]{color:#008c38;background:white;border-bottom-color:#00a541;font-weight:500}.workspace-content :is(.native-pms .np-primary,.booking-admin-save button){background:#00a541;border-color:#00a541;color:white}
.workspace-content :is(.np-room-card,.np-promo-card,.np-rate-scroll,.booking-admin-section,.booking-admin-stat,.booking-admin-request,.booking-admin-item,.booking-admin-save){border-radius:2px;border-color:#ddd;box-shadow:0 1px 2px #00000008;background:white}.workspace-content :is(.np-room-card-body,.np-promo-card,.booking-admin-section){padding:18px}.workspace-content :is(.np-room-card h3,.np-promo-card h3){font-size:20px}.workspace-content :is(.np-empty,.booking-admin-empty){background:#f8f8f8;border:1px solid #ddd;border-radius:2px;color:#777}.workspace-content :is(.np-note,.booking-admin-note){border-radius:2px;background:#f6f6f6;color:#777;border-color:#ddd;font-size:12px}.workspace-content :is(.np-room-tags span,.np-unit-list li,.booking-admin-link){background:#f3f3f3;border-color:#ddd;border-radius:2px;color:#666}.workspace-content :is(.np-rate-grid th,.booking-admin-item){background:#f5f5f5}.workspace-content .np-promo-value{color:#008d37}.workspace-content .booking-admin-stat strong{font-weight:400}.workspace-content .np-promo-code{background:#f4f4f4;border-color:#aaa}.workspace-content .np-rate-grid button[aria-pressed=true]{background:#e3f3e8;box-shadow:inset 0 0 0 2px #00a541}
body:has(.workspace-frame) :is(dialog.np-dialog:not(.pms-sheet),.booking-admin-dialog){font-family:Roboto,'Helvetica Neue',Arial,sans-serif;border-radius:3px;color:#262626}body:has(.workspace-frame) :is(dialog.np-dialog:not(.pms-sheet),.booking-admin-dialog) h2{font-family:inherit;font-size:23px;font-weight:400;letter-spacing:0}body:has(.workspace-frame) :is(dialog.np-dialog:not(.pms-sheet),.booking-admin-dialog) :is(input,select,textarea,button){border-radius:2px}body:has(.workspace-frame) :is(dialog.np-dialog:not(.pms-sheet),.booking-admin-dialog) .np-primary{background:#00a541;border-color:#00a541}
@media(min-width:721px){.workspace-frame.sidebar-collapsed{grid-template-columns:54px minmax(0,1fr)}.sidebar-collapsed .workspace-sidebar{overflow-x:hidden}.sidebar-collapsed .workspace-sidebar :is(.pms-menu-head,.workspace-business,.workspace-nav-label,.workspace-menu-tools){display:none}.sidebar-collapsed .workspace-sidebar nav{padding:44px 2px 0}.sidebar-collapsed .workspace-sidebar nav button{padding:10px 12px!important;height:44px;gap:0}.sidebar-collapsed .workspace-sidebar nav button>span{display:none}.workspace-frame:has(.reservations-view) .workspace-main>article{padding-top:0}}
@media(max-width:720px){header span{display:none}.layout{grid-template-columns:1fr}main{padding:16px}button{min-height:44px}input,select,textarea{font-size:16px}.cards{grid-template-columns:1fr}form,.card{padding:16px}.workspace-frame{display:block}.workspace-sidebar{display:none;position:fixed;inset:0 auto 0 0;width:min(304px,86vw);height:100dvh;z-index:90}.workspace-sidebar.is-open{display:block}.workspace-sidebar .pms-menu-head{background:#eee;color:#333;height:60px;padding:0 16px}.workspace-sidebar .pms-menu-head strong{font-size:23px}.workspace-sidebar [data-main-menu-close]{display:grid;place-items:center;margin-left:auto;min-width:44px;border:0;background:transparent;padding:10px}.workspace-sidebar .workspace-business{margin:16px}.workspace-sidebar .workspace-business select{font-size:14px;min-height:44px}.workspace-sidebar nav button{min-height:44px;font-size:15px!important;padding:10px 12px!important;gap:16px}.workspace-nav-label{font-size:11px}.workspace-menu-shade{display:block;position:fixed;inset:0;z-index:89;background:#0006;border:0;border-radius:0;width:100%;height:100%;padding:0}.workspace-topbar{height:60px;background:#eee;color:#262626;padding:0 10px;gap:14px}.workspace-topbar>button{width:44px;height:44px;min-height:44px}.workspace-topbar .workspace-icon{width:24px;height:24px}.workspace-topbar>strong{font-size:21px;font-weight:400}.workspace-topbar-business{display:none}.workspace-topbar>small{margin-left:auto;color:#666}.workspace-topbar-calendar{display:none}.workspace-main>.workspace-content{padding:16px 10px;min-height:calc(100dvh - 60px)}.workspace-content form>label{font-size:15px}.workspace-content form>label :is(input,select,textarea){font-size:18px;min-height:44px}.workspace-settings{border:0}.workspace-settings button{font-size:16px;min-height:54px}.workspace-records{display:block;min-height:0;border:0}.workspace-record-list{max-height:none}.workspace-record{min-height:70px;padding:18px 14px;font-size:16px}.workspace-record p{font-size:14px}.workspace-record small{font-size:12px}.workspace-record-detail{border:0;border-top:1px solid #ddd;padding:22px 16px;scroll-margin-top:76px}.workspace-record-detail:has(>.workspace-empty){display:none}.workspace-record-detail>h2{font-size:23px}.workspace-record-detail>.message{padding:14px}.workspace-content :is(.native-pms,.booking-admin) :is(input,select,textarea){font-size:16px}.workspace-content :is(.np-tabs,.booking-admin-tabs) button{font-size:14px;padding:12px}.workspace-content :is(.np-head,.booking-admin-head){gap:12px}.workspace-content :is(.np-head,.booking-admin-head) h2{font-size:23px}.workspace-content :is(.np-room-card-body,.np-promo-card,.booking-admin-section){padding:16px}.workspace-content .booking-admin-save{bottom:0;border-radius:0}.workspace-content .np-rate-grid th:first-child,.workspace-content .np-rate-grid td:first-child{min-width:110px}.workspace-content .np-rate-grid button{font-size:12px}body:has(.workspace-frame) .app-nav{position:static}body:has(.workspace-frame) #notice{bottom:0;max-height:25dvh;overflow:auto}}
@media(prefers-reduced-motion:reduce){.workspace-frame *{scroll-behavior:auto!important}}

.workspace-record-back{display:none}.workspace-content .demand-view :is(input,select,button,.demand-detail),.workspace-content .demand-cards article{border-radius:2px;border-color:#ddd}.workspace-content .demand-cards strong{font-weight:400}.workspace-content .demand-view{color:#333}
@media(min-width:721px){.workspace-frame .pms-calendar-toolbar{grid-template-columns:minmax(160px,260px) 44px 44px 44px!important}.workspace-frame .pms-calendar-toolbar [data-reservation-menu]{display:none}.workspace-sidebar .pms-menu-head{height:44px;min-height:44px}.workspace-frame .pms-android .reservation-planning-scroll{background:#eceeef;border-radius:0}}
@media(max-width:720px){.workspace-records.has-record>.workspace-record-list{display:none}.workspace-records:not(.has-record)>.workspace-record-detail{display:none}.workspace-record-back{display:block;border:0;background:transparent;color:#666;padding:8px 0;margin:0 0 14px!important;min-height:44px}.workspace-records.has-record>.workspace-record-detail{border-top:0;min-height:calc(100dvh - 92px)}}

/* Desktop planning reference: white navigation, compact actions and a light canvas.
   The touch workspace and reservation sheets retain their approved layout. */
.workspace-collapse{display:none}
@media(min-width:721px){
 :root,body,.workspace-main{background:#f8f9fa}
 .workspace-frame{grid-template-columns:230px minmax(0,1fr)}
 .workspace-sidebar{background:#fff;border-right:1px solid #d8dadd;padding:0 7px 14px;gap:0}
 .pms-menu-head{height:45px;min-height:45px;padding:0 7px;background:#fff;color:#292d2b;gap:8px}
 .pms-menu-head strong{font-size:16px;font-weight:700}.pms-menu-head small{font-size:10px;background:#48a840;color:#fff;border:0;border-radius:3px;padding:3px 7px}
 .workspace-business{margin:6px 3px 10px;font-size:10px;color:#747979;gap:3px}.workspace-business select{height:28px;min-height:28px;font-size:11px;padding:3px 5px;border-color:#e0e2e3;border-radius:4px}
 .workspace-sidebar nav{gap:6px}.workspace-nav-group{gap:0}.workspace-nav-label{font-size:9px;margin:8px 10px 3px;color:#7b8080;letter-spacing:.25px}
 .workspace-sidebar nav button{min-height:31px;height:31px;padding:5px 10px;gap:9px;font-size:12px;border:0;border-radius:6px;line-height:20px}
 .workspace-sidebar nav button .workspace-icon{width:15px;height:15px;flex:0 0 15px}
 .workspace-sidebar nav button.active{background:#e4f5ec;color:#16943a;border:0;font-weight:500}
 .workspace-collapse{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:18px 0 5px;padding:5px 8px;min-height:28px;border:0;background:white;color:#269b41;font-size:12px}.workspace-collapse svg{width:15px;height:15px}.workspace-collapse span{text-decoration:underline}
 .workspace-menu-tools{margin:6px 3px 0;padding-top:8px;font-size:11px;border-top:1px solid #eee}.workspace-menu-tools :is(a,button){font-size:11px;min-height:27px;padding:4px 7px}
 .workspace-topbar{background:#fff;color:#292d2b;border-bottom:1px solid #e2e4e6}.workspace-topbar-calendar{display:none}
 .workspace-frame #content[data-workspace-section=Reservas]{padding:0 8px;min-width:0}
 .workspace-frame.sidebar-collapsed .workspace-sidebar{padding-left:3px;padding-right:3px}.workspace-frame.sidebar-collapsed .workspace-collapse{justify-content:center;padding:5px}.workspace-frame.sidebar-collapsed .workspace-collapse span{display:none}
 .workspace-frame.sidebar-collapsed .reservation-expand-menu{display:grid}
 .workspace-frame .pms-android .reservation-planning-scroll{background:#f8f9fa}
}
@media(min-width:721px){
 .workspace-sidebar .pms-menu-head{height:45px;min-height:45px;padding:0 7px;background:#fff;color:#292d2b}.workspace-sidebar .pms-menu-head strong{font-size:16px;font-weight:700}
 .workspace-sidebar .workspace-business{margin:6px 3px 10px;font-size:10px;gap:3px}.workspace-sidebar .workspace-business select{height:28px;min-height:28px;font-size:11px;padding:3px 5px;border:1px solid #e0e2e3;border-radius:4px}
 .workspace-sidebar nav{padding:0}.workspace-nav-group{padding:4px 0;border:0}.workspace-nav-label{padding-bottom:0}
 .workspace-sidebar nav button{padding:5px 10px!important;font-size:12px!important}.workspace-frame .pms-android .reservation-planning-scroll{border-radius:5px 5px 0 0}
}

@media(min-width:721px){.workspace-frame .pms-android .reservation-planning-scroll{border-radius:7px 7px 0 0}}

/* The complete desktop menu follows the reference density without losing modules. */
@media(min-width:721px){
 .workspace-sidebar .workspace-business{font-size:0;gap:0;margin:2px 3px 5px}
 .workspace-sidebar .workspace-business select{height:26px;min-height:26px}
 .workspace-sidebar .workspace-nav-label{display:none}
 .workspace-sidebar nav{gap:0}.workspace-sidebar .workspace-nav-group{padding:0}
 .workspace-sidebar nav button.active{background:#e1f8ec;color:#00ad36}
 .workspace-sidebar nav .workspace-icon{color:#272728}.workspace-sidebar nav .active .workspace-icon{color:#00ad36}
}
