*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}
html,body{width:100%;height:100%;overflow:hidden;background:#ffd8a8;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC","Hiragino Sans GB",sans-serif;color:#4a3728;touch-action:none}
#app{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden;border-radius:.6em;box-shadow:0 0 2em rgba(0,0,0,.15);background:#ffe8cc}
#cv{position:absolute;inset:0;width:100%;height:100%;display:block}
.screen{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;padding:1.6em;background:rgba(255,232,204,.97);text-align:center;overflow-y:auto}
.screen.show{display:flex}
#intro,#pause,#result,#fail,#share{background:rgba(74,55,40,.45)}
.logo{font-weight:900;line-height:1.1;margin-bottom:.6em}
.logo span{display:block;font-size:2.2em;color:#e8590c}
.logo b{display:block;font-size:4.4em;color:#f03e3e;text-shadow:.08em .08em 0 #ffd43b,-.03em -.03em 0 #fff;transform:rotate(-4deg)}
.slogan{font-size:1.4em;margin-bottom:.6em}
#heroCv{width:30em;height:13em;margin-bottom:.8em}
button{font-family:inherit;border:.18em solid #4a3728;border-radius:1.2em;font-weight:800;cursor:pointer;color:#4a3728;background:#fff;box-shadow:0 .25em 0 #4a3728;margin:.4em 0;transition:transform .08s}
button:active{transform:translateY(.2em);box-shadow:0 .05em 0 #4a3728}
button.big{font-size:2em;padding:.4em 1.6em;background:#ffd43b;min-width:9em}
button.mid{font-size:1.5em;padding:.35em 1.2em;background:#a9e34b;min-width:8em}
button.ghost{background:#fff}
button.icon{font-size:1.6em;width:2.2em;height:2.2em;padding:0;border-radius:50%;box-shadow:0 .15em 0 #4a3728}
.corner{position:absolute;right:1em;top:1em}
.hint{font-size:1.2em;margin-top:.8em;color:#7a5c45;line-height:1.5}
.disclaimer{font-size:1.1em;margin-top:.8em;color:#a07c5f;background:#fff4e6;border-radius:1em;padding:.4em .8em}
#hud{position:absolute;right:.6em;top:.6em;display:none;gap:.5em}
#hud.show{display:flex}
#hud button{margin:0}
h2{font-size:2.4em;margin-bottom:.3em}
h3{font-size:1.4em;margin:.6em 0 .3em}
.total{font-size:1.4em;margin-bottom:.8em}
#levelGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:1em;width:100%;margin-bottom:1em}
.lv{margin:0;padding:.8em .4em;border-radius:1em;background:#fff;font-size:1em}
.lv .n{font-size:2.6em;color:#f03e3e}
.lv .t{font-size:1.6em}
.lv .s{font-size:1.1em;color:#868e96;margin:.2em 0}
.lv .ss i{font-style:normal;font-size:1.6em;color:#dee2e6}
.lv .ss i.on{color:#fab005}
.lv.lock{background:#e9ecef;opacity:.7}
.card{background:#fffaf0;border:.2em solid #4a3728;border-radius:1.6em;padding:1.4em 1.4em 1.2em;width:100%;max-height:100%;overflow-y:auto;box-shadow:0 .4em 0 #4a3728}
.sub{font-size:1.4em;color:#e8590c;margin-bottom:.4em}
.plist{list-style:none;font-size:1.4em;text-align:left;margin:0 auto .5em;display:inline-block}
.plist li{margin:.3em 0}
.g{display:inline-block;width:1.6em;height:1.6em;line-height:1.6em;border-radius:50%;border:.12em solid #4a3728;text-align:center;margin-right:.4em;font-size:.9em}
.watch{font-size:1.25em;color:#495057;margin:.3em 0}
.tips{font-size:1.2em;text-align:left;color:#7a5c45;padding-left:1.2em;margin:.5em 0 .8em;line-height:1.5}
.stars{font-size:4.4em;letter-spacing:.1em}
.st{color:#dee2e6;display:inline-block;transition:transform .3s,color .3s}
.st.on{color:#fab005;transform:scale(1.25) rotate(-10deg)}
.rule{font-size:1.15em;color:#868e96;margin-bottom:.5em}
.row{display:flex;justify-content:space-between;font-size:1.4em;padding:.25em .4em;border-bottom:.08em dashed #e0c9a6}
.scoreline{font-size:1.6em;margin:.6em 0 .2em}
.scoreline b{font-size:1.8em;color:#f03e3e}
.ltitle{display:inline-block;font-size:1.5em;background:#f03e3e;color:#fff;border-radius:1em;padding:.2em .9em;margin:.2em 0 .6em}
.btnrow{display:flex;gap:.6em;justify-content:center}
.btnrow button{min-width:0;flex:1}
.fail h2{color:#f03e3e}
.punish{font-size:1.5em;background:#fff3bf;border-radius:1em;padding:.6em;margin:.6em 0 1em}
.share img{width:80%;border-radius:1em;border:.12em solid #4a3728;-webkit-user-select:auto;user-select:auto;-webkit-touch-callout:default}
.sharemeta{font-size:1.4em;margin:.4em 0}
.sharemeta b{color:#f03e3e}
#shareText{width:100%;height:5.4em;font-size:1.15em;border-radius:.8em;border:.12em solid #c9a77c;padding:.4em;font-family:inherit;resize:none;-webkit-user-select:text;user-select:text;background:#fff}
#toast{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);background:rgba(74,55,40,.9);color:#fff;font-size:1.4em;padding:.5em 1em;border-radius:1em;opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap}
#toast.show{opacity:1}
