.frontoffice-page{width:100%;max-width:1240px;margin-inline:auto;padding:40px 32px 88px}.frontoffice-masthead{justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:32px;display:flex}.frontoffice-kicker{color:var(--accent);margin:28px 0 0}.frontoffice-title{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 96, "SOFT" 20;letter-spacing:-.025em;margin:6px 0 0;font-size:clamp(42px,5vw,58px);font-weight:600;line-height:.98}.frontoffice-title:after{background:var(--gold);content:"";width:48px;height:1px;margin-top:20px;display:block}.frontoffice-header-tools{border-left:1px solid var(--border);flex:none;align-items:center;gap:16px;padding-left:20px;display:flex}.frontoffice-tabs{border-top:1px solid var(--border);border-bottom:1px solid var(--border);scrollbar-width:none;align-items:center;gap:30px;max-width:100%;display:flex;overflow-x:auto}.frontoffice-tabs::-webkit-scrollbar{display:none}.frontoffice-tab{min-height:58px;color:var(--text-secondary);flex:none;align-items:center;text-decoration:none;display:inline-flex;position:relative}.frontoffice-tab:after{background:var(--accent);content:"";opacity:0;height:1px;position:absolute;bottom:-1px;left:0;right:0}.frontoffice-tab:hover{color:var(--text-primary)}.frontoffice-tab[data-active=true]{color:var(--accent)}.frontoffice-tab[data-active=true]:after{opacity:1}.frontoffice-tab:focus-visible,.frontoffice-room-card:focus-visible,.frontoffice-room-toolbar input:focus-visible,.frontoffice-room-toolbar select:focus-visible,.frontoffice-icon-action:focus-visible,.frontoffice-primary-action:focus-visible,.frontoffice-secondary-action:focus-visible,.frontoffice-text-action:focus-visible,.frontoffice-inline-form input:focus-visible,.frontoffice-inline-form select:focus-visible,.frontoffice-inline-form textarea:focus-visible,.frontoffice-action:focus-visible,.frontoffice-action-secondary:focus-visible,.frontoffice-guest-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.frontoffice-content{margin-top:40px}.frontoffice-content-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.frontoffice-content-heading p{color:var(--text-tertiary);margin:0 0 8px}.frontoffice-content-heading h2,.frontoffice-view-header h2{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 72, "SOFT" 20;letter-spacing:-.015em;margin:0;font-size:30px;font-weight:600;line-height:1.1}.frontoffice-result-count{color:var(--text-tertiary);align-items:baseline;gap:8px;display:flex}.frontoffice-result-count>span:first-child{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 72, "SOFT" 20;font-variant-numeric:tabular-nums;font-size:32px;font-weight:600;line-height:1}.frontoffice-room-toolbar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;margin-bottom:40px;padding:16px 0;display:flex}.frontoffice-search{border:1px solid var(--border);border-radius:var(--r-input);background:color-mix(in srgb, var(--surface) 68%, var(--bg));min-width:min(360px,100%);min-height:44px;color:var(--text-tertiary);align-items:center;gap:10px;padding:0 14px;display:flex}.frontoffice-search input{min-width:0;color:var(--text-primary);background:0 0;border:0;outline:0;flex:1;font-size:13px}.frontoffice-search input::placeholder{color:var(--text-tertiary)}.frontoffice-filters{color:var(--text-tertiary);align-items:center;gap:10px;display:flex}.frontoffice-filters select{border:1px solid var(--border);border-radius:var(--r-input);background:var(--surface);min-height:44px;color:var(--text-primary);cursor:pointer;padding:0 34px 0 12px;font-size:13px;font-weight:600}.frontoffice-floor-list{flex-direction:column;gap:44px;display:flex}.frontoffice-section-heading{border-bottom:1px solid color-mix(in srgb, var(--border) 72%, transparent);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}.frontoffice-floor>.frontoffice-section-heading{grid-template-columns:34px minmax(0,1fr) auto;display:grid}.frontoffice-section-marker{background:var(--gold);width:34px;height:1px}.frontoffice-section-heading h3{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 36, "SOFT" 20;letter-spacing:-.01em;margin:0;font-size:21px;font-weight:600;line-height:1.2}.frontoffice-section-count{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 72, "SOFT" 20;font-variant-numeric:tabular-nums;font-size:32px;font-weight:600;line-height:1}.frontoffice-room-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;display:grid}.frontoffice-room-card{--room-tone:var(--text-tertiary);border:1px solid var(--border);border-radius:var(--r-card);background:color-mix(in srgb, var(--surface) 84%, var(--bg));min-width:0;min-height:120px;color:var(--text-primary);cursor:pointer;text-align:left;padding:16px;position:relative;overflow:hidden}.frontoffice-room-card[data-room-tone=accent]{--room-tone:var(--accent);border-left:3px solid var(--room-tone)}.frontoffice-room-card[data-room-tone=info]{--room-tone:var(--info);border-left:3px solid var(--room-tone)}.frontoffice-room-card[data-room-tone=warning]{--room-tone:var(--warning);border-left:3px solid var(--room-tone)}.frontoffice-room-card[data-room-tone=error]{--room-tone:var(--error);border-left:3px solid var(--room-tone)}.frontoffice-room-card[data-cleaning=true]:after{background:var(--accent);content:"";height:2px;position:absolute;bottom:0;left:0;right:0}.frontoffice-room-identity{flex-direction:column;min-width:0;max-width:60%;display:flex}.frontoffice-room-number{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 36, "SOFT" 20;font-variant-numeric:tabular-nums;font-size:20px;font-weight:600;line-height:1.1}.frontoffice-room-type,.frontoffice-room-arrival{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.frontoffice-room-type{margin-top:4px}.frontoffice-room-guest,.frontoffice-room-arrival{max-width:42%;color:var(--text-secondary);text-align:right;font-size:12px;position:absolute;top:16px;right:14px}.frontoffice-room-guest{flex-direction:column;align-items:flex-end;min-width:0;line-height:1.25;display:flex}.frontoffice-room-guest>span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.frontoffice-room-party{color:var(--text-tertiary);font-variant-numeric:tabular-nums;align-items:center;gap:4px;margin-top:4px;display:inline-flex}.frontoffice-room-status{max-width:calc(100% - 32px);color:var(--room-tone);align-items:center;gap:6px;font-size:12px;font-weight:600;line-height:1.2;display:inline-flex;position:absolute;bottom:14px;left:16px}.frontoffice-room-card[data-room-tone=neutral] .frontoffice-room-status{color:var(--text-secondary)}.frontoffice-window-chip{border:1px solid color-mix(in srgb, var(--info) 38%, transparent);border-radius:var(--r-pill);background:color-mix(in srgb, var(--info) 11%, transparent);color:var(--info);font-variant-numeric:tabular-nums;align-items:center;padding:6px 8px;font-size:12px;font-weight:600;line-height:1;display:inline-flex;position:absolute;top:55px;right:12px}.frontoffice-empty-state,.frontoffice-empty{border:1px solid var(--border);border-radius:var(--r-card);min-height:144px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.frontoffice-detail-dialog{z-index:80;pointer-events:none;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;inset:0}.frontoffice-detail-backdrop{background:color-mix(in srgb, var(--bg) 82%, transparent);cursor:default;opacity:0;border:0;transition:opacity .18s;position:absolute;inset:0}.frontoffice-detail-panel{border-left:1px solid var(--border);background:var(--bg);opacity:0;width:min(620px,100%);height:100%;transition:transform .22s ease-out,opacity .18s;position:relative;transform:translate(24px)}.frontoffice-detail-dialog[data-visible=true]{pointer-events:auto}.frontoffice-detail-dialog[data-visible=true] .frontoffice-detail-backdrop,.frontoffice-detail-dialog[data-visible=true] .frontoffice-detail-panel{opacity:1}.frontoffice-detail-dialog[data-visible=true] .frontoffice-detail-panel{transform:translate(0)}.frontoffice-detail-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:24px;min-height:152px;padding:28px 32px;display:flex}.frontoffice-detail-header p,.frontoffice-qr-block p,.frontoffice-quick-actions p{color:var(--text-tertiary);margin:0}.frontoffice-detail-title-row{flex-wrap:wrap;align-items:baseline;gap:8px 14px;margin:8px 0 14px;display:flex}.frontoffice-detail-title-row h2{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 96, "SOFT" 20;font-variant-numeric:tabular-nums;margin:0;font-size:42px;font-weight:600;line-height:1}.frontoffice-detail-title-row span{color:var(--text-secondary);font-size:13px;font-weight:600}.frontoffice-icon-action{border:1px solid var(--border);border-radius:var(--r-button);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;display:inline-flex}.frontoffice-icon-action:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));color:var(--text-primary)}.frontoffice-status-pill{--status-tone:var(--text-tertiary);border-radius:var(--r-pill);align-items:center;gap:7px;min-height:26px;padding:5px 9px;display:inline-flex}.frontoffice-status-pill[data-tone]{border:1px solid color-mix(in srgb, var(--status-tone) 32%, transparent);background:color-mix(in srgb, var(--status-tone) 10%, transparent);color:var(--status-tone)}.frontoffice-status-pill[data-tone=accent],[data-tone=accent].frontoffice-status-pill{--status-tone:var(--accent)}.frontoffice-status-pill[data-tone=info],[data-tone=info].frontoffice-status-pill{--status-tone:var(--info)}.frontoffice-status-pill[data-tone=warning],[data-tone=warning].frontoffice-status-pill{--status-tone:var(--warning)}.frontoffice-status-pill[data-tone=success],[data-tone=success].frontoffice-status-pill{--status-tone:var(--success)}.frontoffice-status-pill[data-tone=error],[data-tone=error].frontoffice-status-pill{--status-tone:var(--error)}.frontoffice-status-pill[data-tone=neutral],[data-tone=neutral].frontoffice-status-pill{color:var(--text-secondary)}.frontoffice-detail-scroll{overscroll-behavior:contain;height:calc(100% - 152px);padding:28px 32px 48px;overflow-y:auto}.frontoffice-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}.frontoffice-detail-row{border-bottom:1px solid color-mix(in srgb, var(--border) 66%, transparent);color:var(--text-secondary);grid-template-columns:20px minmax(0,1fr);gap:10px;padding:14px 0;display:grid}.frontoffice-detail-row>svg{color:var(--text-tertiary);margin-top:3px}.frontoffice-detail-row .type-eyebrow{color:var(--text-tertiary);margin-bottom:3px;display:block}.frontoffice-detail-row strong{color:var(--text-primary);font-weight:600}.frontoffice-quick-actions,.frontoffice-qr-block{border-top:1px solid var(--border);margin-top:32px;padding-top:24px}.frontoffice-form-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.frontoffice-form-heading h3,.frontoffice-qr-block h3,.frontoffice-quick-actions h3{color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 24, "SOFT" 20;margin:4px 0 0;font-size:17px;font-weight:600}.frontoffice-form-heading>svg{color:var(--accent)}.frontoffice-primary-action,.frontoffice-secondary-action,.frontoffice-action,.frontoffice-action-secondary,.frontoffice-text-action{border-radius:var(--r-button);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 16px;text-decoration:none;display:inline-flex}.frontoffice-primary-action{border:1px solid var(--gold);background:var(--gold);color:var(--on-gold)}.frontoffice-primary-action:hover{border-color:var(--gold-hover);background:var(--gold-hover)}.frontoffice-secondary-action{border:1px solid var(--border);color:var(--text-primary);background:0 0}.frontoffice-secondary-action:hover{border-color:color-mix(in srgb, var(--accent) 48%, var(--border))}.frontoffice-text-action{min-height:36px;color:var(--accent);background:0 0;border:0;padding-inline:4px}.frontoffice-primary-action:disabled,.frontoffice-secondary-action:disabled,.frontoffice-action:disabled,.frontoffice-action-secondary:disabled,.frontoffice-text-action:disabled{cursor:wait;opacity:.55}.frontoffice-quick-actions>.frontoffice-primary-action,.frontoffice-quick-actions>.frontoffice-secondary-action,.frontoffice-quick-actions>a,.frontoffice-quick-actions>div>.frontoffice-secondary-action{width:100%;margin-top:10px}.frontoffice-inline-form,.frontoffice-confirmation{border:1px solid var(--border);border-radius:var(--r-card);background:color-mix(in srgb, var(--surface) 72%, var(--bg));margin-top:16px;padding:18px}.frontoffice-inline-form{flex-direction:column;gap:14px;display:flex}.frontoffice-inline-form label{color:var(--text-primary);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.frontoffice-inline-form input,.frontoffice-inline-form select,.frontoffice-inline-form textarea{border:1px solid var(--border);border-radius:var(--r-input);background:var(--elevated);width:100%;min-height:44px;color:var(--text-primary);padding:10px 12px;font-size:13px;font-weight:400}.frontoffice-inline-form textarea{resize:vertical;min-height:88px}.frontoffice-form-grid{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:12px;display:grid}.frontoffice-action-error,.frontoffice-feedback[data-tone=error]{color:var(--error);margin:10px 0 0;font-size:12px;font-weight:600}.frontoffice-action-success,.frontoffice-feedback[data-tone=success]{color:var(--success);margin:10px 0 0;font-size:12px;font-weight:600}.frontoffice-confirmation p{color:var(--text-secondary);margin:0}.frontoffice-confirmation-actions{justify-content:flex-end;gap:12px;margin-top:16px;display:flex}.frontoffice-qr-layout{grid-template-columns:196px minmax(0,1fr);align-items:start;gap:24px;display:grid}.frontoffice-qr-image{--qr-bg:var(--text-primary);--qr-ink:var(--bg);border:1px solid var(--border);border-radius:var(--r-card);background:var(--qr-bg);width:196px;height:196px;color:var(--qr-ink);justify-content:center;align-items:center;padding:8px;display:flex}[data-theme=light] .frontoffice-qr-image{--qr-bg:var(--surface);--qr-ink:var(--text-primary)}.frontoffice-qr-copy{min-width:0}.frontoffice-guest-link{overflow-wrap:anywhere;min-width:0;color:var(--accent);align-items:flex-start;gap:8px;text-decoration:none;display:flex}.frontoffice-guest-link svg{flex:none;margin-top:2px}.frontoffice-qr-copy>.frontoffice-secondary-action{margin-top:18px}.frontoffice-view{min-width:0}.frontoffice-list{flex-direction:column;gap:12px;display:flex}.frontoffice-movement-card,.frontoffice-queue-card,.frontoffice-inbox-card{--request-tone:var(--text-tertiary);border:1px solid var(--border);border-left:3px solid var(--request-tone);border-radius:var(--r-card);background:color-mix(in srgb, var(--surface) 82%, var(--bg));min-width:0;padding:20px}.frontoffice-movement-card[data-tone=info],.frontoffice-queue-card[data-tone=info],.frontoffice-inbox-card[data-tone=info]{--request-tone:var(--info)}.frontoffice-movement-card[data-tone=warning],.frontoffice-queue-card[data-tone=warning],.frontoffice-inbox-card[data-tone=warning]{--request-tone:var(--warning)}.frontoffice-movement-card[data-tone=accent],.frontoffice-queue-card[data-tone=accent],.frontoffice-inbox-card[data-tone=accent]{--request-tone:var(--accent)}.frontoffice-movement-card[data-tone=success],.frontoffice-queue-card[data-tone=success],.frontoffice-inbox-card[data-tone=success]{--request-tone:var(--success)}.frontoffice-movement-card[data-tone=error],.frontoffice-queue-card[data-tone=error],.frontoffice-inbox-card[data-tone=error]{--request-tone:var(--error)}.frontoffice-loading{animation:1.6s ease-in-out infinite frontoffice-pulse}.frontoffice-loading-heading,.frontoffice-loading-toolbar,.frontoffice-loading-rule,.frontoffice-loading-card{background:var(--elevated)}.frontoffice-loading-heading{border-radius:var(--r-card);width:180px;height:34px}.frontoffice-loading-toolbar{border-radius:var(--r-card);height:76px;margin-top:24px}.frontoffice-loading-rule{height:1px;margin-top:40px}.frontoffice-loading-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;margin-top:16px;display:grid}.frontoffice-loading-card{border:1px solid var(--border);border-radius:var(--r-card);min-height:120px}@keyframes frontoffice-pulse{0%,to{opacity:.55}50%{opacity:.9}}@media (min-width:1100px){.frontoffice-room-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (max-width:760px){.frontoffice-page{padding:28px 20px 72px}.frontoffice-masthead{grid-template-columns:minmax(0,1fr);padding-bottom:28px;display:grid}.frontoffice-header-tools{border-top:1px solid var(--border);border-left:0;justify-content:space-between;width:100%;padding-top:16px;padding-left:0}.frontoffice-tabs{gap:24px}.frontoffice-content{margin-top:32px}.frontoffice-room-toolbar{flex-direction:column;align-items:stretch}.frontoffice-search{width:100%;min-width:0}.frontoffice-filters{grid-template-columns:18px repeat(2,minmax(0,1fr));display:grid}.frontoffice-filters select{width:100%}.frontoffice-detail-panel{border-top:1px solid var(--border);border-left:0;width:100%}.frontoffice-detail-header,.frontoffice-detail-scroll{padding-inline:20px}.frontoffice-detail-summary,.frontoffice-qr-layout{grid-template-columns:minmax(0,1fr)}.frontoffice-qr-image{aspect-ratio:1;width:min(240px,100%);height:auto}}@media (max-width:420px){.frontoffice-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.frontoffice-room-card{min-height:132px}.frontoffice-window-chip{font-size:11px;top:66px;right:10px}.frontoffice-form-grid,.frontoffice-filters{grid-template-columns:minmax(0,1fr)}.frontoffice-filters>svg{display:none}.frontoffice-confirmation-actions{flex-direction:column-reverse;align-items:stretch}}@media (prefers-reduced-motion:reduce){.frontoffice-loading{animation:none}.frontoffice-detail-backdrop,.frontoffice-detail-panel{transition:none}}
