:root{color-scheme:dark;--bg:#090d16;--panel:#111724;--border:#263047;--muted:#8593ab;--text:#e6edf7;--cyan:#58e4cb;--purple:#b59bff;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:13px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}header{height:76px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:#0d1320}.brand{display:flex;gap:13px;align-items:center}.mark{color:var(--cyan);font-size:29px;font-weight:800;border:1px solid #37675f;border-radius:12px;padding:8px}.brand strong{font-size:21px;letter-spacing:.03em}.brand strong span{font-weight:400;color:#b3bfd4}.brand small{display:block;color:var(--muted);letter-spacing:.15em;font-size:10px;margin-top:6px}.package{display:flex;align-items:center;gap:10px;color:#b3bfd4;font-size:12px}.live-dot{width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 12px #58e4cb66}main{display:grid;grid-template-columns:272px minmax(360px,1fr) 290px;height:calc(100vh - 76px);min-height:640px}aside{background:var(--panel);padding:22px 18px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#33405a transparent}.controls{border-right:1px solid var(--border)}.inspector{border-left:1px solid var(--border)}h1,h2,h3,p{margin:0}h1{font-size:23px;font-weight:600;letter-spacing:-.02em}h2{font-size:15px;font-weight:600}h3{font-size:12px;margin-bottom:15px;font-weight:600}.section-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px}.section-top h3{margin:0}.tag{font-size:9px;letter-spacing:.12em;border:1px solid #346459;padding:4px 7px;border-radius:4px;color:var(--cyan)}label{display:block;color:#9babc1;font-size:10px;letter-spacing:.06em;line-height:1.4;margin-bottom:14px}input,select,button{font:inherit}select,input[type=number],input[type=text],input[type=search]{background:#0c1220;color:var(--text);border:1px solid #303c53;border-radius:6px;outline:none;padding:9px 10px;width:100%;font-size:12px;margin-top:6px}select:focus,input:focus,button:focus-visible{border-color:var(--cyan);outline:1px solid var(--cyan)}input[type=search]{margin-bottom:2px}input[type=color]{width:100%;height:36px;background:none;border:1px solid var(--border);margin-top:6px;border-radius:5px}button{background:#1b2537;color:#c6d2e5;border:1px solid #34415a;border-radius:6px;padding:8px 11px;cursor:pointer;font-size:12px;white-space:nowrap}button:hover{background:#29364d;color:white}button:disabled{opacity:.45;cursor:wait}.primary{background:var(--cyan);color:#072820;border-color:var(--cyan);font-weight:700}.primary:hover{background:#94f2e1;color:#072820}.selected{color:var(--cyan);border-color:#3b8376;background:#18352f}.button-row{display:flex;gap:7px}.button-row button{flex:1}.wide{width:100%}.rule{height:1px;background:var(--border);margin:22px 0}.slider-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.slider-label output{font-size:11px;color:var(--text);letter-spacing:0;font-variant-numeric:tabular-nums}.range-pair{display:flex;align-items:center;gap:10px}.range-pair input[type=number]{width:56px;margin:0;padding:5px;font-size:11px}.range-pair input[type=range]{width:100%;accent-color:var(--cyan);height:4px;cursor:pointer;margin:8px 0}.check{display:flex;gap:7px;align-items:center;font-size:11px;letter-spacing:0;color:#a6b6cc}.check input{accent-color:var(--cyan)}.hint{color:var(--muted);font-size:11px;line-height:1.65;margin:12px 0}.muted{color:var(--muted);font-weight:400;font-size:10px}.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preview{display:flex;flex-direction:column;min-width:0;overflow:hidden}.transport{display:flex;align-items:center;gap:8px;padding:14px 20px;border-bottom:1px solid var(--border);flex-wrap:wrap}.transport select{width:70px;margin:0;padding:7px}.clock{color:var(--cyan);font-size:12px;font-variant-numeric:tabular-nums;margin-left:auto}.scene-head{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 10px;gap:12px}.scene-head p{color:var(--muted);font-size:11px;margin-top:8px}.view-buttons{display:flex;gap:5px}.view-buttons button{padding:6px 9px}.scene{flex:1;min-height:260px;position:relative;margin:0 10px;overflow:hidden}.scene canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none}.scene canvas:active{cursor:grabbing}.scene-tip{position:absolute;bottom:13px;left:14px;color:#697b99;font-size:10px;pointer-events:none}.scene-status{position:absolute;top:14px;right:14px;font-size:9px;color:#79938d;letter-spacing:.1em}.pixel-info{position:absolute;bottom:35px;left:14px;padding:10px 12px;background:#131e30ed;border:1px solid #3b5873;border-radius:6px;font-size:11px;pointer-events:none;font-variant-numeric:tabular-nums}.strips-head{display:flex;align-items:center;padding:17px 24px 10px;gap:13px;border-top:1px solid var(--border)}.strips-head h2{font-size:13px}.strips-head span{font-size:10px;color:var(--muted)}.strips-head button{margin-left:auto;padding:5px 9px;font-size:10px}.strip-monitor{height:210px;flex-shrink:0;overflow:auto;margin:0 14px}.strip-monitor canvas{display:block;width:100%;cursor:crosshair}.footer{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:13px 24px;border-top:1px solid #172237;color:#6d7f9c;font-size:10px}.footer label{margin:0}.node{border:1px solid var(--border);background:#0e1523;border-radius:7px;padding:10px;margin-bottom:9px}.node-heading{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px}.node-heading small{color:#698098;font-size:10px}.node-outputs{display:flex;gap:6px}.node-outputs button{flex:1;padding:6px;font-size:10px}.layout-row{margin-top:16px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.field-grid .full{grid-column:1/-1}.segment{border:1px solid var(--border);background:#0c1320;border-radius:6px;padding:10px;margin:10px 0}.segment-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.segment-head button{padding:3px 8px}summary{color:#8e9fb8;font-size:11px;cursor:pointer}#error{position:fixed;top:82px;left:calc(50% - 280px);width:560px;max-width:90vw;padding:14px 18px;border:1px solid #a36569;color:#ffced0;background:#43202a;z-index:10;border-radius:8px;white-space:pre-wrap;font-size:12px}#error[hidden]{display:none}.stale{color:#ffc572!important}#blackout.selected{border-color:#d59199;color:#ffd0d8;background:#492531}@media(min-width:1700px){main{grid-template-columns:304px minmax(360px,1fr) 320px}.strip-monitor{height:240px}}@media(max-width:1100px){main{grid-template-columns:238px minmax(340px,1fr)}.inspector{grid-column:1/-1;border-top:1px solid var(--border);overflow:visible;display:block;height:auto}main{height:auto}.preview{height:850px}.controls{height:850px}.inspector #nodes{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.inspector #nodeFields{max-width:600px}.inspector #segments{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}}@media(max-width:680px){header{height:auto;padding:15px;gap:15px;flex-wrap:wrap}.brand strong{font-size:18px}main{display:flex;flex-direction:column}.controls{height:auto;order:2}.preview{height:780px;order:1}.inspector{order:3}.scene-head{padding:18px 16px 8px}h1{font-size:18px}.footer>span:nth-child(2){display:none}.transport{padding:12px}.inspector #nodes{grid-template-columns:repeat(2,1fr)}}
[hidden]{display:none!important}
.layout-toolbar{display:flex;align-items:center;gap:12px;padding:6px 24px 10px;flex-wrap:wrap}.layout-toolbar>span:first-child{font-size:9px;letter-spacing:.12em;color:var(--muted)}.layout-toolbar #layoutSummary{font-size:10px;color:#8fa6c0}.layout-toolbar button{padding:6px 13px}
/* AH-RAY Studio, aligned with the public site. */
:root{--bg:#111110;--panel:#181817;--border:#34332f;--muted:#979589;--text:#f0ede6;--cyan:#efad75;--purple:#bc99f4}header{background:#151514}.mark{color:var(--cyan);border-color:#66503b;text-decoration:none}.brand strong span{color:#bcb8af}.live-dot{background:var(--cyan);box-shadow:0 0 12px #efad7533}.tag{border-color:#65503b;color:var(--cyan)}select,input[type=number],input[type=text],input[type=search]{background:#111110;border-color:#45423b}button{background:#252522;border-color:#46433c;color:#d6d1c7}button:hover{background:#34332d}.primary{background:var(--cyan);color:#251b13;border-color:var(--cyan)}.primary:hover{background:#ffd1a8;color:#251b13}.selected{color:var(--cyan);border-color:#90704e;background:#352b20}.node{background:#131312}.node-heading small{color:#91887b}.segment{background:#141413}.scene{background:radial-gradient(ellipse at center,#171b21,#0d1118);border:1px solid #292c30;border-radius:8px;margin-top:2px}.scene-head p{color:#979589}.clock{color:var(--cyan)}.footer{border-top-color:var(--border)}.no-script{padding:20px;color:#efad75}#source{overflow-wrap:anywhere}#error{left:50%;transform:translateX(-50%)}button:disabled{cursor:default}.layout-toolbar{gap:8px}.scene-tip{right:14px;line-height:1.4}.package button{font-size:10px}button,input,select{min-height:30px}@media(max-width:680px){.scene-status{font-size:8px;right:10px}.scene-head{flex-wrap:wrap}.scene-head .view-buttons{margin-left:auto}.scene{margin:5px 8px}.layout-toolbar{padding:10px 12px}.layout-toolbar #layoutSummary{width:100%}.transport{gap:6px}.transport button{padding:8px}.preview{height:900px}.strip-monitor{height:180px}.strips-head{padding:14px 12px;flex-wrap:wrap}.footer{padding:12px}.package{font-size:10px}header{padding:14px}.brand small{font-size:9px}.brand strong{font-size:19px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
#nodes{max-height:230px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#45423b transparent;padding-right:5px}.inspector>.section-top{margin-bottom:14px}.layout-row{margin-top:12px}@media(min-width:1101px) and (max-height:850px){main{min-height:0}.scene{min-height:190px}.scene-head{padding-top:16px}.strip-monitor{height:140px}.transport{padding-top:10px;padding-bottom:10px}.strips-head{padding-top:12px}.footer{padding:10px 16px}.scene-head h1{font-size:21px}}@media(max-width:1100px){.inspector #nodes{max-height:220px;overflow-y:auto}.inspector #segments{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.inspector #segments{grid-template-columns:1fr}#nodes{max-height:225px}.scene-tip{font-size:9px}.scene-head p{line-height:1.5}.brand .mark{font-size:25px;padding:6px}.brand strong{font-size:18px}}
