:root{--paper:#faf8f2;--ink:#2e3736;--accent:#cf6045;--muted:#737c73;--line:#dddcd1;color-scheme:light}html{scroll-behavior:smooth}body{background:var(--paper)!important;color:var(--ink)!important;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif!important;padding:20px!important;min-height:100dvh;box-sizing:border-box}button,input{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button{cursor:pointer}button:hover{filter:brightness(.96)}.game-container{background:#fffdf8!important;border-radius:10px!important;box-shadow:0 8px 35px #32412a13!important;border:1px solid var(--line);max-width:850px!important;width:100%!important}.game-container>.scene{background-size:cover!important;background-position:center!important;height:310px;overflow:hidden;position:relative}.game-container>.scene:before{content:"";position:absolute;inset:0;background:#13241b45;backdrop-filter:blur(3px)}.character{font-size:0!important;animation:none!important;position:relative;height:100%;z-index:1;display:flex;align-items:flex-end;justify-content:center}.character>img{height:96%;max-width:90%;object-fit:contain;filter:drop-shadow(0 6px 10px #0003)}.dialogue-box{background:#fffdf8!important;padding:25px 30px!important;min-height:155px!important}.dialogue-box .name{color:var(--accent)!important;font-size:16px!important}.dialogue-box .text{color:var(--ink)!important;font-size:14px!important;line-height:1.95!important;white-space:pre-line}.choices{padding:8px 30px 25px!important;background:#fffdf8!important;display:flex;gap:10px;flex-wrap:wrap}.choice-btn{color:var(--ink)!important;background:#edf1e9!important;border:1px solid #d8e0d1!important;font-size:13px!important;padding:12px 17px!important;margin:0!important;flex:1 1 220px!important;border-radius:6px!important;transform:none!important;box-shadow:none!important;transition:background .15s!important}.choice-btn:hover{background:#dfe8d8!important}.restart-btn{background:var(--accent)!important;color:#fff!important;padding:11px 20px!important;border-radius:5px!important;font-size:13px!important;border:0!important}.story-toolbar{background:#f3f0e6;padding:12px 18px;display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);flex-wrap:wrap}.story-toolbar button,.runner-actions button{padding:7px 13px;border-radius:4px;border:1px solid var(--line);background:#fffdf8;color:var(--ink);font-size:11px}.story-toolbar>span{font-size:10px;color:var(--muted);margin-left:auto}.story-gallery{display:flex;flex-direction:column;gap:8px;width:100%}.story-gallery-item{border:1px solid var(--line);border-radius:5px;padding:10px 14px;font-size:12px}.story-gallery-item.is-locked{color:var(--muted);background:#f4f2eb}.story-gallery-item.is-unlocked{background:#eaf0e2;color:#536f41}.story-storage-note{font-size:10px;color:var(--muted);margin-top:12px}.header h1{color:var(--ink)!important;font-size:27px!important;text-shadow:none!important}.header p{color:var(--muted)!important;font-size:12px!important}.header{margin-bottom:24px!important}.container{max-width:950px!important;gap:22px!important;width:100%!important}.card{background:#fffdf8!important;border:1px solid var(--line)!important;border-radius:9px!important;box-shadow:none!important;padding:25px!important}.card h2{font-size:20px!important;color:var(--ink)!important;margin-bottom:22px!important}.input-group input{background:#faf8f2!important;color:var(--ink)!important;border:1px solid var(--line)!important;font-size:13px!important;min-width:0}.btn-add{background:var(--accent)!important;color:#fff!important;border-radius:5px!important;white-space:nowrap}.todo-item{background:#f2f3eb!important;border-color:var(--line)!important;color:var(--ink)!important;gap:10px}.todo-item>span{overflow-wrap:anywhere;flex:1;text-align:left}.checkbox{width:20px!important;height:20px!important;flex-shrink:0;border:1px solid #b5c1ac!important;border-radius:4px;background:#fff}.checkbox.checked{background:#75986e!important;color:#fff!important}.delete-btn{background:transparent!important;color:#a64e3c!important;white-space:nowrap;padding:6px 9px!important}.stat-value{color:var(--accent)!important;font-size:23px!important}.stat-label{color:var(--muted)!important;font-size:11px!important}.stats{border-color:var(--line)!important}.timer-display{color:var(--ink)!important;text-shadow:none!important;font:52px/1.2 Georgia,serif!important;margin-block:24px!important}.btn-timer{background:#e5ecdE!important;color:var(--ink)!important;border-radius:5px!important;box-shadow:none!important;font-size:12px!important}.btn-start,.btn-pause{background:var(--accent)!important;color:#fff!important}.session-info{font-size:11px!important;color:var(--muted)!important;line-height:2!important}.timer-notice{font-size:11px;line-height:1.8;color:var(--accent);margin-top:14px;min-height:20px}.runner-wrapper{position:relative;max-width:100%;overflow:hidden;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 40px #243b261a}.runner-wrapper>.game-container{position:absolute!important;left:0;top:0;width:800px!important;height:400px!important;max-width:none!important;transform-origin:top left;border:0!important;background:linear-gradient(180deg,#d5e5db,#eff0d9 80%)!important;border-radius:0!important}.runner-wrapper .ground{background:#9dbd88!important;border-top:5px solid #799a6c}.runner-wrapper .player{background:#cf6045!important;box-shadow:none!important;border-radius:12px!important}.runner-wrapper .player:before{content:'🦀'!important;font-size:34px!important}.runner-wrapper .obstacle-body{background:#8c9274!important}.runner-wrapper .controls{font-size:12px;background:#faf8f2dd!important}.runner-wrapper .score{font-size:19px;text-shadow:none;top:20px;left:20px;color:#33452e}.runner-wrapper .speed-indicator{font-size:12px;background:#faf8f2aa!important;color:#33452e}.runner-wrapper .game-over{background:#1b2b24eF!important;border:1px solid #80937f;border-radius:8px;padding:25px 40px}.runner-wrapper .game-over h2{font-size:27px}.runner-wrapper .game-over button{background:#d88364!important;border-radius:5px;font-size:14px}.runner-actions{display:flex;justify-content:center;gap:12px;margin-top:18px}.runner-caption{text-align:center;font-size:11px;color:var(--muted);margin-top:14px}.runner-page{display:flex;flex-direction:column;justify-content:center;align-items:center}.runner-page>h1{font-size:25px;font-weight:500;margin-bottom:9px}.runner-page>p{margin-bottom:22px;font-size:11px;color:var(--muted)}.runner-best{font-size:11px;color:var(--muted);margin-top:12px}.toolbox-page{display:block!important}.toolbox-page .container{margin-inline:auto}.toolbox-page .header{text-align:center}.toolbox-page .todo-list{max-height:280px;overflow-y:auto}
.character{align-items:flex-start!important}.character>img{height:165%!important;max-width:none!important;margin-top:15px}.header h1{background:none!important;-webkit-text-fill-color:var(--ink)!important}.session-info span{color:var(--accent)!important}.checkbox{padding:0!important;font-size:12px!important}.checkbox.checked:after{content:none!important}.todo-item.completed{text-decoration:none!important;opacity:1!important}.todo-item.completed>span{color:#8a9686;text-decoration:line-through}.todo-item.completed .delete-btn{opacity:1}.runner-wrapper>.game-container{width:var(--runner-stage-width,800px)!important}
@media(max-width:600px){body{padding:14px!important}.game-container>.scene{height:240px}.dialogue-box{padding:20px!important;min-height:140px!important}.dialogue-box .text{font-size:13px!important}.choices{padding:0 20px 20px!important}.choice-btn{flex-basis:100%!important;font-size:12px!important}.story-toolbar{padding:11px 14px;gap:8px}.story-toolbar>span{font-size:9px;margin-left:0;flex-basis:100%}.header h1{font-size:23px!important}.container{grid-template-columns:1fr!important}.card{padding:20px!important}.card h2{font-size:18px!important}.timer-display{font-size:48px!important}.btn-timer{padding:9px 15px!important}.input-group{gap:7px!important}.runner-actions button{font-size:11px;min-height:38px}.runner-page>h1{font-size:22px}.story-gallery-item{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
