*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}progress{vertical-align:initial}.select-all{-webkit-user-select:all;user-select:all}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.visible{visibility:visible}.mx-3{margin-left:.75rem;margin-right:.75rem}.mb-2{margin-bottom:.5rem}.mt-0\.5{margin-top:.125rem}.\!block{display:block!important}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.\!resize{resize:both!important}.resize{resize:both}.items-start{align-items:flex-start}.gap-2\.5{gap:.625rem}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-amber-400\/40{border-color:#fbbf2466}.bg-amber-400\/10{background-color:#fbbf241a}.px-3{padding-left:.75rem;padding-right:.75rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.align-top{vertical-align:top}.align-bottom{vertical-align:bottom}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-snug{line-height:1.375}.text-amber-100{--tw-text-opacity:1;color:rgb(254 243 199/var(--tw-text-opacity,1))}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--hotel-ai-bg-primary:#fff;--hotel-ai-bg-elevated:#f5f7fa;--hotel-ai-bg-secondary:#edf0f5;--hotel-ai-bg-tertiary:#e2e6ed;--hotel-ai-bg-hover:rgba(30,67,128,.04);--hotel-ai-separator:rgba(30,67,128,.1);--hotel-ai-separator-opaque:#d5dae3;--hotel-ai-border:var(--hotel-ai-separator-opaque);--hotel-ai-surface:var(--hotel-ai-bg-primary);--hotel-ai-text-primary:#1a1a2e;--hotel-ai-text-secondary:#4a5568;--hotel-ai-text-tertiary:#435466;--hotel-ai-text-muted:var(--hotel-ai-text-tertiary);--hotel-ai-accent:var(--hotel-ai-system-blue);--hotel-ai-system-blue:#1e4380;--hotel-ai-system-blue-hover:#163562;--hotel-ai-system-green:#15613b;--hotel-ai-system-red:#9b2c2c;--hotel-ai-system-orange:#7d4b00;--hotel-ai-radius:8px;--hotel-ai-transition:.18s ease}.hotel-ai-compliance-review{display:grid;gap:24px}.hotel-ai-compliance-review-hero,.hotel-ai-review-document-head{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.hotel-ai-compliance-review-hero h1,.hotel-ai-review-document-head h2{color:var(--hotel-ai-text-primary);font-size:clamp(28px,4vw,44px);letter-spacing:0;margin:6px 0 8px}.hotel-ai-compliance-review-hero p,.hotel-ai-review-document-head p{color:var(--hotel-ai-text-secondary);line-height:1.6;margin:0;max-width:760px}.hotel-ai-compliance-review-hero .hotel-ai-review-lifecycle{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-border);border-radius:999px;color:var(--hotel-ai-text-primary);display:inline-flex;font-size:12px;font-weight:800;letter-spacing:.04em;margin-top:12px;padding:6px 10px;text-transform:uppercase;width:-moz-fit-content;width:fit-content}.hotel-ai-review-stepper{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-ai-review-step{align-items:center;background:var(--hotel-ai-surface);border:1px solid var(--hotel-ai-border);border-radius:8px;color:var(--hotel-ai-text-secondary);cursor:pointer;display:flex;font:inherit;font-weight:700;gap:10px;justify-content:center;min-height:56px}.hotel-ai-review-step span{background:var(--hotel-ai-bg-elevated);border-radius:50%;color:var(--hotel-ai-text-primary);display:inline-grid;font-size:13px;height:28px;place-items:center;width:28px}.hotel-ai-review-step.active{border-color:var(--hotel-ai-accent);box-shadow:inset 0 0 0 1px var(--hotel-ai-accent);color:var(--hotel-ai-text-primary)}.hotel-ai-review-step.complete span{background:var(--hotel-ai-system-green);color:#fff}.hotel-ai-review-alert{background:color-mix(in srgb,var(--hotel-ai-system-red) 9%,var(--hotel-ai-surface));border:1px solid color-mix(in srgb,var(--hotel-ai-system-red) 36%,transparent);border-radius:8px;color:var(--hotel-ai-text-primary);margin:0;padding:12px 14px}.hotel-ai-review-alert.is-success{background:color-mix(in srgb,var(--hotel-ai-system-green) 10%,var(--hotel-ai-surface));border-color:color-mix(in srgb,var(--hotel-ai-system-green) 40%,transparent)}.hotel-ai-review-panel{background:var(--hotel-ai-surface);border:1px solid var(--hotel-ai-border);border-radius:8px;display:grid;gap:22px;padding:24px}.hotel-ai-review-package-grid{display:grid;gap:24px;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr)}.hotel-ai-review-package-contents h3,.hotel-ai-review-package-grid h2{color:var(--hotel-ai-text-primary);letter-spacing:0;margin:0 0 14px}.hotel-ai-review-facts{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.hotel-ai-review-facts div{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-border);border-radius:8px;padding:12px}.hotel-ai-review-facts dt{color:var(--hotel-ai-text-muted);font-size:12px;font-weight:700;text-transform:uppercase}.hotel-ai-review-facts dd{color:var(--hotel-ai-text-primary);font-weight:700;margin:4px 0 0;overflow-wrap:anywhere}.hotel-ai-analysis-steps,.hotel-ai-review-package-contents ul{display:grid;gap:10px;list-style:none;margin:0;padding:0}.hotel-ai-analysis-steps li,.hotel-ai-review-package-contents li{align-items:flex-start;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-border);border-radius:8px;display:flex;gap:10px;padding:12px}.hotel-ai-analysis-steps li.complete svg,.hotel-ai-review-package-contents li.is-ready svg{color:var(--hotel-ai-system-green)}.hotel-ai-analysis-steps li.active svg,.hotel-ai-review-package-contents li.is-partial svg{color:var(--hotel-ai-system-orange)}.hotel-ai-review-package-contents li.is-missing svg{color:var(--hotel-ai-text-muted)}.hotel-ai-review-package-contents small,.hotel-ai-review-package-contents strong{display:block}.hotel-ai-analysis-steps li,.hotel-ai-review-package-contents small{color:var(--hotel-ai-text-secondary)}.hotel-ai-analysis-header{align-items:end;display:flex;gap:16px;justify-content:space-between}.hotel-ai-analysis-header strong{color:var(--hotel-ai-text-primary);font-size:34px}.hotel-ai-analysis-progress{background:var(--hotel-ai-bg-elevated);border-radius:999px;height:12px;overflow:hidden}.hotel-ai-analysis-progress span{background:var(--hotel-ai-accent);border-radius:inherit;display:block;height:100%;transition:width .18s ease}.hotel-ai-review-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.hotel-ai-export-status{align-items:center;color:var(--hotel-ai-text-secondary);display:inline-flex;font-size:13px;font-weight:700;min-height:34px}.hotel-ai-export-status.is-error{color:var(--hotel-ai-system-red)}.hotel-ai-review-metrics{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-ai-review-metrics div{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-border);border-radius:8px;padding:14px}.hotel-ai-review-metrics small,.hotel-ai-review-metrics span{color:var(--hotel-ai-text-secondary);display:block}.hotel-ai-review-metrics strong{color:var(--hotel-ai-text-primary);display:block;font-size:28px;margin:5px 0}.hotel-ai-review-table{border:1px solid var(--hotel-ai-border);border-radius:8px;overflow:hidden}.hotel-ai-review-table-head,.hotel-ai-review-table-row{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(220px,1.4fr) minmax(160px,.9fr) minmax(180px,.9fr) minmax(96px,.4fr);padding:12px 14px}.hotel-ai-review-table-head{background:var(--hotel-ai-bg-elevated);color:var(--hotel-ai-text-muted);font-size:12px;font-weight:800;text-transform:uppercase}.hotel-ai-review-table-row{border-top:1px solid var(--hotel-ai-border);color:var(--hotel-ai-text-secondary)}.hotel-ai-review-table-row small,.hotel-ai-review-table-row strong{display:block}.hotel-ai-review-table-row select,.hotel-ai-review-table-row strong{color:var(--hotel-ai-text-primary)}.hotel-ai-review-table-row select{background:var(--hotel-ai-surface);border:1px solid var(--hotel-ai-border);border-radius:8px;min-height:40px;padding:0 10px;width:100%}@media(max-width:900px){.hotel-ai-analysis-header,.hotel-ai-compliance-review-hero,.hotel-ai-review-document-head{display:grid}.hotel-ai-review-metrics,.hotel-ai-review-package-grid,.hotel-ai-review-table-head,.hotel-ai-review-table-row{grid-template-columns:minmax(0,1fr)}.hotel-ai-review-stepper{grid-template-columns:1fr}.hotel-ai-review-panel{padding:18px}}.hotel-ai-admin-specs{margin:0 auto;padding:32px 0 96px;width:min(1420px,calc(100vw - 48px))}.hotel-ai-admin-shell{background:var(--hotel-ai-bg-primary);color:var(--hotel-ai-text-primary);min-height:100vh}.hotel-ai-admin-topbar{align-items:center;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#fffffff0;border-bottom:1px solid var(--hotel-ai-separator-opaque);display:flex;justify-content:space-between;min-height:60px;padding:0 22px;position:sticky;top:0;z-index:120}.hotel-ai-admin-brandmark,.hotel-ai-admin-topbar-actions{align-items:center;display:flex;gap:10px}.hotel-ai-admin-frame{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 60px)}.hotel-ai-admin-nav{background:var(--hotel-ai-bg-elevated);border-right:1px solid var(--hotel-ai-separator-opaque);display:flex;flex-direction:column;gap:18px;height:calc(100vh - 60px);padding:20px 14px;position:sticky;top:60px}.hotel-ai-admin-nav-heading{border-bottom:1px solid var(--hotel-ai-separator);display:grid;gap:2px;padding:0 8px 10px}.hotel-ai-admin-nav-heading span{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hotel-ai-admin-nav-heading strong{color:var(--hotel-ai-text-primary);font-size:15px}.hotel-ai-admin-nav nav,.hotel-ai-admin-nav-pending{display:grid;gap:8px}.hotel-ai-admin-nav-item,.hotel-ai-admin-nav-pending button{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);display:flex;gap:10px;min-height:48px;padding:10px;text-align:left;text-decoration:none;transition:background var(--hotel-ai-transition),border-color var(--hotel-ai-transition),color var(--hotel-ai-transition);width:100%}.hotel-ai-admin-nav-item.is-active,.hotel-ai-admin-nav-item:hover{background:#fff;border-color:var(--hotel-ai-separator-opaque);color:var(--hotel-ai-text-primary)}.hotel-ai-admin-nav-item span{display:grid;gap:2px}.hotel-ai-admin-nav-item strong{font-size:13px}.hotel-ai-admin-nav-item small{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-admin-nav-pending{border-top:1px solid var(--hotel-ai-separator);margin-top:auto;padding-top:14px}.hotel-ai-admin-nav-pending p{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:700;letter-spacing:.08em;margin:0 8px 4px;text-transform:uppercase}.hotel-ai-admin-nav-pending button{color:var(--hotel-ai-text-tertiary);font:inherit;font-size:12px;min-height:36px;opacity:.55}.hotel-ai-admin-content{min-width:0;padding:0 0 64px}.hotel-ai-admin-overview{margin:0 auto;padding:32px 0 96px;width:min(1180px,calc(100vw - 340px))}.hotel-ai-admin-overview-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0}.hotel-ai-admin-module-card{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);display:grid;gap:10px;min-height:210px;padding:18px;text-decoration:none}.hotel-ai-admin-module-card.is-live:hover{border-color:#1e438047;box-shadow:0 12px 36px #1e438014}.hotel-ai-admin-module-card>div{align-items:center;color:var(--hotel-ai-system-blue);display:flex;justify-content:space-between}.hotel-ai-admin-module-card>div span{background:#15613b14;border-radius:999px;color:var(--hotel-ai-system-green);font-size:11px;font-weight:700;padding:4px 8px}.hotel-ai-admin-module-card h2{color:var(--hotel-ai-text-primary);font-size:20px;font-weight:700;margin:4px 0 0}.hotel-ai-admin-module-card p{line-height:1.55;margin:0}.hotel-ai-admin-module-card strong{align-self:end;color:var(--hotel-ai-text-primary);font-size:13px}.hotel-ai-admin-recent-list{display:grid;gap:8px;margin-top:14px}.hotel-ai-admin-recent-list article{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:flex;gap:12px;justify-content:space-between;padding:12px}.hotel-ai-admin-recent-list article>div{display:grid;gap:3px;min-width:0}.hotel-ai-admin-recent-list strong{color:var(--hotel-ai-text-primary);font-size:14px;overflow-wrap:anywhere}.hotel-ai-admin-recent-list span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-admin-recent-list em{border-radius:999px;flex:0 0 auto;font-size:11px;font-style:normal;font-weight:700;padding:4px 7px;text-transform:capitalize}.hotel-ai-admin-recent-list em.is-active{background:#15613b1a;color:var(--hotel-ai-system-green)}.hotel-ai-admin-recent-list em.is-archived{background:#4354661a;color:var(--hotel-ai-text-tertiary)}.hotel-ai-admin-diagnostics{display:grid;gap:14px;margin-top:14px}.hotel-ai-admin-diagnostics-summary{align-items:center;color:var(--hotel-ai-text-primary);display:flex;font-size:13px;font-weight:650;gap:7px;margin:0}.hotel-ai-admin-diagnostics-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}.hotel-ai-admin-diagnostics-list li{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:flex;gap:12px;justify-content:space-between;padding:12px}.hotel-ai-admin-diagnostics-list li>div{display:grid;gap:3px;min-width:0}.hotel-ai-admin-diagnostics-list strong{color:var(--hotel-ai-text-primary);font-size:14px;overflow-wrap:anywhere}.hotel-ai-admin-diagnostics-list span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-admin-diagnostics-missing{color:var(--hotel-ai-system-red)}.hotel-ai-admin-diagnostics-list em{border-radius:999px;flex:0 0 auto;font-size:11px;font-style:normal;font-weight:700;padding:4px 7px;text-transform:capitalize}.hotel-ai-admin-diagnostics-list em.is-active{background:#15613b1a;color:var(--hotel-ai-system-green)}.hotel-ai-admin-diagnostics-list em.is-archived{background:#4354661a;color:var(--hotel-ai-text-tertiary)}.hotel-ai-admin-diagnostics-actions{display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-admin-diagnostics-result{display:grid;gap:8px}.hotel-ai-admin-hero{align-items:flex-start;border-bottom:1px solid var(--hotel-ai-separator-opaque);display:flex;gap:24px;justify-content:space-between;padding:0 0 24px}.hotel-ai-admin-hero h1{color:var(--hotel-ai-text-primary);font-family:Libre Bodoni,Georgia,serif;font-size:clamp(32px,4vw,52px);font-weight:600;letter-spacing:0;line-height:1.02;margin:2px 0 6px}.hotel-ai-admin-hero p{color:var(--hotel-ai-text-secondary);font-size:15px;margin:0;max-width:720px}.hotel-ai-admin-actions-row,.hotel-ai-admin-hero-actions,.hotel-ai-admin-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-admin-stats{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0}.hotel-ai-admin-stats div{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);padding:16px}.hotel-ai-admin-stats span{color:var(--hotel-ai-system-blue);display:block;font-size:24px;font-weight:700;line-height:1.1}.hotel-ai-admin-stats p{color:var(--hotel-ai-text-secondary);font-size:13px;margin:4px 0 0}.hotel-ai-admin-error,.hotel-ai-admin-status{border-radius:var(--hotel-ai-radius);font-size:13px;margin:16px 0 0;padding:10px 12px}.hotel-ai-admin-status{background:#15613b14;border:1px solid rgba(21,97,59,.2);color:var(--hotel-ai-system-green)}.hotel-ai-admin-error{background:#9b2c2c14;border:1px solid rgba(155,44,44,.2);color:var(--hotel-ai-system-red)}.hotel-ai-admin-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(280px,360px) minmax(0,1fr);margin-top:20px}.hotel-ai-admin-detail,.hotel-ai-admin-sidebar{display:grid;gap:14px}.hotel-ai-admin-empty,.hotel-ai-admin-panel{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);padding:18px}.hotel-ai-admin-empty{color:var(--hotel-ai-text-secondary);display:grid;gap:10px;place-items:start}.hotel-ai-admin-empty h2,.hotel-ai-admin-panel h2{color:var(--hotel-ai-text-primary);font-size:18px;font-weight:650;letter-spacing:0;margin:0}.hotel-ai-admin-empty p,.hotel-ai-admin-panel p{margin:0}.hotel-ai-admin-empty.is-compact{align-content:center;min-height:72px}.hotel-ai-admin-edit-grid,.hotel-ai-admin-form,.hotel-ai-admin-upload-grid{display:grid;gap:12px}.hotel-ai-admin-form{margin-top:14px}.hotel-ai-admin-edit-grid,.hotel-ai-admin-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0}.hotel-ai-admin-edit-grid .is-wide{grid-column:1/-1}.hotel-ai-admin-edit-grid label,.hotel-ai-admin-form label,.hotel-ai-admin-upload-grid label{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;font-weight:600;gap:6px}.hotel-ai-admin-edit-grid input,.hotel-ai-admin-edit-grid select,.hotel-ai-admin-edit-grid textarea,.hotel-ai-admin-form input,.hotel-ai-admin-form textarea,.hotel-ai-admin-inline-form input,.hotel-ai-admin-search,.hotel-ai-admin-upload-grid input,.hotel-ai-admin-upload-grid select{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font:inherit;font-size:13px;min-height:36px;outline:none;padding:8px 10px;width:100%}.hotel-ai-admin-edit-grid textarea,.hotel-ai-admin-form textarea{min-height:82px;resize:vertical}.hotel-ai-admin-code-textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5;min-height:260px}.hotel-ai-admin-edit-grid input:focus,.hotel-ai-admin-edit-grid select:focus,.hotel-ai-admin-edit-grid textarea:focus,.hotel-ai-admin-form input:focus,.hotel-ai-admin-form textarea:focus,.hotel-ai-admin-inline-form input:focus,.hotel-ai-admin-search:focus,.hotel-ai-admin-upload-grid input:focus,.hotel-ai-admin-upload-grid select:focus{border-color:#1e43806b;box-shadow:0 0 0 3px #1e438014}.hotel-ai-admin-inline-form{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;margin-top:12px}.hotel-ai-admin-iteration-list{display:grid;gap:18px}.hotel-ai-admin-iteration-list section{display:grid;gap:8px}.hotel-ai-admin-iteration-list h3{color:var(--hotel-ai-text-tertiary);font-size:12px;font-weight:700;letter-spacing:.04em;margin:0;text-transform:uppercase}.hotel-ai-admin-iteration-button{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:12px;text-align:left;transition:border-color var(--hotel-ai-transition),background var(--hotel-ai-transition);width:100%}.hotel-ai-admin-iteration-button.is-selected,.hotel-ai-admin-iteration-button:hover{background:#1e43800f;border-color:#1e438047}.hotel-ai-admin-iteration-button span{display:grid;gap:3px;min-width:0}.hotel-ai-admin-iteration-button strong,.hotel-ai-admin-upload-list strong{color:var(--hotel-ai-text-primary);font-size:14px;font-weight:650;overflow-wrap:anywhere}.hotel-ai-admin-iteration-button small,.hotel-ai-admin-upload-list small,.hotel-ai-admin-upload-list span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-admin-iteration-button em,.hotel-ai-admin-upload-list em{border-radius:999px;flex:0 0 auto;font-size:11px;font-style:normal;font-weight:700;padding:4px 7px;text-transform:capitalize}.hotel-ai-admin-iteration-button em.is-active,.hotel-ai-admin-upload-list em.is-completed,.hotel-ai-admin-upload-list em.is-done{background:#15613b1a;color:var(--hotel-ai-system-green)}.hotel-ai-admin-iteration-button em.is-archived,.hotel-ai-admin-upload-list em.is-pending{background:#4354661a;color:var(--hotel-ai-text-tertiary)}.hotel-ai-admin-upload-list em.is-processing{background:#1e43801a;color:var(--hotel-ai-system-blue)}.hotel-ai-admin-upload-list em.is-failed{background:#9b2c2c1a;color:var(--hotel-ai-system-red)}.hotel-ai-admin-dropzone{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px dashed rgba(30,67,128,.34);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);cursor:pointer;display:flex;gap:10px;margin:12px 0;min-height:70px;padding:16px}.hotel-ai-admin-progress{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:6px;list-style:none;margin:12px 0 0;padding:0}.hotel-ai-admin-upload-list{display:grid;gap:8px}.hotel-ai-admin-template-jobs{display:grid;gap:8px;margin-top:14px}.hotel-ai-admin-source-documents{display:grid;gap:8px}.hotel-ai-admin-source-documents-head{align-items:center;color:var(--hotel-ai-text-secondary);display:flex;font-size:12px;font-weight:600;gap:10px;justify-content:space-between}.hotel-ai-admin-source-documents-head>div{display:grid;gap:2px}.hotel-ai-admin-source-document small,.hotel-ai-admin-source-documents-head small{color:var(--hotel-ai-text-secondary);font-size:11px;font-weight:500}.hotel-ai-admin-source-list{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:grid;gap:6px;max-height:220px;overflow:auto;padding:8px}.hotel-ai-admin-source-error,.hotel-ai-admin-source-list>p{color:var(--hotel-ai-text-secondary);font-size:12px;margin:0}.hotel-ai-admin-source-error{color:var(--hotel-ai-system-red)}.hotel-ai-admin-source-document{align-items:start;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);cursor:pointer;display:grid;gap:8px;grid-template-columns:auto auto minmax(0,1fr);padding:8px}.hotel-ai-admin-source-document input{accent-color:var(--hotel-ai-accent);height:16px;margin:1px 0 0;width:16px}.hotel-ai-admin-source-document span{display:grid;gap:2px;min-width:0}.hotel-ai-admin-source-document strong{font-size:12px;font-weight:650;overflow-wrap:anywhere}.hotel-ai-admin-source-advanced{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:8px}.hotel-ai-admin-source-advanced summary{cursor:pointer;font-weight:650}.hotel-ai-admin-template-jobs p{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-admin-upload-list article{align-items:center;gap:12px;grid-template-columns:minmax(0,1fr) auto auto;padding:12px}.hotel-ai-admin-template-jobs article,.hotel-ai-admin-upload-list article{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:grid}.hotel-ai-admin-template-jobs article{align-items:start;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:10px}.hotel-ai-admin-template-jobs article>div:first-child,.hotel-ai-admin-upload-list article>div:first-child{display:grid;gap:3px;min-width:0}.hotel-ai-admin-search{max-width:220px}.hotel-ai-admin-template-jobs strong{color:var(--hotel-ai-text-primary);font-size:13px;font-weight:650;overflow-wrap:anywhere}.hotel-ai-admin-template-jobs small{color:var(--hotel-ai-text-secondary);font-size:11px;overflow-wrap:anywhere}.hotel-ai-admin-template-jobs small.is-error{color:var(--hotel-ai-system-red)}.hotel-ai-admin-template-jobs em{border-radius:999px;font-size:11px;font-style:normal;font-weight:700;padding:4px 7px;text-transform:capitalize}.hotel-ai-admin-template-jobs em.is-queued{background:#4354661a;color:var(--hotel-ai-text-tertiary)}.hotel-ai-admin-template-jobs em.is-processing{background:#1e43801a;color:var(--hotel-ai-system-blue)}.hotel-ai-admin-template-jobs em.is-completed{background:#15613b1a;color:var(--hotel-ai-system-green)}.hotel-ai-admin-template-jobs em.is-failed{background:#9b2c2c1a;color:var(--hotel-ai-system-red)}.hotel-ai-admin-schema-builder,.hotel-ai-admin-schema-section-list,.hotel-ai-admin-template-field-list{display:grid;gap:12px}.hotel-ai-admin-schema-builder{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);padding:12px}.hotel-ai-admin-schema-builder .hotel-ai-panel-header h3{color:var(--hotel-ai-text-primary);font-size:16px;font-weight:650;letter-spacing:0;margin:0}.hotel-ai-admin-schema-section{background:#fff;border:1px solid rgba(67,84,102,.14);border-radius:var(--hotel-ai-radius);display:grid;gap:12px;padding:12px}.hotel-ai-admin-schema-section-header{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(160px,.8fr) minmax(220px,1fr) auto}.hotel-ai-admin-schema-actions{align-items:center;display:flex;gap:6px;justify-content:flex-end}.hotel-ai-admin-template-field-row{align-items:start;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:grid;gap:10px;grid-template-columns:34px minmax(0,1fr) auto;padding:10px}.hotel-ai-admin-template-field-icon{background:#1e438014;border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-system-blue);display:grid;height:34px;place-items:center;width:34px}.hotel-ai-admin-template-field-grid{display:grid;gap:10px;grid-template-columns:minmax(160px,1fr) minmax(150px,.8fr) minmax(120px,.5fr)}.hotel-ai-admin-template-field-grid .is-wide{grid-column:1/-1}.hotel-ai-admin-template-field-meta{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.hotel-ai-admin-template-field-meta strong{color:var(--hotel-ai-text-primary);font-size:13px;font-weight:650;overflow-wrap:anywhere}.hotel-ai-admin-template-field-meta small{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:600;overflow-wrap:anywhere}.hotel-ai-admin-required-toggle{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-tertiary);font-size:12px;font-weight:700;min-height:32px;padding:0 10px}.hotel-ai-admin-required-toggle.is-active{background:#1e438014;border-color:#1e43803d;color:var(--hotel-ai-system-blue)}.hotel-ai-admin-json-fallback{display:grid;gap:10px}.hotel-ai-admin-json-fallback summary{color:var(--hotel-ai-text-secondary);cursor:pointer;font-size:13px;font-weight:700}.hotel-ai-admin-template-preview{display:grid;gap:12px;margin-top:14px}.hotel-ai-admin-template-preview section{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:grid;gap:10px;padding:12px}.hotel-ai-admin-template-preview section>div{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.hotel-ai-admin-template-preview span,.hotel-ai-admin-template-preview strong{color:var(--hotel-ai-text-primary);font-size:13px;font-weight:650;overflow-wrap:anywhere}.hotel-ai-admin-template-preview small{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-admin-template-preview ul{display:grid;gap:6px;list-style:none;margin:0;padding:0}.hotel-ai-admin-template-preview li{align-items:center;background:#fff;border:1px solid rgba(67,84,102,.12);border-radius:var(--hotel-ai-radius);display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding:8px 10px}.hotel-ai-admin-template-preview em{background:#1e438014;border-radius:999px;color:var(--hotel-ai-system-blue);font-size:11px;font-style:normal;font-weight:700;padding:3px 6px}@media(max-width:980px){.hotel-ai-admin-topbar{display:grid;gap:10px;grid-template-columns:minmax(0,1fr);padding:12px 14px}.hotel-ai-admin-frame{grid-template-columns:1fr}.hotel-ai-admin-nav{border-bottom:1px solid var(--hotel-ai-separator-opaque);border-right:0;height:auto;position:static}.hotel-ai-admin-nav nav{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-admin-nav-pending{display:none}.hotel-ai-admin-overview{padding-top:20px;width:min(100vw - 28px,720px)}.hotel-ai-admin-overview-grid{grid-template-columns:1fr}.hotel-ai-admin-specs{padding-top:20px;width:min(100vw - 28px,720px)}.hotel-ai-admin-hero,.hotel-ai-admin-layout,.hotel-ai-admin-template-jobs article,.hotel-ai-admin-upload-list article{grid-template-columns:1fr}.hotel-ai-admin-hero{display:grid}.hotel-ai-admin-edit-grid,.hotel-ai-admin-stats,.hotel-ai-admin-upload-grid{grid-template-columns:1fr}.hotel-ai-admin-search{max-width:none}.hotel-ai-admin-template-preview li{grid-template-columns:1fr}}*{box-sizing:border-box}body{background:var(--hotel-ai-bg-primary);color:var(--hotel-ai-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;letter-spacing:0;line-height:1.47;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.hotel-ai-sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.hotel-ai-shell{background:var(--hotel-ai-bg-primary);color:var(--hotel-ai-text-primary);min-height:100vh;padding-bottom:84px}.hotel-ai-header{backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:#ffffffeb;border-bottom:1px solid var(--hotel-ai-separator-opaque);justify-content:space-between;min-height:52px;padding:0 20px;position:sticky;top:0;z-index:100}.hotel-ai-header,.hotel-ai-header-center,.hotel-ai-header-left,.hotel-ai-header-right{align-items:center;display:flex}.hotel-ai-header-center{gap:16px}.hotel-ai-header-right{flex-wrap:nowrap;gap:8px;justify-content:flex-end}.hotel-ai-header-actions{align-items:center;display:flex;gap:8px}.hotel-ai-header-icons{align-items:center;display:flex;gap:6px}.hotel-ai-header-divider{background:var(--hotel-ai-separator-opaque);flex:0 0 auto;height:22px;width:1px}.hotel-ai-header-actions .hotel-ai-btn{min-height:32px}.hotel-ai-logo{align-items:center;display:flex;gap:10px}.hotel-ai-logo svg{opacity:.9}.hotel-ai-logo rect{fill:#1e43801a}.hotel-ai-logo path{stroke:var(--hotel-ai-system-blue)}.hotel-ai-logo-text{display:flex;flex-direction:column}.hotel-ai-logo-title{color:var(--hotel-ai-system-blue);font-family:Libre Bodoni,Georgia,serif;font-size:16px;font-weight:600;letter-spacing:0;line-height:1.1}.hotel-ai-logo-subtitle{color:var(--hotel-ai-text-tertiary);font-size:12px;font-weight:400;letter-spacing:0}.hotel-ai-btn{align-items:center;border:1px solid transparent;border-radius:var(--hotel-ai-radius);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:5px;justify-content:center;line-height:1;min-height:30px;padding:6px 12px;text-decoration:none;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition),border-color var(--hotel-ai-transition);white-space:nowrap}.hotel-ai-btn:disabled{cursor:default;opacity:.48}.hotel-ai-btn-primary{background:var(--hotel-ai-system-blue);color:#fff}.hotel-ai-btn-primary:hover{background:var(--hotel-ai-system-blue-hover)}.hotel-ai-btn-outline{background:#1e43800f;border-color:var(--hotel-ai-separator-opaque);color:var(--hotel-ai-text-secondary)}.hotel-ai-btn-outline:hover{background:#1e43801a;color:var(--hotel-ai-text-primary)}.hotel-ai-btn-ghost{background:transparent;color:var(--hotel-ai-text-secondary)}.hotel-ai-btn-ghost:hover{background:var(--hotel-ai-bg-hover);color:var(--hotel-ai-text-primary)}.hotel-ai-btn-danger{background:var(--hotel-ai-system-red);color:#fff}.hotel-ai-btn-danger:hover:not(:disabled){background:#7f2424}.hotel-ai-btn:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-btn-danger:focus-visible{outline-color:var(--hotel-ai-system-red)}.hotel-ai-icon-button,.hotel-ai-notification-button{align-items:center;background:#1e43800d;border:1px solid var(--hotel-ai-separator-opaque);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;justify-content:center;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition),border-color var(--hotel-ai-transition)}.hotel-ai-icon-button:hover,.hotel-ai-notification-button:hover{background:#1e43801a;color:var(--hotel-ai-text-primary)}.hotel-ai-icon-button:disabled{cursor:default;opacity:.5}.hotel-ai-icon-button{border-radius:var(--hotel-ai-radius);height:30px;width:30px}.hotel-ai-activity-feed,.hotel-ai-notification-center{display:inline-flex;position:relative}.hotel-ai-notification-button{border-radius:var(--hotel-ai-radius);height:32px;position:relative;width:32px}.hotel-ai-notification-badge{align-items:center;background:var(--hotel-ai-system-red);border:2px solid #fff;border-radius:999px;color:#fff;display:inline-flex;font-size:10px;font-weight:800;height:18px;justify-content:center;line-height:1;min-width:18px;padding:0 5px;position:absolute;right:-5px;top:-5px}.hotel-ai-notification-popover{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);box-shadow:var(--hotel-ai-shadow-modal);padding:12px;position:absolute;right:0;top:calc(100% + 10px);width:min(360px,calc(100vw - 28px));z-index:140}.hotel-ai-notification-header{align-items:center;border-bottom:1px solid var(--hotel-ai-separator);display:flex;gap:12px;justify-content:space-between;padding-bottom:10px}.hotel-ai-notification-actions{align-items:center;display:flex;gap:6px}.hotel-ai-notification-action-button{align-items:center;background:#1e43800d;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:5px;min-height:30px;padding:0 9px;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition),border-color var(--hotel-ai-transition)}.hotel-ai-notification-action-button:hover{background:#1e43801a;color:var(--hotel-ai-text-primary)}.hotel-ai-notification-action-button:disabled{cursor:default;opacity:.5}.hotel-ai-notification-header strong,.hotel-ai-notification-item strong{color:var(--hotel-ai-text-primary);display:block;font-size:13px}.hotel-ai-notification-empty,.hotel-ai-notification-header span,.hotel-ai-notification-item span{color:var(--hotel-ai-text-tertiary);font-size:12px}.hotel-ai-notification-list{display:grid;gap:8px;list-style:none;margin:10px 0 0;max-height:360px;overflow-y:auto;padding:0}.hotel-ai-notification-item{align-items:start;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:10px}.hotel-ai-notification-item.is-unread{background:color-mix(in srgb,var(--hotel-ai-system-blue) 7%,#fff);border-color:color-mix(in srgb,var(--hotel-ai-system-blue) 34%,#fff)}.hotel-ai-notification-item p{color:var(--hotel-ai-text-secondary);font-size:12px;line-height:1.35;margin:4px 0;overflow-wrap:anywhere}.hotel-ai-notification-error{color:var(--hotel-ai-system-red);font-size:12px;font-weight:700;margin:10px 0 0}.hotel-ai-notification-empty{margin:12px 0 0}.hotel-ai-activity-popover{width:min(390px,calc(100vw - 28px))}.hotel-ai-activity-item{align-items:start;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);padding:10px}.hotel-ai-activity-item p{color:var(--hotel-ai-text-secondary);font-size:12px;line-height:1.35;margin:4px 0;overflow-wrap:anywhere}.hotel-ai-activity-avatar{align-items:center;background:color-mix(in srgb,var(--hotel-ai-system-blue) 12%,#fff);border-radius:999px;color:var(--hotel-ai-system-blue);display:inline-flex;font-size:10px;font-weight:800;height:28px;justify-content:center;width:28px}.hotel-ai-settings-page{display:grid;gap:20px;margin:0 auto;max-width:920px}.hotel-ai-settings-page-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.hotel-ai-settings-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-settings-card-header h1,.hotel-ai-settings-page-header h1{color:var(--hotel-ai-text-primary);font-size:24px;line-height:1.18;margin:0}.hotel-ai-settings-eyebrow{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:800;letter-spacing:0;margin:0 0 4px;text-transform:uppercase}.hotel-ai-settings-card{background:var(--hotel-ai-bg-surface);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);box-shadow:var(--hotel-ai-shadow-card);display:grid;gap:18px;padding:24px}.hotel-ai-settings-card-header,.hotel-ai-settings-footnote,.hotel-ai-settings-panel-heading,.hotel-ai-settings-row{align-items:center;display:flex;gap:12px}.hotel-ai-settings-card-header{align-items:flex-start;border-bottom:1px solid var(--hotel-ai-separator);justify-content:space-between;padding-bottom:16px}.hotel-ai-settings-card-header p,.hotel-ai-settings-empty,.hotel-ai-settings-footnote,.hotel-ai-settings-panel-heading span,.hotel-ai-settings-row span{color:var(--hotel-ai-text-secondary);font-size:13px;line-height:1.45}.hotel-ai-settings-card-header p{margin:6px 0 0;max-width:560px}.hotel-ai-settings-status{color:var(--hotel-ai-text-tertiary);font-size:12px;font-weight:800;min-width:86px}.hotel-ai-settings-error,.hotel-ai-settings-status span{align-items:center;display:inline-flex;gap:6px}.hotel-ai-settings-status svg{animation:hotel-ai-spin .9s linear infinite}.hotel-ai-settings-status .is-success{color:var(--hotel-ai-system-green)}.hotel-ai-settings-status .is-success svg{animation:none}.hotel-ai-settings-error{background:color-mix(in srgb,var(--hotel-ai-system-red) 8%,#fff);border:1px solid color-mix(in srgb,var(--hotel-ai-system-red) 24%,#fff);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-system-red);font-size:13px;font-weight:700;margin:0;padding:10px 12px}.hotel-ai-settings-empty{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);margin:0;padding:14px}.hotel-ai-settings-sections{display:grid;gap:14px}.hotel-ai-settings-row{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);grid-template-columns:auto minmax(0,1fr) auto;min-height:68px;padding:14px}.hotel-ai-settings-row.is-compact{background:#fff;min-height:58px}.hotel-ai-settings-row-icon{align-items:center;background:#1e43800f;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);display:inline-flex;height:36px;justify-content:center;width:36px}.hotel-ai-settings-panel-heading strong,.hotel-ai-settings-row strong{color:var(--hotel-ai-text-primary);display:block;font-size:14px;line-height:1.3}.hotel-ai-settings-row-group{border-left:2px solid var(--hotel-ai-separator);display:grid;gap:8px;padding-left:16px}.hotel-ai-settings-panel{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:14px;padding:14px}.hotel-ai-segmented-control{display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-ai-segmented-control button{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);cursor:pointer;font-size:12px;font-weight:800;min-height:36px;padding:0 10px;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition),border-color var(--hotel-ai-transition)}.hotel-ai-segmented-control button.is-active,.hotel-ai-segmented-control button:hover{background:#1e43801a;border-color:color-mix(in srgb,var(--hotel-ai-system-blue) 40%,#fff);color:var(--hotel-ai-text-primary)}.hotel-ai-segmented-control button:disabled,.hotel-ai-time-grid input:disabled{cursor:default;opacity:.55}.hotel-ai-switch{align-items:center;background:#3a3a3c26;border:1px solid var(--hotel-ai-separator-opaque);border-radius:999px;cursor:pointer;display:inline-flex;flex-shrink:0;height:26px;padding:2px;position:relative;transition:background var(--hotel-ai-transition),border-color var(--hotel-ai-transition);width:46px}.hotel-ai-switch span{background:#fff;border-radius:50%;box-shadow:var(--hotel-ai-shadow-card);height:20px;transform:translate(0);transition:transform var(--hotel-ai-transition);width:20px}.hotel-ai-switch.is-on{background:var(--hotel-ai-system-blue);border-color:var(--hotel-ai-system-blue)}.hotel-ai-switch.is-on span{transform:translate(19px)}.hotel-ai-switch:disabled{cursor:default;opacity:.55}.hotel-ai-time-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-time-grid label{color:var(--hotel-ai-text-tertiary);display:grid;font-size:11px;font-weight:800;gap:6px;text-transform:uppercase}.hotel-ai-time-grid input{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font-size:14px;min-height:38px;padding:0 10px}.hotel-ai-settings-form-field{color:var(--hotel-ai-text-tertiary);display:grid;font-size:11px;font-weight:800;gap:6px;text-transform:uppercase}.hotel-ai-settings-form-field input{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font-size:16px;letter-spacing:0;min-height:40px;padding:0 12px}.hotel-ai-mfa-verification-grid{align-items:stretch;display:grid;gap:14px;grid-template-columns:132px minmax(0,1fr)}.hotel-ai-mfa-qr{height:132px;-o-object-fit:contain;object-fit:contain;padding:8px;width:132px}.hotel-ai-mfa-qr,.hotel-ai-mfa-secret{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius)}.hotel-ai-mfa-secret{align-content:center;display:grid;gap:8px;min-width:0;padding:12px}.hotel-ai-mfa-secret span{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:800;text-transform:uppercase}.hotel-ai-mfa-secret code{color:var(--hotel-ai-text-primary);font-size:13px;font-weight:800;overflow-wrap:anywhere}@media(max-width:640px){.hotel-ai-settings-card-header,.hotel-ai-settings-page-header,.hotel-ai-settings-row{align-items:flex-start;flex-direction:column}.hotel-ai-settings-actions{justify-content:flex-start}.hotel-ai-mfa-verification-grid,.hotel-ai-time-grid{grid-template-columns:minmax(0,1fr)}.hotel-ai-mfa-qr{aspect-ratio:1;height:auto;width:min(180px,100%)}}.hotel-ai-settings-footnote{background:#1e43800d;border-radius:var(--hotel-ai-radius);padding:10px 12px}.hotel-ai-area-selector{align-items:center;color:var(--hotel-ai-text-secondary);display:flex;font-size:13px;font-weight:400;gap:8px}.hotel-ai-area-selector select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--hotel-ai-bg-elevated);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none' viewBox='0 0 10 6'%3E%3Cpath stroke='%234a5568' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m1 1 4 4 4-4'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);cursor:pointer;font-size:13px;font-weight:500;padding:5px 28px 5px 10px;transition:background var(--hotel-ai-transition)}.hotel-ai-area-selector select:hover{background-color:var(--hotel-ai-bg-secondary)}.hotel-ai-wizard-stepper{background:var(--hotel-ai-bg-elevated);border-bottom:1px solid var(--hotel-ai-separator-opaque);padding:0 32px}.hotel-ai-wizard-track{display:flex;gap:0;list-style:none;margin:0 auto;max-width:1200px;padding:0}.hotel-ai-wizard-item,.hotel-ai-wizard-step{display:flex;flex:1;min-width:0}.hotel-ai-wizard-step{align-items:center;background:transparent;border:0;border-bottom:3px solid transparent;color:inherit;cursor:pointer;gap:8px;justify-content:center;padding:14px 20px;position:relative;text-decoration:none;transition:all .2s ease}.hotel-ai-wizard-item:not(:last-child) .hotel-ai-wizard-step:after{background:var(--hotel-ai-separator);content:"";height:20px;position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px}.hotel-ai-wizard-step.active{border-bottom-color:var(--hotel-ai-system-blue)}.hotel-ai-wizard-step.completed{border-bottom-color:var(--hotel-ai-system-green)}.hotel-ai-wizard-step.upcoming{cursor:default}.hotel-ai-wizard-step.upcoming.next-available{cursor:pointer}.hotel-ai-wizard-step.upcoming.next-available:hover,.hotel-ai-wizard-step:not(.upcoming):hover{background:var(--hotel-ai-bg-hover)}.hotel-ai-wizard-step:disabled{cursor:default}.hotel-ai-wizard-number{align-items:center;background:var(--hotel-ai-bg-tertiary);border-radius:50%;color:var(--hotel-ai-text-tertiary);display:flex;flex:0 0 auto;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.hotel-ai-wizard-step.active .hotel-ai-wizard-number{background:var(--hotel-ai-system-blue);color:#fff}.hotel-ai-wizard-step.completed .hotel-ai-wizard-number{background:var(--hotel-ai-system-green);color:#fff}.hotel-ai-wizard-label{color:var(--hotel-ai-text-primary);font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-wizard-step.completed .hotel-ai-wizard-label{color:var(--hotel-ai-system-green)}.hotel-ai-wizard-step.upcoming .hotel-ai-wizard-label{color:var(--hotel-ai-text-tertiary)}.hotel-ai-property-info-bar{margin:0 auto;max-width:1440px;padding:12px 24px 0}.hotel-ai-property-info-card{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);box-shadow:0 1px 3px #1e43800f;display:flex;flex-direction:column;gap:10px;padding:14px 20px}.hotel-ai-property-info-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.hotel-ai-property-info-title{align-items:center;color:var(--hotel-ai-system-blue);display:flex;font-family:Libre Bodoni,Georgia,serif;font-size:15px;font-weight:700;gap:8px;letter-spacing:0}.hotel-ai-property-info-title svg path,.hotel-ai-property-info-title svg rect{stroke:var(--hotel-ai-system-blue)}.hotel-ai-property-info-pip-badge{background:#1e43800d;border-radius:6px;color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:500;padding:3px 10px}.hotel-ai-property-info-grid{border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:0;grid-template-columns:repeat(8,1fr);margin:0;overflow:hidden}.hotel-ai-property-info-cell{border-right:1px solid var(--hotel-ai-separator);display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 12px}.hotel-ai-property-info-cell:last-child{border-right:none}.hotel-ai-property-info-label{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.hotel-ai-property-info-value{color:var(--hotel-ai-text-primary);font-size:13px;font-variant-numeric:tabular-nums;font-weight:600;margin:0;overflow-wrap:anywhere}.hotel-ai-property-info-milestones{align-items:center;display:flex;flex-wrap:wrap;font-size:12px;gap:6px}.hotel-ai-property-info-milestone-label{color:var(--hotel-ai-text-secondary);font-weight:600;margin-right:4px}.hotel-ai-property-info-milestone{background:#1e43800d;border-radius:4px;color:var(--hotel-ai-text-secondary);font-weight:500;padding:2px 8px}.hotel-ai-property-info-milestone-sep{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-main-content{min-height:280px}.hotel-ai-step-nav{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-top:1px solid var(--hotel-ai-separator-opaque);bottom:0;display:grid;gap:16px;grid-template-columns:minmax(7rem,1fr) minmax(10rem,28rem) minmax(7rem,1fr);left:0;padding:12px 24px;position:fixed;right:0;z-index:100}.hotel-ai-step-nav-btn{align-items:center;border:1px solid transparent;border-radius:var(--hotel-ai-radius);cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:12px 28px;text-decoration:none;transition:all .15s ease}.hotel-ai-step-nav-btn:disabled{cursor:default;opacity:.5}.hotel-ai-step-nav-btn.prev{background:var(--hotel-ai-bg-elevated);border-color:var(--hotel-ai-separator-opaque);color:var(--hotel-ai-text-primary);justify-self:start}.hotel-ai-step-nav-btn.prev:hover{background:var(--hotel-ai-bg-secondary)}.hotel-ai-step-nav-btn.next{background:var(--hotel-ai-system-blue);color:#fff;justify-self:end}.hotel-ai-step-nav-btn.next:hover{background:var(--hotel-ai-system-blue-hover)}.hotel-ai-step-nav-hint{color:var(--hotel-ai-text-tertiary);font-size:13px;justify-self:center;max-width:420px;text-align:center}.hotel-ai-assistant-widget{bottom:88px;pointer-events:none;position:fixed;right:28px;z-index:160}.hotel-ai-assistant-widget.is-open{bottom:92px;right:24px}.hotel-ai-assistant-fab{align-items:center;background:var(--hotel-ai-system-blue);border:0;border-radius:50%;box-shadow:0 16px 40px #1e43803d;color:#fff;cursor:pointer;display:inline-flex;height:56px;justify-content:center;pointer-events:auto;transition:background var(--hotel-ai-transition),transform var(--hotel-ai-transition),opacity var(--hotel-ai-transition);width:56px}.hotel-ai-assistant-fab:hover{background:var(--hotel-ai-system-blue-hover);transform:translateY(-1px)}.hotel-ai-assistant-fab[aria-hidden=true]{opacity:0;pointer-events:none}.hotel-ai-assistant-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffffa;border:1px solid var(--hotel-ai-separator-opaque);border-radius:18px;box-shadow:0 24px 70px #0f23462e;color:var(--hotel-ai-text-primary);display:flex;flex-direction:column;max-height:min(660px,calc(100vh - 132px));overflow:hidden;pointer-events:auto;width:min(390px,calc(100vw - 32px))}.hotel-ai-assistant-header{align-items:center;background:var(--hotel-ai-bg-elevated);border-bottom:1px solid var(--hotel-ai-separator);display:flex;gap:12px;justify-content:space-between;padding:16px 18px}.hotel-ai-assistant-title-group{display:grid;gap:1px}.hotel-ai-assistant-title{color:var(--hotel-ai-text-primary);font-family:Libre Bodoni,Georgia,serif;font-size:19px;font-weight:700;line-height:1.1}.hotel-ai-assistant-footer,.hotel-ai-assistant-subtitle{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-assistant-header-actions{align-items:center;display:flex;gap:8px}.hotel-ai-assistant-clear,.hotel-ai-assistant-close,.hotel-ai-assistant-send{align-items:center;background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator);border-radius:50%;color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;height:36px;justify-content:center;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition),opacity var(--hotel-ai-transition);width:36px}.hotel-ai-assistant-clear:hover,.hotel-ai-assistant-close:hover,.hotel-ai-assistant-send:hover:not(:disabled){background:#fff;color:var(--hotel-ai-system-blue)}.hotel-ai-assistant-clear:hover{color:var(--hotel-ai-system-red)}.hotel-ai-assistant-confirm{align-items:center;background:#9b2c2c0f;border:1px solid rgba(155,44,44,.22);border-radius:12px;display:flex;gap:10px;justify-content:space-between;margin:0 16px 10px;padding:10px 12px}.hotel-ai-assistant-confirm-text{color:var(--hotel-ai-text-secondary);font-size:12px;line-height:1.4;margin:0}.hotel-ai-assistant-confirm-actions{display:flex;flex-shrink:0;gap:8px}.hotel-ai-assistant-confirm-btn{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator);border-radius:8px;color:var(--hotel-ai-text-secondary);cursor:pointer;font:inherit;font-size:12px;font-weight:600;padding:5px 10px}.hotel-ai-assistant-confirm-btn:disabled{cursor:not-allowed;opacity:.5}.hotel-ai-assistant-confirm-btn.is-danger{background:var(--hotel-ai-system-red);border-color:var(--hotel-ai-system-red);color:#fff}.hotel-ai-assistant-messages{align-content:start;display:grid;flex:1 1 auto;gap:10px;min-height:0;overflow-y:auto;padding:16px}.hotel-ai-assistant-message{display:flex;font-size:13px;gap:8px;line-height:1.45}.hotel-ai-assistant-message.is-user{justify-content:flex-end}.hotel-ai-assistant-message.is-system{align-items:center;background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator);border-radius:12px;color:var(--hotel-ai-text-secondary);font-size:12px;padding:8px 10px}.hotel-ai-assistant-message.is-system.is-quota{background:#9b2c2c0d;border-color:#9b2c2c3d;color:var(--hotel-ai-system-red)}.hotel-ai-assistant-bubble{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator);border-radius:14px;color:var(--hotel-ai-text-secondary);display:grid;gap:5px;max-width:86%;padding:10px 12px}.hotel-ai-assistant-message.is-user .hotel-ai-assistant-bubble{background:var(--hotel-ai-system-blue);border-color:var(--hotel-ai-system-blue);color:#fff}.hotel-ai-assistant-bubble p{margin:0}.hotel-ai-assistant-bubble-label{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hotel-ai-assistant-message.is-user .hotel-ai-assistant-bubble-label{color:#ffffffb8}.hotel-ai-assistant-source-list{border-top:1px solid var(--hotel-ai-separator);display:grid;gap:5px;list-style:none;margin:4px 0 0;padding:8px 0 0}.hotel-ai-assistant-source-link{color:inherit;display:grid;gap:2px;text-decoration:none}.hotel-ai-assistant-source-link span{color:var(--hotel-ai-text-primary);font-size:12px;font-weight:700}.hotel-ai-assistant-source-link small{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-assistant-chips{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding:0 16px 12px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.hotel-ai-assistant-chip{align-items:center;background:#1e438014;border:1px solid rgba(30,67,128,.16);border-radius:999px;color:var(--hotel-ai-system-blue);cursor:pointer;display:inline-flex;flex:0 0 auto;font:inherit;font-size:11px;font-weight:700;gap:5px;min-height:28px;padding:5px 9px;text-decoration:none;white-space:nowrap}.hotel-ai-assistant-chip:disabled{background:#76768014;border-color:var(--hotel-ai-separator);color:var(--hotel-ai-text-tertiary);cursor:not-allowed}.hotel-ai-assistant-input-row{border-top:1px solid var(--hotel-ai-separator);display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:12px 16px 10px}.hotel-ai-assistant-input{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator);border-radius:12px;color:var(--hotel-ai-text-primary);font:inherit;font-size:13px;max-height:96px;min-height:40px;outline:none;padding:10px 12px;resize:vertical;width:100%}.hotel-ai-assistant-input:focus{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e43801f}.hotel-ai-assistant-send{background:var(--hotel-ai-system-blue);border-color:var(--hotel-ai-system-blue);color:#fff}.hotel-ai-assistant-send:disabled{cursor:not-allowed;opacity:.45}.hotel-ai-assistant-footer{margin:0;padding:0 16px 14px}.hotel-ai-login-container,.hotel-ai-processing-container,.hotel-ai-screen,.hotel-ai-upload-container{margin:0 auto;padding:28px 24px 96px;width:min(1440px,100%)}.hotel-ai-screen-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.hotel-ai-login-card h1,.hotel-ai-processing-card h1,.hotel-ai-screen-header h1,.hotel-ai-screen-header h2,.hotel-ai-upload-zone h1{color:var(--hotel-ai-system-blue);font-family:Libre Bodoni,Georgia,serif;font-weight:700;letter-spacing:0;margin:0}.hotel-ai-screen-header h1{font-size:30px;line-height:1.15}.hotel-ai-screen-header h2{font-size:22px;line-height:1.2;margin-top:4px}.hotel-ai-muted,.hotel-ai-screen-header p{color:var(--hotel-ai-text-secondary);font-size:14px;margin:6px 0 0}.hotel-ai-inline-actions,.hotel-ai-screen-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-inline-actions{margin-top:20px}.hotel-ai-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a57;display:grid;inset:0;padding:24px;place-items:center;position:fixed;z-index:500}.hotel-ai-create-project-modal{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);box-shadow:0 24px 80px #0f172a2e;max-height:min(720px,calc(100vh - 48px));overflow:hidden;width:min(560px,100%)}.hotel-ai-create-project-header{align-items:flex-start;border-bottom:1px solid var(--hotel-ai-separator);display:flex;gap:18px;justify-content:space-between;padding:20px 22px}.hotel-ai-create-project-header h2{color:var(--hotel-ai-system-blue);font-family:Libre Bodoni,Georgia,serif;font-size:24px;line-height:1.2;margin:0}.hotel-ai-create-project-header p{color:var(--hotel-ai-text-secondary);font-size:13px;margin:4px 0 0}.hotel-ai-create-project-form{display:grid;gap:14px;max-height:calc(100vh - 160px);overflow-y:auto;padding:22px}.hotel-ai-create-project-form label{display:grid;gap:7px}.hotel-ai-create-project-form label>span{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:700}.hotel-ai-create-project-form input,.hotel-ai-create-project-form select,.hotel-ai-create-project-form textarea{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font:inherit;min-width:0;padding:10px 12px;width:100%}.hotel-ai-create-project-form textarea{resize:vertical}.hotel-ai-create-project-form input:focus,.hotel-ai-create-project-form select:focus,.hotel-ai-create-project-form textarea:focus{border-color:var(--hotel-ai-system-blue);outline:2px solid rgba(30,67,128,.22)}.hotel-ai-create-project-error,.hotel-ai-create-project-hint{border-radius:var(--hotel-ai-radius);font-size:13px;margin:0;padding:10px 12px}.hotel-ai-create-project-hint{background:#1e43800d;color:var(--hotel-ai-text-secondary)}.hotel-ai-create-project-error{background:#9b2c2c14;border:1px solid rgba(155,44,44,.18);color:var(--hotel-ai-system-red)}.hotel-ai-create-project-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:4px}.hotel-ai-shell[data-poc-screen=login]{padding-bottom:0}.hotel-ai-shell[data-poc-screen=login] .hotel-ai-main-content{min-height:100vh}.hotel-ai-login-container,.hotel-ai-processing-container,.hotel-ai-upload-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 84px)}.hotel-ai-login-container{min-height:100vh;padding:40px 20px}.hotel-ai-upload-container{flex-direction:column;gap:18px}.hotel-ai-login-auth-card{padding:40px;text-align:center;width:min(380px,100%)}.hotel-ai-login-lock-logo{color:var(--hotel-ai-system-blue);display:block;margin:0 auto 20px}.hotel-ai-login-auth-card h1{color:var(--hotel-ai-text-primary);font-family:Libre Bodoni,Georgia,serif;font-size:24px;font-weight:700;letter-spacing:0;line-height:1.2;margin:0 0 4px}.hotel-ai-login-gate-text{color:var(--hotel-ai-text-tertiary);font-size:13px;margin:0 0 24px}.hotel-ai-login-auth-fields{display:grid;gap:12px;margin-bottom:12px}.hotel-ai-login-auth-fields input{background:var(--hotel-ai-bg-elevated);border:1.5px solid var(--hotel-ai-separator-opaque);border-radius:10px;color:var(--hotel-ai-text-primary);font:inherit;font-size:15px;min-height:44px;outline:none;padding:12px 16px;transition:border-color var(--hotel-ai-transition),box-shadow var(--hotel-ai-transition);width:100%}.hotel-ai-login-auth-fields input:focus{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e43801f}.hotel-ai-login-auth-submit{background:var(--hotel-ai-system-blue);border:0;border-radius:10px;color:#fff;cursor:pointer;font:inherit;font-size:14px;font-weight:600;min-height:44px;padding:12px;transition:background var(--hotel-ai-transition),opacity var(--hotel-ai-transition);width:100%}.hotel-ai-login-auth-submit:hover:not(:disabled){background:var(--hotel-ai-system-blue-hover)}.hotel-ai-login-auth-submit:disabled{cursor:not-allowed;opacity:.45}.hotel-ai-login-card{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:20px;box-shadow:0 20px 60px #00000014;padding:48px 40px 36px;text-align:center;width:min(480px,100%)}.hotel-ai-login-logo{align-items:center;background:var(--hotel-ai-system-blue);border-radius:14px;color:#fff;display:inline-flex;height:56px;justify-content:center;margin-bottom:28px;width:56px}.hotel-ai-login-card h1{color:var(--hotel-ai-text-primary);font-size:36px;font-weight:800;letter-spacing:0;line-height:1.2;margin:0 0 8px}.hotel-ai-login-subtitle{color:var(--hotel-ai-system-blue);font-size:14px;font-weight:600;letter-spacing:1px;margin:0 0 12px;text-transform:uppercase}.hotel-ai-login-footer-text{color:var(--hotel-ai-text-tertiary);font-size:11px;letter-spacing:.3px;margin:24px 0 0}.hotel-ai-login-desc{color:var(--hotel-ai-text-tertiary);font-size:14px;line-height:1.6;margin:0 0 28px}.hotel-ai-login-divider{align-items:center;color:var(--hotel-ai-text-tertiary);display:flex;gap:12px;margin-bottom:20px}.hotel-ai-login-divider:after,.hotel-ai-login-divider:before{background:var(--hotel-ai-separator);content:"";flex:1;height:1px}.hotel-ai-login-divider span{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.hotel-ai-login-alert{align-items:flex-start;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;display:flex;font-size:13px;gap:9px;line-height:1.45;margin-bottom:18px;padding:13px 14px;text-align:left}.hotel-ai-login-alert svg{flex:0 0 auto;margin-top:1px}.hotel-ai-login-error{color:var(--hotel-ai-system-red);font-size:13px;line-height:1.45;margin:14px 0 0;text-align:center}.hotel-ai-login-roles{display:flex;flex-direction:column;gap:12px}.hotel-ai-login-role-card{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--hotel-ai-bg-primary);border:1.5px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);cursor:pointer;display:flex;font:inherit;gap:16px;padding:18px 20px;text-align:left;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}.hotel-ai-login-role-card:hover{background:var(--hotel-ai-bg-hover);border-color:var(--hotel-ai-system-blue);transform:translate(4px)}.hotel-ai-role-icon{align-items:center;background:#1e43800d;border-radius:12px;color:var(--hotel-ai-system-blue);display:flex;flex:0 0 auto;height:48px;justify-content:center;width:48px}.hotel-ai-role-text{flex:1}.hotel-ai-role-text h3{color:var(--hotel-ai-text-primary);font-size:16px;font-weight:700;margin:0 0 2px}.hotel-ai-role-text p{color:var(--hotel-ai-text-tertiary);font-size:12px;line-height:1.4;margin:0}.hotel-ai-role-arrow{color:var(--hotel-ai-text-tertiary);flex:0 0 auto;font-size:22px;transition:color .2s,transform .2s}.hotel-ai-login-role-card:hover .hotel-ai-role-arrow{color:var(--hotel-ai-system-blue);transform:translate(3px)}.hotel-ai-ripple-tier-grid,.hotel-ai-score-grid,.hotel-ai-stat-grid,.hotel-ai-submittal-info-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.hotel-ai-dashboard-section,.hotel-ai-manual-toc,.hotel-ai-manual-viewer,.hotel-ai-moodboard-section,.hotel-ai-panel,.hotel-ai-processing-card,.hotel-ai-score-card,.hotel-ai-stat-card,.hotel-ai-submittal-sheet,.hotel-ai-tier-card,.hotel-ai-upload-zone,.hotel-ai-urgent-section{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);box-shadow:0 1px 3px #1e43800f}.hotel-ai-score-card,.hotel-ai-stat-card,.hotel-ai-tier-card{display:flex;flex-direction:column;gap:4px;min-height:112px;padding:18px}.hotel-ai-score-value,.hotel-ai-stat-num,.hotel-ai-tier-card strong{color:var(--hotel-ai-system-blue);font-size:30px;font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.hotel-ai-score-label,.hotel-ai-stat-label,.hotel-ai-tier-card em,.hotel-ai-tier-card span{color:var(--hotel-ai-text-secondary);font-size:13px;font-style:normal}.stat-red .hotel-ai-stat-num,.tier-certain strong{color:var(--hotel-ai-system-red)}.stat-orange .hotel-ai-stat-num,.tier-probable strong{color:var(--hotel-ai-system-orange)}.stat-green .hotel-ai-stat-num{color:var(--hotel-ai-system-green)}.hotel-ai-dashboard-section,.hotel-ai-urgent-section{margin-bottom:20px;padding:18px}.hotel-ai-trend-chart{display:grid;gap:12px}.hotel-ai-trend-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.hotel-ai-trend-head h2{margin:0}.hotel-ai-trend-range{color:var(--hotel-ai-text-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hotel-ai-trend-empty{border:1px dashed var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);font-size:13px;margin:0;padding:24px;text-align:center}.hotel-ai-trend-svg{background:#ffffffb8;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);height:160px;width:100%}.hotel-ai-trend-line{stroke-linecap:round;stroke-linejoin:round;stroke-width:2;vector-effect:non-scaling-stroke}.hotel-ai-trend-line-urgent{stroke:var(--hotel-ai-system-red)}.hotel-ai-trend-line-pastDue{stroke:var(--hotel-ai-system-orange)}.hotel-ai-trend-line-current{stroke:var(--hotel-ai-system-blue)}.hotel-ai-trend-legend{display:flex;flex-wrap:wrap;gap:16px;list-style:none;margin:0;padding:0}.hotel-ai-trend-legend li{align-items:center;display:inline-flex;font-size:12px;gap:6px}.hotel-ai-trend-swatch{border-radius:2px;height:3px;width:12px}.hotel-ai-trend-swatch-urgent{background:var(--hotel-ai-system-red)}.hotel-ai-trend-swatch-pastDue{background:var(--hotel-ai-system-orange)}.hotel-ai-trend-swatch-current{background:var(--hotel-ai-system-blue)}.hotel-ai-trend-legend-label{color:var(--hotel-ai-text-secondary)}.hotel-ai-trend-legend-value{color:var(--hotel-ai-text-primary)}.hotel-ai-roi-panel{display:grid;gap:12px}.hotel-ai-roi-stat-grid{margin-bottom:0}.hotel-ai-roi-panel .hotel-ai-stat-num{font-size:24px}.hotel-ai-roi-stage-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}.hotel-ai-roi-stage-row{align-items:center;display:grid;font-size:12px;gap:10px;grid-template-columns:170px minmax(0,1fr) 52px 76px}.hotel-ai-roi-stage-label{color:var(--hotel-ai-text-secondary)}.hotel-ai-roi-stage-track{background:var(--hotel-ai-separator);border-radius:3px;display:block;height:6px;overflow:hidden}.hotel-ai-roi-stage-fill{background:var(--hotel-ai-system-blue);border-radius:3px;display:block;height:100%}.hotel-ai-roi-stage-duration{color:var(--hotel-ai-text-primary);font-variant-numeric:tabular-nums;font-weight:700;text-align:right}.hotel-ai-roi-stage-duration.is-empty{color:var(--hotel-ai-text-muted);font-weight:400}.hotel-ai-roi-stage-count{color:var(--hotel-ai-text-muted);text-align:right}@media(max-width:700px){.hotel-ai-roi-stage-row{grid-template-columns:minmax(0,1fr) 52px 76px}.hotel-ai-roi-stage-label{grid-column:1/-1}}.hotel-ai-manual-toc-head,.hotel-ai-panel-header,.hotel-ai-urgent-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.hotel-ai-urgent-list{display:grid;gap:8px}.hotel-ai-urgent-row{align-items:center;background:#9b2c2c0d;border:1px solid rgba(155,44,44,.16);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);display:grid;font-size:13px;gap:10px;grid-template-columns:auto 1fr 1fr auto;padding:10px 12px}.hotel-ai-urgent-dot{background:var(--hotel-ai-system-red);border-radius:50%;height:8px;width:8px}.hotel-ai-dashboard-section h2,.hotel-ai-manual-toc-head h2,.hotel-ai-panel-header h2,.hotel-ai-submittal-info-grid h2,.hotel-ai-submittal-section h2{color:var(--hotel-ai-text-primary);font-size:16px;margin:0}.hotel-ai-project-list{display:grid;gap:8px}.hotel-ai-project-row{align-items:center;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);color:inherit;display:grid;gap:12px;grid-template-columns:minmax(240px,1.4fr) 120px 150px 1fr 60px;padding:12px;text-decoration:none}.hotel-ai-project-row div:first-child{display:flex;flex-direction:column;gap:2px}.hotel-ai-project-row span{color:var(--hotel-ai-text-secondary);font-size:13px}.hotel-ai-patent-badge,.hotel-ai-phase-badge,.hotel-ai-pill,.hotel-ai-scope-badge{align-items:center;border:1px solid var(--hotel-ai-separator-opaque);border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 8px;width:-moz-max-content;width:max-content}.hotel-ai-progress-track{background:var(--hotel-ai-bg-tertiary);border-radius:999px;height:8px;overflow:hidden}.hotel-ai-progress-fill{border-radius:inherit;display:block;height:100%}.hotel-ai-pipeline{display:grid;gap:10px;grid-template-columns:repeat(5,1fr)}.hotel-ai-pipeline-stage{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);display:flex;flex-direction:column;gap:4px;padding:14px;text-align:center}.hotel-ai-dashboard-container{padding:24px 0 96px;width:min(1200px,calc(100vw - 48px))}.hotel-ai-dashboard-header{align-items:center;margin-bottom:24px}.hotel-ai-dashboard-header h1{font-size:22px;font-weight:700;line-height:1.14}.hotel-ai-dashboard-header p{color:var(--hotel-ai-text-tertiary);font-size:13px;margin-top:2px}.hotel-ai-dashboard-header .hotel-ai-screen-actions{gap:8px}.hotel-ai-dashboard-header .hotel-ai-btn{font-size:12px;min-height:28px;padding:6px 10px}.hotel-ai-dashboard-header .hotel-ai-btn svg{flex:0 0 auto}.hotel-ai-dashboard-stat-grid{gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:20px}.hotel-ai-dashboard-stat-grid .hotel-ai-stat-card{align-items:center;background:var(--hotel-ai-bg-elevated);border-color:var(--hotel-ai-separator);gap:3px;justify-content:center;min-height:78px;padding:16px;text-align:center}.hotel-ai-dashboard-stat-grid .hotel-ai-stat-num{color:var(--hotel-ai-text-primary);font-family:Libre Bodoni,Georgia,serif;font-size:28px;font-weight:800}.hotel-ai-dashboard-stat-grid .hotel-ai-stat-label{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hotel-ai-dashboard-stat-grid .stat-orange .hotel-ai-stat-num{color:var(--hotel-ai-system-orange)}.hotel-ai-dashboard-stat-grid .stat-red .hotel-ai-stat-num{color:var(--hotel-ai-system-red)}.hotel-ai-dashboard-stat-grid .stat-green .hotel-ai-stat-num{color:var(--hotel-ai-system-green)}.hotel-ai-brand-alert{align-items:center;background:#9b2c2c0a;border:1px solid rgba(155,44,44,.4);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-system-red);display:grid;font-size:12px;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;margin:-4px 0 20px;min-height:44px;padding:10px 14px}.hotel-ai-brand-alert strong{font-size:12px;font-weight:700;overflow-wrap:anywhere}.hotel-ai-dashboard-projects{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.hotel-ai-dashboard-project-card{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);color:inherit;display:flex;flex-direction:column;gap:12px;min-height:160px;padding:20px;text-decoration:none;transition:border-color var(--hotel-ai-transition),transform var(--hotel-ai-transition),background var(--hotel-ai-transition)}.hotel-ai-dashboard-project-card:hover{background:#fff;border-color:var(--hotel-ai-system-blue);transform:translateY(-1px)}.hotel-ai-dashboard-project-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.hotel-ai-dashboard-project-head>span:first-child{display:grid;gap:2px;min-width:0}.hotel-ai-dashboard-project-head strong{color:var(--hotel-ai-text-primary);font-size:16px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.hotel-ai-dashboard-project-head small{color:var(--hotel-ai-text-tertiary);font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-dashboard-project-card .hotel-ai-phase-badge{flex:0 0 auto;font-size:11px;max-width:44%;overflow-wrap:anywhere;padding:2px 10px;white-space:normal}.hotel-ai-dashboard-card-progress{align-items:center;color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:8px;grid-template-columns:minmax(92px,auto) minmax(64px,1fr) 38px}.hotel-ai-dashboard-card-progress>strong{color:var(--hotel-ai-text-secondary);font-size:12px;text-align:right}.hotel-ai-dashboard-project-meta{display:grid;gap:6px;grid-template-columns:1fr}.hotel-ai-dashboard-project-meta>span{color:var(--hotel-ai-text-secondary);display:flex;font-size:12px;gap:4px;min-width:0}.hotel-ai-dashboard-project-meta small{color:var(--hotel-ai-text-tertiary);flex:0 0 auto;font-size:12px;font-weight:700}.hotel-ai-dashboard-project-meta strong{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-dashboard-submittals{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;min-height:32px}.hotel-ai-sub-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:11px;font-weight:600;min-height:18px;padding:2px 8px}.hotel-ai-sub-badge.sub-current{background:#1e43801a;color:var(--hotel-ai-system-blue)}.hotel-ai-sub-badge.sub-pending{background:#7d4b001a;color:var(--hotel-ai-system-orange)}.hotel-ai-sub-badge.sub-pastdue{background:#9b2c2c1a;color:var(--hotel-ai-system-red)}.hotel-ai-brand-pipeline,.hotel-ai-brand-portfolio,.hotel-ai-brand-risk-section{background:transparent;border:0;box-shadow:none;overflow:hidden;padding:0}.hotel-ai-brand-pipeline h2,.hotel-ai-brand-portfolio h2,.hotel-ai-brand-risk-section h2{border-bottom:1px solid var(--hotel-ai-separator-opaque);color:var(--hotel-ai-system-blue);font-family:Libre Bodoni,Georgia,serif;font-size:16px;font-weight:700;padding-bottom:10px}.hotel-ai-brand-project-list{background:var(--hotel-ai-bg-elevated);border-color:var(--hotel-ai-separator);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);overflow:hidden}.hotel-ai-brand-project-row{align-items:center;border-bottom:1px solid var(--hotel-ai-separator);color:inherit;display:grid;gap:16px;grid-template-columns:minmax(230px,1.55fr) minmax(92px,.55fr) minmax(118px,.62fr) minmax(210px,.86fr) minmax(132px,.62fr);min-height:58px;padding:12px 16px;text-decoration:none}.hotel-ai-brand-project-row:last-child{border-bottom:0}.hotel-ai-brand-project-row:hover{background:#ffffff94}.hotel-ai-brand-project-main{display:grid;gap:2px;min-width:0}.hotel-ai-brand-project-main strong{color:var(--hotel-ai-text-primary);font-size:13px;font-weight:750;line-height:1.25;overflow-wrap:anywhere}.hotel-ai-brand-project-main small,.hotel-ai-brand-project-owner{color:var(--hotel-ai-text-tertiary);font-size:11px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-brand-project-row .hotel-ai-phase-badge{font-size:10px;padding:2px 8px}.hotel-ai-brand-progress{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(84px,1fr) 42px}.hotel-ai-brand-progress strong{color:var(--hotel-ai-text-secondary);font-size:11px;font-weight:700;text-align:right}.hotel-ai-brand-project-row .hotel-ai-dashboard-submittals{min-height:18px}.hotel-ai-brand-project-row .hotel-ai-sub-badge{font-size:10px;min-height:16px;padding:1px 7px}.hotel-ai-dashboard-risk-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,320px));padding-top:14px}.hotel-ai-dashboard-risk-card{background:#9b2c2c08;border:1px solid rgba(155,44,44,.5);border-radius:var(--hotel-ai-radius);color:inherit;display:grid;gap:8px;padding:14px 16px;text-decoration:none}.hotel-ai-dashboard-risk-card strong{color:var(--hotel-ai-text-primary);font-size:13px;overflow-wrap:anywhere}.hotel-ai-dashboard-risk-card span{align-items:center;color:var(--hotel-ai-system-red);display:flex;font-size:11px;font-weight:700;gap:6px}.hotel-ai-dashboard-risk-card small{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-dashboard-pipeline-flow{display:grid;gap:20px;grid-template-columns:repeat(5,minmax(0,1fr));padding:14px 0 0}.hotel-ai-dashboard-pipeline-card{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);border-top:3px solid var(--hotel-ai-text-tertiary);display:grid;gap:6px;justify-items:center;min-height:82px;padding:16px 12px 14px;position:relative;text-align:center}.hotel-ai-dashboard-pipeline-card:not(:last-child):after{color:var(--hotel-ai-text-tertiary);content:">";font-size:18px;line-height:1;position:absolute;right:-14px;top:50%;transform:translateY(-50%)}.hotel-ai-dashboard-pipeline-card strong{color:var(--hotel-ai-text-primary);font-family:Libre Bodoni,Georgia,serif;font-size:28px;line-height:1}.hotel-ai-dashboard-pipeline-card span{color:var(--hotel-ai-text-tertiary);font-size:11px}.hotel-ai-dashboard-pipeline-card.is-blue{border-top-color:var(--hotel-ai-system-blue)}.hotel-ai-dashboard-pipeline-card.is-orange{border-top-color:var(--hotel-ai-system-orange)}.hotel-ai-dashboard-pipeline-card.is-green{border-top-color:var(--hotel-ai-system-green)}.hotel-ai-dashboard-portfolio .hotel-ai-project-row{background:var(--hotel-ai-bg-elevated);border-color:var(--hotel-ai-separator)}.hotel-ai-upload-zone{border:2px dashed var(--hotel-ai-separator-opaque);padding:54px;text-align:center;width:min(620px,100%)}.hotel-ai-upload-zone.is-dragging{background:var(--hotel-ai-bg-elevated);border-color:var(--hotel-ai-system-blue)}.hotel-ai-upload-icon{color:var(--hotel-ai-text-tertiary)}.hotel-ai-upload-zone h1{font-size:30px;margin-top:14px}.hotel-ai-upload-zone h2{color:var(--hotel-ai-text-primary);font-size:18px;margin:4px 0 8px}.hotel-ai-upload-zone p{color:var(--hotel-ai-text-secondary)}.hotel-ai-upload-hint{color:var(--hotel-ai-text-tertiary);font-size:13px}.hotel-ai-upload-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.hotel-ai-upload-selected{font-weight:700;margin:16px 0 0}.hotel-ai-spec-library{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);box-shadow:var(--hotel-ai-shadow-card);padding:18px;width:min(900px,100%)}.hotel-ai-spec-library-grid{display:grid;gap:14px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);margin-top:14px}.hotel-ai-spec-library-grid h3{color:var(--hotel-ai-text-secondary);font-size:13px;margin:0 0 8px;text-transform:uppercase}.hotel-ai-spec-source-card{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);margin-bottom:8px;padding:12px}.hotel-ai-spec-source-card label{align-items:start;cursor:pointer;display:grid;gap:10px;grid-template-columns:auto 1fr;min-width:0}.hotel-ai-spec-source-card label>span{min-width:0}.hotel-ai-spec-source-card input{margin-top:3px}.hotel-ai-spec-source-card span,.hotel-ai-spec-source-card strong{display:block;overflow-wrap:anywhere}.hotel-ai-spec-source-card span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-pip-processing-panel{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);box-shadow:var(--hotel-ai-shadow-card);padding:18px;width:min(900px,100%)}.hotel-ai-pip-processing-grid{display:grid;gap:10px;margin-top:14px}.hotel-ai-pip-processing-row{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.hotel-ai-pip-processing-row span,.hotel-ai-pip-processing-row strong{display:block;overflow-wrap:anywhere}.hotel-ai-pip-job-list span,.hotel-ai-pip-processing-row span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-pip-processing-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-pip-processing-error{color:var(--hotel-ai-system-red);font-size:12px;font-weight:700;margin:8px 0 0}.hotel-ai-status-pill{align-items:center;border:1px solid var(--hotel-ai-separator);border-radius:999px;color:var(--hotel-ai-text-secondary);display:inline-flex;font-size:12px;font-style:normal;font-weight:800;line-height:1;min-height:26px;padding:4px 9px;text-transform:capitalize;white-space:nowrap;width:-moz-fit-content;width:fit-content}.hotel-ai-status-pill.is-complete{background:color-mix(in srgb,var(--hotel-ai-system-green) 12%,#fff);border-color:color-mix(in srgb,var(--hotel-ai-system-green) 38%,#fff);color:var(--hotel-ai-system-green)}.hotel-ai-status-pill.is-failed{background:color-mix(in srgb,var(--hotel-ai-system-red) 10%,#fff);border-color:color-mix(in srgb,var(--hotel-ai-system-red) 34%,#fff);color:var(--hotel-ai-system-red)}.hotel-ai-status-pill.is-processing{background:color-mix(in srgb,var(--hotel-ai-system-blue) 10%,#fff);border-color:color-mix(in srgb,var(--hotel-ai-system-blue) 36%,#fff);color:var(--hotel-ai-system-blue)}.hotel-ai-status-pill.is-pending{background:color-mix(in srgb,var(--hotel-ai-system-orange) 10%,#fff);border-color:color-mix(in srgb,var(--hotel-ai-system-orange) 38%,#fff);color:var(--hotel-ai-system-orange)}.hotel-ai-pip-job-list{border-top:1px solid var(--hotel-ai-separator);margin-top:14px;padding-top:12px}.hotel-ai-pip-job-list summary{color:var(--hotel-ai-text-primary);cursor:pointer;font-size:13px;font-weight:800}.hotel-ai-pip-job-list ol{display:grid;gap:8px;list-style:none;margin:10px 0 0;padding:0}.hotel-ai-pip-job-list li{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;padding:8px 0}.hotel-ai-spec-detail-library{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);box-shadow:var(--hotel-ai-shadow-card);padding:18px;width:min(900px,100%)}.hotel-ai-spec-detail-library .hotel-ai-panel-header p{color:var(--hotel-ai-text-secondary);font-size:13px;margin:4px 0 0;max-width:520px}.hotel-ai-spec-detail-grid{display:grid;gap:16px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);margin-top:14px}.hotel-ai-spec-detail-dropzone{background:var(--hotel-ai-bg-elevated);border:1px dashed rgba(30,67,128,.34);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);cursor:pointer;display:grid;gap:8px;min-height:220px;padding:18px;place-items:center;text-align:center}.hotel-ai-spec-detail-dropzone.is-dragging{background:#1e43800f;border-color:var(--hotel-ai-system-blue)}.hotel-ai-spec-detail-dropzone[aria-disabled=true]{cursor:not-allowed;opacity:.52}.hotel-ai-spec-detail-dropzone strong{color:var(--hotel-ai-text-primary)}.hotel-ai-spec-detail-controls label span,.hotel-ai-spec-detail-dropzone span,.hotel-ai-spec-detail-queue small,.hotel-ai-spec-detail-queue span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-spec-detail-controls{align-content:start;display:grid;gap:12px}.hotel-ai-spec-detail-controls label{display:grid;gap:6px}.hotel-ai-spec-detail-controls select{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-primary);min-height:40px;min-width:0;padding:0 10px;width:100%}.hotel-ai-spec-detail-error{align-items:center;background:#9b2c2c14;border:1px solid rgba(155,44,44,.18);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-system-red);display:flex;font-size:13px;gap:8px;padding:10px 12px}.hotel-ai-spec-detail-queue-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.hotel-ai-spec-detail-queue{display:grid;gap:8px;list-style:none;margin:0;padding:0}.hotel-ai-spec-detail-queue li{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto auto;padding:12px}.hotel-ai-spec-detail-queue small,.hotel-ai-spec-detail-queue span,.hotel-ai-spec-detail-queue strong{display:block}.hotel-ai-spec-detail-queue em{border-radius:999px;font-size:11px;font-style:normal;font-weight:700;padding:4px 7px;text-transform:capitalize}.hotel-ai-spec-detail-queue em.is-completed{background:#15613b1a;color:var(--hotel-ai-system-green)}.hotel-ai-spec-detail-queue em.is-processing{background:#1e43801a;color:var(--hotel-ai-system-blue)}.hotel-ai-spec-detail-queue em.is-failed{background:#9b2c2c1a;color:var(--hotel-ai-system-red)}.hotel-ai-spec-detail-queue em.is-pending{background:#4354661a;color:var(--hotel-ai-text-tertiary)}.hotel-ai-spec-detail-progress{background:var(--hotel-ai-bg-tertiary);border-radius:999px;height:5px;margin-top:8px;overflow:hidden}.hotel-ai-spec-detail-progress span{background:var(--hotel-ai-system-blue);border-radius:inherit;display:block;height:100%}.hotel-ai-spin{animation:hotel-ai-spin .9s linear infinite}@keyframes hotel-ai-spin{to{transform:rotate(1turn)}}.hotel-ai-processing-card{padding:38px;text-align:center;width:min(560px,100%)}.hotel-ai-processing-spinner{border:4px solid var(--hotel-ai-bg-tertiary);border-radius:50%;border-top-color:var(--hotel-ai-system-blue);height:54px;margin:0 auto 18px;width:54px}.hotel-ai-processing-steps{display:grid;gap:10px;margin:24px 0;text-align:left}.hotel-ai-processing-step{align-items:center;color:var(--hotel-ai-text-secondary);display:flex;font-size:14px;gap:10px}.hotel-ai-step-indicator{background:var(--hotel-ai-bg-tertiary);border-radius:50%;height:10px;width:10px}.hotel-ai-processing-step.active .hotel-ai-step-indicator,.hotel-ai-processing-step.done .hotel-ai-step-indicator{background:var(--hotel-ai-system-blue)}.hotel-ai-processing-bar,.hotel-ai-submittal-progress div{background:var(--hotel-ai-bg-tertiary);border-radius:999px;height:8px;margin-bottom:18px;overflow:hidden}.hotel-ai-processing-fill,.hotel-ai-submittal-progress div span{background:var(--hotel-ai-system-blue);display:block;height:100%}.hotel-ai-processing-lifecycle{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin:24px 0}.hotel-ai-processing-failed{background:color-mix(in srgb,var(--hotel-ai-system-red) 9%,var(--hotel-ai-surface));border:1px solid color-mix(in srgb,var(--hotel-ai-system-red) 36%,transparent);border-radius:12px;color:var(--hotel-ai-system-red);font-size:14px;margin:24px 0;padding:12px 16px;text-align:center}.hotel-ai-score-card.stats{gap:8px}.hotel-ai-score-card.overall{align-items:center;justify-content:center;text-align:center}.hotel-ai-score-ring{--score:0%;background:radial-gradient(circle at center,#fff 58%,transparent 59%),conic-gradient(var(--hotel-ai-system-blue) var(--score),var(--hotel-ai-bg-tertiary) 0);border-radius:50%;display:grid;height:74px;margin-bottom:4px;place-items:center;width:74px}.hotel-ai-score-ring strong{color:var(--hotel-ai-system-blue);font-size:12px;font-weight:800}.hotel-ai-score-card.stats div{display:flex;gap:12px;justify-content:space-between}.hotel-ai-split-panel{display:grid;gap:0;grid-template-columns:minmax(280px,.9fr) 22px minmax(420px,1.3fr);min-height:520px}.hotel-ai-panel{min-width:0;padding:18px}.hotel-ai-matches-panel{container-type:inline-size}.hotel-ai-panel-connector{background:linear-gradient(180deg,transparent,var(--hotel-ai-system-blue),transparent);margin:56px 0;opacity:.25}.hotel-ai-pip-group{margin-bottom:14px}.hotel-ai-pip-group h3{color:var(--hotel-ai-text-secondary);display:flex;font-size:13px;justify-content:space-between;margin:0 0 8px;text-transform:uppercase}.hotel-ai-gap-card,.hotel-ai-pip-item,.hotel-ai-ripple-cost-card,.hotel-ai-ripple-pip-item,.hotel-ai-spec-card{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-left:4px solid var(--hotel-ai-system-blue);border-radius:var(--hotel-ai-radius);margin-bottom:8px;padding:12px}.hotel-ai-pip-item,.hotel-ai-ripple-pip-item{color:inherit;cursor:pointer;font:inherit;text-align:left;width:100%}.hotel-ai-pip-item.active,.hotel-ai-ripple-pip-item.active{background:#1e43801a;border-color:var(--hotel-ai-system-blue)}.hotel-ai-pip-item.gap{border-left-color:var(--hotel-ai-system-red)}.hotel-ai-pip-item.partial{border-left-color:var(--hotel-ai-system-orange)}.hotel-ai-pip-item strong{color:var(--hotel-ai-system-blue);margin-right:8px}.hotel-ai-pip-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.hotel-ai-gap-card p,.hotel-ai-pip-meta span,.hotel-ai-spec-card p{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-match-summary,.hotel-ai-ripple-exposure{align-items:center;background:#1e43800d;border-radius:var(--hotel-ai-radius);display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;padding:12px}.hotel-ai-spec-card{align-items:stretch;background:#fff;border-left:1px solid var(--hotel-ai-separator);display:grid;gap:16px;grid-template-columns:minmax(220px,.58fr) minmax(480px,1.42fr);padding:18px 20px}.hotel-ai-spec-card-main{align-self:center;min-width:0}.hotel-ai-spec-card h3{color:var(--hotel-ai-text-primary);font-size:20px;line-height:1.25;margin:22px 0 6px}.hotel-ai-spec-number{color:var(--hotel-ai-text-secondary);font-size:14px;letter-spacing:0}.hotel-ai-spec-summary{font-size:16px;margin:0}.hotel-ai-spec-reasoning{font-size:14px;font-style:italic;margin:8px 0 0}.hotel-ai-spec-review-actions{border-top:1px solid var(--hotel-ai-separator);margin-top:18px;padding-top:16px}.hotel-ai-text-action{align-items:center;background:transparent;border:0;color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:8px;min-height:32px;padding:0}.hotel-ai-text-action:disabled{cursor:not-allowed;opacity:.48}.hotel-ai-inline-check,.hotel-ai-review-select{align-items:center;color:var(--hotel-ai-text-secondary);display:inline-flex;font-size:12px;font-weight:700;gap:7px}.hotel-ai-inline-check input{accent-color:var(--hotel-ai-system-blue);height:14px;width:14px}.hotel-ai-review-select select{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:6px;color:var(--hotel-ai-text-primary);font:inherit;font-size:12px;max-width:180px;min-height:30px;padding:4px 8px}.hotel-ai-spec-sheet-panel{background:#e6ebf3;border:1px solid #ccd5e5;border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr);min-width:0;padding:16px}.hotel-ai-spec-sheet-overview{align-items:start;display:grid;gap:14px;grid-template-columns:132px minmax(220px,1fr) minmax(72px,auto);min-width:0}.hotel-ai-spec-preview{display:grid;gap:12px}.hotel-ai-spec-preview img,.hotel-ai-spec-preview>span{background:#d3dae5;border:1px solid #c5cfde;border-radius:8px;color:var(--hotel-ai-text-secondary);font-size:13px;font-weight:700;height:120px;overflow:hidden;width:120px}.hotel-ai-spec-preview img{display:block;-o-object-fit:cover;object-fit:cover}.hotel-ai-spec-preview>span{display:grid;place-items:center}.hotel-ai-spec-sheet-button{background:transparent;border:0;color:var(--hotel-ai-system-blue);cursor:pointer;font:inherit;font-size:15px;font-weight:800;padding:0;text-align:left}.hotel-ai-spec-sheet-button:disabled{cursor:progress;opacity:.64}.hotel-ai-spec-sheet-meta{display:grid;gap:9px;margin:0;min-width:0}.hotel-ai-spec-sheet-meta div{align-items:start;display:grid;gap:8px;grid-template-columns:minmax(86px,96px) minmax(0,1fr)}.hotel-ai-spec-sheet-meta dt{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.hotel-ai-spec-sheet-meta dd{color:var(--hotel-ai-text-secondary);font-size:14px;line-height:1.35;margin:0;min-width:0;overflow-wrap:break-word;word-break:normal}.hotel-ai-spec-confidence{color:var(--hotel-ai-system-blue);display:grid;gap:6px;justify-items:center;min-width:72px}.hotel-ai-spec-confidence strong{font-size:28px;line-height:.95}.hotel-ai-spec-confidence span{color:var(--hotel-ai-text-secondary);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hotel-ai-spec-confidence-track{background:#1e438024;border-radius:999px;height:70px;overflow:hidden;position:relative;width:8px}.hotel-ai-spec-confidence-track span{background:var(--hotel-ai-system-blue);border-radius:inherit;bottom:0;left:0;position:absolute;right:0}.hotel-ai-spec-description{border-top:1px solid rgba(30,67,128,.12);display:grid;gap:6px;min-width:0;padding-top:12px}.hotel-ai-spec-description strong{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.hotel-ai-spec-description p{color:var(--hotel-ai-text-secondary);font-size:14px;line-height:1.5;margin:0;min-width:0;overflow-wrap:break-word;word-break:normal}.hotel-ai-results-container{padding:20px 20px 96px;width:min(1520px,100%)}.hotel-ai-results-container .hotel-ai-screen-header{align-items:flex-end;margin-bottom:14px}.hotel-ai-results-container .hotel-ai-screen-header h1{font-size:22px;line-height:1.2}.hotel-ai-results-container .hotel-ai-screen-header p{font-size:13px;margin-top:2px}.hotel-ai-results-container .hotel-ai-score-grid{gap:12px;grid-template-columns:160px minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr);margin-bottom:16px}.hotel-ai-results-container .hotel-ai-score-card{align-items:center;justify-content:center;min-height:118px;padding:18px;text-align:center}.hotel-ai-results-container .hotel-ai-score-card.stats{align-items:stretch;gap:6px;text-align:left}.hotel-ai-results-container .hotel-ai-score-card.stats div{align-items:center;font-size:13px}.hotel-ai-results-container .hotel-ai-score-card.stats strong{color:var(--hotel-ai-text-primary);font-variant-numeric:tabular-nums;font-weight:700}.hotel-ai-results-container .hotel-ai-score-card.stats div:nth-child(3) strong{color:var(--hotel-ai-system-red)}.hotel-ai-results-container .hotel-ai-score-ring{height:88px;margin-bottom:6px;width:88px}.hotel-ai-results-container .hotel-ai-score-ring strong{font-size:14px}.hotel-ai-results-container .hotel-ai-score-value{color:var(--hotel-ai-text-primary);font-size:32px;letter-spacing:0}.hotel-ai-score-detail{color:var(--hotel-ai-text-tertiary);font-size:11px;margin-top:2px}.hotel-ai-results-container .hotel-ai-split-panel{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);grid-template-columns:320px 1px minmax(0,1fr);min-height:calc(100vh - 300px);overflow:hidden}.hotel-ai-results-container .hotel-ai-panel{background:transparent;border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;overflow:hidden;padding:0}.hotel-ai-results-container .hotel-ai-panel-connector{background:var(--hotel-ai-separator);margin:0;opacity:1;width:1px}.hotel-ai-results-container .hotel-ai-panel-header{border-bottom:1px solid var(--hotel-ai-separator);flex:0 0 auto;margin:0;padding:12px 16px}.hotel-ai-results-container .hotel-ai-panel-header h2{color:var(--hotel-ai-text-secondary);font-size:13px;font-weight:700}.hotel-ai-pip-list,.hotel-ai-spec-list{flex:1;min-height:0;overflow-y:auto}.hotel-ai-pip-list{padding:4px 6px}.hotel-ai-spec-list{padding:8px 12px}.hotel-ai-results-container .hotel-ai-pip-group{margin-bottom:12px}.hotel-ai-results-container .hotel-ai-pip-group h3{align-items:center;color:var(--hotel-ai-text-tertiary);display:flex;font-size:11px;font-weight:700;gap:6px;justify-content:space-between;letter-spacing:.05em;margin:0;padding:8px 10px;text-transform:uppercase}.hotel-ai-results-container .hotel-ai-pip-group h3>span:first-child{align-items:center;display:inline-flex;gap:6px;min-width:0}.hotel-ai-results-container .hotel-ai-pip-item{background:#fff;border:1px solid var(--hotel-ai-separator);border-left:3px solid var(--hotel-ai-separator-opaque,var(--hotel-ai-separator));border-radius:var(--hotel-ai-radius-sm,8px);margin:0 0 6px;padding:9px 11px 9px 12px;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease;width:100%}.hotel-ai-results-container .hotel-ai-pip-item.matched{background:#15613b0d;border-left-color:var(--hotel-ai-system-green)}.hotel-ai-results-container .hotel-ai-pip-item.partial{background:#c2410c0d;border-left-color:var(--hotel-ai-system-orange)}.hotel-ai-results-container .hotel-ai-pip-item.gap,.hotel-ai-results-container .hotel-ai-pip-item.reviewed-gap{background:#9b2c2c0d;border-left-color:var(--hotel-ai-system-red)}.hotel-ai-results-container .hotel-ai-pip-item:hover{background:#1e43800f;border-color:var(--hotel-ai-separator-opaque,var(--hotel-ai-separator))}.hotel-ai-results-container .hotel-ai-pip-item.active{background:#1e43801a;box-shadow:inset 0 0 0 1px var(--hotel-ai-system-blue)}.hotel-ai-results-container .hotel-ai-pip-item>div:first-child{align-items:baseline;display:flex;gap:7px}.hotel-ai-results-container .hotel-ai-pip-item strong{color:var(--hotel-ai-text-secondary);flex:0 0 24px;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700;margin-right:0;min-width:24px}.hotel-ai-results-container .hotel-ai-pip-item>div:first-child span{color:var(--hotel-ai-text-primary);font-size:13px;font-weight:600;line-height:1.3}.hotel-ai-results-container .hotel-ai-pip-meta{gap:6px;margin-top:4px;padding-left:31px}.hotel-ai-results-container .hotel-ai-pip-meta span{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.hotel-ai-results-container .hotel-ai-match-summary{align-items:center;background:var(--hotel-ai-bg-secondary);border-radius:var(--hotel-ai-radius-sm,8px);display:flex;gap:12px;justify-content:space-between;margin:8px 12px 10px;padding:10px 12px}.hotel-ai-results-container .hotel-ai-match-summary>div{display:grid;gap:2px}.hotel-ai-results-container .hotel-ai-match-summary span{color:var(--hotel-ai-text-secondary);font-size:13px}.hotel-ai-results-container .hotel-ai-match-summary strong{color:var(--hotel-ai-text-primary);font-size:18px;font-variant-numeric:tabular-nums;font-weight:800}.hotel-ai-comments-toggle{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm,8px);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:6px;min-height:32px;padding:0 10px}.hotel-ai-comments-toggle:hover{border-color:color-mix(in srgb,var(--hotel-ai-system-blue) 28%,#fff);color:var(--hotel-ai-text-primary)}.hotel-ai-comments-toggle[aria-expanded=true]{background:color-mix(in srgb,var(--hotel-ai-system-blue) 8%,#fff);color:var(--hotel-ai-system-blue)}.hotel-ai-comments-targets{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-comments-panel{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm,8px);display:grid;gap:12px;margin:0 12px 12px;padding:12px}.hotel-ai-comments-header{align-items:center;border-bottom:1px solid var(--hotel-ai-separator);display:flex;gap:12px;justify-content:space-between;padding-bottom:10px}.hotel-ai-comments-header div{display:grid;gap:3px;min-width:0}.hotel-ai-comments-header span{align-items:center;color:var(--hotel-ai-text-tertiary);display:inline-flex;font-size:12px;font-weight:700;gap:6px}.hotel-ai-comments-header strong{color:var(--hotel-ai-text-primary);font-size:13px;overflow-wrap:anywhere}.hotel-ai-comments-list{display:grid;gap:10px;max-height:420px;overflow-y:auto}.hotel-ai-comment-replies,.hotel-ai-comment-thread{display:grid;gap:8px}.hotel-ai-comment-replies{margin-left:38px}.hotel-ai-comment-body{align-items:start;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm,8px);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);padding:10px}.hotel-ai-comment-reply{background:#fff}.hotel-ai-comment-avatar{align-items:center;background:color-mix(in srgb,var(--hotel-ai-system-blue) 12%,#fff);border-radius:999px;color:var(--hotel-ai-system-blue);display:inline-flex;font-size:10px;font-weight:800;height:28px;justify-content:center;width:28px}.hotel-ai-comment-meta{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.hotel-ai-comment-meta strong{color:var(--hotel-ai-text-primary);font-size:12px}.hotel-ai-comment-meta span,.hotel-ai-comments-empty{color:var(--hotel-ai-text-tertiary);font-size:12px}.hotel-ai-comment-body p{color:var(--hotel-ai-text-secondary);font-size:13px;line-height:1.45;margin:5px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.hotel-ai-comment-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.hotel-ai-comment-actions button{align-items:center;background:transparent;border:0;color:var(--hotel-ai-text-tertiary);cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:4px;min-height:24px;padding:0}.hotel-ai-comment-actions button:hover{color:var(--hotel-ai-text-primary)}.hotel-ai-comment-actions button:disabled{cursor:default;opacity:.5}.hotel-ai-comment-edit-form,.hotel-ai-comment-form{display:grid;gap:8px}.hotel-ai-comment-edit-form label,.hotel-ai-comment-form label{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:700}.hotel-ai-comment-edit-form textarea,.hotel-ai-comment-form textarea{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm,8px);color:var(--hotel-ai-text-primary);font:inherit;font-size:14px;line-height:1.4;min-height:86px;padding:10px 12px;resize:vertical;width:100%}.hotel-ai-comment-input-shell{display:grid;position:relative}.hotel-ai-comment-mention-menu{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm,8px);bottom:calc(100% + 6px);box-shadow:var(--hotel-ai-shadow-lg);left:0;max-height:230px;overflow-y:auto;position:absolute;right:0;z-index:40}.hotel-ai-comment-mention-option{align-items:center;background:transparent;border:0;color:var(--hotel-ai-text-secondary);cursor:pointer;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr);padding:9px 10px;text-align:left;width:100%}.hotel-ai-comment-mention-option.is-active,.hotel-ai-comment-mention-option:hover{background:color-mix(in srgb,var(--hotel-ai-system-blue) 8%,#fff);color:var(--hotel-ai-text-primary)}.hotel-ai-comment-mention-option>span:last-child{display:grid;gap:2px;min-width:0}.hotel-ai-comment-mention-option strong{align-items:center;color:inherit;display:inline-flex;font-size:12px;font-weight:800;gap:4px;min-width:0;overflow-wrap:anywhere}.hotel-ai-comment-mention-option small{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:700}.hotel-ai-comment-mentions{display:flex;flex-wrap:wrap;gap:6px}.hotel-ai-comment-mentions span{align-items:center;background:color-mix(in srgb,var(--hotel-ai-system-blue) 7%,#fff);border:1px solid color-mix(in srgb,var(--hotel-ai-system-blue) 24%,#fff);border-radius:999px;color:var(--hotel-ai-system-blue);display:inline-flex;font-size:12px;font-weight:800;min-height:24px;padding:0 8px}.hotel-ai-comment-edit-form{border-top:1px solid var(--hotel-ai-separator);padding-top:10px}.hotel-ai-comment-edit-form>div{display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-comment-context{align-items:center;background:color-mix(in srgb,var(--hotel-ai-system-blue) 7%,#fff);border-radius:var(--hotel-ai-radius-sm,8px);color:var(--hotel-ai-text-secondary);display:flex;font-size:12px;font-weight:700;gap:10px;justify-content:space-between;min-height:34px;padding:0 10px}.hotel-ai-comment-context button{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:inline-flex;height:26px;justify-content:center;width:26px}.hotel-ai-comments-error{color:var(--hotel-ai-system-red);font-size:12px;font-weight:700;margin:0}.hotel-ai-results-container .hotel-ai-spec-card{align-items:stretch;background:#fff;border-left:1px solid var(--hotel-ai-separator);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm,8px);gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);margin-bottom:6px;padding:16px 20px}.hotel-ai-results-container .hotel-ai-spec-card:hover{background:var(--hotel-ai-bg-tertiary)}.hotel-ai-results-container .hotel-ai-spec-card-main{align-self:stretch;display:flex;flex-direction:column;gap:10px;justify-content:center}.hotel-ai-results-container .hotel-ai-spec-card h3{color:var(--hotel-ai-text-primary);font-size:15px;line-height:1.3;margin:0}.hotel-ai-results-container .hotel-ai-spec-number{color:var(--hotel-ai-text-secondary);font-family:SF Mono,Menlo,Monaco,Courier New,monospace;font-size:11px;font-weight:700}.hotel-ai-results-container .hotel-ai-spec-summary{color:var(--hotel-ai-text-tertiary);font-size:13px;margin:-4px 0 0}.hotel-ai-results-container .hotel-ai-spec-reasoning{color:var(--hotel-ai-text-tertiary);font-size:12px;line-height:1.45;margin:0}.hotel-ai-results-container .hotel-ai-shadow-diagnostics{display:none}.hotel-ai-results-container .hotel-ai-spec-review-actions{align-items:center;border-top:1px solid var(--hotel-ai-separator);gap:28px;margin-top:2px;padding-top:12px}.hotel-ai-results-container .hotel-ai-text-action{color:var(--hotel-ai-text-secondary);font-size:13px;font-weight:600;gap:6px;min-height:24px;padding:4px 0}.hotel-ai-results-container .hotel-ai-text-action:hover{color:var(--hotel-ai-text-primary)}.hotel-ai-results-container .hotel-ai-text-action.active:first-of-type{color:var(--hotel-ai-system-green)}.hotel-ai-results-container .hotel-ai-text-action.active:nth-of-type(2){color:var(--hotel-ai-system-red)}.hotel-ai-results-container .hotel-ai-spec-sheet-panel{background:var(--hotel-ai-bg-tertiary);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm,8px);display:flex;flex-direction:column;gap:10px;justify-content:center;padding:14px 18px}.hotel-ai-results-container .hotel-ai-spec-sheet-overview{align-items:flex-start;display:flex;gap:18px}.hotel-ai-results-container .hotel-ai-spec-preview{flex:0 0 auto;gap:8px}.hotel-ai-results-container .hotel-ai-spec-preview img,.hotel-ai-results-container .hotel-ai-spec-preview>span{border-radius:8px;height:120px;width:120px}.hotel-ai-results-container .hotel-ai-spec-sheet-button{font-size:12px;line-height:1.25;max-width:120px}.hotel-ai-results-container .hotel-ai-spec-sheet-meta{flex:1 1 auto;gap:4px}.hotel-ai-results-container .hotel-ai-spec-sheet-meta div{gap:4px 12px;grid-template-columns:auto minmax(0,1fr)}.hotel-ai-results-container .hotel-ai-spec-sheet-meta dt{color:var(--hotel-ai-text-tertiary);font-size:10px}.hotel-ai-results-container .hotel-ai-spec-sheet-meta dd{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-spec-detail-reason-text{font-style:italic}.hotel-ai-results-container .hotel-ai-spec-confidence{flex:0 0 72px;min-width:72px}.hotel-ai-results-container .hotel-ai-spec-confidence strong{font-size:26px}.hotel-ai-results-container .hotel-ai-spec-confidence-track{height:64px;width:6px}@media(max-width:760px){.hotel-ai-results-container{padding:18px 0 92px;width:min(100%,calc(100vw - 28px))}.hotel-ai-results-container .hotel-ai-screen-header{align-items:flex-start;flex-direction:column}.hotel-ai-results-container .hotel-ai-score-grid,.hotel-ai-results-container .hotel-ai-split-panel{grid-template-columns:minmax(0,1fr)}.hotel-ai-results-container .hotel-ai-panel-connector{display:none}.hotel-ai-results-container .hotel-ai-panel,.hotel-ai-results-container .hotel-ai-split-panel{min-height:0}.hotel-ai-results-container .hotel-ai-pip-list,.hotel-ai-results-container .hotel-ai-spec-list{max-height:none}.hotel-ai-results-container .hotel-ai-spec-card{grid-template-columns:minmax(0,1fr)}.hotel-ai-results-container .hotel-ai-spec-sheet-overview{flex-direction:column}.hotel-ai-results-container .hotel-ai-spec-preview img,.hotel-ai-results-container .hotel-ai-spec-preview>span,.hotel-ai-results-container .hotel-ai-spec-sheet-button{max-width:220px}}.hotel-ai-spec-sheet-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a70;inset:0;position:fixed;z-index:600}.hotel-ai-spec-sheet-modal{inset:32px}.hotel-ai-spec-search-modal,.hotel-ai-spec-sheet-modal{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:10px;box-shadow:0 24px 80px #0f172a42;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;position:fixed;z-index:610}.hotel-ai-spec-search-modal{left:50%;max-height:min(760px,calc(100vh - 32px));top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 32px))}.hotel-ai-spec-sheet-modal-header{align-items:flex-start;border-bottom:1px solid var(--hotel-ai-separator);display:flex;gap:18px;justify-content:space-between;padding:16px 18px}.hotel-ai-spec-sheet-modal-title{color:var(--hotel-ai-system-blue);font-size:18px;line-height:1.25;margin:0}.hotel-ai-spec-sheet-modal-description,.hotel-ai-spec-sheet-modal-header p{color:var(--hotel-ai-text-secondary);font-size:13px;margin:4px 0 0}.hotel-ai-spec-search-modal-body{min-height:0;overflow:auto;padding:18px}.hotel-ai-spec-search-context{background:#1e43800f;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:4px;padding:12px}.hotel-ai-spec-search-context span{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hotel-ai-spec-search-context strong{color:var(--hotel-ai-text-primary);font-size:13px}.hotel-ai-icon-button{background:var(--hotel-ai-bg-secondary);border:1px solid var(--hotel-ai-separator);border-radius:8px;color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-grid;height:34px;place-items:center;width:34px}.hotel-ai-spec-sheet-frame{border:0;height:100%;min-height:0;width:100%}@container (max-width: 720px){.hotel-ai-spec-card{grid-template-columns:minmax(0,1fr)}.hotel-ai-spec-card-main{align-self:start}.hotel-ai-spec-sheet-overview{grid-template-columns:132px minmax(0,1fr) minmax(66px,auto)}}@container (max-width: 660px){.hotel-ai-spec-sheet-overview{grid-template-columns:minmax(0,1fr)}.hotel-ai-spec-preview img,.hotel-ai-spec-preview>span{max-width:220px;width:100%}.hotel-ai-spec-sheet-meta div{gap:2px;grid-template-columns:1fr}.hotel-ai-spec-confidence{justify-items:start}}.hotel-ai-match-diagnostics{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));margin:12px 0 0}.hotel-ai-match-diagnostics div{background:var(--hotel-ai-bg-secondary);border:1px solid var(--hotel-ai-separator);border-radius:calc(var(--hotel-ai-radius) - 2px);min-width:0;padding:8px}.hotel-ai-match-diagnostics dt{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:700;text-transform:uppercase}.hotel-ai-match-diagnostics dd{color:var(--hotel-ai-text-primary);font-size:12px;font-weight:700;margin:3px 0 0;overflow-wrap:anywhere}.hotel-ai-evidence-location{color:var(--hotel-ai-system-blue);font-size:11px;font-weight:700;margin-top:10px;text-transform:uppercase}.hotel-ai-evidence-text{background:#1e43800f;border-left:3px solid var(--hotel-ai-system-blue);border-radius:calc(var(--hotel-ai-radius) - 2px);color:var(--hotel-ai-text-secondary);font-size:12px;line-height:1.45;margin-top:8px;padding:10px}.hotel-ai-shadow-diagnostics{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.hotel-ai-shadow-diagnostics span{background:var(--hotel-ai-bg-secondary);border:1px solid var(--hotel-ai-separator);border-radius:999px;color:var(--hotel-ai-text-secondary);font-size:11px;max-width:100%;overflow-wrap:anywhere;padding:5px 8px}.hotel-ai-spec-search-form{display:grid;gap:8px;margin:14px 0}.hotel-ai-spec-search-form label{color:var(--hotel-ai-text-secondary);font-size:13px;font-weight:700}.hotel-ai-spec-search-form div{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.hotel-ai-spec-search-form input{border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);font:inherit;min-width:0;padding:10px 12px}.hotel-ai-spec-search-filters{align-items:end;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(132px,1fr)) auto;margin:0 0 12px}.hotel-ai-spec-search-filters label{color:var(--hotel-ai-text-tertiary);display:grid;font-size:11px;font-weight:700;gap:4px;text-transform:uppercase}.hotel-ai-spec-search-filters select{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:calc(var(--hotel-ai-radius) - 2px);color:var(--hotel-ai-text-primary);font:inherit;min-width:0;padding:9px 10px;text-transform:none;width:100%}.hotel-ai-spec-search-clear{align-items:center;background:var(--hotel-ai-bg-secondary);border:1px solid var(--hotel-ai-separator);border-radius:calc(var(--hotel-ai-radius) - 2px);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:5px;justify-content:center;min-height:38px;padding:8px 10px;white-space:nowrap}.hotel-ai-spec-search-results{display:grid;gap:8px;margin-bottom:12px}.hotel-ai-spec-search-result{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.hotel-ai-spec-search-result h4{font-size:14px;margin:4px 0}.hotel-ai-spec-search-reason{color:var(--hotel-ai-system-blue);font-size:11px;font-weight:700;margin:6px 0 0}.hotel-ai-match-actions,.hotel-ai-no-match-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-no-match-row{margin-top:12px}.hotel-ai-no-match-row label{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;font-weight:700;gap:5px;min-width:min(260px,100%)}.hotel-ai-no-match-row select{border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);font:inherit;min-height:38px;padding:8px 10px}.hotel-ai-ripple-title-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px}.hotel-ai-ripple-title-row h2{color:var(--hotel-ai-system-blue);font-family:Libre Bodoni,Georgia,serif;font-size:28px;margin:0}.hotel-ai-patent-badge,.hotel-ai-ripple-title-row span{color:var(--hotel-ai-text-secondary)}.hotel-ai-ripple-exposure{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:18px}.hotel-ai-ripple-exposure div,.hotel-ai-ripple-pip-item,.hotel-ai-tier-card{display:flex;flex-direction:column;gap:4px}.hotel-ai-ripple-exposure em{color:var(--hotel-ai-text-muted);font-size:11px;font-style:normal;line-height:1.35;max-width:220px}.hotel-ai-ripple-tree{display:grid;gap:16px}.hotel-ai-ripple-root{color:var(--hotel-ai-system-blue);font-weight:700;margin-bottom:8px}.hotel-ai-ripple-cost-card{border-left-color:var(--hotel-ai-system-orange);margin-left:24px}.hotel-ai-ripple-signal-details{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0}.hotel-ai-ripple-signal-details div{background:#ffffffb8;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);padding:8px}.hotel-ai-ripple-signal-details dt{color:var(--hotel-ai-text-muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hotel-ai-ripple-signal-details dd{color:var(--hotel-ai-text-primary);font-size:12px;font-weight:700;margin:4px 0 0}@media(max-width:820px){.hotel-ai-ripple-signal-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.hotel-ai-ripple-signal-details{grid-template-columns:1fr}}.hotel-ai-ripple-cascade{border-top:1px dashed var(--hotel-ai-separator);display:grid;gap:8px;margin-top:16px;padding-top:12px}.hotel-ai-ripple-cascade h3{color:var(--hotel-ai-text-muted);font-size:10px;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.hotel-ai-ripple-cascade-node{align-items:baseline;background:#ffffffb8;border:1px solid var(--hotel-ai-separator);border-left:3px solid var(--hotel-ai-system-blue);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:4px 12px;grid-template-columns:minmax(0,1fr) auto;padding:8px 10px}.hotel-ai-ripple-cascade-node strong{color:var(--hotel-ai-text-primary);font-size:12px}.hotel-ai-ripple-cascade-node span{color:var(--hotel-ai-system-blue);font-size:10px;font-weight:700;justify-self:end;letter-spacing:.04em;text-transform:uppercase}.hotel-ai-ripple-cascade-node em{color:var(--hotel-ai-text-secondary);font-size:11px;font-style:normal;grid-column:1/-1;line-height:1.4}.hotel-ai-ripple-action-row{align-items:center;border-top:1px solid var(--hotel-ai-separator);display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;padding-top:10px}.hotel-ai-ripple-action.active.reviewed{color:var(--hotel-ai-system-green)}.hotel-ai-ripple-action.active.budget{color:var(--hotel-ai-system-blue)}.hotel-ai-ripple-action.active.declined{color:var(--hotel-ai-system-red)}.hotel-ai-ripple-decision-status{background:#1e438014;border-radius:999px;color:var(--hotel-ai-text-secondary);min-height:24px;padding:3px 8px}.hotel-ai-ripple-decision-status,.hotel-ai-ripple-item-decided{align-items:center;display:inline-flex;font-size:11px;font-weight:700}.hotel-ai-ripple-item-decided{color:var(--hotel-ai-system-green);gap:4px;margin-top:6px}.hotel-ai-ripple-load-error{margin:8px 0}.hotel-ai-ripple-load-error,.hotel-ai-schedule-legend{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.hotel-ai-schedule-legend{color:var(--hotel-ai-text-secondary);font-size:13px}.hotel-ai-schedule-container .hotel-ai-comments-panel{margin:0 0 16px}.hotel-ai-legend-swatch{border-radius:3px;display:inline-block;height:12px;margin-right:4px;vertical-align:-2px;width:12px}.hotel-ai-legend-swatch.highlighted{background:#15613b33;border:1px solid var(--hotel-ai-system-green)}.hotel-ai-legend-swatch.section{background:var(--hotel-ai-bg-tertiary)}.hotel-ai-table-wrapper{border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);overflow:auto}.hotel-ai-table-wrapper:focus-visible{outline:2px solid var(--hotel-ai-accent);outline-offset:2px}.hotel-ai-schedule-table{background:#fff;border-collapse:collapse;min-width:720px;width:100%}.hotel-ai-schedule-table td,.hotel-ai-schedule-table th{border-bottom:1px solid var(--hotel-ai-separator);font-size:14px;padding:12px;text-align:left}.hotel-ai-schedule-section-row td,.hotel-ai-schedule-table th{background:var(--hotel-ai-bg-elevated);color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:700;text-transform:uppercase}.hotel-ai-schedule-highlighted td{background:#fff9e6}.hotel-ai-schedule-highlighted td:first-child{border-left:3px solid var(--hotel-ai-system-orange)}.hotel-ai-schedule-no-match td{background:#1e43800a}.hotel-ai-schedule-no-match td:first-child{border-left:3px solid var(--hotel-ai-system-blue)}.hotel-ai-schedule-section-label{align-items:center;display:flex;gap:16px;justify-content:space-between}.hotel-ai-schedule-cell-text{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word}.hotel-ai-schedule-cell-text.strong{color:var(--hotel-ai-text-primary);font-weight:700}.hotel-ai-schedule-cell-text.status,.hotel-ai-schedule-cell-text.subtle{color:var(--hotel-ai-text-tertiary);font-size:12px;line-height:1.45;margin-top:4px}.hotel-ai-schedule-low-confidence{background:color-mix(in srgb,var(--hotel-ai-system-orange) 10%,var(--hotel-ai-surface));border:1px solid color-mix(in srgb,var(--hotel-ai-system-orange) 36%,transparent);border-radius:999px;color:var(--hotel-ai-system-orange);display:inline-block;font-size:11px;font-weight:700;letter-spacing:.02em;margin-left:8px;padding:1px 6px;text-transform:uppercase;vertical-align:middle}.hotel-ai-control-label{align-items:center;color:var(--hotel-ai-text-secondary);display:flex;font-size:13px;gap:8px}.hotel-ai-control-label select{border:1px solid var(--hotel-ai-separator-opaque);min-width:280px;padding:8px 10px}.hotel-ai-control-label select,.hotel-ai-empty-state{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius)}.hotel-ai-empty-state{color:var(--hotel-ai-text-secondary);padding:80px 24px;text-align:center}.hotel-ai-manual-empty{align-items:center;display:flex;flex-direction:column;gap:20px}.hotel-ai-manual-empty p{margin:0;max-width:52ch}.hotel-ai-floorplan-viewer,.hotel-ai-manual-layout,.hotel-ai-moodboard-layout{display:grid;gap:16px}.hotel-ai-floorplan-upload-panel{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:16px}.hotel-ai-floorplan-upload-copy{display:grid;gap:4px}.hotel-ai-floorplan-upload-copy h2{color:var(--hotel-ai-text-primary);font-size:18px;line-height:1.25;margin:0}.hotel-ai-floorplan-upload-copy p{margin:0}.hotel-ai-floorplan-upload-actions{display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-floorplan-upload-status{color:var(--hotel-ai-text-secondary);font-size:13px;grid-column:1/-1;margin:0}.hotel-ai-floorplan-upload-status.is-error{color:#b42318}.hotel-ai-floorplan-annotation-feedback{flex-basis:100%;min-height:1.25rem;width:100%}.hotel-ai-floorplan-toolbar{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:flex;flex-direction:column;gap:10px;padding:12px}.hotel-ai-floorplan-toolbar-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px}.hotel-ai-floorplan-toolbar-group{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.hotel-ai-floorplan-view-group{gap:8px 14px}.hotel-ai-floorplan-zoom-group{margin-left:auto}.hotel-ai-floorplan-toolbar-divider{align-self:stretch;background:var(--hotel-ai-separator-opaque);flex:0 0 auto;margin:0 2px;min-height:32px;width:1px}.hotel-ai-floorplan-toolbar-status{align-items:center;border-top:1px solid var(--hotel-ai-separator-opaque);display:flex;flex-wrap:wrap;gap:6px 14px;padding-top:8px}.hotel-ai-floorplan-highlight-count{color:var(--hotel-ai-text-tertiary);font-size:12px;margin-left:auto;white-space:nowrap}.hotel-ai-zoom-controls-value{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--hotel-ai-radius-sm,8px);color:var(--hotel-ai-text-primary);cursor:pointer;display:inline-flex;font-size:13px;font-variant-numeric:tabular-nums;font-weight:700;justify-content:center;min-height:44px;min-width:56px;padding:0 10px}.hotel-ai-zoom-controls-value:hover{background:var(--hotel-ai-bg-elevated);border-color:var(--hotel-ai-separator-opaque)}.hotel-ai-floorplan-action-palette,.hotel-ai-floorplan-tool-palette{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.hotel-ai-floorplan-mobile-toolbar-panel .hotel-ai-icon-btn,.hotel-ai-floorplan-toolbar .hotel-ai-icon-btn,.hotel-ai-zoom-controls .hotel-ai-btn{min-height:44px;min-width:44px}.hotel-ai-floorplan-mobile-toolbar{display:none}.hotel-ai-floorplan-mobile-toolbar-panel{background:#fffffff5;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);box-shadow:var(--hotel-ai-shadow-lg);display:grid;gap:10px;padding:10px}.hotel-ai-floorplan-mobile-action-palette,.hotel-ai-floorplan-mobile-tool-palette{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:center}.hotel-ai-floorplan-mobile-format-group,.hotel-ai-floorplan-mobile-text-buttons,.hotel-ai-floorplan-mobile-text-size{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:center}.hotel-ai-floorplan-mobile-text-format{display:grid;gap:8px}.hotel-ai-floorplan-mobile-text-size span{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:800;min-width:44px;text-align:center}.hotel-ai-floorplan-mobile-toolbar-toggle{align-items:center;background:var(--hotel-ai-ink);border:1px solid hsla(0,0%,100%,.16);border-radius:999px;box-shadow:var(--hotel-ai-shadow-lg);color:#fff;display:inline-flex;height:48px;justify-content:center;width:48px}.hotel-ai-floorplan-tool-button.is-active{background:var(--hotel-ai-accent);border-color:var(--hotel-ai-accent);color:#fff}.hotel-ai-floorplan-status-filter{align-items:center;display:inline-flex;flex-wrap:wrap;gap:4px 8px}.hotel-ai-floorplan-status-filter>span{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.hotel-ai-floorplan-status-metrics{align-items:center;display:inline-flex;flex:1 1 auto;flex-wrap:wrap;gap:4px 10px}.hotel-ai-floorplan-status-metrics span{align-items:baseline;color:var(--hotel-ai-text-tertiary);display:inline-flex;font-size:12px;gap:4px;white-space:nowrap}.hotel-ai-floorplan-status-metrics strong{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:700}.hotel-ai-floorplan-metric+.hotel-ai-floorplan-metric:before{color:var(--hotel-ai-separator-opaque);content:"·";margin-right:6px}.hotel-ai-floorplan-pointer-readout{font-variant-numeric:tabular-nums;margin-left:auto}.hotel-ai-floorplan-annotation-panel{align-items:flex-end;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:flex;flex-wrap:wrap;gap:12px 16px;padding:14px 16px}.hotel-ai-floorplan-annotation-panel>*{min-width:0}.hotel-ai-floorplan-annotation-copy{flex:1 1 100%}.hotel-ai-floorplan-annotation-type{flex:0 1 200px}.hotel-ai-floorplan-annotation-input{flex:1 1 260px}.hotel-ai-floorplan-annotation-swatches,.hotel-ai-floorplan-color-input{align-self:flex-end;flex:0 0 auto}.hotel-ai-floorplan-annotation-panel>.hotel-ai-floorplan-text-style-controls{flex:1 1 340px;grid-column:auto}.hotel-ai-floorplan-annotation-panel>.hotel-ai-floorplan-annotation-actions{flex:0 0 auto;grid-column:auto;margin-left:auto}.hotel-ai-floorplan-annotation-panel .hotel-ai-control-label{align-items:stretch;flex-direction:column;gap:4px}.hotel-ai-floorplan-annotation-panel .hotel-ai-control-label>span{color:var(--hotel-ai-text-tertiary);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hotel-ai-floorplan-annotation-panel .hotel-ai-control-label input,.hotel-ai-floorplan-annotation-panel .hotel-ai-control-label select{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);min-height:36px;min-width:0;padding:8px 10px;width:100%}.hotel-ai-floorplan-annotation-copy{display:grid;gap:3px;min-width:0}.hotel-ai-floorplan-annotation-copy h2,.hotel-ai-floorplan-annotation-copy p{margin:0}.hotel-ai-floorplan-annotation-copy h2{color:var(--hotel-ai-text-primary);font-size:14px;line-height:1.25}.hotel-ai-floorplan-annotation-input,.hotel-ai-floorplan-annotation-input input,.hotel-ai-floorplan-annotation-input select{min-width:0}.hotel-ai-floorplan-annotation-type select{min-height:36px}.hotel-ai-floorplan-annotation-hint{align-items:center;color:var(--hotel-ai-text-tertiary);display:inline-flex;font-size:12px;line-height:1.3;min-height:36px}.hotel-ai-floorplan-color-input input[type=color]{background:#fff;min-height:36px;padding:4px;width:44px}.hotel-ai-floorplan-annotation-swatches{align-items:center;display:inline-grid;gap:5px;grid-template-columns:repeat(6,24px);min-height:36px}.hotel-ai-floorplan-annotation-swatch{background:#fff;border:1px solid rgba(30,67,128,.18);border-radius:999px;cursor:pointer;height:24px;padding:0;width:24px}.hotel-ai-floorplan-annotation-swatch span{background:var(--annotation-swatch-color);border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff7a;display:block;height:100%;width:100%}.hotel-ai-floorplan-annotation-swatch.is-active,.hotel-ai-floorplan-annotation-swatch:focus-visible{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e43801f}.hotel-ai-floorplan-annotation-swatch:disabled{cursor:not-allowed;opacity:.5}.hotel-ai-floorplan-annotation-actions{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px;grid-column:6;justify-content:flex-end}.hotel-ai-floorplan-text-style-controls{align-items:end;display:grid;gap:8px;grid-column:3/-1;grid-template-columns:minmax(160px,1fr) minmax(72px,88px) auto}.hotel-ai-floorplan-text-style-controls input,.hotel-ai-floorplan-text-style-controls select{min-height:34px;min-width:0}.hotel-ai-floorplan-text-style-buttons{align-items:center;display:inline-flex;gap:6px;min-height:34px}.hotel-ai-floorplan-text-toggle{border-color:var(--hotel-ai-separator-opaque);height:34px;width:34px}.hotel-ai-floorplan-text-toggle.is-active{background:var(--hotel-ai-accent);border-color:var(--hotel-ai-accent);color:#fff}.hotel-ai-floorplan-vector-editor{align-items:end;display:grid;gap:8px;grid-column:2/-1;grid-template-columns:repeat(6,minmax(72px,1fr))}.hotel-ai-floorplan-vector-editor input,.hotel-ai-floorplan-vector-editor select{min-height:34px;min-width:0}.hotel-ai-floorplan-vector-editor.is-compact{grid-template-columns:repeat(2,minmax(96px,140px));justify-content:start}.hotel-ai-toggle,.hotel-ai-zoom-controls{align-items:center;color:var(--hotel-ai-text-secondary);display:inline-flex;font-size:13px;gap:8px}.hotel-ai-floorplan-canvas{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);overflow:auto;overscroll-behavior:contain;padding:22px}.hotel-ai-floorplan-performance-warning{background:#fffbeb;border:1px solid #fcd34d;border-radius:999px;color:#92400e;font-weight:700;padding:8px 12px}.hotel-ai-floorplan-network-status,.hotel-ai-floorplan-performance-warning{align-items:center;display:inline-flex;font-size:12px;gap:8px;margin-bottom:12px;max-width:100%;width:-moz-fit-content;width:fit-content}.hotel-ai-floorplan-network-status{background:#f43f5e1a;border:1px solid rgba(180,35,24,.22);border-radius:8px;color:#b42318;font-weight:800;padding:9px 12px}.hotel-ai-floorplan-drop-indicator{background:#10b98129;border:1px dashed rgba(5,150,105,.46);border-radius:999px;bottom:18px;color:#064e3b;font-size:12px;font-weight:800;padding:8px 12px;pointer-events:none;position:absolute;right:18px;z-index:90}.hotel-ai-floorplan-paper{background:linear-gradient(var(--hotel-ai-separator) 1px,transparent 1px),linear-gradient(90deg,var(--hotel-ai-separator) 1px,transparent 1px),#fff;background-size:40px 40px;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);min-height:520px;position:relative;touch-action:none;transform-origin:top left;will-change:transform}.hotel-ai-floorplan-paper.compact{min-height:260px}.hotel-ai-floorplan-paper.is-vector-drawing-mode{cursor:crosshair}.hotel-ai-floorplan-paper.is-pan-mode{cursor:grab}.hotel-ai-floorplan-paper.is-panning{cursor:grabbing}.hotel-ai-floorplan-paper.is-fitted{border:0;min-height:0;outline:1px solid var(--hotel-ai-separator-opaque);outline-offset:-1px}.hotel-ai-floorplan-paper.is-fitted .hotel-ai-floorplan-image{height:100%;min-height:0;width:100%}.hotel-ai-floorplan-paper.is-fitted .hotel-ai-floorplan-title{left:0;pointer-events:none;position:absolute;top:0;z-index:5}.hotel-ai-floorplan-touch-feedback{animation:hotel-ai-floorplan-touch-feedback .5s ease-out forwards;background:#1e438014;border:2px solid rgba(30,67,128,.34);border-radius:50%;height:64px;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:64px;z-index:80}.hotel-ai-floorplan-touch-feedback span{border:1px solid rgba(30,67,128,.28);border-radius:50%;inset:12px;position:absolute}@keyframes hotel-ai-floorplan-touch-feedback{0%{opacity:.86;transform:translate(-50%,-50%) scale(.72)}to{opacity:.18;transform:translate(-50%,-50%) scale(1)}}.hotel-ai-floorplan-marquee-selection{background:#1e43801f;border:1px solid var(--hotel-ai-system-blue);border-radius:4px;box-shadow:inset 0 0 0 1px #ffffffb8;pointer-events:none;position:absolute;z-index:60}.hotel-ai-floorplan-group-bounding-box,.hotel-ai-floorplan-selection-bounding-box{background:#1e43800a;border:2px dashed rgba(30,67,128,.72);border-radius:8px;box-shadow:inset 0 0 0 1px #ffffffb8;box-sizing:border-box;pointer-events:none;position:absolute;z-index:58}.hotel-ai-floorplan-selection-bounding-box{border-style:solid}.hotel-ai-floorplan-group-rotate-handle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--hotel-ai-system-blue);border:2px solid #fff;border-radius:999px;box-shadow:0 2px 8px #1e438038;cursor:grab;display:inline-flex;height:18px;left:calc(50% - 9px);padding:0;pointer-events:auto;position:absolute;top:-38px;transition:opacity var(--hotel-ai-transition),transform var(--hotel-ai-transition);width:18px;z-index:3}.hotel-ai-floorplan-group-rotate-handle:before{background:#1e4380b8;content:"";height:18px;left:7px;position:absolute;top:16px;width:2px}.hotel-ai-floorplan-group-rotate-handle:disabled{cursor:not-allowed;opacity:.45}.hotel-ai-floorplan-group-rotate-handle:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-floorplan-group-rotate-handle:focus-visible,.hotel-ai-floorplan-group-rotate-handle:hover:not(:disabled){transform:scale(1.08)}.hotel-ai-floorplan-group-resize-handle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--hotel-ai-system-blue);border:2px solid #fff;border-radius:999px;box-shadow:0 2px 8px #1e438038;display:inline-flex;height:14px;padding:0;pointer-events:auto;position:absolute;transition:opacity var(--hotel-ai-transition),transform var(--hotel-ai-transition);width:14px;z-index:2}.hotel-ai-floorplan-group-resize-handle:disabled{cursor:not-allowed;opacity:.45}.hotel-ai-floorplan-group-resize-handle:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-floorplan-group-resize-handle:focus-visible,.hotel-ai-floorplan-group-resize-handle:hover:not(:disabled){transform:scale(1.08)}.hotel-ai-floorplan-group-resize-handle.is-nw{cursor:nwse-resize;left:-8px;top:-8px}.hotel-ai-floorplan-group-resize-handle.is-n{border-radius:999px;cursor:ns-resize;height:8px;left:calc(50% - 12px);top:-8px;width:24px}.hotel-ai-floorplan-group-resize-handle.is-ne{cursor:nesw-resize;right:-8px;top:-8px}.hotel-ai-floorplan-group-resize-handle.is-e{border-radius:999px;cursor:ew-resize;height:24px;right:-8px;top:calc(50% - 12px);width:8px}.hotel-ai-floorplan-group-resize-handle.is-sw{bottom:-8px;cursor:nesw-resize;left:-8px}.hotel-ai-floorplan-group-resize-handle.is-s{border-radius:999px;bottom:-8px;cursor:ns-resize;height:8px;left:calc(50% - 12px);width:24px}.hotel-ai-floorplan-group-resize-handle.is-se{bottom:-8px;cursor:nwse-resize;right:-8px}.hotel-ai-floorplan-group-resize-handle.is-w{border-radius:999px;cursor:ew-resize;height:24px;left:-8px;top:calc(50% - 12px);width:8px}.hotel-ai-floorplan-title{color:var(--hotel-ai-text-secondary);font-weight:700;padding:16px}.hotel-ai-floorplan-image{background:#fff;display:block;min-height:420px;-o-object-fit:contain;object-fit:contain;width:100%}.hotel-ai-floorplan-preview-empty{color:var(--hotel-ai-text-secondary);display:grid;min-height:420px;padding:28px;place-items:center;text-align:center}.hotel-ai-floorplan-grid{display:grid;gap:16px;grid-template-columns:repeat(3,1fr);padding:32px}.hotel-ai-floorplan-grid span{border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);min-height:120px;padding:12px}.hotel-ai-floorplan-highlight{background:#1e4380d9;border:0;border-radius:4px;color:#fff;display:inline-flex;font-size:10px;font-weight:700;line-height:1.2;overflow:hidden;padding:3px 5px;position:absolute;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-floorplan-highlight.is-spec-placement{align-items:center;border:1px solid hsla(0,0%,100%,.72);box-shadow:0 6px 16px #0f141933;cursor:grab;justify-content:center;min-width:54px;overflow:visible;padding:4px 7px;text-align:center;touch-action:none;transform:translate(-50%,-50%);white-space:normal}.hotel-ai-floorplan-spec-placement-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.hotel-ai-floorplan-highlight.is-spec-placement.is-moving{cursor:grabbing;opacity:.88}.hotel-ai-floorplan-highlight.is-spec-placement.is-locked{cursor:default;opacity:.76}.hotel-ai-floorplan-highlight.is-spec-placement.is-selected,.hotel-ai-floorplan-highlight.is-spec-placement:focus-visible{box-shadow:0 0 0 2px #fff,0 10px 24px #0f141938;outline:3px solid rgba(30,67,128,.28);outline-offset:3px}.hotel-ai-floorplan-highlight.is-spec-placement.is-highlighted-spec{box-shadow:0 0 0 2px #fff,0 0 18px #ffffff9e,0 10px 24px #0f14193d;opacity:1}.hotel-ai-floorplan-highlight.is-spec-placement.is-dimmed-spec{opacity:.3}.hotel-ai-floorplan-highlight.is-spec-placement.is-assistant-highlighted{animation:hotel-ai-fp-pulse 1.2s ease-out 2;outline:3px solid var(--hotel-ai-system-blue);outline-offset:3px}@keyframes hotel-ai-fp-pulse{0%,to{box-shadow:0 0 #1e438000}50%{box-shadow:0 0 0 8px #1e438040}}@media(prefers-reduced-motion:reduce){.hotel-ai-floorplan-highlight.is-spec-placement.is-assistant-highlighted{animation:none}}.hotel-ai-floorplan-highlight.is-ghost{opacity:.45;outline:1px dashed var(--hotel-ai-system-blue,#1e4380);pointer-events:none}.hotel-ai-floorplan-highlight.is-ghost.is-pending{animation:hotel-ai-floorplan-pending-pulse 1s ease-in-out infinite;opacity:.8;outline-style:solid}@keyframes hotel-ai-floorplan-pending-pulse{0%,to{opacity:.55}50%{opacity:.9}}@media(prefers-reduced-motion:reduce){.hotel-ai-floorplan-highlight.is-ghost.is-pending{animation:none}}.hotel-ai-floorplan-highlight.is-auto-detected{border-style:dashed;opacity:.85}.hotel-ai-floorplan-spec-auto-badge{font-size:.625rem;letter-spacing:.04em;opacity:.7;text-transform:uppercase}.hotel-ai-floorplan-highlight.is-approved{background:#0d6e4ce6}.hotel-ai-floorplan-highlight.is-rejected{background:#b42318e6}.hotel-ai-floorplan-generated-image{background:#fff;border:2px solid rgba(30,67,128,.85);border-radius:var(--hotel-ai-radius-sm);box-shadow:0 10px 28px #0f14192e;cursor:grab;display:block;min-height:54px;min-width:72px;position:absolute;touch-action:none;transition:border-color .14s ease,box-shadow .14s ease,opacity .14s ease}.hotel-ai-floorplan-generated-image.is-selected,.hotel-ai-floorplan-generated-image:focus-visible{border-color:#0f172a;box-shadow:0 0 0 3px #fffffff2,0 0 0 6px #1e438047,0 14px 34px #0f141938;outline:none}.hotel-ai-floorplan-generated-image.is-moving{cursor:grabbing;opacity:.88}.hotel-ai-floorplan-generated-image.is-locked{border-style:dashed;cursor:default;opacity:.78}.hotel-ai-floorplan-generated-image-media{border-radius:calc(var(--hotel-ai-radius-sm) - 2px);display:block;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.hotel-ai-floorplan-generated-resize-handle,.hotel-ai-floorplan-generated-rotate-handle,.hotel-ai-floorplan-spec-resize-handle,.hotel-ai-floorplan-spec-rotate-handle,.hotel-ai-floorplan-text-resize-handle,.hotel-ai-floorplan-text-rotate-handle{background:var(--hotel-ai-system-blue);border:2px solid #fff;border-radius:999px;box-shadow:0 2px 8px #1e438038;display:inline-flex;height:14px;opacity:0;padding:0;position:absolute;transition:opacity var(--hotel-ai-transition),transform var(--hotel-ai-transition);width:14px;z-index:2}.hotel-ai-floorplan-generated-image.is-moving .hotel-ai-floorplan-generated-resize-handle,.hotel-ai-floorplan-generated-image.is-moving .hotel-ai-floorplan-generated-rotate-handle,.hotel-ai-floorplan-generated-image.is-selected .hotel-ai-floorplan-generated-resize-handle,.hotel-ai-floorplan-generated-image.is-selected .hotel-ai-floorplan-generated-rotate-handle,.hotel-ai-floorplan-generated-image:focus-within .hotel-ai-floorplan-generated-resize-handle,.hotel-ai-floorplan-generated-image:focus-within .hotel-ai-floorplan-generated-rotate-handle,.hotel-ai-floorplan-generated-image:hover .hotel-ai-floorplan-generated-resize-handle,.hotel-ai-floorplan-generated-image:hover .hotel-ai-floorplan-generated-rotate-handle,.hotel-ai-floorplan-highlight.is-spec-placement.is-moving .hotel-ai-floorplan-spec-resize-handle,.hotel-ai-floorplan-highlight.is-spec-placement.is-moving .hotel-ai-floorplan-spec-rotate-handle,.hotel-ai-floorplan-highlight.is-spec-placement.is-selected .hotel-ai-floorplan-spec-resize-handle,.hotel-ai-floorplan-highlight.is-spec-placement.is-selected .hotel-ai-floorplan-spec-rotate-handle,.hotel-ai-floorplan-highlight.is-spec-placement:focus-within .hotel-ai-floorplan-spec-resize-handle,.hotel-ai-floorplan-highlight.is-spec-placement:focus-within .hotel-ai-floorplan-spec-rotate-handle,.hotel-ai-floorplan-highlight.is-spec-placement:hover .hotel-ai-floorplan-spec-resize-handle,.hotel-ai-floorplan-highlight.is-spec-placement:hover .hotel-ai-floorplan-spec-rotate-handle,.hotel-ai-floorplan-text-annotation.is-moving .hotel-ai-floorplan-text-resize-handle,.hotel-ai-floorplan-text-annotation.is-moving .hotel-ai-floorplan-text-rotate-handle,.hotel-ai-floorplan-text-annotation.is-selected .hotel-ai-floorplan-text-resize-handle,.hotel-ai-floorplan-text-annotation.is-selected .hotel-ai-floorplan-text-rotate-handle,.hotel-ai-floorplan-text-annotation:focus-within .hotel-ai-floorplan-text-resize-handle,.hotel-ai-floorplan-text-annotation:focus-within .hotel-ai-floorplan-text-rotate-handle,.hotel-ai-floorplan-text-annotation:hover .hotel-ai-floorplan-text-resize-handle,.hotel-ai-floorplan-text-annotation:hover .hotel-ai-floorplan-text-rotate-handle{opacity:1}.hotel-ai-floorplan-generated-resize-handle:focus-visible,.hotel-ai-floorplan-generated-rotate-handle:focus-visible,.hotel-ai-floorplan-spec-resize-handle:focus-visible,.hotel-ai-floorplan-spec-rotate-handle:focus-visible,.hotel-ai-floorplan-text-resize-handle:focus-visible,.hotel-ai-floorplan-text-rotate-handle:focus-visible{opacity:1;outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-floorplan-generated-resize-handle:hover,.hotel-ai-floorplan-generated-rotate-handle:hover,.hotel-ai-floorplan-spec-resize-handle:hover,.hotel-ai-floorplan-spec-rotate-handle:hover,.hotel-ai-floorplan-text-resize-handle:hover,.hotel-ai-floorplan-text-rotate-handle:hover{transform:scale(1.08)}.hotel-ai-floorplan-generated-resize-handle.is-nw,.hotel-ai-floorplan-spec-resize-handle.is-nw,.hotel-ai-floorplan-text-resize-handle.is-nw{cursor:nwse-resize;left:-8px;top:-8px}.hotel-ai-floorplan-generated-resize-handle.is-n,.hotel-ai-floorplan-spec-resize-handle.is-n,.hotel-ai-floorplan-text-resize-handle.is-n{border-radius:999px;cursor:ns-resize;height:8px;left:calc(50% - 12px);top:-8px;width:24px}.hotel-ai-floorplan-generated-resize-handle.is-ne,.hotel-ai-floorplan-spec-resize-handle.is-ne,.hotel-ai-floorplan-text-resize-handle.is-ne{cursor:nesw-resize;right:-8px;top:-8px}.hotel-ai-floorplan-generated-resize-handle.is-e,.hotel-ai-floorplan-spec-resize-handle.is-e,.hotel-ai-floorplan-text-resize-handle.is-e{border-radius:999px;cursor:ew-resize;height:24px;right:-8px;top:calc(50% - 12px);width:8px}.hotel-ai-floorplan-generated-resize-handle.is-sw,.hotel-ai-floorplan-spec-resize-handle.is-sw,.hotel-ai-floorplan-text-resize-handle.is-sw{bottom:-8px;cursor:nesw-resize;left:-8px}.hotel-ai-floorplan-generated-resize-handle.is-s,.hotel-ai-floorplan-spec-resize-handle.is-s,.hotel-ai-floorplan-text-resize-handle.is-s{border-radius:999px;bottom:-8px;cursor:ns-resize;height:8px;left:calc(50% - 12px);width:24px}.hotel-ai-floorplan-generated-resize-handle.is-se,.hotel-ai-floorplan-spec-resize-handle.is-se,.hotel-ai-floorplan-text-resize-handle.is-se{bottom:-8px;cursor:nwse-resize;right:-8px}.hotel-ai-floorplan-generated-resize-handle.is-w,.hotel-ai-floorplan-spec-resize-handle.is-w,.hotel-ai-floorplan-text-resize-handle.is-w{border-radius:999px;cursor:ew-resize;height:24px;left:-8px;top:calc(50% - 12px);width:8px}.hotel-ai-floorplan-generated-rotate-handle,.hotel-ai-floorplan-spec-rotate-handle,.hotel-ai-floorplan-text-rotate-handle{cursor:grab;left:50%;top:-30px;transform:translate(-50%)}.hotel-ai-floorplan-generated-rotate-handle:hover,.hotel-ai-floorplan-spec-rotate-handle:hover,.hotel-ai-floorplan-text-rotate-handle:hover{transform:translate(-50%) scale(1.08)}.hotel-ai-floorplan-vector-layer{height:100%;inset:0;overflow:visible;pointer-events:none;position:absolute;width:100%}.hotel-ai-floorplan-vector-drawing-preview{color:#1e4380;z-index:30}.hotel-ai-floorplan-vector-group{cursor:grab;pointer-events:stroke;touch-action:none}.hotel-ai-floorplan-vector-group.is-highlight-annotation{pointer-events:all}.hotel-ai-floorplan-vector-group.is-moving{cursor:grabbing;opacity:.88}.hotel-ai-floorplan-vector-group.is-transforming{cursor:grabbing}.hotel-ai-floorplan-vector-group.is-locked{cursor:default;opacity:.78}.hotel-ai-floorplan-vector-group.is-editing-points .hotel-ai-floorplan-vector-annotation{opacity:.86}.hotel-ai-floorplan-vector-group:focus-visible{outline:none}.hotel-ai-floorplan-vector-group.is-selected .hotel-ai-floorplan-vector-annotation,.hotel-ai-floorplan-vector-group:focus-visible .hotel-ai-floorplan-vector-annotation{filter:drop-shadow(0 0 0 rgba(255,255,255,1)) drop-shadow(0 0 6px rgba(30,67,128,.42))}.hotel-ai-floorplan-vector-annotation{filter:drop-shadow(0 2px 3px rgba(15,20,25,.2));pointer-events:none;stroke-linecap:round;stroke-linejoin:round}.hotel-ai-floorplan-vector-hitbox{fill:none;pointer-events:stroke;stroke-linecap:round}.hotel-ai-floorplan-vector-group.is-highlight-annotation .hotel-ai-floorplan-vector-hitbox{fill:transparent;pointer-events:all}.hotel-ai-floorplan-vector-annotation.is-highlight-annotation,.hotel-ai-floorplan-vector-group.is-highlight-annotation .hotel-ai-floorplan-vector-annotation{pointer-events:none}.hotel-ai-floorplan-vector-point-handle{cursor:grab;fill:#fff;filter:drop-shadow(0 2px 4px rgba(15,20,25,.22));pointer-events:all;stroke:currentColor;stroke-width:2}.hotel-ai-floorplan-vector-point-keyboard-handle{background:transparent;border:0;border-radius:999px;height:18px;opacity:0;padding:0;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:18px}.hotel-ai-floorplan-vector-point-keyboard-handle:focus-visible{background:#e8eef7d6;box-shadow:0 0 0 4px #1e438038;opacity:1;outline:2px solid #1e4380;outline-offset:2px}.hotel-ai-floorplan-vector-resize-handle,.hotel-ai-floorplan-vector-rotate-handle{fill:#fff;filter:drop-shadow(0 2px 4px rgba(15,20,25,.24));pointer-events:all;stroke:currentColor;stroke-width:2}.hotel-ai-floorplan-vector-resize-handle.is-n,.hotel-ai-floorplan-vector-resize-handle.is-s{cursor:ns-resize}.hotel-ai-floorplan-vector-resize-handle.is-e,.hotel-ai-floorplan-vector-resize-handle.is-w{cursor:ew-resize}.hotel-ai-floorplan-vector-resize-handle.is-ne,.hotel-ai-floorplan-vector-resize-handle.is-sw{cursor:nesw-resize}.hotel-ai-floorplan-vector-resize-handle.is-nw,.hotel-ai-floorplan-vector-resize-handle.is-se{cursor:nwse-resize}.hotel-ai-floorplan-vector-rotate-handle{cursor:grab;fill:#047857;stroke:#fff}.hotel-ai-floorplan-vector-rotate-stem{opacity:.72;pointer-events:none;stroke-dasharray:4 4}.hotel-ai-floorplan-vector-control-line{opacity:.7;pointer-events:none;stroke-dasharray:4 4}.hotel-ai-floorplan-vector-control-handle{cursor:grab;fill:#b42318;filter:drop-shadow(0 2px 4px rgba(15,20,25,.24));pointer-events:all;stroke:#fff;stroke-width:2}.hotel-ai-floorplan-vector-control-handle:focus-visible,.hotel-ai-floorplan-vector-control-handle:hover,.hotel-ai-floorplan-vector-point-handle:focus-visible,.hotel-ai-floorplan-vector-point-handle:hover,.hotel-ai-floorplan-vector-resize-handle:focus-visible,.hotel-ai-floorplan-vector-resize-handle:hover,.hotel-ai-floorplan-vector-rotate-handle:focus-visible,.hotel-ai-floorplan-vector-rotate-handle:hover{fill:#e8eef7;outline:none}.hotel-ai-floorplan-vector-group.is-editing-points .hotel-ai-floorplan-vector-control-handle,.hotel-ai-floorplan-vector-group.is-editing-points .hotel-ai-floorplan-vector-point-handle,.hotel-ai-floorplan-vector-group.is-transforming .hotel-ai-floorplan-vector-resize-handle,.hotel-ai-floorplan-vector-group.is-transforming .hotel-ai-floorplan-vector-rotate-handle{cursor:grabbing}.hotel-ai-floorplan-text-annotation{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fffffff0;border:1px solid rgba(30,67,128,.32);border-left:4px solid;border-radius:var(--hotel-ai-radius-sm);box-shadow:0 10px 24px #0f141924;box-sizing:border-box;color:#1e4380;cursor:grab;display:inline-flex;font-size:14px;font-weight:700;line-height:1.25;max-width:min(360px,40%);overflow-wrap:anywhere;padding:6px 8px;position:absolute;text-align:left;touch-action:none;transform:translate(-50%,-50%)}.hotel-ai-floorplan-text-annotation-label{min-width:0;pointer-events:none}.hotel-ai-floorplan-text-annotation.is-inline-editing{cursor:text;touch-action:auto}.hotel-ai-floorplan-text-inline-editor{background:transparent;border:0;color:inherit;font:inherit;line-height:inherit;min-height:44px;min-width:0;outline:none;padding:0;resize:none;width:100%}.hotel-ai-floorplan-text-annotation.is-moving{cursor:grabbing;opacity:.88}.hotel-ai-floorplan-text-annotation.is-locked{cursor:default;opacity:.78}.hotel-ai-floorplan-text-annotation.is-selected,.hotel-ai-floorplan-text-annotation:focus-visible,.hotel-ai-floorplan-text-annotation:hover{background:#fff;border-color:currentColor;box-shadow:0 0 0 3px #fffffff2,0 0 0 6px #1e438038,0 14px 30px #0f14192e;outline:none}.hotel-ai-floorplan-canvas-actions{align-items:center;background:#0c1220f0;border:1px solid hsla(0,0%,100%,.16);border-radius:8px;box-shadow:0 10px 24px #0c122038;display:inline-flex;gap:4px;padding:4px;position:absolute;transform:translate(-50%,calc(-100% - 10px));z-index:22}.hotel-ai-floorplan-canvas-actions button{background:#ffffff14;border:1px solid hsla(0,0%,100%,.12);border-radius:6px;color:#ffffffd1;cursor:pointer;display:inline-grid;height:28px;padding:0;place-items:center;transition:background var(--hotel-ai-transition),border-color var(--hotel-ai-transition),color var(--hotel-ai-transition);width:28px}.hotel-ai-floorplan-canvas-actions button:focus-visible,.hotel-ai-floorplan-canvas-actions button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff3d;color:#fff}.hotel-ai-floorplan-canvas-actions button.is-danger{color:#fecaca}.hotel-ai-floorplan-canvas-actions button.is-danger:focus-visible,.hotel-ai-floorplan-canvas-actions button.is-danger:hover:not(:disabled){background:#dc26266b;border-color:#f8717180;color:#fff}.hotel-ai-floorplan-canvas-actions button:disabled{cursor:not-allowed;opacity:.46}.hotel-ai-floorplan-group-canvas-actions,.hotel-ai-floorplan-selection-canvas-actions{align-items:center;background:#0c1220f0;border:1px solid hsla(0,0%,100%,.16);border-radius:8px;box-shadow:0 10px 24px #0c122038;display:inline-flex;flex-wrap:wrap;gap:4px;justify-content:center;left:50%;max-width:min(452px,calc(100vw - 32px));padding:4px;position:absolute;top:-8px;transform:translate(-50%,-100%);width:-moz-max-content;width:max-content;z-index:24}.hotel-ai-floorplan-group-canvas-actions button,.hotel-ai-floorplan-selection-canvas-actions button{background:#ffffff14;border:1px solid hsla(0,0%,100%,.12);border-radius:6px;color:#ffffffd1;cursor:pointer;display:inline-grid;height:28px;padding:0;place-items:center;transition:background var(--hotel-ai-transition),border-color var(--hotel-ai-transition),color var(--hotel-ai-transition);width:28px}.hotel-ai-floorplan-group-canvas-actions button:focus-visible,.hotel-ai-floorplan-group-canvas-actions button:hover:not(:disabled),.hotel-ai-floorplan-selection-canvas-actions button:focus-visible,.hotel-ai-floorplan-selection-canvas-actions button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff3d;color:#fff}.hotel-ai-floorplan-group-canvas-actions button.is-danger,.hotel-ai-floorplan-selection-canvas-actions button.is-danger{color:#fecaca}.hotel-ai-floorplan-group-canvas-actions button.is-danger:focus-visible,.hotel-ai-floorplan-group-canvas-actions button.is-danger:hover:not(:disabled),.hotel-ai-floorplan-selection-canvas-actions button.is-danger:focus-visible,.hotel-ai-floorplan-selection-canvas-actions button.is-danger:hover:not(:disabled){background:#dc26266b;border-color:#f8717180;color:#fff}.hotel-ai-floorplan-group-canvas-actions button:disabled,.hotel-ai-floorplan-selection-canvas-actions button:disabled{cursor:not-allowed;opacity:.46}.hotel-ai-floorplan-generated-editor{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);display:grid;gap:12px 16px;grid-template-columns:minmax(0,1fr) auto;padding:14px}.hotel-ai-floorplan-generated-editor.is-multi-selection{border-color:#1e438042;box-shadow:inset 0 0 0 1px #1e438014}.hotel-ai-floorplan-generated-editor-copy{display:grid;gap:4px;min-width:0}.hotel-ai-floorplan-generated-editor-copy h2,.hotel-ai-floorplan-generated-editor-copy p{margin:0}.hotel-ai-floorplan-generated-editor-copy h2{color:var(--hotel-ai-text-primary);font-size:16px;line-height:1.25}.hotel-ai-floorplan-generated-editor-copy p{color:var(--hotel-ai-text-secondary);font-size:13px}.hotel-ai-floorplan-generated-editor-actions{display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-floorplan-placement-status{min-width:120px}.hotel-ai-floorplan-placement-status select{min-height:34px}.hotel-ai-icon-btn{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-primary);cursor:pointer;display:inline-flex;height:36px;justify-content:center;width:36px}.hotel-ai-icon-btn:focus-visible,.hotel-ai-icon-btn:hover:not(:disabled){background:var(--hotel-ai-brand-blue);border-color:var(--hotel-ai-brand-blue);color:#fff;outline:none}.hotel-ai-icon-btn.is-danger{color:#b42318}.hotel-ai-icon-btn.is-danger:focus-visible,.hotel-ai-icon-btn.is-danger:hover:not(:disabled){background:#b42318;border-color:#b42318;color:#fff}.hotel-ai-icon-btn:disabled{cursor:not-allowed;opacity:.48}.hotel-ai-floorplan-generated-editor-status{color:var(--hotel-ai-text-secondary);font-size:13px;grid-column:1/-1;margin:0}.hotel-ai-floorplan-generated-editor-status.is-error{color:#b42318}.hotel-ai-floorplan-context-menu{background:#fffffffa;border:1px solid rgba(30,67,128,.18);border-radius:8px;box-shadow:0 18px 42px #1e43802e;color:var(--hotel-ai-text-primary);display:grid;gap:2px;max-height:min(430px,calc(100vh - 24px));overflow:auto;padding:7px;position:fixed;width:min(230px,calc(100vw - 24px));z-index:80}.hotel-ai-floorplan-context-menu strong{color:var(--hotel-ai-text-secondary);display:block;font-size:11px;font-weight:800;padding:6px 8px 7px;text-transform:uppercase}.hotel-ai-floorplan-context-menu button{align-items:center;background:transparent;border:0;border-radius:6px;color:var(--hotel-ai-text-primary);cursor:pointer;display:grid;font:inherit;font-size:13px;font-weight:700;gap:8px;grid-template-columns:18px minmax(0,1fr) auto;min-height:34px;padding:0 8px;text-align:left}.hotel-ai-floorplan-context-menu button:focus-visible,.hotel-ai-floorplan-context-menu button:hover:not(:disabled){background:#1e438014;color:var(--hotel-ai-system-blue);outline:none}.hotel-ai-floorplan-context-menu button:disabled{cursor:not-allowed;opacity:.45}.hotel-ai-floorplan-context-menu-palette{display:grid;gap:7px;padding:6px 8px 8px}.hotel-ai-floorplan-context-menu-palette>span{color:var(--hotel-ai-text-muted);font-size:11px;font-weight:800;text-transform:uppercase}.hotel-ai-floorplan-context-menu-swatches{display:grid;gap:5px;grid-template-columns:repeat(6,minmax(0,1fr))}.hotel-ai-floorplan-context-menu button.hotel-ai-floorplan-context-menu-swatch{border:1px solid rgba(30,67,128,.16);display:grid;grid-template-columns:1fr;justify-items:center;min-height:30px;padding:0}.hotel-ai-floorplan-context-menu button.hotel-ai-floorplan-context-menu-swatch span{background:var(--vector-swatch-color);border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff75;height:17px;width:17px}.hotel-ai-floorplan-context-menu button.hotel-ai-floorplan-context-menu-swatch.is-active{background:#1e438014;border-color:var(--hotel-ai-system-blue)}.hotel-ai-floorplan-context-menu button.is-danger{color:#b42318}.hotel-ai-floorplan-context-menu svg{height:15px;width:15px}.hotel-ai-floorplan-context-menu kbd{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:800}.hotel-ai-floorplan-canvas-empty{align-items:center;display:flex;flex-direction:column;gap:.25rem;inset:0;justify-content:center;opacity:.7;padding:1rem;pointer-events:none;position:absolute;text-align:center}.hotel-ai-floorplan-canvas-empty-title{font-size:.95rem;font-weight:600}.hotel-ai-floorplan-canvas-empty-hint{color:var(--hotel-ai-text-secondary);font-size:.8125rem;max-width:22rem}.hotel-ai-manual-layout{grid-template-columns:minmax(240px,320px) minmax(0,1fr) minmax(260px,320px);min-width:0}.hotel-ai-manual-layout:not(.has-toc){grid-template-columns:minmax(0,1fr) minmax(260px,320px)}.hotel-ai-manual-inspector,.hotel-ai-manual-toc,.hotel-ai-manual-viewer{box-sizing:border-box;max-width:100%;min-width:0;padding:16px}.hotel-ai-manual-inspector-panel,.hotel-ai-manual-toc{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius)}.hotel-ai-manual-inspector{align-content:start;display:grid;gap:12px}.hotel-ai-manual-inspector-panel{display:grid;gap:10px;padding:14px}.hotel-ai-manual-toc-head{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}.hotel-ai-manual-toc-head h2{color:var(--hotel-ai-text-primary);font-size:15px;margin:0}.hotel-ai-manual-toc-head span{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:700}.hotel-ai-manual-toc-item{border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);gap:8px;margin-bottom:6px;padding:10px}.hotel-ai-manual-toc-button,.hotel-ai-manual-toc-item{background:transparent;color:inherit;display:grid;min-width:0;text-align:left;width:100%}.hotel-ai-manual-toc-button{align-items:start;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;font:inherit;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:0}.hotel-ai-manual-toc-item.active{background:#1e438014;border-color:var(--hotel-ai-system-blue)}.hotel-ai-manual-toc-button span{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}.hotel-ai-manual-toc-button strong{overflow-wrap:anywhere}.hotel-ai-manual-toc-button em,.hotel-ai-manual-total{color:var(--hotel-ai-text-secondary);font-style:normal}.hotel-ai-manual-save-error{background:#fff5f5;border:1px solid #fecdca;border-radius:var(--hotel-ai-radius-sm);color:#b42318}.hotel-ai-manual-save-error,.hotel-ai-manual-save-status{align-self:start;font-size:13px;grid-column:1/-1;margin:0 0 14px;padding:10px 12px}.hotel-ai-manual-save-status{background:#ecfdf3;border:1px solid #abefc6;border-radius:var(--hotel-ai-radius-sm);color:#067647}.hotel-ai-manual-page-nav,.hotel-ai-manual-total{align-items:center;display:flex;gap:10px;justify-content:space-between}.hotel-ai-manual-page-nav{flex-wrap:wrap}.hotel-ai-manual-page-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.hotel-ai-manual-page-filmstrip{background:#1e43800a;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:flex;gap:10px;margin-top:12px;max-width:100%;min-width:0;overflow-x:auto;padding:10px}.hotel-ai-manual-page-thumbnail-card{cursor:grab;display:grid;flex:0 0 104px;gap:6px;min-width:0}.hotel-ai-manual-page-thumbnail-card.is-dragging{opacity:.55}.hotel-ai-manual-page-thumbnail-card.is-drag-over .hotel-ai-manual-page-thumbnail{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 2px #1e43802e}.hotel-ai-manual-page-thumbnail{align-content:start;background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-secondary);cursor:pointer;display:grid;gap:6px;min-width:0;padding:8px;text-align:left;width:104px}.hotel-ai-manual-page-thumbnail.is-active{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 2px #1e438024;color:var(--hotel-ai-text-primary)}.hotel-ai-manual-page-thumbnail.is-add{border-style:dashed;flex:0 0 104px;place-items:center;text-align:center}.hotel-ai-manual-page-thumbnail-action:disabled,.hotel-ai-manual-page-thumbnail:disabled{cursor:not-allowed;opacity:.55}.hotel-ai-manual-page-thumbnail-actions{display:grid;gap:4px;grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-ai-manual-page-thumbnail-action{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;height:26px;justify-content:center;min-width:0}.hotel-ai-manual-page-thumbnail-action:not(:disabled):focus-visible,.hotel-ai-manual-page-thumbnail-action:not(:disabled):hover{border-color:var(--hotel-ai-system-blue);color:var(--hotel-ai-system-blue)}.hotel-ai-manual-page-thumbnail-canvas{border:1px solid var(--hotel-ai-separator-opaque);border-radius:4px;display:block;height:76px;margin-inline:auto;overflow:hidden;position:relative;width:54px}.hotel-ai-manual-page-thumbnail-canvas.landscape{height:54px;width:76px}.hotel-ai-manual-page-thumbnail-block{border:1px solid rgba(30,67,128,.18);display:block;overflow:hidden;position:absolute}.hotel-ai-manual-page-thumbnail-block>img{border-radius:inherit;display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.hotel-ai-manual-page-thumbnail span,.hotel-ai-manual-page-thumbnail strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-manual-page-thumbnail>span:not(.hotel-ai-manual-page-thumbnail-canvas):not(.hotel-ai-manual-page-thumbnail-add-icon){font-size:10px;font-weight:800}.hotel-ai-manual-page-thumbnail strong{color:inherit;font-size:11px}.hotel-ai-manual-page-thumbnail-add-icon{align-items:center;background:#1e438014;border-radius:50%;color:var(--hotel-ai-system-blue);display:inline-flex;height:32px;justify-content:center;width:32px}.hotel-ai-manual-viewer-label{color:var(--hotel-ai-text-secondary);font-size:13px;margin:8px 0 0}.hotel-ai-manual-selection-toolbar{align-items:center;background:#1e438014;border:1px solid rgba(30,67,128,.18);border-radius:var(--hotel-ai-radius-sm);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:10px 0 12px;padding:8px 10px}.hotel-ai-manual-selection-toolbar strong{color:var(--hotel-ai-ink);font-size:12px}.hotel-ai-manual-selection-actions{display:flex;flex-wrap:wrap;gap:6px}.hotel-ai-manual-selection-actions button{align-items:center;background:#fff;border:1px solid rgba(30,67,128,.18);border-radius:6px;color:var(--hotel-ai-system-blue);cursor:pointer;display:inline-flex;height:44px;justify-content:center;padding:0;transition:background var(--hotel-ai-transition),border-color var(--hotel-ai-transition),color var(--hotel-ai-transition);width:44px}.hotel-ai-manual-inspector-panel .hotel-ai-btn.is-active,.hotel-ai-manual-page-actions .hotel-ai-btn.is-active,.hotel-ai-manual-selection-actions button:hover:not(:disabled){background:var(--hotel-ai-system-blue);border-color:var(--hotel-ai-system-blue);color:#fff}.hotel-ai-manual-selection-actions button:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-manual-selection-actions button:disabled{cursor:not-allowed;opacity:.5}.hotel-ai-manual-selection-actions svg{height:16px;width:16px}.hotel-ai-manual-context-menu{background:#fffffffa;border:1px solid rgba(30,67,128,.18);border-radius:8px;box-shadow:0 18px 42px #1e43802e;color:var(--hotel-ai-text-primary);display:grid;gap:2px;max-height:min(420px,calc(100vh - 24px));overflow:auto;padding:7px;position:fixed;width:min(220px,calc(100vw - 24px));z-index:80}.hotel-ai-manual-context-menu strong{color:var(--hotel-ai-text-secondary);display:block;font-size:11px;font-weight:800;padding:6px 8px 7px;text-transform:uppercase}.hotel-ai-manual-context-menu button{align-items:center;background:transparent;border:0;border-radius:6px;color:var(--hotel-ai-text-primary);cursor:pointer;display:grid;font:inherit;font-size:13px;font-weight:700;gap:8px;grid-template-columns:18px minmax(0,1fr) auto;min-height:34px;padding:0 8px;text-align:left}.hotel-ai-manual-context-menu button:focus-visible,.hotel-ai-manual-context-menu button:hover:not(:disabled){background:#1e438014;color:var(--hotel-ai-system-blue);outline:none}.hotel-ai-manual-context-menu button.is-active{background:#1e43801a;color:var(--hotel-ai-system-blue)}.hotel-ai-manual-context-menu button:disabled{cursor:not-allowed;opacity:.45}.hotel-ai-manual-context-menu-field{display:grid;gap:6px;padding:6px 8px 8px}.hotel-ai-manual-context-menu-field>span{align-items:center;color:var(--hotel-ai-text-muted);display:flex;font-size:11px;font-weight:800;gap:6px;text-transform:uppercase}.hotel-ai-manual-context-menu-field select{background:#fff;border:1px solid rgba(30,67,128,.16);border-radius:6px;color:var(--hotel-ai-text-primary);font:inherit;font-size:12px;font-weight:700;min-height:32px;padding:0 8px;width:100%}.hotel-ai-manual-context-menu-palette{display:grid;gap:7px;padding:6px 8px 8px}.hotel-ai-manual-context-menu-palette>span{color:var(--hotel-ai-text-muted);font-size:11px;font-weight:800;text-transform:uppercase}.hotel-ai-manual-context-menu-swatches{display:grid;gap:5px;grid-template-columns:repeat(6,minmax(0,1fr))}.hotel-ai-manual-context-menu button.hotel-ai-manual-context-menu-swatch{border:1px solid rgba(30,67,128,.16);display:grid;grid-template-columns:1fr;justify-items:center;min-height:30px;padding:0}.hotel-ai-manual-context-menu button.hotel-ai-manual-context-menu-swatch span{border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff75;height:17px;width:17px}.hotel-ai-manual-context-menu button.hotel-ai-manual-context-menu-swatch.is-active{background:#1e438014;border-color:var(--hotel-ai-system-blue)}.hotel-ai-manual-context-menu button.is-danger{color:#b42318}.hotel-ai-manual-context-menu svg{height:15px;width:15px}.hotel-ai-manual-context-menu kbd{color:var(--hotel-ai-text-tertiary);font-size:10px;font-weight:800}.hotel-ai-manual-active-quantity,.hotel-ai-manual-block-quantity,.hotel-ai-manual-quantity-field{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;font-weight:700;gap:5px}.hotel-ai-manual-active-quantity{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);grid-template-columns:minmax(120px,auto) minmax(120px,180px) auto;margin-top:12px;padding:10px}.hotel-ai-manual-block-quantity,.hotel-ai-manual-quantity-field{align-items:center;grid-template-columns:auto minmax(0,1fr)}.hotel-ai-manual-block-quantity{margin-top:8px}.hotel-ai-manual-block-text,.hotel-ai-manual-note-field{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;font-weight:700;gap:6px}.hotel-ai-manual-block-text textarea,.hotel-ai-manual-note-field input,.hotel-ai-manual-note-field select,.hotel-ai-manual-note-field textarea{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:6px;box-sizing:border-box;color:var(--hotel-ai-text-primary);font:inherit;font-weight:600;line-height:1.45;min-width:0;padding:8px 9px;resize:vertical;width:100%}.hotel-ai-manual-note-field input[type=color]{height:36px;padding:3px}.hotel-ai-manual-note-field input[type=number]{height:36px}.hotel-ai-manual-block-text textarea,.hotel-ai-manual-note-field textarea{min-height:84px}.hotel-ai-manual-text-preview{align-content:start;color:var(--hotel-ai-text-primary);display:grid;font-size:14px;line-height:1.45;min-height:100%;padding:2px;white-space:pre-wrap}.hotel-ai-manual-text-preview span{overflow-wrap:anywhere}.hotel-ai-manual-inline-text-editor{background:#fffffff0;border:1px solid var(--hotel-ai-accent);border-radius:6px;box-sizing:border-box;color:inherit;font:inherit;line-height:inherit;min-height:100%;outline:none;padding:6px 7px;resize:none;width:100%}.hotel-ai-manual-shape-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-manual-shape-grid.is-row{margin-top:8px}.hotel-ai-manual-color-palette-editor{display:grid;gap:8px}.hotel-ai-manual-color-palette-row{align-items:end;display:grid;gap:8px;grid-template-columns:minmax(74px,.8fr) minmax(0,1.2fr) 36px}.hotel-ai-manual-color-palette-row .hotel-ai-icon-btn{height:36px;width:36px}.hotel-ai-manual-gradient-editor{display:grid;gap:8px}.hotel-ai-manual-gradient-draft-preview{align-items:flex-end;border:1px solid rgba(30,67,128,.16);border-radius:8px;display:flex;min-height:68px;overflow:hidden;padding:10px;position:relative}.hotel-ai-manual-gradient-draft-preview span{background:#111827b8;border-radius:5px;color:#fff;font-size:.72rem;font-weight:800;line-height:1.2;padding:4px 7px;position:relative;z-index:1}.hotel-ai-manual-gradient-stop-handle{border:2px solid #fff;border-radius:999px;bottom:8px;box-shadow:0 3px 10px #0f172a40;cursor:ew-resize;height:16px;padding:0;position:absolute;transform:translate(-50%);width:16px;z-index:2}.hotel-ai-manual-gradient-stop-handle:focus-visible{outline:2px solid var(--hotel-ai-accent);outline-offset:2px}.hotel-ai-manual-gradient-row{align-items:end;display:grid;gap:8px;grid-template-columns:minmax(74px,.8fr) minmax(0,1.2fr) 36px}.hotel-ai-manual-gradient-row .hotel-ai-icon-btn{height:36px;width:36px}.hotel-ai-manual-page-gradient-editor{display:grid;gap:8px}.hotel-ai-manual-page-gradient-preview{align-items:flex-end;border:1px solid rgba(30,67,128,.16);border-radius:8px;display:flex;min-height:54px;overflow:hidden;padding:10px;position:relative}.hotel-ai-manual-page-gradient-preview span{background:#111827b8;border-radius:5px;color:#fff;font-size:.72rem;font-weight:800;line-height:1.2;padding:4px 7px;position:relative;z-index:1}.hotel-ai-manual-page-gradient-row{align-items:end;display:grid;gap:8px;grid-template-columns:minmax(74px,.8fr) minmax(0,1.2fr) 36px}.hotel-ai-manual-page-gradient-row .hotel-ai-icon-btn{height:36px;width:36px}.hotel-ai-manual-transform-panel{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);margin-top:8px;padding:8px}.hotel-ai-manual-transform-panel summary{color:var(--hotel-ai-text-secondary);cursor:pointer;font-size:12px;font-weight:800}.hotel-ai-manual-transform-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:8px 0}.hotel-ai-manual-layer-actions{display:flex;gap:6px;margin-top:8px}.hotel-ai-manual-shape-check{align-items:center;color:var(--hotel-ai-text-secondary);display:flex;font-size:12px;font-weight:700;gap:8px;min-height:36px}.hotel-ai-manual-shape-check input{height:16px;width:16px}.hotel-ai-manual-block-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.hotel-ai-manual-zoom-controls{padding-inline:4px}.hotel-ai-manual-zoom-controls span{color:var(--hotel-ai-text-secondary);font-weight:800;min-width:44px;text-align:center}.hotel-ai-manual-active-quantity input,.hotel-ai-manual-block-quantity input,.hotel-ai-manual-quantity-field input{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:6px;color:var(--hotel-ai-text-primary);font:inherit;font-weight:600;height:32px;min-width:0;padding:0 9px;width:100%}.hotel-ai-manual-active-quantity input:disabled,.hotel-ai-manual-block-quantity input:disabled,.hotel-ai-manual-quantity-field input:disabled{cursor:wait;opacity:.65}.hotel-ai-manual-page-display{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);box-sizing:border-box;margin-top:14px;max-width:100%;min-height:520px;overflow:hidden;padding:28px;position:relative;transform-origin:top center;width:100%}.hotel-ai-manual-page-display.is-panning{cursor:grabbing}.hotel-ai-manual-page-display.landscape{aspect-ratio:1.414/1}.hotel-ai-manual-page-display.portrait{aspect-ratio:1/1.414}.hotel-ai-manual-page-display.is-template-drag-over{outline:2px solid rgba(30,67,128,.58);outline-offset:4px}.hotel-ai-manual-page-size-indicator{color:var(--hotel-ai-text-tertiary);font-size:12px;font-weight:800;margin:8px 0 0;text-align:center}.hotel-ai-manual-pan-indicator{background:#ffffffeb;border:1px solid var(--hotel-ai-separator);border-radius:999px;box-shadow:0 10px 24px #1e438024;color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:800;left:50%;padding:6px 12px;pointer-events:none;position:absolute;top:16px;transform:translate(-50%);z-index:40}.hotel-ai-manual-grid-overlay{background-image:linear-gradient(90deg,rgba(30,67,128,.12) 1px,transparent 0),linear-gradient(180deg,rgba(30,67,128,.12) 1px,transparent 0),linear-gradient(90deg,rgba(30,67,128,.24) 1px,transparent 0),linear-gradient(180deg,rgba(30,67,128,.24) 1px,transparent 0);border-radius:inherit;display:grid;inset:0;pointer-events:none;position:absolute}.hotel-ai-manual-grid-overlay span{background:#1e438006;border-inline:1px solid rgba(30,67,128,.14);min-width:0}.hotel-ai-manual-line-drawing-preview{height:100%;inset:0;overflow:visible;pointer-events:none;position:absolute;width:100%;z-index:8999}.hotel-ai-manual-line-drawing-preview line{stroke:var(--hotel-ai-system-blue);stroke-dasharray:8 4;stroke-linecap:round;stroke-width:3}.hotel-ai-manual-line-drawing-preview circle{fill:var(--hotel-ai-system-blue)}.hotel-ai-manual-group-bounding-box{background:#1e438014;border:2px dashed rgba(30,67,128,.72);border-radius:6px;box-shadow:inset 0 0 0 1px #ffffffb8,0 10px 24px #1e43801f;pointer-events:none;position:absolute;z-index:8998}.hotel-ai-manual-selection-bounding-box{background:#1e43800f;border:2px dashed rgba(30,67,128,.64);border-radius:6px;box-shadow:inset 0 0 0 1px #ffffffa3,0 10px 24px #1e43801a;pointer-events:none;position:absolute;z-index:8997}.hotel-ai-manual-block{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:4px;cursor:grab;font-size:11px;overflow:hidden;padding:8px;position:absolute;touch-action:none;transition:border-color var(--hotel-ai-transition),box-shadow var(--hotel-ai-transition);-webkit-user-select:none;-moz-user-select:none;user-select:none}.hotel-ai-manual-block:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-manual-block.is-dragging{border-color:var(--hotel-ai-system-blue);box-shadow:0 8px 24px #1e43802e;cursor:grabbing}.hotel-ai-manual-block.is-grouped:not(.is-selected){border-color:#1e438052;box-shadow:inset 0 0 0 1px #1e438024}.hotel-ai-manual-block.is-selected{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 2px #1e43802e,0 8px 24px #1e438024}.hotel-ai-manual-block.is-shape.is-selected{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-manual-block.is-locked{cursor:default}.hotel-ai-manual-canvas-actions,.hotel-ai-manual-group-canvas-actions,.hotel-ai-manual-selection-canvas-actions{align-items:center;background:#0c1220f0;border:1px solid hsla(0,0%,100%,.16);border-radius:8px;box-shadow:0 10px 24px #0c122038;display:inline-flex;gap:4px;padding:4px;position:absolute;right:-4px;top:-38px;z-index:6}.hotel-ai-manual-group-canvas-actions{flex-wrap:wrap;justify-content:flex-end;pointer-events:auto;right:-4px;top:-78px;width:236px;z-index:5}.hotel-ai-manual-selection-canvas-actions{flex-wrap:wrap;justify-content:center;left:50%;pointer-events:auto;top:-78px;transform:translate(-50%);width:236px;z-index:5}.hotel-ai-manual-canvas-actions button,.hotel-ai-manual-group-canvas-actions button,.hotel-ai-manual-selection-canvas-actions button{background:#ffffff14;border:1px solid hsla(0,0%,100%,.12);border-radius:6px;color:#ffffffd1;cursor:pointer;display:inline-grid;height:28px;padding:0;place-items:center;transition:background var(--hotel-ai-transition),border-color var(--hotel-ai-transition),color var(--hotel-ai-transition);width:28px}.hotel-ai-manual-canvas-actions button:focus-visible,.hotel-ai-manual-canvas-actions button:hover:not(:disabled),.hotel-ai-manual-group-canvas-actions button:focus-visible,.hotel-ai-manual-group-canvas-actions button:hover:not(:disabled),.hotel-ai-manual-selection-canvas-actions button:focus-visible,.hotel-ai-manual-selection-canvas-actions button:hover:not(:disabled){background:#ffffff29;border-color:#ffffff3d;color:#fff}.hotel-ai-manual-canvas-actions button.is-danger,.hotel-ai-manual-group-canvas-actions button.is-danger,.hotel-ai-manual-selection-canvas-actions button.is-danger{color:#fecaca}.hotel-ai-manual-canvas-actions button.is-danger:focus-visible,.hotel-ai-manual-canvas-actions button.is-danger:hover:not(:disabled),.hotel-ai-manual-group-canvas-actions button.is-danger:focus-visible,.hotel-ai-manual-group-canvas-actions button.is-danger:hover:not(:disabled),.hotel-ai-manual-selection-canvas-actions button.is-danger:focus-visible,.hotel-ai-manual-selection-canvas-actions button.is-danger:hover:not(:disabled){background:#dc26266b;border-color:#f8717180;color:#fff}.hotel-ai-manual-canvas-actions button:disabled,.hotel-ai-manual-group-canvas-actions button:disabled,.hotel-ai-manual-selection-canvas-actions button:disabled{cursor:not-allowed;opacity:.46}.hotel-ai-manual-marquee-selection{background:#1e43801f;border:1px solid var(--hotel-ai-system-blue);border-radius:4px;box-shadow:inset 0 0 0 1px #ffffffb8;pointer-events:none;position:absolute;z-index:9000}.hotel-ai-manual-group-resize-handle,.hotel-ai-manual-group-rotate-handle,.hotel-ai-manual-resize-handle,.hotel-ai-manual-rotate-handle{align-items:center;background:var(--hotel-ai-system-blue);border:2px solid #fff;border-radius:999px;box-shadow:0 2px 8px #1e438038;cursor:pointer;display:inline-flex;height:14px;justify-content:center;opacity:0;padding:0;position:absolute;transition:opacity var(--hotel-ai-transition),transform var(--hotel-ai-transition);width:14px;z-index:4}.hotel-ai-manual-group-resize-handle,.hotel-ai-manual-group-rotate-handle{opacity:1;pointer-events:auto}.hotel-ai-manual-group-rotate-handle{cursor:grab;left:50%;top:-31px;transform:translate(-50%)}.hotel-ai-manual-group-rotate-handle:after{background:#1e4380b8;content:"";height:20px;left:50%;pointer-events:none;position:absolute;top:100%;transform:translate(-50%);width:2px}.hotel-ai-manual-block.is-dragging .hotel-ai-manual-resize-handle,.hotel-ai-manual-block.is-dragging .hotel-ai-manual-rotate-handle,.hotel-ai-manual-block.is-selected .hotel-ai-manual-resize-handle,.hotel-ai-manual-block.is-selected .hotel-ai-manual-rotate-handle,.hotel-ai-manual-block:focus-within .hotel-ai-manual-resize-handle,.hotel-ai-manual-block:focus-within .hotel-ai-manual-rotate-handle,.hotel-ai-manual-block:hover .hotel-ai-manual-resize-handle,.hotel-ai-manual-block:hover .hotel-ai-manual-rotate-handle{opacity:1}.hotel-ai-manual-group-resize-handle:focus-visible,.hotel-ai-manual-group-rotate-handle:focus-visible,.hotel-ai-manual-resize-handle:focus-visible,.hotel-ai-manual-rotate-handle:focus-visible{opacity:1;outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-manual-group-resize-handle:hover,.hotel-ai-manual-group-rotate-handle:hover,.hotel-ai-manual-resize-handle:hover,.hotel-ai-manual-rotate-handle:hover{transform:scale(1.08)}.hotel-ai-manual-group-rotate-handle:focus-visible,.hotel-ai-manual-group-rotate-handle:hover{transform:translate(-50%) scale(1.08)}.hotel-ai-manual-group-resize-handle.is-n:hover,.hotel-ai-manual-group-resize-handle.is-s:hover,.hotel-ai-manual-resize-handle.is-n:hover,.hotel-ai-manual-resize-handle.is-s:hover{transform:translate(-50%) scale(1.08)}.hotel-ai-manual-group-resize-handle.is-e:hover,.hotel-ai-manual-group-resize-handle.is-w:hover,.hotel-ai-manual-resize-handle.is-e:hover,.hotel-ai-manual-resize-handle.is-w:hover{transform:translateY(-50%) scale(1.08)}.hotel-ai-manual-group-resize-handle.is-nw,.hotel-ai-manual-resize-handle.is-nw{cursor:nwse-resize;left:3px;top:3px}.hotel-ai-manual-group-resize-handle.is-n,.hotel-ai-manual-resize-handle.is-n{cursor:ns-resize;height:10px;left:50%;top:3px;transform:translate(-50%);width:24px}.hotel-ai-manual-group-resize-handle.is-ne,.hotel-ai-manual-resize-handle.is-ne{cursor:nesw-resize;right:3px;top:3px}.hotel-ai-manual-group-resize-handle.is-e,.hotel-ai-manual-resize-handle.is-e{cursor:ew-resize;height:24px;right:3px;top:50%;transform:translateY(-50%);width:10px}.hotel-ai-manual-group-resize-handle.is-sw,.hotel-ai-manual-resize-handle.is-sw{bottom:3px;cursor:nesw-resize;left:3px}.hotel-ai-manual-group-resize-handle.is-s,.hotel-ai-manual-resize-handle.is-s{bottom:3px;cursor:ns-resize;height:10px;left:50%;transform:translate(-50%);width:24px}.hotel-ai-manual-group-resize-handle.is-se,.hotel-ai-manual-resize-handle.is-se{bottom:3px;cursor:nwse-resize;right:3px}.hotel-ai-manual-group-resize-handle.is-w,.hotel-ai-manual-resize-handle.is-w{cursor:ew-resize;height:24px;left:3px;top:50%;transform:translateY(-50%);width:10px}.hotel-ai-manual-rotate-handle{cursor:grab;left:50%;top:3px;transform:translate(-50%)}.hotel-ai-manual-rotate-handle:hover{transform:translate(-50%) scale(1.08)}.hotel-ai-manual-block.is-shape{background:transparent;border:0;padding:0}.hotel-ai-manual-shape-line,.hotel-ai-manual-shape-preview{display:block;height:100%;width:100%}.hotel-ai-manual-block .hotel-ai-manual-color-palette-preview,.hotel-ai-manual-block .hotel-ai-manual-color-preview,.hotel-ai-manual-block .hotel-ai-manual-gradient-preview{align-items:flex-end;border-radius:inherit;display:flex;height:100%;min-height:72px;overflow:hidden;padding:10px;width:100%}.hotel-ai-manual-block .hotel-ai-manual-color-palette-preview{align-items:stretch;padding:0}.hotel-ai-manual-block .hotel-ai-manual-color-palette-preview.is-vertical{flex-direction:column}.hotel-ai-manual-block .hotel-ai-manual-color-palette-swatch{align-items:flex-end;display:flex;flex:1 1 0;min-height:0;min-width:0;padding:10px}.hotel-ai-manual-block .hotel-ai-manual-color-palette-swatch span,.hotel-ai-manual-block .hotel-ai-manual-color-preview span,.hotel-ai-manual-block .hotel-ai-manual-gradient-preview span{background:#111827b8;border-radius:5px;color:#fff;font-size:.72rem;font-weight:800;line-height:1.2;max-width:100%;overflow:hidden;padding:4px 7px;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-manual-stats-preview{background:linear-gradient(135deg,#1e43801f,#2f6f5e1f);border:1px solid rgba(30,67,128,.16);border-radius:inherit;color:var(--hotel-ai-ink);display:grid;gap:4px 8px;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:92px;min-width:0;overflow:hidden;padding:12px;width:100%}.hotel-ai-manual-stats-preview svg{color:var(--hotel-ai-system-blue)}.hotel-ai-manual-stats-preview span{color:var(--hotel-ai-text-secondary);font-size:.68rem;font-weight:800;line-height:1.15;min-width:0;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.hotel-ai-manual-stats-preview strong{align-self:center;color:var(--hotel-ai-ink);font-size:1.5rem;grid-column:1/-1;line-height:1;min-width:0;overflow-wrap:anywhere}.hotel-ai-manual-stats-preview small{color:var(--hotel-ai-text-secondary);font-size:.72rem;font-weight:700;grid-column:1/-1;line-height:1.2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-manual-table-preview{background:#fffffff5;border:1px solid rgba(30,67,128,.14);border-radius:8px;color:var(--hotel-ai-ink);display:grid;gap:8px;height:100%;min-width:0;overflow:hidden;padding:10px;width:100%}.hotel-ai-manual-table-preview strong{font-size:.76rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-manual-table-preview table{border-collapse:collapse;font-size:.68rem;min-width:0;table-layout:fixed;width:100%}.hotel-ai-manual-table-preview td,.hotel-ai-manual-table-preview th{border:1px solid rgba(30,67,128,.14);overflow:hidden;padding:4px 5px;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-manual-table-preview th{background:#1e438014;color:var(--hotel-ai-ink)}.hotel-ai-manual-table-editor{display:grid;gap:8px;margin-top:10px}.hotel-ai-manual-block.is-circle .hotel-ai-manual-shape-preview{border-radius:999px}.hotel-ai-manual-block.is-line{overflow:visible}.hotel-ai-manual-material-preview{border-radius:inherit;display:grid;gap:5px;grid-template-rows:minmax(0,1fr) auto auto;height:100%;min-height:92px;overflow:hidden;padding:8px;width:100%}.hotel-ai-manual-material-preview img{border-radius:6px;min-height:0;-o-object-fit:cover;object-fit:cover;width:100%}.hotel-ai-manual-material-preview small,.hotel-ai-manual-material-preview span{background:#111827c2;border-radius:5px;color:#fff;max-width:100%;overflow:hidden;padding:3px 6px;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-manual-material-preview span{font-size:.72rem;font-weight:800}.hotel-ai-manual-material-preview small{font-size:.64rem;font-weight:700}.hotel-ai-manual-block>img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.hotel-ai-manual-block div{display:grid;gap:4px}.hotel-ai-manual-block span{color:var(--hotel-ai-text-secondary)}.hotel-ai-manual-block small{color:var(--hotel-ai-system-blue);font-weight:700}.hotel-ai-manual-block-row{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:10px}.hotel-ai-manual-asset-row span,.hotel-ai-manual-asset-row strong,.hotel-ai-manual-block-row small,.hotel-ai-manual-block-row span,.hotel-ai-manual-block-row strong{display:block}.hotel-ai-manual-asset-row span,.hotel-ai-manual-block-row small,.hotel-ai-manual-block-row span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-manual-block-row small{display:-webkit-box;margin-top:4px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.hotel-ai-manual-block-row em{align-self:start;background:#15613b1a;border-radius:999px;color:var(--hotel-ai-system-green);font-size:11px;font-style:normal;font-weight:700;padding:3px 7px}.hotel-ai-manual-block-row em.is-hidden{background:#4354661a;color:var(--hotel-ai-text-secondary)}.hotel-ai-manual-asset-row{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:10px;grid-template-columns:52px minmax(0,1fr);padding:8px}.hotel-ai-manual-asset-empty,.hotel-ai-manual-asset-row img{background:#fff;border-radius:4px;height:52px;-o-object-fit:cover;object-fit:cover;width:52px}.hotel-ai-manual-material-library,.hotel-ai-manual-material-list{display:grid;gap:10px}.hotel-ai-manual-material-category{display:grid;gap:8px}.hotel-ai-manual-material-category h3{color:var(--hotel-ai-text-primary);font-size:13px;margin:0}.hotel-ai-manual-material-row{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:10px;grid-template-columns:52px minmax(0,1fr);padding:8px}.hotel-ai-manual-asset-row[draggable=true],.hotel-ai-manual-material-row[draggable=true]{cursor:grab}.hotel-ai-manual-asset-row[draggable=true]:active,.hotel-ai-manual-material-row[draggable=true]:active{cursor:grabbing}.hotel-ai-manual-material-row img,.hotel-ai-manual-material-swatch{background:#f7f7f7;border-radius:4px;height:52px;-o-object-fit:cover;object-fit:cover;width:52px}.hotel-ai-manual-material-swatch{align-items:center;color:var(--hotel-ai-text-secondary);display:inline-flex;justify-content:center}.hotel-ai-manual-material-row small,.hotel-ai-manual-material-row span,.hotel-ai-manual-material-row strong{display:block}.hotel-ai-manual-material-row small,.hotel-ai-manual-material-row span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-manual-material-row .hotel-ai-btn{margin-top:8px;min-height:34px}.hotel-ai-manual-page-display header,.hotel-ai-spec-chip-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px}.hotel-ai-spec-sheet-placeholder{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);min-height:380px;padding:32px}.hotel-ai-spec-sheet-placeholder dl{display:grid;gap:10px}.hotel-ai-spec-sheet-placeholder dl div{display:grid;gap:12px;grid-template-columns:120px 1fr}.hotel-ai-spec-sheet-placeholder dt{color:var(--hotel-ai-text-secondary);font-weight:700}.hotel-ai-spec-sheet-placeholder dd{margin:0}.hotel-ai-moodboard-container{width:min(1200px,100%)}.hotel-ai-moodboard-cover{border-radius:var(--hotel-ai-radius);margin-bottom:20px;overflow:hidden}.hotel-ai-moodboard-cover img{border-radius:var(--hotel-ai-radius);display:block;width:100%}.hotel-ai-moodboard-layout{align-items:start;grid-template-columns:260px 1fr}.hotel-ai-moodboard-content,.hotel-ai-moodboard-section{min-width:0}.hotel-ai-moodboard-toc{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);display:grid;gap:8px;padding:16px;position:sticky;top:86px}.hotel-ai-moodboard-toc h2{font-size:15px;margin:0 0 6px}.hotel-ai-moodboard-toc a{color:var(--hotel-ai-text-secondary);display:flex;font-size:13px;gap:10px;justify-content:space-between;min-width:0;text-decoration:none}.hotel-ai-moodboard-toc a span{min-width:0;overflow-wrap:anywhere}.hotel-ai-moodboard-toc a em{color:var(--hotel-ai-system-blue);font-style:normal;font-weight:700;max-width:45%;overflow-wrap:anywhere;text-align:right}.hotel-ai-moodboard-section{margin-bottom:18px;padding:20px}.hotel-ai-moodboard-hero{align-items:center;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr)}.hotel-ai-moodboard-area-grid img,.hotel-ai-moodboard-hero img,.hotel-ai-moodboard-visual-grid img{border-radius:var(--hotel-ai-radius);display:block;-o-object-fit:cover;object-fit:cover;width:100%}.hotel-ai-moodboard-hero img{max-height:360px}.hotel-ai-moodboard-create{display:grid;gap:16px}.hotel-ai-moodboard-create-header{align-items:start;display:flex;gap:14px;justify-content:space-between}.hotel-ai-moodboard-create-header span{background:#1e438014;border-radius:999px;color:var(--hotel-ai-system-blue);flex:0 0 auto;font-size:12px;font-weight:700;padding:5px 10px}.hotel-ai-moodboard-create-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.hotel-ai-moodboard-generate-form,.hotel-ai-moodboard-polyhaven-panel{display:grid;gap:12px;min-width:0}.hotel-ai-moodboard-generate-form label,.hotel-ai-moodboard-search-row label{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;font-weight:700;gap:6px;min-width:0}.hotel-ai-moodboard-generate-form textarea,.hotel-ai-moodboard-search-row input,.hotel-ai-moodboard-search-row select{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-primary);font:inherit;min-width:0;padding:10px 12px;width:100%}.hotel-ai-moodboard-generate-form textarea{min-height:104px;resize:vertical}.hotel-ai-moodboard-generate-form textarea:focus,.hotel-ai-moodboard-search-row input:focus,.hotel-ai-moodboard-search-row select:focus{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e438024;outline:none}.hotel-ai-moodboard-material-select{display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-moodboard-material-select>span{color:var(--hotel-ai-text-secondary);flex:1 0 100%;font-size:12px;font-weight:700}.hotel-ai-moodboard-material-select label{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:999px;color:var(--hotel-ai-text-primary);display:inline-flex;font-size:12px;font-weight:700;gap:7px;max-width:100%;padding:7px 10px}.hotel-ai-moodboard-material-select input{flex:0 0 auto}.hotel-ai-moodboard-material-select label span{min-width:0;overflow-wrap:anywhere}.hotel-ai-moodboard-search-row{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(110px,150px) auto}.hotel-ai-polyhaven-results{display:grid;gap:8px}.hotel-ai-polyhaven-results article{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:10px;grid-template-columns:54px minmax(0,1fr) auto auto;min-width:0;padding:8px}.hotel-ai-polyhaven-results img{border-radius:var(--hotel-ai-radius-sm);height:54px;-o-object-fit:cover;object-fit:cover;width:54px}.hotel-ai-polyhaven-results div{min-width:0}.hotel-ai-polyhaven-results h3{font-size:13px;margin:0;overflow-wrap:anywhere}.hotel-ai-polyhaven-results span{color:var(--hotel-ai-text-secondary);display:block;font-size:12px;margin-top:3px}.hotel-ai-polyhaven-preview-toggle{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:999px;display:inline-flex;gap:3px;margin-top:8px;padding:3px}.hotel-ai-polyhaven-preview-toggle button{background:transparent;border:0;border-radius:999px;color:var(--hotel-ai-text-secondary);cursor:pointer;font:inherit;font-size:11px;font-weight:800;min-height:36px;padding:6px 10px}.hotel-ai-polyhaven-preview-toggle button:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-polyhaven-preview-toggle button.is-selected{background:var(--hotel-ai-system-blue);color:#fff}.hotel-ai-polyhaven-map-summary{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:8px;grid-column:1/-1;padding:10px}.hotel-ai-polyhaven-map-summary h4,.hotel-ai-polyhaven-map-summary p{margin:0}.hotel-ai-polyhaven-map-summary h4{color:var(--hotel-ai-text-primary);font-size:12px;font-weight:800}.hotel-ai-polyhaven-map-summary p{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-polyhaven-preview-map{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-polyhaven-preview-map span{margin-top:0}.hotel-ai-polyhaven-map-summary ul{display:grid;gap:6px;list-style:none;margin:0;padding:0}.hotel-ai-polyhaven-map-summary li{align-items:center;color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:8px;grid-template-columns:minmax(0,1fr) auto auto}.hotel-ai-polyhaven-map-summary li span:first-child{color:var(--hotel-ai-text-primary);font-weight:700;min-width:0;overflow-wrap:anywhere}.hotel-ai-polyhaven-downloads{display:grid;gap:8px;grid-column:1/-1}.hotel-ai-polyhaven-downloads h4{color:var(--hotel-ai-text-primary);font-size:12px;font-weight:800;margin:0}.hotel-ai-polyhaven-downloads ul{display:grid;gap:6px;list-style:none;margin:0;padding:0}.hotel-ai-polyhaven-downloads li{align-items:center;color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:8px;grid-template-columns:minmax(0,1fr) auto auto}.hotel-ai-polyhaven-downloads li a{justify-content:flex-start;min-width:0;overflow-wrap:anywhere}.hotel-ai-moodboard-job-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-moodboard-job-grid article{align-items:start;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:flex;gap:12px;justify-content:space-between;min-width:0;padding:12px}.hotel-ai-moodboard-job-grid article div{display:grid;gap:4px;min-width:0}.hotel-ai-moodboard-job-grid h3{margin:0;text-transform:capitalize}.hotel-ai-moodboard-job-grid p,.hotel-ai-moodboard-job-grid span{color:var(--hotel-ai-text-secondary);font-size:12px;margin:0;overflow-wrap:anywhere}.hotel-ai-moodboard-refinement-panel{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:grid;gap:14px;margin-top:14px;padding:14px}.hotel-ai-moodboard-refinement-panel h3,.hotel-ai-moodboard-refinement-panel p{margin:0}.hotel-ai-refinement-variant-row{display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-refinement-variant{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-primary);cursor:pointer;display:grid;font:inherit;gap:6px;padding:8px;text-align:left;width:104px}.hotel-ai-refinement-variant.is-selected{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e438024}.hotel-ai-refinement-variant img{aspect-ratio:1;border-radius:var(--hotel-ai-radius-sm);-o-object-fit:cover;object-fit:cover;width:100%}.hotel-ai-refinement-variant span{color:var(--hotel-ai-text-secondary);font-size:11px;min-width:0;overflow-wrap:anywhere}.hotel-ai-refinement-manual-actions{display:flex;justify-content:flex-start}.hotel-ai-refinement-messages{display:grid;gap:8px}.hotel-ai-refinement-messages p{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:grid;gap:3px;padding:9px 10px}.hotel-ai-refinement-messages strong{color:var(--hotel-ai-system-blue);font-size:12px;text-transform:capitalize}.hotel-ai-refinement-messages span{color:var(--hotel-ai-text-secondary);font-size:13px;overflow-wrap:anywhere}.hotel-ai-moodboard-refinement-form{display:grid;gap:10px}.hotel-ai-moodboard-refinement-form label{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;font-weight:700;gap:6px}.hotel-ai-moodboard-refinement-form textarea{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-primary);font:inherit;min-height:86px;padding:10px 12px;resize:vertical;width:100%}.hotel-ai-moodboard-refinement-form textarea:focus{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e438024;outline:none}.hotel-ai-inline-error,.hotel-ai-inline-success{border-radius:var(--hotel-ai-radius-sm);font-size:13px;font-weight:700;margin:0;padding:9px 11px}.hotel-ai-inline-error{background:#9f1d1d14;color:#9f1d1d}.hotel-ai-inline-success{background:#20613b17;color:#20613b}.hotel-ai-context-boundary{align-items:center;display:flex;flex-direction:column;gap:12px;padding:48px 24px;text-align:center}.hotel-ai-context-boundary-heading{font-size:20px;font-weight:600;margin:0}.hotel-ai-context-boundary-message{color:var(--hotel-ai-ink-soft,rgba(20,24,31,.64));font-size:14px;margin:0}.hotel-ai-context-boundary.is-error .hotel-ai-context-boundary-message{background:#9f1d1d14;border-radius:var(--hotel-ai-radius-sm);color:#9f1d1d;padding:9px 11px}.hotel-ai-moodboard-canvas{background:repeating-linear-gradient(0deg,var(--hotel-ai-separator) 0,var(--hotel-ai-separator) 1px,transparent 1px,transparent 40px),repeating-linear-gradient(90deg,var(--hotel-ai-separator) 0,var(--hotel-ai-separator) 1px,transparent 1px,transparent 40px),var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);height:560px;overflow:hidden;position:relative;width:100%}.hotel-ai-moodboard-canvas-workspace{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(260px,320px)}.hotel-ai-moodboard-canvas-side{align-content:start;display:grid;gap:14px;max-height:560px;min-width:0;overflow-y:auto}.hotel-ai-moodboard-canvas-side>.hotel-ai-moodboard-adjustments,.hotel-ai-moodboard-canvas-side>.hotel-ai-moodboard-layers{margin-top:0}.hotel-ai-moodboard-canvas-toolbar{align-items:center;display:flex;gap:12px;margin-bottom:10px}.hotel-ai-moodboard-canvas-toolbar .hotel-ai-btn.is-active{border-color:var(--hotel-ai-accent);color:var(--hotel-ai-accent)}.hotel-ai-moodboard-canvas-toolbar-hint{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-moodboard-canvas.is-drawing{cursor:crosshair}.hotel-ai-moodboard-canvas.is-drawing .hotel-ai-moodboard-canvas-element{pointer-events:none}.hotel-ai-moodboard-canvas-drawing{display:block;height:100%;width:100%}.hotel-ai-moodboard-canvas-element-drawing{background:transparent;box-shadow:none}.hotel-ai-moodboard-canvas-drawing-preview{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}.hotel-ai-moodboard-canvas-empty{align-items:center;color:var(--hotel-ai-text-secondary);display:flex;font-size:13px;inset:0;justify-content:center;margin:0;padding:24px;position:absolute;text-align:center}.hotel-ai-moodboard-canvas-element{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius-sm);box-shadow:0 1px 4px #0000001f;cursor:grab;overflow:hidden;position:absolute;touch-action:none}.hotel-ai-moodboard-canvas-element:active{cursor:grabbing}.hotel-ai-moodboard-canvas-element.is-locked{cursor:default}.hotel-ai-moodboard-canvas-element.is-selected{outline:2px solid var(--hotel-ai-system-blue);outline-offset:1px;overflow:visible}.hotel-ai-moodboard-canvas-element:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:1px}.hotel-ai-moodboard-canvas-resize-handle{border:2px solid var(--hotel-ai-bg-elevated);border-radius:3px;bottom:-6px;cursor:nwse-resize;right:-6px}.hotel-ai-moodboard-canvas-resize-handle,.hotel-ai-moodboard-canvas-rotate-handle{background:var(--hotel-ai-system-blue);height:14px;padding:0;position:absolute;touch-action:none;width:14px}.hotel-ai-moodboard-canvas-rotate-handle{border:2px solid var(--hotel-ai-bg-elevated);border-radius:50%;cursor:grab;left:50%;top:-26px;transform:translate(-50%)}.hotel-ai-moodboard-canvas-rotate-handle:before{background:var(--hotel-ai-system-blue);content:"";height:12px;left:50%;position:absolute;top:100%;transform:translate(-50%);width:2px}.hotel-ai-moodboard-layers{display:grid;gap:8px;margin-top:14px}.hotel-ai-moodboard-layers h3{color:var(--hotel-ai-text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin:0;text-transform:uppercase}.hotel-ai-moodboard-layers-list{display:grid;gap:4px;list-style:none;margin:0;padding:0}.hotel-ai-moodboard-layers-list li{align-items:center;background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:flex;gap:8px;justify-content:space-between;padding:4px 8px}.hotel-ai-moodboard-layers-list li.is-selected{border-color:var(--hotel-ai-system-blue);outline:1px solid var(--hotel-ai-system-blue)}.hotel-ai-moodboard-layer-label{background:transparent;border:0;color:var(--hotel-ai-text-primary);cursor:pointer;flex:1 1 auto;font-size:12px;min-width:0;overflow:hidden;padding:2px 0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-moodboard-layer-actions{align-items:center;display:inline-flex;flex:0 0 auto;gap:2px}.hotel-ai-moodboard-layer-actions button{align-items:center;background:transparent;border:0;border-radius:var(--hotel-ai-radius-sm);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;height:24px;justify-content:center;padding:0;width:24px}.hotel-ai-moodboard-layer-actions button:hover{background:var(--hotel-ai-separator)}.hotel-ai-moodboard-layer-delete:hover{color:var(--hotel-ai-system-red)}.hotel-ai-moodboard-adjustments{display:grid;gap:8px;margin-top:14px}.hotel-ai-moodboard-adjustments h3{color:var(--hotel-ai-text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin:0;text-transform:uppercase}.hotel-ai-moodboard-adjustments label{align-items:center;color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:10px;grid-template-columns:90px 1fr}.hotel-ai-moodboard-adjustments input[type=range]{width:100%}.hotel-ai-moodboard-adjustments input[type=number]{border:1px solid var(--hotel-ai-separator-opaque,var(--hotel-ai-separator));border-radius:var(--hotel-ai-radius-sm);font:inherit;min-height:30px;padding:4px 8px;width:100%}.hotel-ai-moodboard-adjustments-group{color:var(--hotel-ai-text-muted);font-size:10px;font-weight:700;letter-spacing:.08em;margin:6px 0 0;text-transform:uppercase}.hotel-ai-moodboard-canvas-image-frame{border-radius:var(--hotel-ai-radius-sm);height:100%;overflow:hidden;position:relative;width:100%}.hotel-ai-moodboard-canvas-image{display:block;height:100%;left:0;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;width:100%}.hotel-ai-moodboard-canvas-palette{display:flex;height:100%;width:100%}.hotel-ai-moodboard-canvas-palette span{flex:1 1 0}.hotel-ai-moodboard-canvas-label{align-items:center;color:var(--hotel-ai-text-primary);display:flex;font-size:12px;height:100%;justify-content:center;overflow-wrap:anywhere;padding:8px;text-align:center;width:100%}.hotel-ai-moodboard-visual-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-moodboard-visual-grid article{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);display:grid;gap:10px;min-width:0;padding:12px}.hotel-ai-moodboard-visual-grid h3,.hotel-ai-moodboard-visual-grid p{margin:0;min-width:0;overflow-wrap:anywhere}.hotel-ai-moodboard-image-actions{display:flex;flex-wrap:wrap;gap:8px}.hotel-ai-moodboard-image-actions .hotel-ai-btn{min-width:0}.hotel-ai-moodboard-schedule{margin-top:12px;max-height:430px}.hotel-ai-moodboard-schedule td span{color:var(--hotel-ai-text-secondary);display:block;font-size:12px;margin-top:3px}.hotel-ai-moodboard-floorplan{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(220px,280px);margin-top:12px}.hotel-ai-moodboard-floorplan img{background:#fff;border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius);display:block;max-height:430px;-o-object-fit:contain;object-fit:contain;width:100%}.hotel-ai-moodboard-floorplan dl{display:grid;gap:10px;margin:0}.hotel-ai-moodboard-floorplan dl div,.hotel-ai-moodboard-spec-list article{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator);border-radius:var(--hotel-ai-radius-sm);display:flex;gap:12px;justify-content:space-between;padding:12px}.hotel-ai-moodboard-floorplan dt,.hotel-ai-moodboard-spec-list span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-moodboard-floorplan dd{color:var(--hotel-ai-text-primary);font-weight:700;margin:3px 0 0}.hotel-ai-moodboard-spec-list{display:grid;gap:8px;margin-top:12px}.hotel-ai-moodboard-spec-list article div{display:grid;gap:3px;min-width:0}.hotel-ai-moodboard-spec-list strong{overflow-wrap:anywhere}.hotel-ai-moodboard-spec-list em{align-self:start;background:#1e438014;border-radius:999px;color:var(--hotel-ai-system-blue);flex:0 0 auto;font-size:12px;font-style:normal;font-weight:700;padding:3px 8px}.hotel-ai-palette-row{display:flex;flex-wrap:wrap;gap:6px}.hotel-ai-palette-row span{border:1px solid var(--hotel-ai-separator-opaque);border-radius:50%;height:34px;width:34px}.hotel-ai-moodboard-palette-list{display:grid;gap:12px}.hotel-ai-moodboard-palette-item{display:grid;gap:10px}.hotel-ai-moodboard-palette-item-head{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.hotel-ai-moodboard-palette-item-head strong{color:var(--hotel-ai-text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-moodboard-palette-item-head .hotel-ai-btn{flex:0 1 auto;min-height:36px;white-space:normal}.hotel-ai-moodboard-material-action-list{display:grid;gap:10px}.hotel-ai-moodboard-material-action{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.hotel-ai-moodboard-material-action>span{color:var(--hotel-ai-text-primary);font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hotel-ai-moodboard-material-action .hotel-ai-btn{flex:0 1 auto;min-height:36px;white-space:normal}.hotel-ai-milestone-row,.hotel-ai-mini-schedule,.hotel-ai-moodboard-area-grid,.hotel-ai-spec-chip-row{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.hotel-ai-milestone-row span,.hotel-ai-mini-schedule span,.hotel-ai-moodboard-area-grid article,.hotel-ai-spec-chip-row span{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);padding:12px}.hotel-ai-milestone-row span{display:grid;gap:4px}.hotel-ai-milestone-row strong{color:var(--hotel-ai-system-blue);font-size:22px}.hotel-ai-milestone-row em{color:var(--hotel-ai-text-secondary);font-size:12px;font-style:normal}.hotel-ai-moodboard-area-grid h3{margin:0 0 8px}.hotel-ai-moodboard-area-grid ul{color:var(--hotel-ai-text-secondary);font-size:13px;margin:0;padding-left:18px}.hotel-ai-submittal-sheet{padding:22px}.hotel-ai-submittal-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-ai-submittal-info-grid section{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);display:grid;gap:10px;padding:16px}.hotel-ai-submittal-info-grid label{color:var(--hotel-ai-text-secondary);display:grid;font-size:12px;gap:4px}.hotel-ai-submittal-info-grid input,.hotel-ai-submittal-remarks textarea{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font:inherit;padding:9px 10px;width:100%}.hotel-ai-checkbox-row{align-items:center;display:flex!important;flex-direction:row;grid-template-columns:auto 1fr}.hotel-ai-submittal-progress{margin:18px 0}.hotel-ai-submittal-progress>span,.hotel-ai-submittal-progress>strong{display:inline-block;margin:0 12px 8px 0}.hotel-ai-submittal-checklist{display:grid;gap:16px}.hotel-ai-submittal-section{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);display:grid;gap:8px;padding:16px}.hotel-ai-submittal-row{align-items:center;background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);cursor:pointer;display:grid;gap:10px;grid-template-columns:22px 1fr;padding:10px;text-align:left}.hotel-ai-submittal-row span{background:#fff;border:1px solid var(--hotel-ai-separator-opaque);border-radius:4px;color:#fff;display:grid;font-size:12px;height:18px;place-items:center;width:18px}.hotel-ai-submittal-row.checked span{background:var(--hotel-ai-system-green);border-color:var(--hotel-ai-system-green)}.hotel-ai-submittal-final,.hotel-ai-submittal-remarks{background:var(--hotel-ai-bg-elevated);border-radius:var(--hotel-ai-radius);margin-top:18px;padding:16px}.hotel-ai-submittal-final{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between}.hotel-ai-submittal-final h2,.hotel-ai-submittal-remarks h2{color:var(--hotel-ai-system-blue);margin:0 0 8px}.hotel-ai-submittal-container.hilton-submittal{background:#eef1f5;color:#1a1a1a;max-width:980px;padding:24px 24px 120px}.hs-final,.hs-sheet{background:#fff;border:1px solid #d0d5dc;border-radius:8px;box-shadow:0 2px 12px #00000014;color:#1a1a1a;color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;overflow:hidden}.hs-title-bar{background:#f2f4f7;border-bottom:1px solid #d0d5dc;padding:16px 28px;text-align:center}.hs-title-bar h1{color:#0a0a0a;font-family:Libre Bodoni,Georgia,serif;font-size:20px;font-weight:700;letter-spacing:0;line-height:1.3;margin:0 0 6px}.hs-subtitle{color:#3a3a3a;font-size:11px;line-height:1.5;margin:0 auto;max-width:760px}.hilton-submittal .hotel-ai-comments-panel{margin:0 28px 20px}.hs-info-grid{background:#fff;border-bottom:1px solid #d0d5dc;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.hs-info-col{background:#fff;border-right:1px solid #e2e5ea;padding:16px 20px}.hs-info-col:last-child{border-right:none}.hs-col-title{background:#0b1220;border-bottom:3px solid #facc15;color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;line-height:1.2;margin:-16px -20px 14px;padding:11px 20px;text-transform:uppercase}.hs-field{margin-bottom:10px}.hs-field label{color:#3a3a3a;display:flex;flex-direction:column;font-size:10px;font-weight:700;gap:4px;letter-spacing:.05em;text-transform:uppercase}.hs-field input,.hs-remarks textarea{background:#f7f9fc;border:1px solid #c5ccd6;border-radius:4px;color:#0a0a0a;font:inherit;font-size:13px;min-width:0;padding:7px 10px;width:100%}.hs-field input[type=date]{min-height:34px}.hs-field input:disabled,.hs-remarks textarea:disabled,.hs-row:disabled,.hs-scope-row:disabled,.hs-section-toggle:disabled{cursor:not-allowed;opacity:.62}.hs-date{border-top:1px dashed #d0d5dc;margin-top:14px;padding-top:12px}.hs-scope-panel{background:#fff;border-bottom:1px solid #e2e5ea;padding:14px 28px 4px}.hs-scope-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin:8px 0 12px}.hs-scope-row{align-items:center;background:#f7f9fc;border:1px solid #d0d5dc;border-radius:4px;color:#1a1a1a;cursor:pointer;display:flex;font:inherit;font-size:13px;gap:10px;min-height:42px;padding:9px 12px;text-align:left;width:100%}.hs-check{align-items:center;background:#fff;border:1.5px solid #7a8290;border-radius:3px;color:#fff;display:inline-flex;flex-shrink:0;height:18px;justify-content:center;width:18px}.hs-row.checked,.hs-scope-row.checked{color:#0a0a0a;font-weight:700}.hs-row.checked .hs-check,.hs-scope-row.checked .hs-check{background:#1e3a5f;border-color:#1e3a5f}.hs-progress-wrap{background:#fff;border-bottom:1px solid #e2e5ea;padding:16px 28px 12px}.hs-progress-label{align-items:baseline;color:#0a0a0a;display:flex;font-size:14px;font-weight:700;justify-content:space-between;margin-bottom:8px}.hs-progress-count{color:#3a3a3a;font-size:12px;font-weight:600}.hs-progress-bar{background:#e2e5ea;border-radius:4px;height:8px;overflow:hidden}.hs-progress-fill{background:#15803d;border-radius:4px;height:100%}.hs-checklist{background:#fff;padding:14px 28px 18px}.hs-section-head{background:#eef2f8;border-left:4px solid #1e3a5f;border-radius:0 3px 3px 0;color:#0f2544;font-size:12px;font-weight:800;letter-spacing:.08em;margin:14px 0 10px;padding:8px 12px;text-transform:uppercase}.hs-section-head-secondary{background:#f2f4f7;border-left-color:#7a8290;color:#1a1a1a}.hs-section-toggle{align-items:center;cursor:pointer;display:flex;justify-content:space-between;text-align:left;width:100%}.hs-section-toggle.open{background:#eef7f0;border-left-color:#15803d;color:#0f2544}.hs-section-meta{color:#3a3a3a;font-size:11px;font-weight:500;letter-spacing:0;margin-left:6px;text-transform:none}.hs-items{display:flex;flex-direction:column;gap:2px}.hs-checklist-group+.hs-checklist-group,.hs-custom-accordion{margin-top:14px}.hs-row{align-items:flex-start;background:#fff;border:0;border-radius:4px;color:#1a1a1a;cursor:pointer;display:flex;font:inherit;gap:10px;padding:8px 10px;text-align:left;width:100%}.hs-label{color:#1a1a1a;font-size:13px;line-height:1.4;padding-top:1px}.hs-label em,.hs-label strong{display:block}.hs-label em{color:var(--hotel-ai-text-secondary);font-size:12px;font-style:normal;font-weight:500;margin-top:3px}.hs-row.checked .hs-label{color:#0a0a0a;font-weight:600}.hs-remarks{background:#fff;border-top:1px solid #e2e5ea;padding:14px 28px 20px}.hs-remarks-title{background:#0b1220;border-bottom:2px solid #facc15;border-radius:3px;color:#fff;display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;margin:0 0 10px;padding:8px 16px;text-transform:uppercase}.hs-remarks textarea{line-height:1.5;min-height:80px;resize:vertical}.hs-footer-note{background:#f2f4f7;border-top:1px solid #d0d5dc;color:#1a1a1a;font-size:11px;line-height:1.6;padding:14px 28px 20px}.hs-footer-note strong{color:#0f2544;font-weight:800}.hs-final{margin:24px auto 0}.hs-final-ready{background:linear-gradient(135deg,#f2f7f4,#e8f1ed);border-bottom:1px solid #d0dcd4;gap:16px;padding:22px 28px}.hs-final-icon,.hs-final-ready{align-items:center;display:flex}.hs-final-icon{background:#15803d;border-radius:50%;color:#fff;flex-shrink:0;height:48px;justify-content:center;width:48px}.hs-final-text h2{color:#0a0a0a;font-size:22px;margin:0 0 4px}.hs-final-text p{color:#1a1a1a;font-size:13px;line-height:1.5;margin:0}.hs-final-text p+p{color:#3a3a3a;margin-top:6px}.hs-readiness-warning{background:#fffbeb;border-bottom:1px solid #fde68a;color:#713f12;font-size:12px;line-height:1.5;padding:16px 28px}.hs-readiness-warning strong{color:#451a03;display:block;font-size:12px;font-weight:800;letter-spacing:.06em;margin-bottom:6px;text-transform:uppercase}.hs-readiness-warning ul{display:grid;gap:4px;margin:0;padding-left:18px}.hs-final-actions{background:#fff;display:grid;gap:12px;grid-template-columns:1fr 1fr 1.4fr;padding:20px 28px}.hs-btn{align-items:center;background:#fff;border:2px solid #d0d5dc;border-radius:8px;color:#0a0a0a;cursor:pointer;display:inline-flex;font:inherit;font-size:14px;font-weight:700;gap:10px;justify-content:center;padding:14px 20px}.hs-btn-primary{background:#1e3a5f;border-color:#1e3a5f;color:#fff}@media(max-width:1180px){.hs-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hs-info-col:nth-child(2n){border-right:none}}@media(max-width:900px){.hs-info-grid{grid-template-columns:1fr}.hs-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hs-info-col{border-bottom:1px solid #eaeaea;border-right:none}}@media(max-width:700px){.hotel-ai-submittal-container.hilton-submittal{padding-left:12px;padding-right:12px}.hs-checklist,.hs-final-actions,.hs-final-ready,.hs-footer-note,.hs-progress-wrap,.hs-readiness-warning,.hs-remarks,.hs-scope-panel,.hs-title-bar{padding-left:16px;padding-right:16px}.hilton-submittal .hotel-ai-comments-panel{margin-left:16px;margin-right:16px}.hs-final-actions,.hs-scope-grid{grid-template-columns:1fr}.hs-final-ready{flex-direction:column;text-align:center}}@media(max-width:1100px){.hotel-ai-property-info-grid{grid-template-columns:repeat(4,1fr)}.hotel-ai-property-info-cell:nth-child(4){border-right:none}.hotel-ai-milestone-row,.hotel-ai-mini-schedule,.hotel-ai-moodboard-area-grid,.hotel-ai-moodboard-job-grid,.hotel-ai-ripple-tier-grid,.hotel-ai-score-grid,.hotel-ai-spec-chip-row,.hotel-ai-stat-grid,.hotel-ai-submittal-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-manual-layout,.hotel-ai-moodboard-canvas-workspace,.hotel-ai-moodboard-create-grid,.hotel-ai-moodboard-layout,.hotel-ai-split-panel{grid-template-columns:1fr}.hotel-ai-moodboard-canvas-side{max-height:none;overflow-y:visible}.hotel-ai-manual-active-quantity,.hotel-ai-moodboard-floorplan{grid-template-columns:1fr}.hotel-ai-panel-connector{display:none}.hotel-ai-project-row{grid-template-columns:1fr}}@media(max-width:760px){.hotel-ai-header{align-items:stretch;display:grid;gap:8px;grid-template-columns:minmax(0,1fr);padding:10px 14px}.hotel-ai-header-center,.hotel-ai-header-left,.hotel-ai-header-right{min-width:0;width:100%}.hotel-ai-header-center,.hotel-ai-header-right{justify-content:flex-start}.hotel-ai-area-selector{width:100%}.hotel-ai-area-selector select{flex:1;min-width:0}.hotel-ai-header-right{overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.hotel-ai-header-right .hotel-ai-btn{flex:0 0 auto}.hotel-ai-wizard-stepper{overflow-x:auto;padding:0 12px}.hotel-ai-wizard-track{min-width:760px}.hotel-ai-step-nav{align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:10px 14px}.hotel-ai-step-nav-hint{display:none}.hotel-ai-step-nav-btn{font-size:15px;padding:12px 28px}.hotel-ai-assistant-widget,.hotel-ai-assistant-widget.is-open{bottom:104px;right:14px}.hotel-ai-assistant-panel{max-height:calc(100vh - 116px);width:calc(100vw - 28px)}.hotel-ai-login-container,.hotel-ai-processing-container,.hotel-ai-screen,.hotel-ai-upload-container{padding:18px 14px 92px}.hotel-ai-screen-header{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}.hotel-ai-screen-header h1{font-size:28px}.hotel-ai-screen-header h2{font-size:20px}.hotel-ai-schedule-legend{justify-content:flex-start;width:100%}.hotel-ai-dashboard-container{padding:18px 0 92px;width:min(100%,calc(100vw - 28px))}.hotel-ai-dashboard-header{align-items:start;display:grid;grid-template-columns:minmax(0,1fr)}.hotel-ai-dashboard-header .hotel-ai-screen-actions{justify-content:flex-start}.hotel-ai-dashboard-card-progress,.hotel-ai-dashboard-projects{grid-template-columns:1fr}.hotel-ai-dashboard-card-progress>strong{text-align:left}.hotel-ai-panel-header{align-items:flex-start;flex-direction:column}.hotel-ai-panel-header .hotel-ai-upload-actions{justify-content:flex-start}.hotel-ai-brand-progress,.hotel-ai-brand-project-row,.hotel-ai-dashboard-pipeline-flow,.hotel-ai-dashboard-risk-grid{grid-template-columns:1fr}.hotel-ai-brand-project-row{gap:8px;padding:14px}.hotel-ai-brand-project-main small,.hotel-ai-brand-project-owner{white-space:normal}.hotel-ai-brand-progress strong{text-align:left}.hotel-ai-dashboard-pipeline-card:not(:last-child):after{display:none}.hotel-ai-floorplan-annotation-panel,.hotel-ai-floorplan-generated-editor,.hotel-ai-floorplan-toolbar,.hotel-ai-floorplan-upload-panel,.hotel-ai-submittal-final{align-items:stretch;flex-direction:column;grid-template-columns:1fr}.hotel-ai-floorplan-toolbar{display:none}.hotel-ai-floorplan-mobile-toolbar{bottom:88px;display:grid;gap:8px;justify-items:end;position:fixed;right:16px;width:min(312px,calc(100vw - 32px));z-index:60}.hotel-ai-floorplan-mobile-toolbar:not(.is-open){width:auto}.hotel-ai-floorplan-mobile-toolbar-panel{width:100%}.hotel-ai-floorplan-upload-actions{justify-content:stretch}.hotel-ai-floorplan-generated-editor-actions{justify-content:flex-start}.hotel-ai-floorplan-status-filter{min-width:0;width:100%}.hotel-ai-floorplan-annotation-actions{grid-column:1;justify-content:flex-start}.hotel-ai-floorplan-text-style-controls{grid-column:1;grid-template-columns:1fr minmax(72px,96px) auto}.hotel-ai-pip-job-list li,.hotel-ai-pip-processing-row{align-items:start;grid-template-columns:1fr}.hotel-ai-pip-processing-actions{justify-content:flex-start}.hotel-ai-floorplan-vector-editor{grid-column:1;grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-ai-milestone-row,.hotel-ai-mini-schedule,.hotel-ai-moodboard-area-grid,.hotel-ai-moodboard-job-grid,.hotel-ai-pipeline,.hotel-ai-ripple-exposure,.hotel-ai-ripple-tier-grid,.hotel-ai-score-grid,.hotel-ai-spec-chip-row,.hotel-ai-spec-detail-grid,.hotel-ai-spec-library-grid,.hotel-ai-stat-grid,.hotel-ai-submittal-info-grid{grid-template-columns:1fr}.hotel-ai-login-auth-card,.hotel-ai-login-card,.hotel-ai-processing-card,.hotel-ai-upload-zone{padding:24px}.hotel-ai-modal-backdrop{align-items:start;padding:12px}.hotel-ai-create-project-header{display:grid;grid-template-columns:minmax(0,1fr)}.hotel-ai-create-project-actions{display:grid;grid-template-columns:1fr}.hotel-ai-urgent-row{grid-template-columns:auto 1fr}.hotel-ai-spec-card,.hotel-ai-spec-search-result,.hotel-ai-spec-sheet-overview{grid-template-columns:1fr}.hotel-ai-spec-sheet-meta div{gap:2px;grid-template-columns:1fr}.hotel-ai-spec-confidence{justify-items:start}.hotel-ai-control-label{align-items:stretch;flex-direction:column}.hotel-ai-control-label select{min-width:0;width:100%}.hotel-ai-moodboard-toc{position:static}.hotel-ai-moodboard-create-header,.hotel-ai-moodboard-hero,.hotel-ai-moodboard-job-grid article,.hotel-ai-moodboard-search-row,.hotel-ai-polyhaven-results article{grid-template-columns:minmax(0,1fr)}.hotel-ai-moodboard-create-header{display:grid}.hotel-ai-moodboard-create-header span,.hotel-ai-moodboard-job-grid .hotel-ai-btn,.hotel-ai-polyhaven-results .hotel-ai-btn{width:100%}.hotel-ai-polyhaven-map-summary li{grid-template-columns:minmax(0,1fr)}}.hotel-ai-dialog-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a70;inset:0;position:fixed;z-index:600}.hotel-ai-confirm-dialog,.hotel-ai-edit-project-dialog{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator-opaque);border-radius:12px;box-shadow:0 24px 80px #0f172a42;left:50%;max-height:calc(100vh - 32px);overflow:auto;position:fixed;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 32px));z-index:610}.hotel-ai-confirm-dialog{padding:24px}.hotel-ai-confirm-dialog:focus-visible{outline:none}.hotel-ai-confirm-dialog-destructive{border-top:3px solid var(--hotel-ai-system-red)}.hotel-ai-confirm-dialog-icon{align-items:center;background:#9b2c2c1a;border-radius:999px;color:var(--hotel-ai-system-red);display:inline-flex;height:40px;justify-content:center;margin-bottom:12px;width:40px}.hotel-ai-confirm-dialog-title{color:var(--hotel-ai-text-primary);font-size:18px;font-weight:700;line-height:1.3;margin:0}.hotel-ai-confirm-dialog-description{color:var(--hotel-ai-text-secondary);font-size:14px;line-height:1.55;margin:8px 0 0}.hotel-ai-confirm-dialog-match{display:grid;gap:6px;margin-top:18px}.hotel-ai-confirm-dialog-match span{color:var(--hotel-ai-text-secondary);font-size:12px}.hotel-ai-confirm-dialog-match strong{color:var(--hotel-ai-text-primary);font-weight:700}.hotel-ai-confirm-dialog-match input{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font-size:14px;padding:9px 11px;width:100%}.hotel-ai-confirm-dialog-match input:focus-visible{border-color:var(--hotel-ai-system-red);box-shadow:0 0 0 3px #9b2c2c26;outline:none}.hotel-ai-confirm-dialog-actions,.hotel-ai-edit-project-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.hotel-ai-edit-project-dialog{padding:24px}.hotel-ai-edit-project-dialog:focus-visible{outline:none}.hotel-ai-edit-project-title{color:var(--hotel-ai-text-primary);font-size:18px;font-weight:700;margin:0}.hotel-ai-edit-project-description{color:var(--hotel-ai-text-secondary);font-size:14px;line-height:1.55;margin:8px 0 0}.hotel-ai-edit-project-form{display:grid;gap:16px;margin-top:20px}.hotel-ai-edit-project-form label{display:grid;gap:6px}.hotel-ai-edit-project-form label span{color:var(--hotel-ai-text-secondary);font-size:12px;font-weight:600;letter-spacing:.02em}.hotel-ai-edit-project-form input,.hotel-ai-edit-project-form textarea{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator-opaque);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);font-family:inherit;font-size:14px;padding:9px 11px;resize:vertical;width:100%}.hotel-ai-edit-project-form input:focus-visible,.hotel-ai-edit-project-form textarea:focus-visible{border-color:var(--hotel-ai-system-blue);box-shadow:0 0 0 3px #1e438026;outline:none}.hotel-ai-edit-project-error{color:var(--hotel-ai-system-red);font-size:13px;margin:0}.hotel-ai-project-actions-trigger{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-secondary);cursor:pointer;display:inline-flex;height:40px;justify-content:center;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition);width:40px}.hotel-ai-project-actions-trigger:hover,.hotel-ai-project-actions-trigger[data-state=open]{background:var(--hotel-ai-bg-hover);color:var(--hotel-ai-text-primary)}.hotel-ai-project-actions-trigger:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-project-actions-trigger-card{color:var(--hotel-ai-text-tertiary);height:32px;width:32px}.hotel-ai-project-actions-trigger-header{border-color:var(--hotel-ai-separator-opaque);height:32px;width:32px}.hotel-ai-project-actions-menu{background:var(--hotel-ai-bg-primary);border:1px solid var(--hotel-ai-separator-opaque);border-radius:10px;box-shadow:0 16px 48px #0f172a33;display:grid;gap:2px;min-width:200px;padding:6px;z-index:620}.hotel-ai-project-actions-menu:focus,.hotel-ai-project-actions-menu:focus-visible{outline:none}.hotel-ai-project-actions-item{align-items:center;border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-text-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:9px;line-height:1;padding:9px 10px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hotel-ai-project-actions-item svg{color:var(--hotel-ai-text-tertiary);flex:none}.hotel-ai-project-actions-item:hover,.hotel-ai-project-actions-item[data-highlighted]{background:var(--hotel-ai-bg-hover);outline:none}.hotel-ai-project-actions-item-danger,.hotel-ai-project-actions-item-danger svg{color:var(--hotel-ai-system-red)}.hotel-ai-project-actions-item-danger:hover,.hotel-ai-project-actions-item-danger[data-highlighted]{background:#9b2c2c1a}.hotel-ai-project-actions-separator{background:var(--hotel-ai-separator);height:1px;margin:4px -2px}.hotel-ai-projects-viewswitch{background:var(--hotel-ai-bg-elevated);border:1px solid var(--hotel-ai-separator-opaque);border-radius:10px;display:inline-flex;padding:2px}.hotel-ai-projects-viewswitch-btn{background:transparent;border:0;border-radius:7px;color:var(--hotel-ai-text-secondary);cursor:pointer;font-size:12px;font-weight:800;min-height:24px;padding:0 14px;transition:background var(--hotel-ai-transition),color var(--hotel-ai-transition),box-shadow var(--hotel-ai-transition)}.hotel-ai-projects-viewswitch-btn:hover{color:var(--hotel-ai-text-primary)}.hotel-ai-projects-viewswitch-btn.is-active{background:var(--hotel-ai-bg-primary);box-shadow:0 1px 3px #0f172a1f;color:var(--hotel-ai-text-primary)}.hotel-ai-projects-viewswitch-btn:focus-visible{outline:2px solid var(--hotel-ai-system-blue);outline-offset:2px}.hotel-ai-project-card-wrap{position:relative}.hotel-ai-project-card-wrap>.hotel-ai-brand-project-row,.hotel-ai-project-card-wrap>.hotel-ai-dashboard-project-card{height:100%}.hotel-ai-project-card-actions{position:absolute;right:8px;top:8px;z-index:2}.hotel-ai-dashboard-projects .hotel-ai-project-card-wrap>.hotel-ai-project-card-actions{bottom:20px;right:4px;top:auto}.hotel-ai-brand-project-list .hotel-ai-project-card-wrap{border-bottom:1px solid var(--hotel-ai-separator)}.hotel-ai-brand-project-list .hotel-ai-project-card-wrap:last-child,.hotel-ai-brand-project-list .hotel-ai-project-card-wrap>.hotel-ai-brand-project-row{border-bottom:0}.hotel-ai-brand-project-list .hotel-ai-project-card-wrap>.hotel-ai-brand-project-row{padding-right:48px}.hotel-ai-brand-project-list .hotel-ai-project-card-wrap>.hotel-ai-project-card-actions{right:6px;top:50%;transform:translateY(-50%)}.hotel-ai-brand-project-row.is-archived,.hotel-ai-dashboard-project-card.is-archived{background:var(--hotel-ai-bg-elevated);opacity:.74}.hotel-ai-brand-project-row.is-archived:hover,.hotel-ai-dashboard-project-card.is-archived:hover{opacity:1}.hotel-ai-project-archived-meta{color:var(--hotel-ai-text-tertiary);font-style:italic;font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){.hotel-ai-project-actions-trigger,.hotel-ai-projects-viewswitch-btn{transition:none}}.hotel-ai-moodboard-job-status{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.01em;padding:3px 10px}.hotel-ai-moodboard-job-status.is-pending{background:color-mix(in srgb,var(--hotel-ai-system-orange) 10%,var(--hotel-ai-surface));border-color:color-mix(in srgb,var(--hotel-ai-system-orange) 30%,transparent);color:var(--hotel-ai-system-orange)}.hotel-ai-moodboard-job-status.is-danger{background:color-mix(in srgb,var(--hotel-ai-system-red) 10%,var(--hotel-ai-surface));border-color:color-mix(in srgb,var(--hotel-ai-system-red) 32%,transparent);color:var(--hotel-ai-system-red)}.hotel-ai-moodboard-job-status.is-success{background:color-mix(in srgb,var(--hotel-ai-system-green) 10%,var(--hotel-ai-surface));border-color:color-mix(in srgb,var(--hotel-ai-system-green) 30%,transparent);color:var(--hotel-ai-system-green)}.hotel-ai-moodboard-job-status.is-neutral{background:color-mix(in srgb,var(--hotel-ai-system-blue) 8%,var(--hotel-ai-surface));border-color:color-mix(in srgb,var(--hotel-ai-system-blue) 24%,transparent);color:var(--hotel-ai-system-blue)}.hotel-ai-inline-notice{align-items:center;background:color-mix(in srgb,var(--hotel-ai-system-orange) 8%,var(--hotel-ai-surface));border:1px solid color-mix(in srgb,var(--hotel-ai-system-orange) 24%,transparent);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-system-orange);display:flex;font-size:13px;gap:8px;margin-top:10px;padding:10px 12px}.hotel-ai-moodboard-job-failed{align-items:flex-start;background:color-mix(in srgb,var(--hotel-ai-system-red) 8%,var(--hotel-ai-surface));border:1px solid color-mix(in srgb,var(--hotel-ai-system-red) 28%,transparent);border-radius:var(--hotel-ai-radius);color:var(--hotel-ai-system-red);display:flex;flex-direction:column;gap:10px;margin-top:10px;padding:12px}.hotel-ai-moodboard-job-failed p{font-size:13px;margin:0}
