:root{font-family:SF Pro Display,Inter,Segoe UI,sans-serif;color:#e8f0fff0;background:#010408;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;width:100%}body{min-height:100vh;overflow:hidden;background:#010408}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{position:relative;min-height:100vh;overflow:hidden;background-color:#010408;background-size:cover;background-position:center}.glass{backdrop-filter:blur(32px) saturate(160%);-webkit-backdrop-filter:blur(32px) saturate(160%);background:linear-gradient(160deg,#ffffff1a,#ffffff0a),linear-gradient(180deg,#040916eb,#02050ed6);border:1px solid rgba(255,255,255,.09);box-shadow:0 28px 72px #000000b8,0 2px 8px #00000080,inset 0 1px #ffffff29,inset 0 -1px #ffffff08}.floating-bar{position:absolute;top:1.4rem;left:1.4rem;right:1.4rem;z-index:10;display:flex;align-items:center;gap:1rem;padding:.9rem 1.1rem;border-radius:1.6rem}.floating-copy{display:grid;gap:.18rem;min-width:0}.floating-copy h1{margin:0;font-size:clamp(1rem,2vw,1.4rem);font-weight:600;letter-spacing:-.03em;color:#e8f2fff2}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.64rem;color:#b4c8f080}.floating-stats{margin-left:auto;display:flex;gap:.8rem}.floating-stats div{display:grid;gap:.12rem;padding-left:.85rem;border-left:1px solid rgba(255,255,255,.08)}.floating-stats span{font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:#b4c8f085;display:flex;align-items:center;gap:.28rem}.floating-stats strong{font-size:.9rem;font-weight:600;color:#dcebffeb}.stat-icon{opacity:.7;flex-shrink:0}.icon-button,.ghost-button,.pill-button,.primary-button,.theme-chip,.scene-chip,.upload-surface{border:0;outline:0;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease}.icon-button:focus-visible,.ghost-button:focus-visible,.pill-button:focus-visible,.primary-button:focus-visible,.theme-chip:focus-visible,.scene-chip:focus-visible,.upload-surface:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid rgba(140,190,255,.8);outline-offset:2px}.icon-button{width:2.6rem;height:2.6rem;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.09);display:grid;place-items:center;flex-shrink:0;color:#dce8ffe0}.icon-button:hover{background:#ffffff1a;border-color:#ffffff24}.icon-button:hover,.ghost-button:hover,.pill-button:hover,.primary-button:hover,.theme-chip:hover,.scene-chip:hover,.upload-surface:hover{transform:translateY(-1px)}.control-panel{position:absolute;top:7rem;bottom:1.4rem;left:1.4rem;z-index:6;width:min(24rem,calc(100vw - 2.8rem));padding:1.1rem;border-radius:1.9rem;display:flex;flex-direction:column;gap:.85rem;overflow-y:auto;scrollbar-width:none;transform:translate(calc(-100% - 1.2rem));opacity:0;pointer-events:none;transition:transform .28s cubic-bezier(.2,.9,.2,1),opacity .23s ease}.control-panel::-webkit-scrollbar{display:none}.control-panel.is-open{transform:translate(0);opacity:1;pointer-events:auto}.control-panel.is-compact{top:auto;max-height:min(78vh,52rem)}.panel-header,.section-title-row,.toggle-field,.field-inline,.slider-row,.panel-actions{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.panel-header h2{margin:.18rem 0 0;font-size:1.4rem;letter-spacing:-.04em;color:#e8f2fff2}.ghost-button,.pill-button,.primary-button,.theme-chip{padding:.65rem .9rem;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.09);color:#dce8ffe6;display:inline-flex;align-items:center;gap:.42rem}.ghost-button:hover,.pill-button:hover{background:#ffffff1a;border-color:#ffffff24}.pill-button{font-size:.82rem}.primary-button{flex:1;justify-content:center;background:linear-gradient(160deg,#a0d8ffeb,#64a0ffb8);border-color:#a0d8ff4d;color:#020d1a;font-weight:700}.primary-button:hover{background:linear-gradient(160deg,#b4e2fff5,#78afffd1)}.glass-section{padding:.95rem;border-radius:1.4rem;background:#00000052;border:1px solid rgba(255,255,255,.07);display:grid;gap:.85rem}.section-head{display:flex;align-items:center;gap:.45rem;color:#a0bef099}.section-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;color:#b4cdf5a6}.section-copy{margin:.15rem 0 0;color:#c8d7f58c;line-height:1.55;font-size:.88rem}.scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.scene-chip{text-align:left;border-radius:1.2rem;padding:.85rem .9rem;background:#00000061;border:1px solid rgba(255,255,255,.06);color:inherit}.scene-chip-icon{display:block;margin-bottom:.5rem;opacity:.55;color:#b4d2ffe6}.scene-chip strong,.scene-chip span{display:block}.scene-chip strong{margin-bottom:.22rem;font-weight:600;font-size:.9rem;color:#e4eeffeb}.scene-chip span{color:#bed2f885;font-size:.82rem;line-height:1.35}.scene-chip.is-active,.theme-chip.is-active{background:#64aaff1f;border-color:#8cc8ff38;box-shadow:inset 0 0 0 1px #8cc8ff1f}.scene-chip.is-active .scene-chip-icon{opacity:.85;color:#8cc8ff}.field{display:grid;gap:.5rem}.field span,.slider-row strong{color:#dce8ffd1;font-size:.88rem;font-weight:500}.field textarea,.field input[type=color],.slider-field input[type=range],.upload-surface{width:100%}.field textarea{min-height:6.5rem;resize:vertical;border-radius:1rem;border:1px solid rgba(255,255,255,.08);background:#00000080;color:#e4eeffeb;padding:.8rem .9rem;line-height:1.55}.field textarea:focus{outline:none;border-color:#8cbeff59;background:#0000008c}.upload-surface{padding:.95rem;border-radius:1.1rem;text-align:left;background:#0000006b;border:1px solid rgba(255,255,255,.08);color:inherit}.upload-surface:hover{background:#00000085;border-color:#ffffff1f}.upload-name{display:flex;align-items:center;gap:.45rem;font-weight:500;font-size:.9rem;color:#dcebffe6;margin-bottom:.28rem}.upload-surface small{display:block;color:#b4cdf57a;font-size:.78rem;line-height:1.4}.slider-field{display:grid;gap:.4rem}.slider-label{display:flex;align-items:center;gap:.35rem}.slider-icon{color:#a0bef08c;flex-shrink:0;display:flex}.slider-row output{color:#b4cdf5a6;font-variant-numeric:tabular-nums;font-size:.84rem}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:.3rem;border-radius:999px;background:linear-gradient(90deg,#78b4ff80,#508cff59)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:.95rem;height:.95rem;border-radius:999px;background:#dceefff5;box-shadow:0 2px 12px #00000080}input[type=range]::-moz-range-thumb{width:.95rem;height:.95rem;border:0;border-radius:999px;background:#dceefff5;box-shadow:0 2px 12px #00000080}.toggle-field span{color:#dce8ffd1;font-size:.88rem}.toggle-pill{width:3rem;height:1.75rem;padding:.18rem;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:#0006;flex-shrink:0}.toggle-pill span{display:block;width:1.38rem;height:1.38rem;border-radius:999px;background:#c8daf8e0;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.toggle-pill.is-active{background:#5096ff8c;border-color:#64aaff4d}.toggle-pill.is-active span{transform:translate(1.2rem);background:#dceefff5}.field-inline input[type=color]{width:3rem;height:1.9rem;padding:0;border-radius:999px;background:transparent;border:0;cursor:pointer}.inline-icon{opacity:.6;vertical-align:-2px;margin-right:.28rem}.theme-row{display:flex;gap:.5rem;flex-wrap:wrap}.theme-chip{font-size:.8rem;padding-inline:.8rem;padding-block:.55rem}.panel-actions{margin-top:.1rem}@media (max-width: 979px){body{overflow:auto}.app-shell{min-height:100dvh}.floating-bar{right:1rem;left:1rem;padding:.85rem .95rem;align-items:flex-start;flex-wrap:wrap}.floating-stats{width:100%;margin-left:0}.control-panel{left:1rem;right:1rem;width:auto;bottom:1rem;transform:translateY(calc(100% + 1rem))}.control-panel.is-open{transform:translateY(0)}}@media (max-width: 720px){.floating-stats{flex-direction:column;gap:.6rem}.floating-stats div{border-left:0;padding-left:0}.scene-grid{grid-template-columns:1fr}.panel-actions{flex-direction:column}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
