:root{--green:#204d37;--sage:#6e895d;--ink:#293c32;--red:#a44732}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:20px/1.6 'Microsoft YaHei',sans-serif;background:#f8f5e9 url('素材/background.png') center/cover fixed}header{display:flex;justify-content:space-between;align-items:center;padding:18px 5vw 10px}h1{font:700 34px/1.2 KaiTi,serif;margin:0;color:var(--green)}header span{font-size:16px;color:#627657}button,a.filebtn,.filebtn{font:inherit;cursor:pointer;color:var(--green)}button,.filebtn{background:#ecf0d9 url('素材/label_frame.png') center/100% 100%;border:0;padding:12px 22px;border-radius:10px;min-height:48px}button:hover,button:focus-visible{filter:brightness(.96);outline:2px solid #718e61;outline-offset:2px}button:disabled{opacity:.45;cursor:default}a{color:var(--green)}nav{display:flex;gap:12px;flex-wrap:wrap;padding:10px 5vw 15px}nav button.active{background-color:#9aaf7e;font-weight:700;outline:2px solid var(--sage)}main{max-width:1600px;margin:auto;padding:0 4vw 28px}.paper{background:#fff9e8 url('素材/body_frame.png') center/100% 100%;padding:30px 35px;margin:12px 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}.three p{background: url('素材/label_frame.png') center/100% 100%;padding:20px 8px}h2{font-size:26px;color:var(--green);margin:0 0 18px}.paper p{margin:8px 0 18px}.prompt{font-size:23px;text-align:center;padding:16px;background:url('素材/footer_frame.png') center/100% 100%}.muted,.scene-note{font-size:16px;color:#667557}.route-layout{display:grid;grid-template-columns:minmax(500px,1fr) 320px;gap:24px}.scene-paper{background:#fffaf0;padding:12px;border-image:url('素材/picture_frame.png') 50 fill/22px/0 stretch;margin-top:12px;position:relative}#scene{height:470px;position:relative;touch-action:none;overflow:hidden}#scene canvas{display:block;width:100%;height:100%;cursor:grab}#sceneLabels{position:absolute;inset:0;pointer-events:none;z-index:1}.scene-label{position:absolute;font-size:18px;white-space:nowrap;transform:translate(-50%,-50%);padding:3px 12px;color:#24452f;background:#fff7e0d9;border-radius:8px}#sceneError{position:absolute;padding:30px;z-index:3;background:#fff3dc}.scene-note{text-align:center;font-size:14px;padding:8px}.stagebar{display:flex;justify-content:space-between;gap:8px;padding:16px 6px}.stagebar button{flex:1}.stagebar button.active{outline:3px solid #aa7036}.stack{display:grid;gap:10px}.tip{font-size:18px;background:#eff0db;padding:12px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:14px 0}.filebtn input{display:block;width:100%;margin-top:6px;font-size:16px}label{display:block;margin:12px 0;font-size:17px;font-weight:700}input,textarea,select{display:block;width:100%;font:20px/1.5 'Microsoft YaHei',sans-serif;color:#263e31;background:#fffdf6;border:1px solid #9dab83;border-radius:7px;padding:10px 12px;margin-top:5px;min-width:0}textarea{min-height:95px;resize:vertical}.tall{min-height:218px}audio{display:block;width:100%;margin:20px 0}.summary{display:flex;flex-wrap:wrap;gap:8px}.pill{font-size:17px;background:#ebefd6;padding:7px 13px;border-radius:18px}.cards{max-height:600px;overflow:auto}.card{padding:18px 20px;margin:14px 0;background: #fbf4df url('素材/body_frame.png') center/100% 100%;overflow-wrap:anywhere}.card h3{font-size:21px;margin:0 0 5px}.card p{font-size:18px;margin:8px 0}.card button{padding:6px 15px;min-height:36px;font-size:16px}.question{padding:26px;background:url('素材/footer_frame.png') center/100% 100%;font:28px/1.5 KaiTi,serif}.empty{padding:24px 8px;color:#75826b;font-size:18px}details{margin:22px 0}summary{cursor:pointer;font-weight:700}body:fullscreen{overflow:auto}#stageQuestion{font-size:25px}#eStatus,#recordStatus,#storyStatus,#prepareStatus{font-size:16px;color:#8b492f}[hidden]{display:none!important}@media(max-width:950px){.route-layout,.two{grid-template-columns:1fr}.route-layout aside .stack{grid-template-columns:1fr 1fr}#scene{height:400px}.stagebar{flex-wrap:wrap}.stagebar button{min-width:140px}main{padding:0 15px 25px}.paper{padding:27px}header{padding:16px}nav{padding:10px 16px}.three{gap:7px;font-size:17px}}
