:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f4eee4;background:#090807;font-synthesis:none;--gold: #d6a85d;--gold-light: #f0cf8c;--wine: #6b1e2d;--panel: rgba(22, 19, 17, .93);--line: rgba(220, 186, 125, .18)}*{box-sizing:border-box}html{min-height:100%;background:#090807}body{min-width:320px;min-height:100vh;min-height:100svh;margin:0;overscroll-behavior:none;background:radial-gradient(circle at 50% -10%,rgba(116,35,46,.28),transparent 36rem),linear-gradient(150deg,#0b0908,#100d0c,#070606)}body:before{position:fixed;inset:0;pointer-events:none;content:"";opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E")}button,input{font:inherit}button,input[type=range]{touch-action:manipulation}.app-shell{position:relative;z-index:1;width:min(1180px,100%);min-height:100vh;min-height:100svh;margin:0 auto;padding:max(28px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.masthead{margin-bottom:24px;text-align:center}.eyebrow,.label,.meter-heading label,.sensitivity-heading label,.state-kicker{margin:0;color:var(--gold);font-size:.66rem;font-weight:600;letter-spacing:.22em}.masthead h1{margin:4px 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.8rem,7vw,5.3rem);font-weight:500;line-height:.95;letter-spacing:-.04em}.subtitle{margin:9px 0 0;color:#bdb4a8;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.05rem,2vw,1.35rem);font-style:italic}.experience{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#0f0d0cd9;box-shadow:0 32px 80px #00000061,inset 0 1px #ffffff06}.stage{position:relative;min-height:320px;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at center,rgba(109,31,45,.25),transparent 48%),#0b0909;isolation:isolate}.stage:before,.stage:after{position:absolute;z-index:1;inset:0;pointer-events:none;content:""}.stage:before{opacity:.36;background:repeating-linear-gradient(90deg,transparent 0 14%,rgba(215,169,92,.07) 14.2%,transparent 14.4% 28%)}.stage:after{border:1px solid rgba(231,193,128,.1);border-radius:50%;transform:scale(1.32,.88)}#camera{width:100%;height:100%;min-height:320px;display:block;object-fit:cover;opacity:0;transform:scaleX(-1);transition:opacity .6s ease}.stage.is-running #camera{opacity:.78}.stage-vignette{position:absolute;z-index:2;inset:0;pointer-events:none;background:radial-gradient(circle,transparent 35%,rgba(8,6,6,.74) 105%)}.stage-placeholder{position:absolute;z-index:3;inset:0;display:grid;place-content:center;justify-items:center;gap:20px;color:#c9beb1;text-align:center}.stage-placeholder[hidden]{display:none}.stage-placeholder p{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-style:italic}.sound-mark{height:54px;display:flex;align-items:center;gap:7px}.sound-mark i{width:2px;height:20px;display:block;background:var(--gold);box-shadow:0 0 14px #d6a85d73}.sound-mark i:nth-child(2),.sound-mark i:nth-child(4){height:38px}.sound-mark i:nth-child(3){height:54px}.live-badge{position:absolute;z-index:4;top:16px;left:16px;padding:7px 10px;border:1px solid rgba(255,255,255,.12);border-radius:99px;color:#eee7df;background:#080707a8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.58rem;font-weight:600;letter-spacing:.14em}.live-badge span{width:6px;height:6px;display:inline-block;margin-right:5px;border-radius:50%;background:#e15f65;box-shadow:0 0 7px #e15f65}.state-overlay{position:absolute;z-index:4;right:18px;bottom:15px;text-align:right}.state-overlay strong{display:block;color:var(--gold-light);font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.5rem,8vw,4.5rem);font-weight:500;line-height:.85;text-shadow:0 4px 28px rgba(0,0,0,.68);transition:color .4s ease}.stage[data-state=MID] .state-overlay strong{color:#efb057}.stage[data-state=HIGH] .state-overlay strong{color:#ef7474}.console-panel{padding:22px;background:var(--panel)}.part-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:19px;border-bottom:1px solid var(--line)}.part-name{margin:5px 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.35rem;line-height:1.1}.part-index{color:#ddb77659;font-family:Cormorant Garamond,Georgia,serif;font-size:2.5rem}.meter-section,.sensitivity-section{margin-top:22px}.meter-heading,.sensitivity-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.meter-heading output,.sensitivity-heading output{color:#eee5d9;font-variant-numeric:tabular-nums;font-size:.78rem}.motion-meter{position:relative;height:9px;overflow:visible;border-radius:99px;background:#312b27}.meter-fill{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#aa7d3e,var(--gold-light));box-shadow:0 0 16px #deac5859;transition:width 80ms linear,background .4s ease}.motion-meter[data-state=HIGH] .meter-fill{background:linear-gradient(90deg,#b13243,#f47a70)}.meter-threshold{position:absolute;top:-3px;width:1px;height:15px;background:#ffffff61}.meter-legend,.range-labels{display:flex;justify-content:space-between;margin-top:7px;color:#726960;font-size:.55rem;font-weight:600;letter-spacing:.12em}input[type=range]{width:100%;height:24px;margin:0;appearance:none;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:99px;background:linear-gradient(90deg,#4a3421,var(--gold))}input[type=range]::-webkit-slider-thumb{width:20px;height:20px;margin-top:-8px;appearance:none;border:2px solid #17120e;border-radius:50%;background:var(--gold-light);box-shadow:0 0 0 1px var(--gold),0 2px 8px #00000080}input[type=range]::-moz-range-track{height:3px;border-radius:99px;background:linear-gradient(90deg,#4a3421,var(--gold))}input[type=range]::-moz-range-thumb{width:18px;height:18px;border:2px solid #17120e;border-radius:50%;background:var(--gold-light)}.primary-button{width:100%;min-height:54px;margin-top:24px;border:1px solid #e0b467;border-radius:10px;color:#150e09;background:linear-gradient(135deg,#e5bd73,#c98e42);box-shadow:0 10px 26px #8d501d3d;font-weight:600;letter-spacing:.015em;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.primary-button:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 12px 30px #9e5b2457;transform:translateY(-1px)}.primary-button:active:not(:disabled){transform:translateY(1px)}.primary-button:focus-visible,input[type=range]:focus-visible,footer a:focus-visible{outline:2px solid #fff3c6;outline-offset:3px}.primary-button:disabled{cursor:wait;opacity:.72}.primary-button.is-stop{color:#f2e8dd;border-color:#dba7655c;background:#2a211c;box-shadow:none}.button-icon{display:inline-block;margin-right:8px;font-size:.65rem}.status-message,.error-message{margin:14px 4px 0;color:#8f857b;font-size:.72rem;line-height:1.55;text-align:center}.error-message{padding:10px 12px;border:1px solid rgba(224,104,107,.3);border-radius:8px;color:#efb4b4;background:#701f2626}footer{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:18px;color:#776e66;font-size:.64rem;line-height:1.4;text-align:center}footer p{margin:0}footer a{color:#9f8b6e;text-decoration:underline;text-decoration-color:#9f8b6e59;text-underline-offset:3px}.privacy-dot{width:6px;height:6px;display:inline-block;margin-right:5px;border:1px solid #75a678;border-radius:50%;background:#385c3c}@media(min-width:820px){.app-shell{display:flex;flex-direction:column;justify-content:center;padding-top:34px;padding-bottom:26px}.masthead{margin-bottom:28px}.experience{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.75fr)}.stage,#camera{min-height:500px}.console-panel{display:flex;flex-direction:column;justify-content:center;padding:30px;border-left:1px solid var(--line)}footer{flex-direction:row;justify-content:space-between}}@media(max-width:819px)and (max-height:780px){.app-shell{padding-top:max(18px,env(safe-area-inset-top))}.masthead{margin-bottom:15px}.masthead h1{font-size:2.7rem}.subtitle{margin-top:4px}.stage,#camera{min-height:245px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
