@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap";@layer properties,theme,base,components,utilities;@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-neutral-900:oklch(20.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--ease-out:cubic-bezier(0,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.table{display:table}.h-\[25vh\]{height:25vh}.h-\[300vh\]{height:300vh}.h-full{height:100%}.h-screen{height:100vh}.w-\[25vw\]{width:25vw}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,transparent)}}.bg-neutral-900{background-color:var(--color-neutral-900)}.object-cover{object-fit:cover}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.will-change-transform{will-change:transform}.\[\&\>div\]\:\!-top-\[10vh\]>div{top:-10vh!important}.\[\&\>div\]\:\!-top-\[30vh\]>div{top:-30vh!important}.\[\&\>div\]\:\!top-\[22\.5vh\]>div{top:22.5vh!important}.\[\&\>div\]\:\!top-\[27\.5vh\]>div{top:27.5vh!important}.\[\&\>div\]\:\!-left-\[22\.5vw\]>div{left:-22.5vw!important}.\[\&\>div\]\:\!-left-\[25vw\]>div{left:-25vw!important}.\[\&\>div\]\:\!left-\[5vw\]>div{left:5vw!important}.\[\&\>div\]\:\!left-\[25vw\]>div{left:25vw!important}.\[\&\>div\]\:\!left-\[27\.5vw\]>div{left:27.5vw!important}.\[\&\>div\]\:\!h-\[15vh\]>div{height:15vh!important}.\[\&\>div\]\:\!h-\[25vh\]>div{height:25vh!important}.\[\&\>div\]\:\!h-\[30vh\]>div{height:30vh!important}.\[\&\>div\]\:\!h-\[45vh\]>div{height:45vh!important}.\[\&\>div\]\:\!w-\[15vw\]>div{width:15vw!important}.\[\&\>div\]\:\!w-\[20vw\]>div{width:20vw!important}.\[\&\>div\]\:\!w-\[25vw\]>div{width:25vw!important}.\[\&\>div\]\:\!w-\[30vw\]>div{width:30vw!important}.\[\&\>div\]\:\!w-\[35vw\]>div{width:35vw!important}}:root{--bg-primary:#0a0a0b;--bg-secondary:#111113;--bg-tertiary:#1a1a1d;--bg-elevated:#222226;--gold-primary:#c9a962;--gold-light:#e4d4a7;--gold-dark:#9a7b3c;--gold-glow:#c9a96226;--gold-glow-strong:#c9a9624d;--text-primary:#f5f5f7;--text-secondary:#a1a1a6;--text-muted:#6e6e73;--text-inverse:#0a0a0b;--success:#34c759;--error:#ff3b30;--glass-bg:#111113cc;--glass-border:#ffffff14;--glass-blur:20px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #0006;--shadow-lg:0 16px 48px #00000080;--shadow-gold:0 8px 32px #c9a96233;--font-display:"Playfair Display",Georgia,serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3.5rem;--text-6xl:5rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--duration-fast:.2s;--duration-normal:.4s;--duration-slow:.6s;--z-background:-1;--z-default:1;--z-sticky:100;--z-modal:1000;--z-tooltip:1100}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}.container{max-width:1400px;padding:0 var(--space-6);width:100%;margin:0 auto}.btn-primary{align-items:center;gap:var(--space-3);background:var(--gold-primary);color:var(--text-inverse);padding:var(--space-4)var(--space-8);font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-fast)var(--ease-out);border:none;text-decoration:none;display:inline-flex}.btn-primary:hover{background:var(--gold-light);box-shadow:var(--shadow-gold);transform:translateY(-2px)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.property-card{position:relative;background:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--glass-border);transform-style:preserve-3d;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out);will-change:transform;opacity:0;transform:translateY(60px);transition:opacity var(--duration-slow) var(--ease-out) var(--stagger-delay, 0s),transform var(--duration-slow) var(--ease-out) var(--stagger-delay, 0s),box-shadow var(--duration-normal) var(--ease-out)}.property-card.visible{opacity:1;transform:translateY(0)}.property-card:hover{box-shadow:var(--shadow-lg),0 0 60px var(--gold-glow)}.card-glow{position:absolute;inset:0;background:radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),var(--gold-glow) 0%,transparent 50%);opacity:0;transition:opacity var(--duration-normal) var(--ease-out);pointer-events:none;z-index:1}.property-card:hover .card-glow{opacity:1}.card-image-container{position:relative;height:240px;overflow:hidden}.card-image{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-out);will-change:transform}.card-image-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 0%,transparent 40%,rgba(10,10,11,.8) 100%);pointer-events:none}.tour-badge{position:absolute;top:var(--space-4);left:var(--space-4);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--gold-light);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;opacity:0;transform:translateY(-10px);transition:all var(--duration-normal) var(--ease-out)}.property-card:hover .tour-badge{opacity:1;transform:translateY(0)}.tour-badge svg{animation:rotate360 8s linear infinite}@keyframes rotate360{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-price{position:absolute;bottom:var(--space-4);right:var(--space-4);display:flex;align-items:baseline;gap:var(--space-1);padding:var(--space-2) var(--space-4);background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-primary) 100%);border-radius:var(--radius-md);z-index:2}.price-currency{font-size:var(--text-sm);font-weight:500;color:var(--text-inverse);opacity:.8}.card-price .price-value{font-size:var(--text-lg);font-weight:700;color:#000;letter-spacing:-.02em}.card-content{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.card-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;color:var(--text-primary);line-height:1.3}.card-location{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.card-location svg{color:var(--gold-primary);flex-shrink:0}.card-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.btn-view-details{display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-4);background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:all var(--duration-fast) var(--ease-out)}.btn-view-details:hover{color:var(--text-primary);border-color:var(--text-muted);background:#ffffff05}.btn-virtual-tour{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--gold-dark) 0%,var(--gold-primary) 100%);color:var(--text-inverse);font-size:var(--text-sm);font-weight:600;letter-spacing:.03em;border-radius:var(--radius-md);transition:all var(--duration-normal) var(--ease-out)}.btn-virtual-tour:hover{background:linear-gradient(135deg,var(--gold-primary) 0%,var(--gold-light) 100%);box-shadow:var(--shadow-gold);transform:translateY(-2px);color:var(--text-inverse)}.btn-virtual-tour svg{transition:transform var(--duration-fast) var(--ease-out)}.btn-virtual-tour:hover svg{transform:translate(2px)}@media(max-width:768px){.card-image-container{height:200px}.card-content{padding:var(--space-4)}.card-title{font-size:var(--text-lg)}}.home-container{min-height:100vh;background:var(--bg-primary)}.hero-section{position:relative;height:100vh;min-height:700px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:-1}.hero-bg-image{width:100%;height:120%;object-fit:cover;object-position:center;will-change:transform}.hero-section:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0a0a0b40,#0a0a0b80 40%,#0a0a0bd9);pointer-events:none;z-index:0}.hero-content{position:relative;z-index:1;text-align:center;max-width:900px;padding:0 var(--space-6);text-shadow:0 4px 24px rgba(0,0,0,.8)}.hero-eyebrow{display:inline-block;color:var(--gold-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-6)}.hero-title{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.hero-title span{display:block;font-size:var(--text-6xl);font-weight:400;line-height:1.05;letter-spacing:-.03em;color:var(--text-primary)}.hero-title span:nth-child(2){color:var(--gold-primary);font-style:italic}.hero-subtitle{font-size:var(--text-lg);color:var(--text-secondary);max-width:500px;margin:0 auto var(--space-8);line-height:1.7}.hero-cta{opacity:1}.scroll-indicator{position:absolute;bottom:var(--space-8);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;opacity:0}.scroll-line{width:1px;height:60px;background:var(--glass-border);position:relative;overflow:hidden}.scroll-dot{position:absolute;top:0;left:50%;transform:translate(-50%);width:3px;height:10px;background:var(--gold-primary);border-radius:var(--radius-full);animation:scrollDot 2s ease-in-out infinite}@keyframes scrollDot{0%,to{top:0;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.statement-section{padding:var(--space-24) 0;background:var(--bg-primary);border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border)}.statement-text{text-align:center;max-width:none}.statement-line{display:block;font-family:var(--font-display);font-size:var(--text-4xl);font-weight:400;line-height:1.3;color:var(--text-secondary)}.statement-line:first-child{color:var(--text-primary)}.properties-section{padding:var(--space-24) 0;background:var(--bg-primary)}.section-header{text-align:center;margin-bottom:var(--space-16)}.section-eyebrow{display:inline-block;color:var(--gold-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-4)}.section-title{font-size:var(--text-4xl);color:var(--text-primary);margin-bottom:var(--space-4)}.section-subtitle{font-size:var(--text-lg);color:var(--text-secondary);max-width:500px;margin:0 auto}.property-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-8)}.cta-section{padding:var(--space-24) 0;background:linear-gradient(to bottom,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.cta-content{text-align:center;max-width:600px;margin:0 auto}.cta-content h2{font-size:var(--text-3xl);margin-bottom:var(--space-4)}.cta-content p{color:var(--text-secondary);margin:0 auto var(--space-8)}@media(max-width:1024px){.property-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6)}}@media(max-width:768px){.hero-section{min-height:600px}.hero-title span{font-size:var(--text-5xl)}.hero-subtitle{font-size:var(--text-base)}.statement-line{font-size:var(--text-2xl)}.section-header{margin-bottom:var(--space-12)}.property-grid{grid-template-columns:1fr}}@media(max-width:480px){.hero-title span{font-size:var(--text-4xl)}.scroll-indicator{display:none}}.tour-page{min-height:100vh;padding-top:140px;padding-bottom:var(--space-16);background:var(--bg-primary)}.tour-header{margin-bottom:var(--space-8)}.back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-6);transition:color var(--duration-fast) var(--ease-out)}.tour-title-group{text-align:center}.tour-eyebrow{display:block;color:var(--gold-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-2)}.tour-page h1{font-size:var(--text-4xl);font-weight:400}.scene-wrapper{position:relative;width:100%;height:70vh;min-height:500px;border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-secondary);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);transition:opacity var(--duration-normal) var(--ease-out)}.scene-wrapper.fullscreen{height:100vh;border-radius:0}.scene-wrapper.transitioning{opacity:.7}.tour-status-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-12);min-height:300px;border-radius:var(--radius-xl);text-align:center;color:var(--text-secondary)}.tour-status-panel p{font-size:var(--text-lg)}.tour-status-error{color:#ff8a84;border:1px solid rgba(255,59,48,.2)}.tour-status-spinner{width:40px;height:40px;border:3px solid var(--glass-border);border-top-color:var(--gold-primary);border-radius:50%;animation:spin .8s linear infinite}.room-label{position:absolute;top:var(--space-6);left:50%;transform:translate(-50%);padding:var(--space-2) var(--space-6);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-full);z-index:10}.room-label-text{color:var(--text-primary);font-size:var(--text-sm);font-weight:500;letter-spacing:.05em}.control-bar{position:absolute;bottom:var(--space-6);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);z-index:10}.room-nav{display:flex;gap:var(--space-2)}.room-thumb{padding:var(--space-2) var(--space-4);background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-full);transition:all var(--duration-fast) var(--ease-out)}.room-thumb:hover{color:var(--text-primary);background:#ffffff0d}.room-thumb.active{background:var(--gold-primary);color:var(--text-inverse)}.control-divider{width:1px;height:24px;background:var(--glass-border)}.control-actions{display:flex;gap:var(--space-2)}.control-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--duration-fast) var(--ease-out)}.control-btn:hover{color:var(--text-primary);background:#ffffff0d}.control-btn.active{color:var(--gold-primary);background:var(--gold-glow)}.info-panel{position:absolute;top:var(--space-6);right:var(--space-6);width:280px;padding:var(--space-6);border-radius:var(--radius-lg);z-index:10;opacity:0;transform:translate(20px);pointer-events:none;transition:all var(--duration-normal) var(--ease-out)}.info-panel.visible{opacity:1;transform:translate(0);pointer-events:auto}.info-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--glass-border)}.info-header h3{font-size:var(--text-lg);color:var(--text-primary)}.info-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-out)}.info-close:hover{color:var(--text-primary);background:#ffffff0d}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.info-item{display:flex;flex-direction:column;gap:var(--space-1)}.info-item-full{grid-column:span 2}.info-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.info-value{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.instructions-hint{position:absolute;bottom:80px;left:50%;transform:translate(-50%);padding:var(--space-2) var(--space-4);background:#0a0a0b99;border-radius:var(--radius-full);z-index:5;opacity:.6;transition:opacity var(--duration-fast) var(--ease-out)}.instructions-hint span{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.02em}.scene-wrapper:hover .instructions-hint{opacity:0}@media(max-width:768px){.tour-page{padding-top:120px}.scene-wrapper{height:60vh;min-height:400px;border-radius:var(--radius-lg)}.control-bar{flex-wrap:wrap;justify-content:center;border-radius:var(--radius-lg);padding:var(--space-2);gap:var(--space-2)}.room-nav{width:100%;justify-content:center}.control-divider{display:none}.control-actions{width:100%;justify-content:center}.info-panel{right:var(--space-4);left:var(--space-4);width:auto;top:auto;bottom:120px}.instructions-hint{display:none}}@media(max-width:480px){.room-thumb{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.control-btn{width:36px;height:36px}}.scene-wrapper.edit-mode{border-color:var(--gold-primary);box-shadow:0 0 0 2px var(--gold-primary),var(--shadow-lg)}.scene-wrapper.edit-mode .pannellum-container{cursor:crosshair}.edit-mode-badge{display:inline-block;margin-left:var(--space-2);padding:1px 6px;background:var(--gold-primary);color:var(--text-inverse);font-size:10px;font-weight:700;letter-spacing:.1em;border-radius:var(--radius-sm);animation:pulse-badge 1.5s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.6}}.hotspot-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:modal-fade-in .2s ease-out}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.hotspot-modal{width:380px;max-width:90vw;padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--glass-border);animation:modal-slide-up .2s ease-out}@keyframes modal-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.hotspot-modal h3{font-size:var(--text-xl);color:var(--text-primary);margin-bottom:var(--space-2)}.modal-coords{font-size:var(--text-xs);color:var(--text-muted);font-family:monospace;margin-bottom:var(--space-4)}.modal-field{margin-bottom:var(--space-4)}.modal-field label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.modal-field select,.modal-field input{width:100%;padding:10px 12px;background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);font-family:inherit;outline:none;transition:border-color var(--duration-fast)}.modal-field select:focus,.modal-field input:focus{border-color:var(--gold-primary)}.modal-field select option{background:var(--bg-secondary);color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.modal-actions .btn-primary,.modal-actions .btn-secondary{padding:10px 20px;font-size:var(--text-sm);font-weight:500;border-radius:var(--radius-md);font-family:inherit;cursor:pointer;border:none;transition:all var(--duration-fast)}.modal-actions .btn-primary{background:var(--gold-primary);color:var(--text-inverse)}.modal-actions .btn-primary:hover:not(:disabled){background:var(--gold-secondary)}.modal-actions .btn-primary:disabled{opacity:.4;cursor:not-allowed}.modal-actions .btn-secondary{background:transparent;border:1px solid var(--glass-border);color:var(--text-secondary)}.modal-actions .btn-secondary:hover:not(:disabled){border-color:var(--text-secondary)}.public-tour-page{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000;z-index:9999;overflow:hidden;font-family:var(--font-primary, system-ui, sans-serif)}.public-scene-wrapper{position:relative;width:100%;height:100%;background:#000}.pannellum-container{width:100%;height:100%}.pannellum-container .pnlm-controls-container{display:none}.public-tour-status{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12, 3rem) var(--space-16, 4rem);border-radius:var(--radius-xl, 24px);background:#0a0a0bb3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);color:var(--text-primary, #fff);text-align:center;z-index:100}.public-tour-error{color:#ff8a84;border-color:#ff3b3033}.public-tour-spinner{width:48px;height:48px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--gold-primary, #d4af37);border-radius:50%;animation:publicSpin 1s linear infinite;margin-bottom:var(--space-4, 1rem)}@keyframes publicSpin{to{transform:rotate(360deg)}}.public-tour-header{position:absolute;top:var(--space-6, 1.5rem);left:50%;transform:translate(-50%);padding:var(--space-2, .5rem) var(--space-6, 1.5rem);background:#0a0a0b80;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-full, 9999px);z-index:10;box-shadow:0 4px 12px #0000004d}.public-room-title{color:var(--text-primary, #fff);font-size:var(--text-sm, .875rem);font-weight:500;letter-spacing:.05em;text-transform:uppercase}.public-control-bar{position:absolute;bottom:var(--space-8, 2rem);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--space-4, 1rem);padding:var(--space-2, .5rem) var(--space-4, 1rem);background:#0a0a0b99;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-full, 9999px);z-index:10;box-shadow:0 8px 32px #0006}.public-room-nav{display:flex;gap:var(--space-2, .5rem);overflow-x:auto;max-width:50vw;scrollbar-width:none}.public-room-nav::-webkit-scrollbar{display:none}.public-room-thumb{white-space:nowrap;padding:var(--space-2, .5rem) var(--space-4, 1rem);background:transparent;color:var(--text-secondary, #a1a1aa);font-size:var(--text-sm, .875rem);font-weight:500;border-radius:var(--radius-full, 9999px);border:none;cursor:pointer;transition:all var(--duration-fast, .2s) var(--ease-out, ease-out)}.public-room-thumb:hover{color:var(--text-primary, #fff);background:#ffffff1a}.public-room-thumb.active{background:var(--gold-primary, #d4af37);color:var(--text-inverse, #000)}.public-control-divider{width:1px;height:24px;background:#fff3}.public-control-actions{display:flex;gap:var(--space-2, .5rem)}.public-control-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;color:var(--text-secondary, #a1a1aa);border-radius:var(--radius-full, 9999px);border:none;cursor:pointer;transition:all var(--duration-fast, .2s) var(--ease-out, ease-out)}.public-control-btn:hover{color:var(--text-primary, #fff);background:#ffffff1a}.public-instructions-hint{position:absolute;bottom:var(--space-24, 6rem);left:50%;transform:translate(-50%);padding:var(--space-2, .5rem) var(--space-4, 1rem);background:#0a0a0b80;border-radius:var(--radius-full, 9999px);z-index:5;opacity:.6;transition:opacity var(--duration-fast, .2s) var(--ease-out, ease-out);pointer-events:none}.public-instructions-hint span{font-size:var(--text-xs, .75rem);color:#ffffffb3;letter-spacing:.05em;text-transform:uppercase}.public-scene-wrapper:hover .public-instructions-hint{opacity:.1}@media(max-width:768px){.public-control-bar{flex-direction:column;bottom:var(--space-4, 1rem);border-radius:var(--radius-lg, 16px);padding:var(--space-3, .75rem);gap:var(--space-3, .75rem)}.public-room-nav{max-width:90vw}.public-control-divider{display:none}.public-instructions-hint{bottom:auto;top:80px}}.property-details-page{min-height:100vh;background:var(--bg-primary);padding-bottom:var(--space-16)}.not-found{text-align:center;padding-top:150px}.not-found h2{margin-bottom:var(--space-4)}.not-found p{margin:0 auto var(--space-8)}.details-hero{position:relative;height:50vh;min-height:400px;overflow:hidden}.hero-image{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,10,11,.5) 0%,rgba(10,10,11,.2) 50%,var(--bg-primary) 100%)}.details-hero .hero-content{position:absolute;top:0;left:0;right:0;padding:100px var(--space-6) var(--space-6)}.details-hero .back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-primary);font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-4);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--radius-full);transition:all var(--duration-fast) var(--ease-out)}.details-hero .back-link:hover{background:var(--gold-primary);color:var(--text-inverse);border-color:var(--gold-primary)}.details-header{margin-top:calc(-1 * var(--space-16));position:relative;z-index:2;margin-bottom:var(--space-12);opacity:0;transform:translateY(30px);transition:all var(--duration-slow) var(--ease-out)}.details-header.visible{opacity:1;transform:translateY(0)}.header-main{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:var(--space-6)}.header-text{flex:1;min-width:280px}.property-type{display:inline-block;color:var(--gold-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-3)}.details-header h1{font-size:var(--text-4xl);margin-bottom:var(--space-3)}.location-tag{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--text-base)}.location-tag svg{color:var(--gold-primary)}.header-price{text-align:right}.price-label{display:block;font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-1)}.price-value{display:block;font-family:var(--font-display);font-size:var(--text-3xl);color:var(--gold-primary);font-weight:500}.details-grid{display:grid;grid-template-columns:1fr 380px;gap:var(--space-12);align-items:start}.details-main{display:flex;flex-direction:column;gap:var(--space-12)}.content-section h2{font-size:var(--text-2xl);margin-bottom:var(--space-4)}.content-section h3{font-size:var(--text-xl);margin-bottom:var(--space-4)}.description{font-size:var(--text-lg);line-height:1.8;color:var(--text-secondary)}.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);list-style:none}.feature-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-tertiary);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);border:1px solid var(--glass-border)}.feature-item svg{color:var(--gold-primary);flex-shrink:0}.virtual-tour-cta{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-8);border-radius:var(--radius-lg)}.cta-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--gold-glow);border-radius:var(--radius-lg);color:var(--gold-primary);flex-shrink:0}.cta-content{flex:1}.cta-content h3{font-size:var(--text-xl);margin-bottom:var(--space-2)}.cta-content p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.details-sidebar{position:sticky;top:100px}.agent-card{padding:var(--space-6);border-radius:var(--radius-lg)}.agent-card h3{font-size:var(--text-lg);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--glass-border)}.agent-info{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.agent-photo{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--gold-primary)}.agent-name{font-weight:600;color:var(--text-primary);margin-bottom:var(--space-1)}.agent-phone{font-size:var(--text-sm);color:var(--gold-primary)}.agent-actions{display:flex;flex-direction:column;gap:var(--space-3)}.agent-actions .btn-primary,.agent-actions .btn-secondary{width:100%}@media(max-width:1024px){.details-grid{grid-template-columns:1fr;gap:var(--space-8)}.details-sidebar{position:static}}@media(max-width:768px){.details-hero{height:40vh;min-height:300px}.header-main{flex-direction:column;align-items:flex-start}.header-price{text-align:left}.virtual-tour-cta{flex-direction:column;text-align:center;padding:var(--space-6)}.features-grid{grid-template-columns:1fr}}.upload-selection-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:800px;margin:0 auto}.selection-header{text-align:center;margin-bottom:var(--space-12)}.selection-header h2{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--gold-primary);margin-bottom:var(--space-4);font-weight:500}.selection-header p{color:var(--text-secondary);font-size:var(--text-lg)}.selection-cards{display:grid;grid-template-columns:1fr;gap:var(--space-6);width:100%;margin-bottom:var(--space-8)}@media(min-width:768px){.selection-cards{grid-template-columns:1fr 1fr;gap:var(--space-8)}}.selection-card{background:var(--bg-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center}.selection-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,var(--gold-glow) 0%,transparent 70%);opacity:0;transition:opacity var(--duration-normal) var(--ease-out)}.selection-card:hover{transform:translateY(-4px);border-color:var(--gold-primary);box-shadow:var(--shadow-gold)}.selection-card:hover:before{opacity:1}.selection-cards.mode-selected .selection-card{opacity:.6}.selection-cards.mode-selected .selection-card.active{opacity:1;border-color:var(--gold-primary);background:#c9a9620d;box-shadow:var(--shadow-gold)}.selection-cards.mode-selected .selection-card.active:before{opacity:1}.card-icon{color:var(--gold-primary);margin-bottom:var(--space-6);z-index:1}.selection-card h3{font-size:var(--text-xl);color:var(--text-primary);margin-bottom:var(--space-3);z-index:1}.selection-card p{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6;margin-bottom:var(--space-6);z-index:1;flex-grow:1}.badge{display:inline-block;background:#c9a96233;color:var(--gold-primary);padding:4px 12px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;z-index:1}.badge-secondary{background:#ffffff1a;color:var(--text-primary)}.selection-card--disabled{opacity:.45;cursor:not-allowed!important;pointer-events:auto}.selection-card--disabled:hover{transform:none;border-color:var(--glass-border);box-shadow:none}.selection-card--disabled:hover:before{opacity:0}.card-unavailable-overlay{position:absolute;top:var(--space-4);right:var(--space-4);z-index:2}.card-unavailable-overlay span{display:inline-block;background:#f8717126;color:#f87171;padding:3px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.help-button{display:flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--text-secondary);font-size:var(--text-base);cursor:pointer;transition:color var(--duration-fast) ease}.help-button:hover{color:var(--gold-light)}.help-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0a0bcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.help-modal{background:var(--bg-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-8);max-width:600px;width:100%;position:relative;box-shadow:var(--shadow-xl);animation:modal-fade-in .3s ease-out}@keyframes modal-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.close-modal{position:absolute;top:var(--space-4);right:var(--space-4);background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--space-2);transition:color var(--duration-fast)}.close-modal:hover{color:var(--text-primary)}.modal-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-6);padding-right:var(--space-8)}.mode-explanation{display:flex;flex-direction:column;gap:var(--space-6)}.gold-text{color:var(--gold-primary);font-size:var(--text-lg);margin-bottom:var(--space-2)}.mode-block p{color:var(--text-secondary);line-height:1.6}.mode-divider{height:1px;background:var(--glass-border);width:100%}.mode-a-upload{width:100%;max-width:800px;margin:var(--space-8) auto 0;display:flex;flex-direction:column;gap:var(--space-6)}.upload-section-header h3{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-2)}.upload-section-header p{color:var(--text-secondary)}.upload-dropzone{background:var(--bg-elevated);border:2px dashed var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-6);text-align:center;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);position:relative}.upload-dropzone:hover,.upload-dropzone.drag-active{background:#c9a9620d;border-color:var(--gold-primary)}.upload-dropzone.has-error{border-color:var(--error);background:#ff3b300d}.hidden-input{display:none}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);pointer-events:none}.dropzone-content svg{color:var(--gold-primary);margin-bottom:var(--space-2);transition:transform var(--duration-fast)}.upload-dropzone.drag-active svg{transform:translateY(-5px)}.dropzone-content h4{font-size:var(--text-lg);color:var(--text-primary)}.or-text{color:var(--text-muted);font-size:var(--text-sm)}.upload-requirements{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin-top:var(--space-4)}.req-pill{font-size:var(--text-xs);padding:4px 10px;background:#ffffff0d;border-radius:var(--radius-sm);color:var(--text-secondary)}.validation-error{display:flex;gap:var(--space-4);background:#ff3b301a;border:1px solid rgba(255,59,48,.2);border-radius:var(--radius-md);padding:var(--space-4);color:#ff8a84;align-items:flex-start;animation:modal-fade-in .3s ease-out}.validation-error svg{flex-shrink:0;margin-top:2px}.error-content strong{display:block;font-family:var(--font-display);font-weight:600;margin-bottom:4px}.error-content p{font-size:var(--text-sm);line-height:1.5}.upload-success-panel{background:var(--bg-elevated);border:1px solid var(--success);border-radius:var(--radius-lg);padding:var(--space-6);animation:modal-fade-in .3s ease-out}.success-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.success-icon{width:32px;height:32px;background:#34c75926;color:var(--success);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.success-header h4{color:var(--success);font-size:var(--text-lg);font-weight:500}.preview-container{width:100%;height:200px;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-6);background:#000;border:1px solid var(--glass-border)}.panorama-preview{width:100%;height:100%;object-fit:cover}.file-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4);margin-bottom:var(--space-6);background:#0003;padding:var(--space-4);border-radius:var(--radius-md)}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .info-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.info-item .info-value{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-item .text-gold{color:var(--gold-primary);font-weight:500}.success-actions{display:flex;gap:var(--space-4);justify-content:flex-end}.room-name-input{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.room-name-field{width:100%;padding:10px 14px;font-size:var(--text-sm);color:var(--text-primary);background:#0000004d;border:1px solid var(--glass-border);border-radius:var(--radius-md);outline:none;transition:border-color var(--duration-fast);font-family:inherit}.room-name-field:focus{border-color:var(--gold-primary)}.room-name-field:disabled{opacity:.5;cursor:not-allowed}.room-name-field::placeholder{color:var(--text-muted)}.upload-feedback{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4);animation:modal-fade-in .3s ease-out}.upload-feedback--success{background:#34c7591a;border:1px solid rgba(52,199,89,.25);color:var(--success)}.upload-feedback--error{background:#ff3b301a;border:1px solid rgba(255,59,48,.25);color:#ff8a84}.upload-feedback--info{background:#c9a9621a;border:1px solid rgba(201,169,98,.25);color:var(--gold-primary)}.upload-feedback svg{flex-shrink:0}.success-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.animate-slide-up{animation:slide-up .4s var(--ease-out) forwards}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.room-creation-page{min-height:100vh;padding-top:var(--space-24);padding-bottom:var(--space-16);position:relative;z-index:var(--z-default)}.creation-header{margin-bottom:var(--space-12)}.back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);text-decoration:none;font-weight:500;margin-bottom:var(--space-6);transition:color var(--duration-fast) var(--ease-out)}.back-link:hover{color:var(--gold-primary)}.title-group{display:flex;flex-direction:column;gap:var(--space-2)}.eyebrow{color:var(--gold-primary);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.1em}.title-group h1{font-family:var(--font-display);font-size:var(--text-4xl);color:var(--text-primary);font-weight:500}.creation-content{background:#1a1a1d66;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(va(--glass-blur));backdrop-filter:blur(va(--glass-blur));border-radius:var(--radius-xl);padding:var(--space-8);min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.mode-placeholder{text-align:center;color:var(--text-secondary)}.mode-placeholder h2{color:var(--text-primary);margin-bottom:var(--space-4);font-family:var(--font-display)}.btn-secondary{display:inline-flex;align-items:center;gap:var(--space-3);background:transparent;color:var(--text-primary);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.btn-secondary:hover{border-color:var(--text-primary);background:#ffffff0d}.mt-4{margin-top:var(--space-4)}.selected-mode-view{display:flex;flex-direction:column;width:100%;align-items:center}.mode-content-area{width:100%;display:flex;justify-content:center}.dashboard-page{min-height:100vh;padding-top:140px;padding-bottom:var(--space-16);background:var(--bg-primary)}.dashboard-header{margin-bottom:var(--space-8)}.dashboard-title-group{text-align:center;margin-bottom:var(--space-6)}.dashboard-eyebrow{display:block;color:var(--gold-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-2)}.dashboard-page h1{font-size:var(--text-4xl);font-weight:400}.dashboard-actions-top{display:flex;justify-content:center;gap:var(--space-4)}.dashboard-status{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-12);color:var(--text-secondary)}.dashboard-spinner{width:40px;height:40px;border:3px solid var(--glass-border);border-top-color:var(--gold-primary);border-radius:50%;animation:spin .8s linear infinite}.dashboard-error{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#ff3b301a;border:1px solid rgba(255,59,48,.25);color:#ff8a84;border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-6);animation:modal-fade-in .3s ease-out}.dashboard-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-12);text-align:center;color:var(--text-secondary);border-radius:var(--radius-xl)}.dashboard-empty h3{color:var(--text-primary);font-size:var(--text-xl)}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-6)}.room-card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--glass-border);transition:transform var(--duration-fast),border-color var(--duration-fast)}.room-card:hover{transform:translateY(-2px);border-color:var(--gold-primary)}.room-card.loading{opacity:.5;pointer-events:none}.room-card-thumb{position:relative;height:160px;background:var(--bg-secondary);overflow:hidden}.room-card-img{width:100%;height:100%;object-fit:cover}.room-card-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-xs)}.entry-badge{position:absolute;top:var(--space-2);left:var(--space-2);padding:2px 8px;background:var(--gold-primary);color:var(--text-inverse);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-sm)}.mode-badge{position:absolute;top:var(--space-2);right:var(--space-2);padding:2px 8px;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-sm)}.mode-badge--a{background:#34c75933;color:var(--success)}.mode-badge--b{background:#007aff33;color:#5ac8fa}.room-card-info{padding:var(--space-4);display:flex;justify-content:space-between;align-items:center}.room-card-info h3{font-size:var(--text-base);color:var(--text-primary);font-weight:500}.room-card-date{font-size:var(--text-xs);color:var(--text-muted)}.room-card-actions{padding:0 var(--space-4) var(--space-4);display:flex;gap:var(--space-2)}.btn-sm{padding:6px 12px;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast);border:none;font-family:inherit}.btn-sm:disabled{opacity:.4;cursor:not-allowed}.btn-outline{background:transparent;border:1px solid var(--glass-border);color:var(--text-secondary)}.btn-outline:hover:not(:disabled){border-color:var(--gold-primary);color:var(--gold-primary)}.btn-danger{background:#ff3b3026;color:#ff6b6b}.btn-danger:hover:not(:disabled){background:#ff3b304d}@media(max-width:768px){.dashboard-page{padding-top:120px}.room-grid{grid-template-columns:1fr}}.projects-page{padding:6rem 0 5rem;min-height:100vh}.projects-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;gap:1rem}.projects-eyebrow{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-gold, #d4a843);margin-bottom:.25rem;font-weight:600}.projects-header h1{font-size:2rem;font-weight:700;color:var(--text-primary, #f0f0f0);margin:0}.projects-header .btn-primary{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.projects-status{text-align:center;padding:4rem 0;color:var(--text-secondary, #aaa)}.projects-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent-gold, #d4a843);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}.projects-empty{text-align:center;padding:3rem 2rem;border-radius:1rem;max-width:480px;margin:4rem auto}.projects-empty svg{color:var(--accent-gold, #d4a843);opacity:.6;margin-bottom:1rem}.projects-empty h3{font-size:1.25rem;color:var(--text-primary, #f0f0f0);margin:0 0 .5rem}.projects-empty p{color:var(--text-secondary, #aaa);margin:0 0 1.5rem;font-size:.9rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.project-card{border-radius:.875rem;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s;border:1px solid rgba(255,255,255,.06)}.project-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0006;border-color:#ffffff1f}.project-card.selected{border-color:var(--accent-gold, #d4a843);box-shadow:0 0 0 1px var(--accent-gold, #d4a843),0 8px 32px #d4a84326}.project-card.loading{opacity:.6;pointer-events:none}.project-card-header{display:flex;align-items:flex-start;gap:.875rem;padding:1.25rem 1.25rem .75rem;cursor:pointer}.project-card-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;background:#d4a8431f;color:var(--accent-gold, #d4a843)}.project-card-meta{flex:1;min-width:0}.project-card-name{font-size:1rem;font-weight:600;color:var(--text-primary, #f0f0f0);margin:0 0 .2rem;text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-date{font-size:.75rem;color:var(--text-secondary, #888)}.project-card-badges{display:flex;gap:.375rem;flex-shrink:0}.badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;border-radius:999px}.badge-active{background:#d4a84326;color:var(--accent-gold, #d4a843);border:1px solid rgba(212,168,67,.3)}.badge-published{background:#34d3991f;color:#34d399;border:1px solid rgba(52,211,153,.3)}.project-share-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:#34d3990d;border-top:1px solid rgba(52,211,153,.1)}.share-url-text{flex:1;font-size:.72rem;color:#34d399;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:SF Mono,Menlo,monospace}.project-card-actions{display:flex;gap:.5rem;padding:.875rem 1.25rem;border-top:1px solid rgba(255,255,255,.06)}.action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;width:68px;height:58px;border:1px solid rgba(255,255,255,.12);border-radius:.75rem;background:#ffffff14;color:#fffc;cursor:pointer;font-size:.6rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:background .15s,color .15s,border-color .15s}.action-btn:hover{background:#ffffff24;color:#fff;border-color:#ffffff38}.action-btn.active{color:#34d399;background:#34d3991f;border-color:#34d3994d}.action-btn-danger:hover{background:#ef444426;color:#ef4444;border-color:#ef44444d}.action-btn:disabled{opacity:.35;cursor:not-allowed}.rename-inline{display:flex;flex-direction:column;gap:.375rem}.rename-input{width:100%;padding:.375rem .5rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:.375rem;color:var(--text-primary, #f0f0f0);font-size:.9rem;outline:none}.rename-input:focus{border-color:var(--accent-gold, #d4a843)}.rename-error{font-size:.72rem;color:#ef4444}.rename-actions{display:flex;gap:.375rem}.btn-xs{font-size:.72rem;padding:.2rem .6rem;border-radius:.375rem;border:none;cursor:pointer;font-weight:600;transition:background .15s}.btn-xs.btn-primary{background:var(--accent-gold, #d4a843);color:#111}.btn-xs.btn-secondary{background:#ffffff14;color:var(--text-secondary, #aaa)}.btn-xs.btn-outline{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-primary, #f0f0f0)}.btn-xs.btn-outline:hover{background:#ffffff0f}.modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{width:100%;max-width:440px;padding:2rem;border-radius:1rem;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h3{font-size:1.25rem;font-weight:700;color:var(--text-primary, #f0f0f0);margin:0 0 1.25rem}.modal-field{margin-bottom:1rem}.modal-field label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary, #aaa);margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.05em}.modal-field input{width:100%;padding:.625rem .875rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:.5rem;color:var(--text-primary, #f0f0f0);font-size:.95rem;outline:none;transition:border-color .15s}.modal-field input:focus{border-color:var(--accent-gold, #d4a843)}.modal-error{font-size:.8rem;color:#ef4444;margin-bottom:.75rem;padding:.5rem .75rem;background:#ef444414;border-radius:.375rem;border:1px solid rgba(239,68,68,.2)}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}@media(max-width:768px){.projects-page{padding-top:5.5rem}.projects-header{flex-direction:column;align-items:flex-start;gap:1.25rem}.projects-header .btn-primary{width:100%;justify-content:center}.projects-header h1{font-size:1.6rem}.projects-grid{grid-template-columns:1fr}}@media(max-width:480px){.projects-page{padding-top:5rem;padding-bottom:3rem}.projects-header h1{font-size:1.4rem}}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.auth-card{width:100%;max-width:420px;padding:2.5rem;border-radius:1.25rem;animation:slideUp .3s ease}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary, #f0f0f0);margin:0 0 .375rem}.auth-header p{font-size:.875rem;color:var(--text-secondary, #aaa);margin:0}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-field label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary, #aaa);margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.05em}.auth-field input{width:100%;padding:.7rem .875rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.5rem;color:var(--text-primary, #f0f0f0);font-size:.95rem;outline:none;transition:border-color .15s,background .15s}.auth-field input:focus{border-color:var(--gold-primary, #d4a843);background:#ffffff12}.auth-field input::placeholder{color:#ffffff40}.auth-error{padding:.625rem .875rem;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:.5rem;color:#ef4444;font-size:.8rem;text-align:center}.auth-submit{width:100%;padding:.75rem;font-size:.95rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;transition:opacity .15s;margin-top:.5rem}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.06)}.auth-footer p{font-size:.8rem;color:var(--text-secondary, #aaa);margin:0}.auth-footer a{color:var(--gold-primary, #d4a843);font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}@media(max-width:480px){.auth-card{padding:1.5rem}}.pricing-page{min-height:100vh;padding:6rem 2rem 4rem}.pricing-container{max-width:1100px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:3rem}.pricing-eyebrow{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-gold, #d4a843);margin-bottom:.5rem;font-weight:600}.pricing-header h1{font-size:2.25rem;font-weight:700;color:var(--text-primary, #f0f0f0);margin:0 0 .5rem}.pricing-header p{font-size:1rem;color:var(--text-secondary, #aaa);margin:0}.pricing-error{max-width:500px;margin:0 auto 2rem;padding:.75rem 1rem;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:.5rem;color:#ef4444;font-size:.85rem;text-align:center}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start}.pricing-card{position:relative;padding:2rem 1.75rem;border-radius:1.25rem;border:1px solid rgba(255,255,255,.06);transition:transform .2s,border-color .2s,box-shadow .2s}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d;border-color:#ffffff1f}.pricing-card.popular{border-color:var(--accent-gold, #d4a843);box-shadow:0 0 0 1px var(--accent-gold, #d4a843),0 8px 32px #d4a8431a}.pricing-card.current{border-color:var(--accent-gold, #d4a843)}.popular-badge,.current-badge{position:absolute;top:-.75rem;left:50%;transform:translate(-50%);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .75rem;border-radius:999px;white-space:nowrap}.popular-badge{background:var(--accent-gold, #d4a843);color:#111}.current-badge{background:#34d39926;color:#34d399;border:1px solid rgba(52,211,153,.3)}.plan-name{font-size:1.25rem;font-weight:700;color:var(--text-primary, #f0f0f0);margin:.5rem 0 1rem}.plan-price{display:flex;align-items:baseline;gap:.25rem;margin-bottom:1.5rem}.price-currency{font-size:1.25rem;font-weight:600;color:var(--text-secondary, #aaa)}.price-amount{font-size:2.5rem;font-weight:800;color:var(--text-primary, #f0f0f0);line-height:1}.price-period{font-size:.85rem;color:var(--text-secondary, #aaa)}.plan-features{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:.625rem}.plan-features li{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary, #ccc)}.plan-features li svg{flex-shrink:0;color:var(--accent-gold, #d4a843)}.plan-cta{margin-top:auto}.btn-plan{width:100%;padding:.75rem 1rem;font-size:.9rem;font-weight:600;border:none;border-radius:.5rem;cursor:pointer;transition:opacity .15s,background .15s,transform .1s}.btn-plan:active{transform:scale(.98)}.btn-plan:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-plan-primary{background:var(--accent-gold, #d4a843);color:#111}.btn-plan-primary:hover:not(:disabled){opacity:.9}.btn-plan-secondary{background:#ffffff14;color:var(--text-primary, #f0f0f0);border:1px solid rgba(255,255,255,.12)}.btn-plan-secondary:hover:not(:disabled){background:#ffffff1f}@media(max-width:900px){.pricing-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}}.billing-success-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.billing-success-card{width:100%;max-width:480px;padding:3rem 2.5rem;border-radius:1.25rem;text-align:center;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.billing-success-card h1{font-size:1.5rem;font-weight:700;color:var(--text-primary, #f0f0f0);margin:1rem 0 .5rem}.billing-success-card p{font-size:.9rem;color:var(--text-secondary, #aaa);margin:0;line-height:1.5}.billing-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent-gold, #d4a843);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.billing-success-icon svg{color:#34d399}.billing-pending-icon svg{color:var(--accent-gold, #d4a843)}.billing-success-card .btn-plan{margin:1rem auto 0;display:inline-block}.admin-page{max-width:1200px;margin:0 auto;padding:6rem var(--space-6) 5rem;color:var(--text-primary);min-height:100vh}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--glass-border);flex-wrap:wrap;gap:1rem}.admin-title{font-size:2rem;font-weight:700;color:var(--text-primary);display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem}.admin-nav{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.admin-nav-link{color:var(--text-secondary);text-decoration:none;font-size:var(--text-sm);font-weight:500;letter-spacing:.03em;padding:.375rem 1rem;border-radius:var(--radius-md);border:1px solid var(--glass-border);background:#ffffff08;transition:color .15s,border-color .15s,background .15s;white-space:nowrap}.admin-nav-link:hover{color:var(--text-primary);border-color:#ffffff2e;background:#ffffff0f}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}.stat-card{background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:border-color .2s,background .2s}.stat-card:hover{border-color:#ffffff1f;background:#ffffff0d}.stat-card-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-primary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--glass-border)}.stat-big{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-3);line-height:1}.stat-list{list-style:none;padding:0;margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.stat-list li{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid rgba(255,255,255,.04)}.stat-list li:last-child{border-bottom:none}.stat-list strong{color:var(--text-primary);font-weight:600}.section-title{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);margin-bottom:1rem;margin-top:2rem}.section-title:first-of-type{margin-top:0}.feature-flags-section{margin-bottom:1.5rem}.feature-flags-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.feature-flag-card{background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-6)}.flag-info{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.flag-name{font-size:var(--text-base);font-weight:600;color:var(--text-primary);margin:0}.status-pill{display:inline-block;padding:2px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-pill--enabled{background:#34d39926;color:#34d399}.status-pill--disabled{background:#f8717126;color:#f87171}.flag-description{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:.5rem}.flag-updated{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:.75rem;opacity:.7}.flag-error{font-size:var(--text-sm);color:var(--error);margin-bottom:.5rem}.toggle-btn{padding:.4rem 1rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;cursor:pointer;border:1px solid;transition:background .15s,border-color .15s,opacity .15s}.toggle-btn:disabled{opacity:.5;cursor:not-allowed}.toggle-btn--disable{background:#f871711a;border-color:#f871714d;color:#f87171}.toggle-btn--disable:hover:not(:disabled){background:#f8717133}.toggle-btn--enable{background:#34d3991a;border-color:#34d3994d;color:#34d399}.toggle-btn--enable:hover:not(:disabled){background:#34d39933}.confirm-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0a0bcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.confirm-modal{background:var(--bg-elevated, #1a1a2e);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-8);max-width:440px;width:100%;box-shadow:0 25px 50px #00000080;animation:confirm-enter .2s ease-out}@keyframes confirm-enter{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-title{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.confirm-message{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.confirm-btn{padding:.5rem 1.25rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;cursor:pointer;border:1px solid;transition:background .15s,border-color .15s}.confirm-btn--cancel{background:transparent;border-color:var(--glass-border);color:var(--text-secondary)}.confirm-btn--cancel:hover{background:#ffffff0d;border-color:#ffffff26}.confirm-btn--danger{background:#f8717126;border-color:#f871714d;color:#f87171}.confirm-btn--danger:hover{background:#f8717140}.confirm-btn--confirm{background:#34d39926;border-color:#34d3994d;color:#34d399}.confirm-btn--confirm:hover{background:#34d39940}.admin-loading,.admin-error{margin:8rem auto;text-align:center;color:var(--text-secondary);font-size:var(--text-base)}.admin-error{color:var(--error)}@media(max-width:768px){.admin-page{padding-top:5.5rem;padding-left:var(--space-4);padding-right:var(--space-4)}.admin-header{flex-direction:column;align-items:flex-start;gap:1rem}.admin-title{font-size:1.6rem}.stats-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.admin-page{padding-top:5rem;padding-bottom:3rem}.admin-title{font-size:1.4rem}.stats-grid{grid-template-columns:1fr}.admin-nav{width:100%}.admin-nav-link{flex:1;text-align:center}}.users-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-input{flex:1 1 220px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 14px;color:#e2e8f0;font-size:.9rem;outline:none}.filter-input::placeholder{color:#64748b}.filter-btn{background:#3b82f6;color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:.9rem;cursor:pointer;transition:background .2s}.filter-btn:hover{background:#2563eb}.row-inactive td{opacity:.55}.td-email{display:flex;flex-direction:column;gap:2px}.td-display-name{font-size:.75rem;color:#64748b}.td-none{color:#475569}.role-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.role-admin{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.role-user{background:#64748b26;color:#94a3b8;border:1px solid rgba(100,116,139,.3)}.plan-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.override-warning{display:inline-block;margin-left:6px;background:#ef444433;color:#f87171;border-radius:999px;width:16px;height:16px;line-height:16px;text-align:center;font-size:.65rem;font-weight:700;cursor:help}.status-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px}.status-active{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.25)}.status-inactive{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.25)}.detail-btn{background:transparent;border:1px solid rgba(255,255,255,.15);color:#94a3b8;border-radius:6px;padding:4px 10px;font-size:.8rem;cursor:pointer;transition:all .2s}.detail-btn:hover{border-color:#64748b;color:#e2e8f0}.title-email{font-size:var(--text-base);font-weight:400;color:var(--text-secondary);margin-left:var(--space-3)}.save-error{background:#ff3b3014;border:1px solid rgba(255,59,48,.25);color:#f87171;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);font-size:var(--text-sm)}.save-ok{background:#34c75914;border:1px solid rgba(52,199,89,.25);color:var(--success);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);font-size:var(--text-sm)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.detail-card{background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:border-color .2s,background .2s}.detail-card:hover{border-color:#ffffff1f;background:#ffffff0a}.detail-card-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-primary);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--glass-border)}.detail-list{display:grid;grid-template-columns:auto 1fr;gap:.625rem 1rem;font-size:var(--text-sm);margin-bottom:1.25rem;align-items:center}.detail-list dt{color:var(--text-secondary);white-space:nowrap}.detail-list dd{color:var(--text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dd-mono{font-family:SF Mono,Menlo,ui-monospace,monospace;font-size:.78rem;color:var(--text-secondary);word-break:break-all;white-space:normal}.td-none{color:var(--text-muted)}.action-group{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--glass-border)}.action-label{font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.action-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.action-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:var(--text-primary);border-radius:var(--radius-md);padding:.45rem 1.1rem;font-size:var(--text-sm);font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;text-transform:capitalize;line-height:1.5;white-space:nowrap}.action-btn:hover:not(:disabled){background:#ffffff24;color:var(--text-primary);border-color:#ffffff52;box-shadow:0 2px 8px #00000059}.action-btn.active{background:#c9a9622e;border-color:#c9a96299;color:var(--gold-primary);font-weight:600;box-shadow:0 0 0 1px #c9a96240}.action-btn-danger{background:#ff3b300f;border-color:#ff3b3047;color:#fca5a5}.action-btn-danger:hover:not(:disabled){background:#ff3b3024;border-color:#ff3b3080;color:#f87171}.action-btn:disabled{background:#ffffff08;border-color:#ffffff1a;color:var(--text-muted);cursor:not-allowed;box-shadow:none}.action-btn-danger:disabled{background:#ffffff08;border-color:#ff3b301f;color:var(--text-muted)}.role-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:700;padding:.2rem .65rem;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.07em}.role-admin{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.4)}.role-user{background:#a1a1a61f;color:var(--text-primary);border:1px solid rgba(161,161,166,.3)}.plan-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:700;padding:.2rem .65rem;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.07em}.badge-effective{font-weight:700}.status-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:700;padding:.2rem .65rem;border-radius:var(--radius-full);letter-spacing:.05em}.status-active{background:#34c75924;color:#4ade80;border:1px solid rgba(52,199,89,.4)}.status-inactive{background:#ff3b301f;color:#f87171;border:1px solid rgba(255,59,48,.4)}@media(max-width:900px){.detail-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.detail-grid{grid-template-columns:1fr}.title-email{display:block;margin-left:0;margin-top:.25rem;font-size:var(--text-sm)}}@media(max-width:480px){.detail-list{grid-template-columns:1fr;gap:2px 0}.detail-list dt{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-2)}.detail-list dt:first-child{margin-top:0}.dd-mono{font-size:.72rem}}.jobs-filters{display:flex;gap:10px;margin-bottom:20px}.filter-select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 12px;color:#e2e8f0;font-size:.9rem;outline:none;cursor:pointer}.filter-select option{background:#1e293b}.users-meta{font-size:.8rem;color:#64748b;margin-bottom:12px}.users-table{width:100%;border-collapse:collapse;font-size:.875rem}.users-table th{text-align:left;padding:10px 12px;color:#64748b;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid rgba(255,255,255,.08)}.users-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);color:#cbd5e1;vertical-align:middle}.users-table tr:hover td{background:#ffffff08}.status-dot{font-size:.7rem;font-weight:600;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.status-queued{background:#fbbf241f;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.status-processing{background:#3b82f61f;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.status-ready{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.status-failed{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.3)}.td-email-sm{font-size:.8rem;color:#94a3b8}.td-date{font-size:.8rem;color:#64748b;white-space:nowrap}.pagination{display:flex;align-items:center;gap:12px;margin-top:20px;justify-content:center}.page-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#94a3b8;border-radius:8px;padding:6px 16px;font-size:.875rem;cursor:pointer;transition:all .2s}.page-btn:hover:not(:disabled){background:#ffffff1a;color:#e2e8f0}.page-btn:disabled{opacity:.35;cursor:not-allowed}.page-info{font-size:.85rem;color:#64748b;min-width:60px;text-align:center}.plans-hint{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:1.25rem;padding:.75rem 1rem;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-md);line-height:1.5}.plans-table{width:100%;border-collapse:collapse;font-size:.875rem}.plans-table th{text-align:left;padding:10px 12px;color:#64748b;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid rgba(255,255,255,.08);white-space:nowrap}.th-order{width:90px}.th-center{text-align:center}.plans-table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.05);color:#cbd5e1;vertical-align:middle}.plans-table tr:hover td{background:#ffffff06}.row-inactive td{opacity:.45}.td-center{text-align:center}.td-plan-name{font-weight:500;color:#e2e8f0}.td-plan-price{font-variant-numeric:tabular-nums;color:#94a3b8;white-space:nowrap}.order-controls{display:flex;align-items:center;gap:4px}.order-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#64748b;border-radius:4px;width:22px;height:22px;font-size:.55rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;padding:0;line-height:1}.order-btn:hover:not(:disabled){background:#ffffff1f;color:#e2e8f0}.order-btn:disabled{opacity:.2;cursor:not-allowed}.order-num{font-size:.75rem;color:#475569;min-width:18px;text-align:center;font-variant-numeric:tabular-nums}.plan-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}.badge-free{background:#64748b1f;color:#94a3b8;border:1px solid rgba(100,116,139,.25)}.badge-growth{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.25)}.badge-pro{background:#8b5cf61f;color:#a78bfa;border:1px solid rgba(139,92,246,.25)}.plans-empty{text-align:center;padding:3rem;color:var(--text-secondary);font-size:var(--text-sm)}@media(max-width:900px){.plans-table{font-size:.82rem}}@media(max-width:680px){.plans-table th.th-order,.plans-table td:first-child{display:none}}.plan-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:700;padding:.2rem .65rem;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.07em;margin-left:.5rem;vertical-align:middle}.badge-free{background:#a1a1a61f;color:var(--text-primary);border:1px solid rgba(161,161,166,.3)}.badge-growth{background:#22c55e24;color:#4ade80;border:1px solid rgba(34,197,94,.4)}.badge-pro{background:#8b5cf624;color:#c4b5fd;border:1px solid rgba(139,92,246,.4)}.pd-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.pd-field{margin-bottom:1rem}.pd-label{display:block;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary);margin-bottom:.35rem}.pd-hint{font-size:var(--text-xs);font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-muted, #475569);opacity:.9}.pd-input{width:100%;box-sizing:border-box;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:.45rem .75rem;color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-body);outline:none;transition:border-color .15s,background .15s}.pd-input:focus{border-color:#ffffff38;background:#ffffff12}.pd-input::placeholder{color:#475569}.pd-mono{font-family:SF Mono,Menlo,ui-monospace,monospace;font-size:.82rem}.pd-input--changed{border-color:#fbbf2473!important;background:#fbbf240a!important}.pd-input--narrow{max-width:120px}.pd-textarea{width:100%;box-sizing:border-box;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:.45rem .75rem;color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-body);resize:vertical;outline:none;transition:border-color .15s,background .15s;line-height:1.55}.pd-textarea:focus{border-color:#ffffff38;background:#ffffff12}.pd-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.pd-row--checks{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.pd-section-sep{margin-top:1.5rem!important}.pd-stripe-guard{background:#fbbf240f;border:1px solid rgba(251,191,36,.2);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1rem}.pd-stripe-warning{font-size:var(--text-xs);color:#fbbf24;margin-bottom:.6rem;line-height:1.55}.pd-checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;line-height:1.45}.pd-checkbox-label input[type=checkbox]{margin-top:2px;flex-shrink:0;accent-color:#34d399}.pd-meta{display:flex;gap:1.5rem;font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:1rem;padding-top:.5rem;border-top:1px solid var(--glass-border);flex-wrap:wrap}.pd-meta strong{color:var(--text-primary)}.pd-save-btn{width:100%;padding:.6rem 1.25rem;background:#34d3991f;border:1px solid rgba(52,211,153,.3);color:#34d399;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background .15s,border-color .15s,opacity .15s}.pd-save-btn:hover:not(:disabled){background:#34d39933;border-color:#34d39980}.pd-save-btn:disabled{opacity:.4;cursor:not-allowed}.pd-save-error{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap;justify-content:space-between}.save-error-actions{display:flex;gap:.5rem;flex-shrink:0}.force-btn{padding:.3rem .8rem;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background .15s;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:var(--text-primary);white-space:nowrap}.force-btn:hover:not(:disabled){background:#ffffff24}.force-btn--danger{border-color:#f8717159;background:#f871711a;color:#f87171}.force-btn--danger:hover:not(:disabled){background:#f8717133}.pd-audit-table{width:100%;border-collapse:collapse;font-size:.85rem}.pd-audit-table th{text-align:left;padding:8px 12px;color:#64748b;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid rgba(255,255,255,.08);white-space:nowrap}.pd-audit-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);color:#94a3b8;vertical-align:top}.pd-audit-table tr:hover td{background:#ffffff05}.td-time{white-space:nowrap;font-size:.78rem;color:#64748b;font-variant-numeric:tabular-nums}.td-by{font-size:.8rem;color:#94a3b8;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}.pd-action-badge{font-size:.68rem;font-weight:600;padding:2px 7px;border-radius:999px;background:#ffffff12;border:1px solid rgba(255,255,255,.12);color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.pd-audit-empty{color:var(--text-secondary);font-size:var(--text-sm);padding:1.5rem 0}.diff-list{display:flex;flex-direction:column;gap:3px}.diff-item{display:flex;align-items:baseline;gap:5px;font-size:.78rem;flex-wrap:wrap}.diff-field{color:#64748b;white-space:nowrap;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;min-width:120px}.diff-old{color:#f87171;text-decoration:line-through;font-variant-numeric:tabular-nums}.diff-arrow{color:#475569}.diff-new{color:#4ade80;font-variant-numeric:tabular-nums}.diff-create{font-size:.78rem;color:#4ade80}.diff-meta{font-size:.78rem;color:#64748b;font-style:italic}@media(max-width:1000px){.pd-grid{grid-template-columns:1fr}}@media(max-width:600px){.pd-row{grid-template-columns:1fr}.pd-meta{flex-direction:column;gap:.25rem}.diff-field{min-width:90px}}.navbar{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);padding:var(--space-4) 0;transition:all var(--duration-normal) var(--ease-out)}.navbar-scrolled{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:1px solid var(--glass-border);padding:var(--space-3) 0}.navbar-container{max-width:1400px;margin:0 auto;padding:0 var(--space-6);display:flex;align-items:center;justify-content:space-between}.navbar-logo{display:flex;align-items:baseline;gap:var(--space-1);font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.1em;transition:opacity var(--duration-fast) var(--ease-out)}.navbar-logo:hover{opacity:.8;color:inherit}.logo-text{color:var(--text-primary);font-weight:500}.logo-accent{color:var(--gold-primary);font-weight:400}.navbar-links{display:flex;align-items:center;gap:var(--space-8)}.nav-link{position:relative;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;letter-spacing:.05em;text-transform:uppercase;transition:color var(--duration-fast) var(--ease-out)}.nav-link:hover{color:var(--text-primary)}.nav-link.active{color:var(--gold-primary)}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold-primary);transition:width var(--duration-fast) var(--ease-out)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link-admin{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fbbf24;opacity:.8;padding:var(--space-1) var(--space-3);border:1px solid rgba(251,191,36,.3);border-radius:6px;transition:all var(--duration-fast) var(--ease-out)}.nav-link-admin:hover,.nav-link-admin.active{opacity:1;background:#fbbf241a;border-color:#fbbf2480;color:#fbbf24}.nav-link-admin:after{display:none}.nav-link-cta{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--gold-primary);border-radius:var(--radius-full);color:var(--gold-primary)}.nav-link-cta:after{display:none}.nav-link-cta:hover{background:var(--gold-primary);color:var(--text-inverse)}.nav-link-cta svg{transition:transform var(--duration-fast) var(--ease-out)}.nav-link-cta:hover svg{transform:rotate(180deg)}.nav-logout{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-full, 999px);background:transparent;color:var(--text-secondary, #888);cursor:pointer;transition:all .15s}.nav-logout:hover{color:#ef4444;border-color:#ef44444d;background:#ef444414}.plan-badge{display:inline-flex;align-items:center;padding:.2rem .5rem;font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-full, 999px);background:#d4a8431f;color:var(--gold-primary, #d4a843);border:1px solid rgba(212,168,67,.25);transition:background .15s,border-color .15s;text-decoration:none}.plan-badge:hover{background:#d4a84333;border-color:#d4a84366;color:var(--gold-primary, #d4a843)}.project-switcher{position:relative}.switcher-trigger{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-full, 999px);color:var(--text-primary, #f0f0f0);cursor:pointer;font-size:var(--text-sm, .8125rem);font-weight:500;letter-spacing:.03em;transition:background .15s,border-color .15s;max-width:200px}.switcher-trigger:hover{background:#ffffff14;border-color:#ffffff2e}.switcher-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.switcher-chevron{flex-shrink:0;transition:transform .2s;color:var(--text-secondary, #888)}.switcher-chevron.open{transform:rotate(180deg)}.switcher-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:220px;max-width:280px;border-radius:.75rem;overflow:hidden;z-index:100;animation:dropIn .15s ease;border:1px solid rgba(255,255,255,.08)}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.switcher-list{list-style:none;margin:0;padding:.375rem;max-height:240px;overflow-y:auto}.switcher-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .625rem;background:none;border:none;border-radius:.375rem;color:var(--text-secondary, #aaa);cursor:pointer;font-size:.8125rem;text-align:left;transition:background .12s,color .12s}.switcher-option:hover{background:#ffffff0f;color:var(--text-primary, #f0f0f0)}.switcher-option.active{color:var(--gold-primary, #d4a843)}.option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.switcher-empty{padding:1rem;text-align:center;font-size:.8rem;color:var(--text-secondary, #888)}.switcher-footer{padding:.5rem .625rem;border-top:1px solid rgba(255,255,255,.06)}.switcher-manage{display:block;text-align:center;font-size:.75rem;font-weight:600;color:var(--gold-primary, #d4a843);padding:.375rem;border-radius:.375rem;text-transform:uppercase;letter-spacing:.05em;transition:background .12s}.switcher-manage:hover{background:#d4a84314}.nav-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s}.nav-hamburger:hover{background:#ffffff1a;border-color:#fff3}.nav-hamburger span{display:block;width:18px;height:1.5px;background:var(--text-primary);border-radius:2px;transition:transform .25s var(--ease-out),opacity .2s,width .2s;transform-origin:center}.nav-hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0;width:0}.nav-hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-menu{position:absolute;top:100%;left:0;right:0;z-index:90;border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);padding:var(--space-4) var(--space-4) var(--space-3);animation:mobileMenuIn .2s var(--ease-out)}@keyframes mobileMenuIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-project{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-3);background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-md);margin-bottom:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary)}.mobile-menu-project svg{flex-shrink:0;color:var(--gold-primary)}.mobile-menu-project span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;color:var(--text-primary)}.mobile-menu-links{display:flex;flex-direction:column;gap:2px}.mobile-nav-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);transition:background .15s,color .15s;text-decoration:none}.mobile-nav-link:hover,.mobile-nav-link.active{background:#ffffff0f;color:var(--text-primary)}.mobile-nav-link.active{color:var(--gold-primary)}.mobile-nav-link-cta{margin-top:var(--space-2);color:var(--gold-primary);border:1px solid rgba(201,169,98,.3)}.mobile-nav-link-cta:hover{background:#c9a9621a;color:var(--gold-primary)}.mobile-menu-footer{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid rgba(255,255,255,.06)}.mobile-logout{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3);border-radius:var(--radius-md);background:none;border:none;cursor:pointer;font-size:var(--text-sm);font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);transition:background .15s,color .15s}.mobile-logout:hover{background:#ef444414;color:#ef4444}@media(max-width:1100px){.navbar-links{gap:var(--space-4)}.switcher-trigger{max-width:160px}}@media(max-width:900px){.navbar-links{gap:var(--space-3)}.switcher-trigger{max-width:130px}}@media(max-width:768px){.navbar-container{padding:0 var(--space-4)}.navbar-links{display:none}.nav-hamburger{display:flex}}.app-wrapper{position:relative;min-height:100vh}.animated-background{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:var(--z-background);overflow:hidden}.floating-shape{will-change:transform,opacity;transform-origin:center center}.scene-wrapper{position:relative;width:100%;height:70vh;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--glass-border)}.scene-wrapper a-scene{height:100%;width:100%}.tour-page h2{text-align:center;margin-bottom:var(--space-2)}.tour-page>p{text-align:center;margin-bottom:var(--space-8)}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out)}
