:root{color:#f8f3df;background:#151a13;font-family:Avenir Next Condensed,DIN Condensed,Trebuchet MS,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% 18%,#efb84b47,#0000 28rem),radial-gradient(circle at 78% 12%,#5a934c4d,#0000 24rem),linear-gradient(145deg,#10130f 0%,#202615 52%,#11160f 100%);min-width:320px;min-height:100vh;margin:0}button{font:inherit}.shell{width:min(1280px,100vw - 24px);margin:0 auto;padding:12px 0 24px}.eyebrow{color:#d6b45b;letter-spacing:.24em;text-transform:uppercase;margin:0 0 6px;font-size:13px}h1{color:#fff8d8;letter-spacing:-.04em;text-shadow:0 8px 32px #00000073;margin:0;font-size:36px;line-height:.95}.panel{grid-template-columns:minmax(0,960px) 320px;align-items:stretch;gap:18px;display:grid}.main-column{gap:18px;min-width:0;display:grid}.stage-wrap{background:#050603;border:1px solid #fff4c43d;border-radius:28px;position:relative;overflow:hidden;box-shadow:0 26px 80px #00000073}canvas{aspect-ratio:4/3;image-rendering:auto;background:#000;outline:none;width:100%;display:block}canvas:focus{box-shadow:inset 0 0 0 3px #ffe27c73}.monitor-layer{pointer-events:none;z-index:2;position:absolute;inset:0}.monitor{color:#241306;background:#f4a834f5;border:1px solid #9f601abf;border-radius:5px;align-items:center;min-width:86px;max-width:min(360px,60%);font:700 12px/1.2 Verdana,sans-serif;display:inline-flex;position:absolute;overflow:hidden;transform:translateZ(0);box-shadow:0 2px 8px #00000052}.monitor-name{white-space:nowrap;background:#ffd671db;align-items:center;padding:4px 6px;display:flex}.monitor-value{text-align:center;text-overflow:ellipsis;white-space:nowrap;border-left:1px solid #944e0d8c;justify-content:center;align-items:center;min-width:34px;padding:4px 8px;display:flex;overflow:hidden}.monitor-long{max-width:min(560px,86%)}.monitor-long .monitor-value{text-align:left;min-width:220px;max-width:min(520px,74vw);text-overflow:unset;white-space:normal;word-break:break-word;overflow:visible}.monitor-large{border-radius:8px;font-size:18px}.monitor-large .monitor-name{display:none}.monitor-large .monitor-value{border-left:0;min-width:92px;padding:8px 14px}.monitor-list{pointer-events:auto;width:min(300px,58%);max-height:min(220px,62%);display:block;overflow:hidden}.monitor-list .monitor-name,.monitor-list .monitor-list-items{text-align:left;border-left:0;display:block}.monitor-list .monitor-name{z-index:1;position:sticky;top:0}.monitor-list-items{overscroll-behavior:contain;scrollbar-color:#68390cb8 #ffdc8466;scrollbar-width:thin;pointer-events:auto;background:#ffbf48e6;max-height:184px;padding:3px 0;overflow-y:auto}.monitor-list-row{white-space:normal;word-break:break-word;border-top:1px solid #944e0d40;padding:3px 7px}.monitor-list-empty{color:#24130694;font-style:italic}.monitor-slider{pointer-events:auto;align-items:center;gap:7px;min-width:170px;max-width:240px;padding-right:8px}.monitor-slider .monitor-value{border-left:1px solid #944e0d8c}.monitor-slider-input{accent-color:#284e10;cursor:pointer;pointer-events:auto;width:80px}.hidden{display:none!important}.ask-box{z-index:4;color:#1d2730;background:#fffffff5;border:2px solid #3f8fd6e6;border-radius:13px;padding:13px;font-family:Avenir Next,Trebuchet MS,sans-serif;position:absolute;bottom:18px;left:18px;right:18px;box-shadow:0 10px 36px #00000061}.ask-box.hidden{display:none}.ask-box label{margin-bottom:9px;font-size:15px;font-weight:800;display:block}.ask-row{gap:9px;display:flex}.ask-row input{border:2px solid #5aa3df;border-radius:999px;outline:none;flex:1;min-width:0;padding:10px 14px;font:700 16px/1.2 Avenir Next,Trebuchet MS,sans-serif}.ask-row input:focus{border-color:#f4a832}.ask-row button{color:#fff;cursor:pointer;background:#2e87d1;border:0;border-radius:999px;padding:10px 18px;font-weight:800}.overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:5;background:linear-gradient(145deg,#060805c2,#292d1494);place-items:center;padding:28px;display:grid;position:absolute;inset:0}.overlay.hidden{display:none}.tutorial-layer{z-index:6;pointer-events:none;position:absolute;inset:0}.tutorial-target{border:2px solid #ffd25ff2;border-radius:18px;position:absolute;box-shadow:0 0 0 999px #00000038,0 0 0 8px #ffd25f24,0 16px 40px #00000059}.tutorial-arrow{width:30px;height:84px;position:absolute;transform:translate(-50%)}.tutorial-arrow:before{content:"";background:linear-gradient(#ffe27c,#f39a32);border-radius:999px;width:4px;height:62px;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 12px #ffcb5c8c}.tutorial-arrow:after{content:"";filter:drop-shadow(0 0 8px #ffcb5c73);border-top:22px solid #f6bb56;border-left:14px solid #0000;border-right:14px solid #0000;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.tutorial-card{pointer-events:auto;background:#0f140bf5;border:1px solid #ffe27c3d;border-radius:22px;gap:14px;width:min(380px,100% - 36px);padding:18px;display:grid;position:absolute;bottom:18px;right:18px;box-shadow:0 18px 48px #00000073}.tutorial-card[data-position=left]{left:18px;right:auto}.tutorial-card[data-position=center]{left:50%;right:auto;transform:translate(-50%)}.tutorial-stepbar,.tutorial-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.tutorial-step{color:#d6b45b;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:800}.tutorial-skip,.tutorial-button{cursor:pointer;pointer-events:auto;border:1px solid #ffe27c3d;border-radius:999px;padding:10px 14px}.tutorial-skip{color:#c7bb92;background:0 0}.tutorial-card h3{color:#fff0bc;margin:0;font-size:24px;line-height:1.08}.tutorial-card p{color:#d8cca5;margin:0;line-height:1.55}.tutorial-button{color:#15110a;background:linear-gradient(135deg,#ffe27c,#f28528);font-weight:900}.tutorial-button.ghost{color:#fff0bc;background:#ffe27c14}.tutorial-button:disabled{opacity:.45;cursor:default}.start-card,.loading-card{background:#11130bdb;border:1px solid #ffeeae47;border-radius:24px;max-width:460px;padding:28px;box-shadow:0 20px 60px #00000059}.start-card h2,.loading-card h2{color:#ffe38a;margin:0 0 12px;font-size:36px;line-height:1}.start-card p,.loading-card p{color:#dcd2ad;margin:0 0 22px;line-height:1.6}.loading-card{width:min(460px,100%)}.progress-track{background:#040603b8;border:1px solid #ffe27c61;border-radius:999px;height:16px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg,#80b246,#ffe27c,#f28528);width:0%;height:100%;transition:width .22s;box-shadow:0 0 18px #ffcf578c}.start{color:#15110a;cursor:pointer;letter-spacing:.08em;background:linear-gradient(135deg,#ffe27c,#f28528);border:0;border-radius:999px;width:100%;padding:15px 22px;font-size:20px;font-weight:800}.side{background:#0d120bb8;border:1px solid #fff4c42e;border-radius:28px;flex-direction:column;max-height:calc(100vh - 24px);padding:20px;display:flex;overflow:auto}.side-heading{margin-bottom:18px}.status{color:#f5e9bd;white-space:pre-wrap;min-height:88px;margin:0 0 18px;line-height:1.5}.runtime-note{color:#776f59;min-height:0;margin:auto 0 0;padding-top:14px;font-size:11px;line-height:1.35}.save-module{background:radial-gradient(circle at 100% 0,#f4a8342e,#0000 9rem),#ffe27c0f;border:1px solid #ffe27c2e;border-radius:20px;gap:12px;margin-bottom:18px;padding:14px;display:grid}.module-heading{gap:4px;display:grid}.module-heading h2{color:#ffe38a;margin:0;font-size:20px;line-height:1.05}.module-heading span{color:#d6c995;font-size:12px;line-height:1.35}.save-module select{color:#f8f3df;background:#0406039e;border:1px solid #ffe27c47;border-radius:12px;width:100%;min-width:0;padding:9px 10px;font:700 13px/1.2 Avenir Next,Trebuchet MS,sans-serif}.save-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.save-status{color:#d6c995;background:#ffe27c14;border:1px solid #ffe27c2e;border-radius:14px;margin:0 0 16px;padding:10px 12px;font-size:13px;line-height:1.45}.controls{color:#c9bd94;gap:10px;font-size:15px;line-height:1.5;display:grid}.controls strong{color:#ffe38a}.utility-button{color:#ffe38a;cursor:pointer;background:#ffe27c17;border:1px solid #ffe27c47;border-radius:12px;width:100%;padding:9px 12px;font-weight:800}.utility-button.danger{color:#ffb19a;border-color:#f5765761}.utility-button:hover{background:#ffe27c29}.tutorial-reopen{margin-top:12px}.small{color:#92896d;margin-top:18px;font-size:13px;line-height:1.5}.guide-board{background:radial-gradient(circle at 0 0,#f4a83424,#0000 16rem),radial-gradient(circle at 100% 0,#589f6529,#0000 14rem),#0a0e09d1;border:1px solid #fff4c42e;border-radius:28px;padding:24px;box-shadow:0 22px 64px #00000047}.guide-heading{margin-bottom:18px}.guide-heading h2,.card-heading h3,.control-group h4{margin:0}.guide-heading h2{color:#fff2c0;font-size:32px;line-height:1.05}.guide-intro{color:#d1c39d;max-width:56rem;margin:10px 0 0;line-height:1.6}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.shot-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.shot-card{background:linear-gradient(#fff2c014,#fff2c008);border:1px solid #ffe8a129;border-radius:22px;gap:12px;min-width:0;padding:14px;display:grid}.shot-frame{aspect-ratio:16/10;background:#050804d1;border:1px solid #ffe27c24;border-radius:18px;overflow:hidden}.shot-frame img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.shot-copy{gap:5px;display:grid}.shot-copy strong{color:#fff0bc}.shot-copy span{color:#cbbf9a;line-height:1.45}.art-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.art-card{background:linear-gradient(#fff2c014,#fff2c008);border:1px solid #ffe8a129;border-radius:22px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:14px;min-width:0;padding:14px;display:grid}.art-card img{object-fit:contain;background:radial-gradient(circle at 50% 35%,#ffffff14,#0000 60%),#050804b3;border-radius:16px;width:88px;height:88px}.art-card strong,.manual-section h4{color:#fff0bc}.art-card div{gap:5px;display:grid}.art-card span{color:#cbbf9a;line-height:1.45}.guide-card{background:linear-gradient(#fff2c00f,#fff2c005);border:1px solid #ffe8a129;border-radius:22px;gap:16px;min-width:0;padding:18px;display:grid}.card-heading{align-items:flex-start;gap:14px;display:flex}.card-heading p{color:#c8bc97;margin:6px 0 0;line-height:1.55}.card-index{color:#15110a;letter-spacing:.08em;background:linear-gradient(135deg,#f0b95b,#789e45);border-radius:14px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-weight:900;display:inline-grid}.goal-badges,.legend-list{flex-wrap:wrap;gap:10px;display:flex}.goal-badge,.legend-list span{color:#fff1bf;background:#ffe27c14;border:1px solid #ffe27c2e;border-radius:999px;align-items:center;min-height:44px;padding:10px 12px;line-height:1.35;display:inline-flex}.tip-strip{background:#070a06b8;border-radius:18px;align-items:center;gap:12px;min-height:68px;padding:12px 14px;display:flex}.tip-strip p{color:#d5c79e;margin:0;line-height:1.5}.tip-pill,.keycap{color:#fff3c8;background:linear-gradient(#2f3924,#1a2115);border:1px solid #ffeab042;border-radius:12px;place-items:center;min-width:36px;height:36px;padding:0 10px;font-weight:800;display:inline-grid;box-shadow:inset 0 -3px #0000003d}.tip-pill{color:#191105;background:linear-gradient(#f0b95b,#d98f30)}.flow-map{gap:12px;display:grid}.flow-branch{grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;display:grid}.flow-arrow{background:#ffe27c66;width:28px;height:2px;position:relative}.flow-arrow:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:8px solid #ffe27c80;position:absolute;top:-4px;right:-1px}.flow-node,.stage-step,.control-group{background:#ffffff08;border:1px solid #ffe27c26;border-radius:18px;padding:14px}.flow-node{gap:4px;min-height:82px;display:grid}.flow-node strong,.stage-step strong,.control-group h4{color:#fff0bc}.flow-node span,.stage-step span{color:#cbbf9a;line-height:1.45}.flow-node.is-core{background:linear-gradient(135deg,#f0b95b2e,#789e452e)}.stage-steps,.control-columns{gap:12px;display:grid}.hud-demo{background:#ffffff08;border-radius:18px;gap:12px;padding:14px;display:grid}.hud-row{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;display:grid}.hud-row span{color:#dacda6;font-size:14px}.hud-track{background:#ffffff14;border:1px solid #ffffff59;border-radius:999px;height:14px;overflow:hidden}.hud-fill{border-radius:inherit;background:linear-gradient(90deg,#f1f1f1,#d8d8d8);height:100%}.hud-fill.is-player{width:72%}.hud-fill.is-enemy{width:48%}.control-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.control-group{align-content:start;gap:10px;display:grid}.control-group h4{font-size:17px}.key-line{color:#cfc29b;flex-wrap:wrap;align-items:center;gap:8px;line-height:1.45;display:flex}.keycap.wide{min-width:64px}.full-manual{background:#ffffff08;border:1px solid #ffe27c26;border-radius:18px}.full-manual summary{cursor:pointer;color:#fff1bf;padding:14px 16px;font-weight:800;list-style:none}.full-manual summary::-webkit-details-marker{display:none}.full-manual summary:after{content:"＋";float:right;color:#f0b95b}.full-manual[open] summary:after{content:"－"}.manual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 16px 16px;display:grid}.manual-section{background:#05080473;border:1px solid #ffe27c26;border-radius:16px;min-width:0;padding:14px}.manual-section h4{margin:0 0 10px}.manual-list{color:#cfc29b;margin:0;padding-left:18px;line-height:1.55}.manual-list li+li{margin-top:8px}.hint-list,.code-groups{gap:12px;display:grid}.hint-item,.mod-note,.code-group{background:#ffffff08;border:1px solid #ffe27c26;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;min-height:74px;padding:14px;display:grid}.hint-item p,.mod-note p,.mod-subnote{color:#cfc29b;margin:0;line-height:1.5}.hint-marker,.code-chip{color:#fff1bf;background:#ffe27c17;border:1px solid #ffe27c38;border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:0 12px;font-weight:800;display:inline-flex}.hint-marker{min-width:38px}.code-group{grid-template-columns:1fr;align-items:start}.code-group h4{color:#fff0bc;margin:0}.code-chip-list{flex-wrap:wrap;gap:8px;display:flex}.code-chip{min-height:36px;font-weight:700}.mod-note{grid-template-columns:1fr;align-items:start}.mod-note strong{color:#fff0bc}.mod-subnote{color:#978d70}@media (width<=900px){.panel{grid-template-columns:1fr}.side{order:-1;max-height:none}.guide-grid,.shot-strip,.control-columns,.manual-grid,.art-strip{grid-template-columns:1fr}.ask-row{flex-direction:column}.tutorial-card,.tutorial-card[data-position=left],.tutorial-card[data-position=center]{width:auto;bottom:18px;left:18px;right:18px;transform:none}}
