:root{--bg:#080812;--panel:#11111f;--panel2:#17172a;--fg:#f4f6ff;--muted:rgba(244,246,255,.68);--accent:#ff7a2f;--border:rgba(255,255,255,.14);--shadow:0 22px 80px rgba(0,0,0,.38)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 20% 0%,rgba(255,122,47,.16),transparent 30%),linear-gradient(135deg,#05050b,#101024 55%,#05050b);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:#ffd6b9}.app-header,.app-footer{max-width:1500px;margin:0 auto;padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.9rem}.logo{max-height:54px;max-width:180px;object-fit:contain}.app-header h1{margin:0;font-size:clamp(1.35rem,2.2vw,2.35rem);letter-spacing:.01em}.app-header p{margin:.2rem 0 0;color:var(--muted)}.version{border:1px solid var(--border);border-radius:999px;padding:.45rem .75rem;background:rgba(255,255,255,.06);white-space:nowrap}.layout{max-width:1500px;margin:0 auto;padding:0 1.25rem 1.25rem;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:1rem}.stage-card,.panel-box,.content-page{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);overflow:hidden}.stage-toolbar{padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:rgba(0,0,0,.18);border-bottom:1px solid var(--border)}.stage-toolbar strong{display:block}.stage-toolbar span{display:block;color:var(--muted);font-size:.9rem;margin-top:.1rem}.toolbar-buttons{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}button{border:1px solid rgba(255,255,255,.18);background:#1c1c32;color:var(--fg);border-radius:12px;padding:.62rem .8rem;font-weight:750;cursor:pointer}button:hover{background:#2a2a46}button:disabled{opacity:.45;cursor:not-allowed}.primary-action{background:linear-gradient(135deg,#ff8a30,#d94b13);border-color:rgba(255,255,255,.2)}.lamp-stage{position:relative;overflow:hidden;aspect-ratio:16/9;background:#03030a;isolation:isolate;cursor:pointer}#lavaCanvas{position:absolute;inset:0;width:100%;height:100%;display:block}.glass-reflection{position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(105deg,transparent 0 10%,rgba(255,255,255,.16) 12%,transparent 15% 62%,rgba(255,255,255,.07) 64%,transparent 67%),radial-gradient(ellipse at 50% 105%,rgba(255,255,255,.12),transparent 45%);mix-blend-mode:screen;opacity:.72}.start-overlay{position:absolute;z-index:20;inset:0;display:grid;place-content:center;text-align:center;background:rgba(0,0,0,.36);backdrop-filter:blur(2px)}.start-overlay strong{font-family:Arial Black,Impact,system-ui,sans-serif;font-size:clamp(36px,5vw,82px);color:#ffd07a;text-shadow:0 0 30px rgba(255,122,47,.55),0 4px 0 #000}.start-overlay span{margin-top:.7rem;color:rgba(255,255,255,.82);font-weight:800}.running .start-overlay{display:none}.control-panel{display:flex;flex-direction:column;gap:1rem}.panel-box{padding:1rem}.panel-box h2{font-size:1rem;margin:0 0 .8rem;color:#fff}label{display:block;margin:.78rem 0;color:rgba(255,255,255,.86)}input[type=range]{width:100%;accent-color:var(--accent)}output{float:right;color:rgba(255,255,255,.72)}select{width:100%;margin-top:.35rem;border:1px solid var(--border);border-radius:12px;background:#151522;color:var(--fg);padding:.65rem}.switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.switch{display:flex;align-items:center;gap:.45rem;border:1px solid var(--border);border-radius:12px;padding:.58rem;background:rgba(0,0,0,.16);margin:0}.switch input{accent-color:var(--accent)}.info p,.content-page p{line-height:1.55;color:rgba(255,255,255,.74)}.content-page{max-width:1000px;margin:0 auto 1rem;padding:1.25rem}.app-footer{color:var(--muted);font-size:.95rem}.app-footer div{display:flex;gap:.45rem;align-items:center}@media(max-width:1100px){.layout{grid-template-columns:1fr}.stage-toolbar{align-items:flex-start;flex-direction:column}.toolbar-buttons{justify-content:flex-start}.control-panel{grid-row:auto}}@media(max-width:640px){.app-header,.app-footer{flex-direction:column;align-items:flex-start}.layout{padding:0 .7rem .9rem}.switch-grid{grid-template-columns:1fr}.toolbar-buttons button{flex:1 1 auto}.panel-box{padding:.85rem}}
