:root{color:#24423a;background:#dfe9da;font-family:Songti SC,STSong,"Noto Serif CJK SC",PingFang SC,serif;font-synthesis:none;--ink: #24423a;--ink-soft: #4f6a61;--bronze: #a97b3f;--amber: #e2a33d;--cinnabar: #c14a2e;--paper: #f7f3e6;--card: linear-gradient(160deg, #fdf8e9 0%, #e8f0df 50%, #cde3cd 100%);--shadow-soft: 0 4px 12px rgba(39, 62, 51, .18)}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{background:radial-gradient(120% 90% at 50% 0%,#cfe3cd,#8fb7a2 55%,#3f6b5d)}button{font:inherit}.shell{position:relative;width:min(100vw,460px);min-height:100svh;margin:0 auto;overflow:hidden;isolation:isolate}.home-art,.game-art{position:absolute;inset:0;z-index:-3;background:center / cover no-repeat}.cinematic{color:#f5edda;background:#07100e}.cinematic-art{position:absolute;inset:0;z-index:-3;background:center / cover no-repeat url(/assets/taotie-arrival-cinematic-v1.webp);animation:giantApproach 7s cubic-bezier(.16,.7,.22,1) both}.cinematic-grade{position:absolute;inset:0;z-index:-2;background:radial-gradient(70% 44% at 50% 29%,transparent 45%,rgba(5,13,11,.18) 100%),linear-gradient(rgba(3,10,9,.28),transparent 24% 62%,rgba(3,10,9,.86) 91%)}.cinematic-title{padding:calc(30px + env(safe-area-inset-top)) 22px 0;text-align:center;filter:drop-shadow(0 3px 10px rgba(0,0,0,.7));animation:titleReveal .9s .25s both}.cinematic-title p{margin:0;color:#d8b36f;font-size:10px;letter-spacing:.32em}.cinematic-title h1{margin:5px 0;font-size:33px;letter-spacing:.15em;font-family:Kaiti SC,STKaiti,serif}.scale-mark{position:absolute;top:59%;right:14px;display:flex;align-items:center;gap:7px;color:#f2e7cbb8;font-size:9px;letter-spacing:.12em;writing-mode:vertical-rl;animation:fadeIn .8s 1.25s both}.scale-mark i{width:1px;height:58px;background:linear-gradient(transparent,#d7ad68,transparent)}.cinematic-dialogue{position:absolute;left:18px;right:18px;bottom:calc(22px + env(safe-area-inset-bottom));padding:18px 18px 14px;border-top:1px solid rgba(213,172,103,.62);background:linear-gradient(135deg,#05110ff0,#081814d1);box-shadow:0 18px 48px #0000007a;animation:rise .75s .75s both}.cinematic-dialogue>span{color:#e0b86e;font-size:10px;font-weight:700;letter-spacing:.28em}.cinematic-dialogue p{margin:7px 0 15px;font-size:18px;line-height:1.65;text-shadow:0 2px 8px #000}.cinematic-dialogue .primary{margin-top:0}.cinematic-dialogue .primary b{float:right;font-size:20px}.cinematic-dialogue small{display:block;margin-top:9px;text-align:center;color:#e0e8de8c;font-size:9px;letter-spacing:.12em}@keyframes giantApproach{0%{opacity:.25;transform:scale(1.09)}to{opacity:1;transform:scale(1)}}@keyframes titleReveal{0%{opacity:0;transform:translateY(-12px);letter-spacing:.3em}to{opacity:1;transform:none}}.home-art{background-image:url(/assets/shanhai-home-styleframe-v1.webp);animation:settle 1.2s cubic-bezier(.2,.75,.2,1) both}.home-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(#061212eb,#06121261 28%,#06121214 50%,#061212d9)}.brand{padding:calc(30px + env(safe-area-inset-top)) 24px 0;text-align:center;color:#f3eddb}.eyebrow,.chapter-no{color:#d9ae68;font-size:11px;letter-spacing:.28em;text-transform:uppercase}.brand h1{margin:3px 0 5px;font-size:clamp(42px,13vw,58px);line-height:1.05;letter-spacing:-.06em;text-shadow:0 3px 16px rgba(0,0,0,.5);color:#f6efdc}.brand h1 span{color:#e06a4a;font-family:Kaiti SC,STKaiti,Songti SC,serif;font-weight:700;margin-right:7px}.tagline{margin:12px 0 0;color:#d7e2d8;font-size:13px;letter-spacing:.1em}.chapter-list{position:absolute;left:16px;right:16px;bottom:calc(48px + env(safe-area-inset-bottom));display:grid;gap:12px;animation:rise .7s .2s both}.chapter-card{display:block;width:100%;padding:13px 15px 12px;border:1px solid rgba(190,152,92,.55);border-radius:12px;color:#f6efdc;background:linear-gradient(150deg,#0a1c19f0,#071211f5);box-shadow:0 14px 34px #0000006b,inset 0 1px #dfc78f2e;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.chapter-card:active{transform:translateY(1px)}.chapter-card.challenge-emphasis{border-color:#e06a4a;box-shadow:0 14px 34px #0000006b,inset 0 1px #e06a4a59,0 0 0 2px #e06a4a38}.chapter-head{display:flex;align-items:center;gap:10px;margin:7px 0 6px}.beast-sigil{width:38px;height:38px;flex:none;border-radius:50%;border:1px solid rgba(223,199,143,.5);box-shadow:inset 0 0 0 2px #06121259}.sigil-binary{background:radial-gradient(circle at 35% 30%,#e9f2dc,#9cc09b 45%,#3f6b5d)}.sigil-enumeration{background:radial-gradient(circle at 35% 30%,#ffd9a0,#d98f4a 42%,#16414d);box-shadow:inset 0 0 0 2px #06121259,0 0 14px #ffcb8273}.chapter-title{flex:1;min-width:0;display:flex;flex-direction:column}.chapter-title b{font-size:21px;letter-spacing:.08em;line-height:1.1}.chapter-title em{font-style:normal;color:#9fb3a8;font-size:10px;letter-spacing:.22em;margin-top:2px}.chapter-cta{display:grid;place-items:center;min-width:98px;min-height:40px;border:1px solid #e7b16a;border-radius:6px;color:#fff7e6;background:linear-gradient(95deg,#a33323,#c6532f);font-size:13px;font-weight:700;letter-spacing:.08em}.chapter-cta b{font-size:16px;margin-left:4px}.chapter-motto{display:block;color:#c3d2c8;font-size:12px;line-height:1.55}.chapter-status{display:block;margin-top:7px;color:#7f948a;font-size:10px;letter-spacing:.06em}.home footer{position:absolute;left:26px;right:26px;bottom:16px;display:flex;justify-content:space-between;color:#7d9488;font-size:10px;letter-spacing:.12em}.library-home .home-shade{background:linear-gradient(#040f10e8,#040f1024 34%,#040f107a 57%,#030d0ef7)}.library-brand{padding-top:calc(24px + env(safe-area-inset-top))}.library-brand h1{font-size:clamp(39px,12vw,54px)}.library-brand .tagline{margin-top:8px}.library-scroll{position:absolute;z-index:1;left:12px;right:12px;top:min(48svh,410px);bottom:calc(39px + env(safe-area-inset-bottom));overflow:auto;padding:0 2px 12px;scrollbar-width:none;animation:rise .65s .12s both}.library-scroll::-webkit-scrollbar,.route-scroll::-webkit-scrollbar{display:none}.continue-card{width:100%;padding:13px 14px 12px;border:1px solid rgba(229,177,96,.88);border-radius:12px;color:#f7eed8;background:linear-gradient(145deg,#091e1dfa,#051213f5);box-shadow:0 16px 38px #00000073,inset 0 0 0 2px #dbae621f;text-align:left;cursor:pointer}.continue-kicker{display:block;color:#dcb270;font-size:9px;letter-spacing:.17em}.continue-main{display:flex;align-items:center;gap:9px;margin:8px 0 6px}.continue-main .beast-sigil{width:34px;height:34px}.continue-main b{font-size:20px;letter-spacing:.1em}.continue-main em{flex:1;color:#8fa9a0;font-size:10px;font-style:normal;letter-spacing:.16em}.continue-main strong{padding:8px 10px;border:1px solid #dd9b55;border-radius:5px;color:#fff4df;background:#a94029;font-size:11px}.continue-line{color:#b9cdc4;font-size:11px}.volume-shelf{margin-top:10px;padding:11px 10px 8px;border:1px solid rgba(119,155,141,.25);border-radius:14px;background:#041213c7;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.shelf-title{display:flex;justify-content:space-between;align-items:baseline;margin:0 3px 8px;color:#dcb270}.shelf-title span{font-size:11px;font-weight:800;letter-spacing:.25em}.shelf-title small{color:#789289;font-size:9px;letter-spacing:.08em}.volume-book{position:relative;width:100%;min-height:72px;display:grid;grid-template-columns:42px 1fr auto 17px;align-items:center;gap:9px;margin:7px 0;padding:9px 10px;border:1px solid rgba(190,151,89,.38);border-radius:8px;color:#eee6cf;background:linear-gradient(100deg,#132f28fa,#071919f5);text-align:left;cursor:pointer}.volume-book.volume-2{background:linear-gradient(100deg,#3d2b1cf5,#101d1bf7)}.volume-mark{width:38px;height:46px;display:grid;place-items:center;border:1px solid rgba(230,185,107,.55);color:#f0c37a;background:#010c0d61;font:700 22px Kaiti SC,STKaiti,serif;clip-path:polygon(0 0,100% 0,100% 86%,50% 100%,0 86%)}.volume-copy{min-width:0;display:flex;flex-direction:column}.volume-copy small{color:#b58a50;font-size:9px;letter-spacing:.18em}.volume-copy b{font-size:17px;letter-spacing:.12em}.volume-copy em{margin-top:2px;overflow:hidden;color:#91aaa1;font-size:9px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.volume-count{color:#e2b56e;font-size:15px;font-weight:800;text-align:center}.volume-count small{display:block;color:#728c83;font-size:8px;font-weight:400}.volume-arrow{color:#d7a55e;font-size:18px}.volume-screen{color:#f4ecd8;background:#071514}.volume-screen .home-art{filter:saturate(.72) brightness(.62);transform:scale(1.03)}.volume-screen.volume-1 .home-art{background-image:url(/assets/volume-one-enlightenment-v1.webp)}.volume-screen.volume-2 .home-art{background-image:url(/assets/volume-two-ordering-v1.webp)}.volume-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(#030d0ec4,#030d0e7a 28%,#030d0eeb)}.volume-head{position:relative;padding:calc(25px + env(safe-area-inset-top)) 22px 14px 72px;border-bottom:1px solid rgba(215,170,95,.25);background:linear-gradient(180deg,#030f10cc,#030f1047)}.volume-head button{position:absolute;left:16px;top:calc(25px + env(safe-area-inset-top));width:43px;height:43px;border:1px solid rgba(218,177,105,.58);border-radius:50%;color:#f2d7a3;background:#051817c2;font-size:28px;cursor:pointer}.volume-head p{margin:0;color:#d6a75d;font-size:10px;letter-spacing:.3em}.volume-head h1{margin:3px 0 6px;font:700 34px Kaiti SC,STKaiti,Songti SC,serif;letter-spacing:.14em}.volume-head span{display:block;color:#c6d6cd;font-size:12px}.volume-head small{display:block;margin-top:5px;color:#7fa198;font-size:9px;letter-spacing:.12em}.route-scroll{position:absolute;top:calc(145px + env(safe-area-inset-top));bottom:calc(38px + env(safe-area-inset-bottom));left:0;right:0;overflow:auto;padding:18px 17px 24px 28px;scrollbar-width:none}.route-line{position:absolute;top:33px;bottom:45px;left:49px;width:1px;background:linear-gradient(#d9a65d,#74a1918c,#74a1911a)}.route-node{position:relative;width:100%;min-height:67px;display:grid;grid-template-columns:45px 1fr auto 18px;align-items:center;gap:8px;margin:0 0 11px;padding:8px 11px 8px 0;border:1px solid rgba(126,158,145,.25);border-radius:10px;color:#e8eadb;background:linear-gradient(100deg,#071b1af0,#051213e8);text-align:left}button.route-node{cursor:pointer}.route-node.available{border-color:#daae63ad;box-shadow:0 9px 24px #00000040,inset 0 0 18px #dfb0590d}.route-node.complete{border-color:#7eb99dc2}.route-node.locked{opacity:.55;filter:saturate(.55)}.route-index{position:relative;z-index:1;width:41px;height:41px;display:grid;place-items:center;border:1px solid #b9894c;border-radius:50%;color:#f0c47e;background:#102b28;font:800 11px ui-monospace,monospace;box-shadow:0 0 0 5px #041212e6}.route-node.complete .route-index{color:#d9f0db;border-color:#78a992;background:#2f5b4b}.route-copy{min-width:0;display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:7px}.route-copy b{font-size:17px;letter-spacing:.08em}.route-copy em{color:#d1a25e;font-size:9px;font-style:normal;letter-spacing:.12em}.route-copy small{grid-column:1/3;margin-top:3px;color:#819b92;font-size:10px}.route-status{color:#d5ac69;font-size:9px;white-space:nowrap}.route-node>i{color:#c99a56;font-size:16px;font-style:normal}.route-node.locked>i{width:18px;height:21px;display:grid;place-items:center;border:1px solid #71877e;color:#71877e;font-size:8px}.volume-screen footer{position:absolute;left:22px;right:22px;bottom:14px;display:flex;justify-content:space-between;color:#718c83;font-size:9px;letter-spacing:.12em}.curriculum{--chapter-accent: #d2a45c;color:#edf0df;background:#071514}.curriculum-atmosphere{position:absolute;inset:0;z-index:-2;overflow:hidden;background:center/cover no-repeat}.curr-volume-1 .curriculum-atmosphere{background-image:linear-gradient(#030e106b,#030e101f 38%,#030e10d9 78%),url(/assets/volume-one-enlightenment-v1.webp)}.curr-volume-2 .curriculum-atmosphere{background-image:linear-gradient(#030c1157,#030c1114 36%,#030c11e0 78%),url(/assets/volume-two-ordering-v1.webp)}.curriculum-atmosphere:before{content:"";position:absolute;inset:12% -30% 38%;border:1px solid color-mix(in srgb,var(--chapter-accent) 38%,transparent);border-radius:50%;box-shadow:0 0 80px color-mix(in srgb,var(--chapter-accent) 16%,transparent),inset 0 0 90px #0000008c}.curriculum-atmosphere i{position:absolute;left:50%;top:16%;width:210px;height:280px;transform:translate(-50%);border:1px solid color-mix(in srgb,var(--chapter-accent) 45%,transparent);background:linear-gradient(145deg,#43675b33,#030e0f08);clip-path:polygon(50% 0,92% 22%,100% 74%,72% 100%,28% 100%,0 74%,8% 22%);opacity:.35}.curriculum-atmosphere b{position:absolute;top:25%;left:0;right:0;text-align:center;color:color-mix(in srgb,var(--chapter-accent) 42%,transparent);font:900 72px Kaiti SC,STKaiti,serif;text-shadow:0 3px 22px #000}.curr-back{position:absolute;z-index:3;left:16px;top:calc(20px + env(safe-area-inset-top));width:44px;height:44px;border:1px solid color-mix(in srgb,var(--chapter-accent) 70%,transparent);border-radius:50%;color:#f4dbac;background:#041414b8;font-size:28px}.curr-intro{padding:calc(72px + env(safe-area-inset-top)) 24px 0;text-align:center;text-shadow:0 3px 12px #000}.curr-intro p,.curr-section-head small,.curr-panel>small{color:var(--chapter-accent);font-size:10px;letter-spacing:.26em}.curr-intro h1{margin:6px 0 9px;font:800 34px Kaiti SC,STKaiti,serif;letter-spacing:.12em}.curr-intro span{color:#bcd0c6;font-size:13px;line-height:1.7}.curr-dialogue{position:absolute;left:18px;right:18px;bottom:calc(24px + env(safe-area-inset-bottom));padding:18px;border-top:1px solid var(--chapter-accent);background:linear-gradient(135deg,#051817f5,#040f11eb);box-shadow:0 18px 48px #0000007a}.curr-dialogue>b{color:var(--chapter-accent);font-size:11px;letter-spacing:.25em}.curr-dialogue p{margin:8px 0 16px;font-size:19px}.curr-top{min-height:92px;display:grid;grid-template-columns:45px 1fr 45px;align-items:center;gap:10px;padding:calc(12px + env(safe-area-inset-top)) 14px 8px;background:#030f10b8;border-bottom:1px solid rgba(209,167,94,.25)}.curr-top button{width:43px;height:43px;border:1px solid rgba(217,176,101,.5);border-radius:50%;color:#f2d6a2;background:#041615b8;font-size:21px}.curr-top small{color:var(--chapter-accent);font-size:9px;letter-spacing:.15em}.curr-top h1{margin:2px 0 0;font-size:23px}.curr-stage{min-height:calc(100svh - 92px);display:flex;flex-direction:column;padding:14px}.curr-rule{padding:12px 14px;border-left:3px solid var(--chapter-accent);background:#041616b8}.curr-rule b{color:var(--chapter-accent);font-size:10px;letter-spacing:.18em}.curr-rule p{margin:4px 0 0;font-size:14px;line-height:1.55}.sequence-track{min-height:90px;display:flex;align-items:center;justify-content:center;gap:7px;margin:28px 0 18px}.sequence-track em{color:#769087;font-size:12px}.sequence-track span{min-width:70px;padding:15px 7px 10px;border:1px solid var(--chapter-accent);border-radius:8px;background:#163a33c2;text-align:center}.sequence-track small{display:block;color:var(--chapter-accent)}.curr-actions,.comp-options,.transfer-options,.strategy-pick{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.curr-actions button,.comp-options button,.transfer-options button,.strategy-pick button{min-height:52px;padding:8px;border:1px solid rgba(132,172,154,.65);border-radius:7px;color:#e8eddd;background:#092320e6;font-weight:800}.curr-actions button:disabled{opacity:.32}.fact-seal{width:max-content;margin:35px auto 20px;padding:12px 19px;border:1px solid var(--chapter-accent);color:#fff0cb;background:#402616b8;font-size:17px;font-weight:900}.door-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.door-grid button{min-height:130px;border:1px solid color-mix(in srgb,var(--chapter-accent) 70%,#445);color:#f5e8ce;background:linear-gradient(#1f423ae6,#081a19f2);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%)}.door-grid i{display:block;width:20px;height:20px;margin:0 auto 13px;border:1px solid var(--chapter-accent);border-radius:50%}.drum-wrap{display:grid;place-items:center;margin-top:28px}.drum{width:154px;height:154px;border:9px solid #7f432b;border-radius:50%;color:#fff0ca;background:radial-gradient(circle,#b84c32,#5a241d 65%,#211413);box-shadow:0 14px 35px #000,inset 0 0 0 3px #d89b57}.drum b{display:block;font-size:32px}.drum span{font-size:18px}.beat-dots{display:flex;gap:7px;margin:18px 0}.beat-dots i{width:12px;height:12px;border:1px solid #b88b51;border-radius:50%}.beat-dots i.lit{background:#f2ba5d;box-shadow:0 0 12px #e99a37}.seal-loop{min-width:120px;min-height:46px;border:1px solid var(--chapter-accent);color:#ffe6b3;background:#713322;font-weight:900}.array-rack{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:auto 0}.array-rack button,.count-board button{position:relative;min-width:0;min-height:76px;border:1px solid rgba(153,196,163,.7);border-radius:8px;color:#eaf1df;background:linear-gradient(#244b40,#102a28)}.array-rack small,.count-board small{position:absolute;top:3px;right:6px;color:#83a99a;font:9px ui-monospace,monospace}.array-rack b,.count-board b{font-size:19px}.sim-state{width:150px;height:150px;display:grid;place-items:center;align-content:center;margin:28px auto 18px;border:2px solid var(--chapter-accent);border-radius:50%;background:radial-gradient(circle,#32675dd1,#05191af5);box-shadow:0 0 35px color-mix(in srgb,var(--chapter-accent) 20%,transparent)}.sim-state small{color:#9ebbb0}.sim-state b{font-size:46px;color:#fff0ca}.sim-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sim-timeline button{min-height:58px;border:1px solid #719a8a;color:#e5ecdc;background:#11332f}.sim-timeline button:disabled{opacity:.38}.count-board{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:28px 0 18px}.count-board button.selected{border-color:#ffd487;background:linear-gradient(#9b5a31,#4b2b22);box-shadow:0 0 0 3px #eeab4947}.count-submit{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border:1px solid rgba(125,165,147,.4);background:#051919b8}.count-submit button{min-height:42px;padding:0 18px;border:1px solid var(--chapter-accent);color:#fff0d2;background:#9a422b;font-weight:800}.linear-scroll,.sort-row{display:flex;gap:7px;margin:auto 0;overflow-x:auto;padding:18px 5px}.linear-scroll button,.sort-row button{position:relative;min-width:58px;height:76px;border:1px solid #7fa99a;border-radius:8px;color:#eaf0df;background:#143630}.linear-scroll button.current{border-color:#ffd287;box-shadow:0 0 0 3px #efb3524d}.linear-scroll button.checked{opacity:.34}.linear-scroll small,.sort-row small{position:absolute;top:3px;right:6px;color:#7fa99a;font-size:9px}.linear-scroll b,.sort-row b{font-size:19px}.pointer-readout{width:max-content;margin:0 auto auto;padding:8px 14px;border:1px solid rgba(130,170,153,.45);background:#041616b8}.sort-zone{margin:auto 0}.zone-label{display:flex;justify-content:space-between;color:#9eb8ad;font-size:10px}.sort-row button.fixed{border-color:#efbd6c;color:#fff0ce;background:#77502d}.bubble-help{text-align:center;margin:auto 0 0;color:#9eb9ae;font-size:11px}.bubble-row{margin:10px 0 auto}.bubble-row button i{position:absolute;right:-9px;z-index:2;color:#e9b965;font-style:normal}.bubble-row button:last-child i{display:none}.insert-key{width:82px;height:82px;display:grid;place-items:center;align-content:center;margin:35px auto 25px;border:2px solid var(--chapter-accent);border-radius:12px;color:#fff1d8;background:#70405e}.insert-key small{font-size:9px}.insert-key b{font-size:28px}.insert-row{display:flex;align-items:center;justify-content:center;overflow-x:auto}.insert-row button{min-width:35px;height:58px;border:1px dashed var(--chapter-accent);color:#ffd89b;background:#041818b8;font-size:20px}.insert-row span{min-width:51px;height:65px;display:grid;place-items:center;border:1px solid #80a898;color:#e9efdf;background:#153630;font-size:18px;font-weight:900}.pivot-stone{width:90px;margin:25px auto 10px;padding:10px;text-align:center;border:2px solid var(--chapter-accent);background:#63372c}.pivot-stone small{display:block}.pivot-stone b{font-size:28px}.river-banks{display:grid;grid-template-columns:1fr 72px 1fr;gap:8px;min-height:150px}.river-banks>div{padding:10px 6px;border:1px solid rgba(110,164,159,.48);background:#082326b3;text-align:center}.river-banks small{display:block;color:#8fb4ad;font-size:9px}.river-banks b{display:inline-grid;place-items:center;width:34px;height:34px;margin:4px;border:1px solid #8eb0a2;border-radius:50%}.river-banks .quick-current{display:grid;place-items:center;align-content:center;border-color:var(--chapter-accent)}.river-banks .quick-current b{font-size:24px}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.quick-actions button{min-height:48px;border:1px solid #89a99d;color:#edf0df;background:#143934}.curr-message{margin-top:auto;min-height:62px;padding:12px;border-top:1px solid rgba(128,167,151,.3);color:#b8cbc1;font-size:13px;line-height:1.55}.curr-panel{position:absolute;left:14px;right:14px;bottom:calc(16px + env(safe-area-inset-bottom));max-height:calc(100svh - 32px);overflow:auto;padding:22px;color:var(--ink);background:linear-gradient(155deg,#faf4e4,#dfeade);border:1px solid rgba(202,156,84,.72);box-shadow:0 24px 60px #00000085;clip-path:polygon(0 12px,12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%)}.curr-panel h2{margin:5px 0 10px;font-size:24px}.curr-panel p{font-size:13px;line-height:1.65}.curr-clear,.curr-result{text-align:center}.curr-section-head{padding:calc(42px + env(safe-area-inset-top)) 22px 0;text-align:center}.curr-section-head h1{margin:5px 0;font-size:30px}.curr-section-head p{margin:0;color:#bcd0c5}.manual-review{padding:18px}.manual-review ol{list-style:none;margin:0 0 15px;padding:0}.manual-review li{min-height:54px;display:flex;align-items:center;gap:10px;margin:8px 0;padding:10px;border:1px solid rgba(125,165,148,.2);color:#688078;background:#0413145c;opacity:.3}.manual-review li.shown{color:#eef0df;border-color:var(--chapter-accent);opacity:1}.manual-review li span{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--chapter-accent);border-radius:50%}.review-question{margin:12px 0;padding:13px;background:#041314b8}.review-question b{display:block;margin-bottom:9px}.review-question button{width:100%;min-height:44px;margin:5px 0;border:1px solid #789d8e;color:#e8eddf;background:#12352f}.strategy-path{display:grid;gap:6px;margin:14px 0}.strategy-path span{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #a87b42;background:#ffffff5c}.strategy-path i{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#a4472d;font-style:normal}.competition-panel pre{overflow:auto;padding:14px;border-left:3px solid var(--chapter-accent);color:#d9f2e5;background:#071b1d;font-size:12px;line-height:1.65}.transfer-options{margin:16px 0}.codex-panel{bottom:18px}.curr-result .stars{margin:12px 0}@media(max-width:360px){.door-grid{grid-template-columns:1fr}.door-grid button{min-height:72px}.curr-panel{padding:17px}.curr-intro h1{font-size:29px}}.primary{width:100%;min-height:54px;border:1px solid #e7b16a;border-radius:4px;color:#fff7e6;background:linear-gradient(95deg,#a33323,#c6532f);box-shadow:0 10px 24px #5f201459,inset 0 1px #ffc69b73;font-weight:700;font-size:16px;letter-spacing:.18em;cursor:pointer}.primary span{float:right;font-size:20px}.primary:active{transform:translateY(1px)}.game{display:flex;flex-direction:column}.game-art{background-image:url(/assets/binary-search-stage-v3.webp);filter:saturate(.94) contrast(1.02)}.game-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(235,241,227,.93) 0%,rgba(235,241,227,.48) 18%,transparent 36% 77%,rgba(226,237,222,.72) 100%)}.game-top{display:grid;grid-template-columns:40px 1fr 58px;align-items:center;gap:10px;padding:calc(16px + env(safe-area-inset-top)) 14px 6px}.title-wrap p{margin:0;color:#8b6a38;font-size:9px;letter-spacing:.22em;font-weight:700}.title-wrap h1{margin:1px 0 0;font-size:19px;color:var(--ink)}.icon-button{width:38px;height:38px;border:1px solid rgba(155,120,64,.5);border-radius:50%;color:var(--ink);background:#f7f3e6b8;font-size:26px;line-height:20px;cursor:pointer}.attempts{display:flex;justify-content:flex-end;align-items:center;gap:5px;text-align:right}.attempts>span{display:block}.attempts small{display:block;color:var(--ink-soft);font-size:9px;letter-spacing:.1em}.attempts strong{font-size:24px;color:var(--cinnabar);font-weight:900}.attempts em{font-style:normal;font-size:11px;color:#7c9188}.sound-toggle{width:28px;height:28px;padding:0;border:1px solid rgba(155,120,64,.45);border-radius:50%;color:#8b5c24;background:#f7f3e6d1;font-size:13px;cursor:pointer}.beast-line{margin:4px 14px 0;min-height:50px;padding:8px 12px;border-left:3px solid var(--cinnabar);border-radius:0 8px 8px 0;background:linear-gradient(90deg,#f7f3e6b8,#f7f3e67a);box-shadow:0 4px 14px #15292117;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.speaker{display:block;color:#a03a22;font-size:9px;letter-spacing:.24em;font-weight:700}.beast-line p{margin:3px 0 0;font-size:13px;line-height:1.45;color:#183b32;text-shadow:0 1px rgba(255,255,255,.72)}.target-inline{display:flex;align-items:baseline;gap:4px;width:max-content;margin-top:4px;padding:3px 8px;border:1px solid rgba(169,123,63,.55);border-radius:5px;background:#faf6eae0;box-shadow:0 3px 10px #0f272024}.target-inline span{color:#49665d;font-size:9px;font-weight:800;letter-spacing:.08em}.target-inline strong{color:#b93d25;font:900 22px/1 ui-serif,Songti SC,serif}.target-inline:not(.target-revealed) strong{color:#8a6939}.target-inline.target-revealed{border-color:#c14a2ebf;animation:targetReveal .55s ease both}.target-inline i{width:1px;height:14px;margin:0 3px;background:#a97b3f80}.target-inline b{color:#24423a;font-size:14px}.target-inline em{color:#6a7f74;font-size:9px;font-style:normal}@keyframes targetReveal{50%{transform:scale(1.06);box-shadow:0 0 0 4px #e2a33d47,0 5px 14px #0f27202e}}.board{flex:1 1 auto;min-height:0;display:grid;gap:8px;padding:12px 14px 4px;perspective:700px;align-content:center;margin:4px 12px;border:1px solid rgba(188,151,91,.2);border-radius:14px;background:#0b17152e;box-shadow:inset 0 0 35px #040c0b29}.board.cols-7{grid-template-columns:repeat(7,1fr)}.board.cols-5{grid-template-columns:repeat(5,1fr)}.board.cols-6{grid-template-columns:repeat(6,1fr)}.cols-7 .jade-card{height:62px;font-size:24px}.cols-5 .jade-card{height:52px;font-size:19px}.cols-6 .jade-card{height:47px;font-size:18px}.jade-card{position:relative;min-width:0;padding:0;border:1px solid rgba(111,144,124,.95);border-radius:7px;background:var(--card);color:var(--ink);font-weight:800;box-shadow:inset 0 0 0 2px #fff9,inset 0 0 0 3px #a07c4a80,var(--shadow-soft);cursor:pointer;transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .42s ease,filter .42s ease,box-shadow .28s ease,border-color .28s ease;-webkit-tap-highlight-color:transparent}.jade-card .num{position:relative;z-index:1;text-shadow:0 1px 0 rgba(255,255,255,.55)}.jade-card:hover:not(:disabled){transform:translateY(-3px);box-shadow:inset 0 0 0 2px #ffffffb3,inset 0 0 0 3px #a07c4ab3,0 8px 16px #273e3338}.jade-card:active:not(:disabled){transform:translateY(0)}.jade-card:disabled{cursor:default}.jade-card.guided{border-color:var(--cinnabar);transform:translateY(-5px);box-shadow:inset 0 0 0 2px #ffffffb3,inset 0 0 0 3px var(--amber),0 0 0 3px #e2a33d52,0 0 20px #e2a33d80,0 7px 14px #273e333d;animation:guidedPulse 1.7s ease-in-out infinite}.cols-7 .jade-card.guided:after{content:"教学";position:absolute;top:-15px;left:50%;transform:translate(-50%);padding:2px 7px;border-radius:9px;color:#fff8e8;background:var(--cinnabar);font-size:9px;font-weight:700;letter-spacing:.12em;white-space:nowrap}@keyframes guidedPulse{50%{box-shadow:inset 0 0 0 2px #ffffffbf,inset 0 0 0 3px #f0b84f,0 0 0 4px #e2a33d73,0 0 26px #e9a73aa6,0 7px 14px #273e333d}}.jade-card.gone{opacity:0;transform:translateY(12px) rotateX(62deg) scale(.84);filter:grayscale(1) brightness(.9);box-shadow:none;border-color:transparent;transition:opacity .42s ease var(--d, 0ms),transform .42s ease var(--d, 0ms),filter .42s ease var(--d, 0ms);pointer-events:none}.jade-card.reveal{transform:translateY(-4px) scale(1.05);z-index:1}.jade-card.reveal:after{content:attr(data-verdict);position:absolute;inset:0;z-index:2;display:grid;place-items:center;border-radius:6px;color:#fff;background:#c14a2ed1;font-size:clamp(12px,3vw,16px);font-weight:900;letter-spacing:.12em;animation:stamp .5s cubic-bezier(.2,1.35,.35,1) both}.jade-card.reveal.verdict-中了{box-shadow:0 0 0 3px #e2a33d73,0 0 24px #e2a33d99,inset 0 0 0 2px #ffffffbf}.jade-card.reveal.verdict-中了:after{background:#a97b3fe0}@keyframes stamp{0%{opacity:0;transform:scale(1.8)}to{opacity:1;transform:scale(1)}}.jade-card.hint-flash{animation:hintFlash .8s ease 2}@keyframes hintFlash{0%,to{box-shadow:inset 0 0 0 2px #fff9,inset 0 0 0 3px #a07c4a80,var(--shadow-soft);border-color:#6f907cf2}50%{box-shadow:0 0 0 4px #e2a33d80,0 0 24px #e9a73ab3;border-color:var(--amber)}}.game-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px calc(14px + env(safe-area-inset-bottom))}.game-footer p{margin:0;color:var(--ink-soft);font-size:12px}.hint{min-height:44px;padding:0 14px;border:1px solid rgba(169,123,63,.6);border-radius:6px;color:#8a5f1d;background:#f7f3e6cc;font-size:13px;font-weight:700;cursor:pointer}.hint:active{transform:translateY(1px)}.overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:20px;background:#e7efe2d6;animation:fadeIn .3s both}.result-card{width:100%;max-width:400px;padding:26px 22px 22px;color:var(--ink);background:linear-gradient(160deg,#faf6ea,#eef2e3);border:1px solid rgba(169,123,63,.6);box-shadow:0 24px 60px #273e3359,inset 0 1px #ffffffb3;clip-path:polygon(0 14px,14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);animation:rise .45s cubic-bezier(.2,.85,.25,1) both}.result-card h2{margin:4px 0 8px;font-size:24px}.result-card .sub{margin:0;color:var(--ink-soft);font-size:13px;line-height:1.6}.layer-tag{margin:0 0 5px;color:#9a6727;font-size:10px;font-weight:800;letter-spacing:.2em}.strategy-card,.competition-card,.desktop-card{max-height:calc(100svh - 30px);overflow:auto}.strategy-pool{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;min-height:55px;margin:12px 0}.strategy-piece{min-width:0;min-height:52px;border:1px solid rgba(164,124,63,.55);border-radius:7px;color:var(--ink);background:var(--card);box-shadow:var(--shadow-soft);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.strategy-piece.touch-dragging{opacity:.28}.strategy-drag-ghost{position:fixed;top:-27px;left:-50px;z-index:1000;width:100px;min-height:54px;pointer-events:none;opacity:.94;box-shadow:0 16px 32px #273e3352}.strategy-piece b{display:block;color:var(--cinnabar);font-size:12px}.strategy-piece span{font-size:13px;font-weight:800}.pool-done{grid-column:1/-1;align-self:center;color:#71847a;font-size:12px}.strategy-lane{display:grid;gap:4px;padding:8px;border-radius:10px;background:#31534614}.strategy-lane.drag-over{background:#e2a33d2b;box-shadow:inset 0 0 0 2px #c14a2e61}.strategy-slot{min-height:50px;display:grid;grid-template-columns:28px 1fr;align-items:center;padding:7px 10px;border:1px dashed rgba(98,130,111,.55);border-radius:7px;color:#819188}.strategy-slot>span{grid-row:1/3;font-size:18px;font-weight:900}.strategy-slot em{font-size:11px;font-style:normal}.strategy-slot.filled{border-style:solid;border-color:#a97b3f8c;color:var(--ink);background:#f5f2e1c7}.strategy-slot.filled b{font-size:14px}.strategy-slot code{color:#7c5723;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.flow-arrow{height:12px;color:#ae7a36;font-style:normal;line-height:12px}.code-mini-board{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:14px 0 7px}.code-jade{position:relative;height:48px;display:grid;place-items:center;border:1px solid #759882;border-radius:5px;color:var(--ink);background:var(--card);transition:.45s ease}.code-jade b{font-size:13px}.code-jade small{position:absolute;top:-13px;color:var(--cinnabar);font:800 9px ui-monospace,monospace}.code-jade.current{border-color:var(--cinnabar);box-shadow:0 0 0 2px #c14a2e2e;transform:translateY(-2px)}.code-jade.gone{opacity:.1;transform:scale(.78) rotateX(55deg)}.target-note{margin:0 0 10px;color:#6a7f74;font:10px ui-monospace,monospace}.code-block{margin:10px 0;padding:13px;overflow:auto;text-align:left;border-left:3px solid var(--cinnabar);border-radius:4px;color:#e9f0e5;background:#10221e;font:13px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}.code-block mark{padding:2px 5px;color:#ffe1a3;background:#c14a2e73}.code-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.code-choice{min-height:44px;padding:4px;border:1px solid rgba(111,144,124,.8);border-radius:6px;color:var(--ink);background:var(--card);font:700 12px ui-monospace,monospace;cursor:pointer}.code-choice.wrong{border-color:var(--cinnabar);color:var(--cinnabar);animation:shake .4s both}.code-choice.selected{border-color:#a8752f;color:#7b531d;background:#fff1cf;box-shadow:inset 0 0 0 2px #daa24840}.codex-screen{color:#f5edd9;background:#071310}.codex-beast{position:absolute;inset:0;z-index:-3;background:50% 20% / cover no-repeat url(/assets/taotie-arrival-cinematic-v1.webp);filter:saturate(.72) brightness(.72)}.codex-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(#040e0c38,#040e0c85 44%,#071310 75%)}.codex-head{padding:calc(34px + env(safe-area-inset-top)) 22px 0;text-align:center;text-shadow:0 3px 12px #000}.codex-head p{margin:0;color:#e0b76d;font-size:10px;letter-spacing:.28em}.codex-head h1{margin:4px 0;font:700 44px Kaiti SC,STKaiti,serif;letter-spacing:.18em}.codex-head span{color:#d6dfd6;font-size:11px}.codex-sheet{position:absolute;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));padding:15px;color:var(--ink);background:linear-gradient(155deg,#faf6eaf7,#e2eedef5);border:1px solid rgba(203,159,88,.75);box-shadow:0 24px 60px #00000080}.codex-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:12px}.codex-tab{min-height:38px;border:1px solid rgba(111,144,124,.5);color:#61766b;background:#ffffff59;font-size:11px;cursor:pointer}.codex-tab.active{border-color:var(--cinnabar);color:var(--cinnabar);background:#fff8e8;font-weight:900}.codex-copy{min-height:142px;text-align:left}.codex-copy h2{margin:0 0 7px;font-size:19px}.codex-copy p{margin:0 0 8px;font-size:12px;line-height:1.65}.codex-copy .source-note{padding:7px 9px;border-left:2px solid var(--bronze);color:#6c7f75;background:#a97b3f14;font-size:10px}.bond-mark{display:grid;grid-template-columns:18px 66px 1fr;align-items:center;gap:5px;margin:9px 0 13px;color:#62776c;font-size:10px;text-align:left}.bond-mark i{width:13px;height:13px;border:2px solid var(--cinnabar);transform:rotate(45deg)}.bond-mark b{color:var(--cinnabar)}.share-button{width:100%;min-height:46px;margin-bottom:8px;border:1px solid rgba(169,123,63,.62);border-radius:5px;color:#86591e;background:#f7f3e6b8;font-weight:800;cursor:pointer}.share-message{min-height:16px;margin:0 0 6px;color:#6a7f74;font-size:10px}.growth-card-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:18px;background:#040e0cd1}.growth-card-panel{position:relative;width:min(100%,390px);max-height:calc(100svh - 36px);overflow:auto;padding:18px;border:1px solid rgba(224,183,109,.72);border-radius:10px;color:var(--ink);background:#f7f3e6;box-shadow:0 24px 70px #0000008c;text-align:center}.growth-card-panel h3{margin:0 30px 4px;font-size:20px}.growth-card-panel>p{margin:0 0 12px;color:var(--ink-soft);font-size:11px}.growth-card-panel img{display:block;width:min(100%,270px);margin:0 auto 12px;border-radius:6px;box-shadow:0 12px 28px #1a362d47;-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto}.growth-card-panel img.save-hint-pulse{animation:saveHintPulse 1.1s ease 2}.growth-card-close{position:absolute;top:8px;right:9px;width:34px;height:34px;border:0;border-radius:50%;color:#fff;background:#18362ed1;font-size:25px;line-height:30px;cursor:pointer}.growth-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.growth-card-actions .share-button{display:grid;place-items:center;margin:0;padding:7px;text-decoration:none;font-size:12px}.card-action-status{min-height:18px;margin:8px 0 4px;color:#557267;font-size:11px}.challenge-link{width:100%;min-height:36px;padding:7px 9px;border:1px dashed rgba(169,123,63,.55);border-radius:5px;color:#667b70;background:#ffffff9e;font-size:10px}@keyframes saveHintPulse{50%{box-shadow:0 0 0 6px #c14a2e80,0 16px 34px #1a362d5c;transform:scale(.985)}}.seal{display:inline-grid;place-items:center;width:46px;height:46px;margin:0 0 8px;border:2px solid var(--cinnabar);color:var(--cinnabar);transform:rotate(-6deg);font-family:Kaiti SC,STKaiti,serif;font-size:17px}.shrink{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px;margin:14px 0}.shrink b{display:inline-grid;place-items:center;min-width:42px;height:34px;padding:0 6px;border:1px solid rgba(111,144,124,.9);border-radius:6px;background:var(--card);color:var(--ink);font-size:16px;font-weight:900;box-shadow:inset 0 0 0 2px #ffffff80,0 3px 6px #273e3329}.shrink i{color:var(--bronze);font-style:normal;font-weight:700;padding:0 3px}.stars{margin:2px 0 14px;font-size:24px;letter-spacing:5px}.stars .on{color:var(--amber);text-shadow:0 2px 6px rgba(226,163,61,.5)}.stars span{color:#788a8059}.recap-track{display:grid;gap:5px;margin:14px auto;max-width:300px}.recap-track div{width:var(--w);min-width:44px;height:22px;display:grid;place-items:center;margin:auto;border:1px solid rgba(111,144,124,.7);border-radius:4px;color:var(--ink);background:var(--card);font-size:10px;font-weight:900;transform-origin:center;animation:halveReveal .45s calc(var(--i) * .24s) both}@keyframes halveReveal{0%{opacity:0;transform:scaleX(1.65);filter:brightness(1.5)}to{opacity:1;transform:scaleX(1)}}.rule-list{counter-reset:item;margin:8px auto 16px;padding:0;list-style:none;text-align:left;max-width:320px}.rule-list li{position:relative;margin:0 0 10px;padding-left:30px;font-size:14px;line-height:1.6;color:var(--ink)}.rule-list li:before{content:counter(item);counter-increment:item;position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--cinnabar);color:#fff8e8;font-size:11px;font-weight:900}.rule-list b{color:var(--cinnabar)}.q{margin:6px auto 0;max-width:330px;font-size:15px;line-height:1.65;color:var(--ink)}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px auto;max-width:320px}.opt{min-height:62px;display:flex;align-items:baseline;justify-content:center;gap:4px;border:1px solid rgba(111,144,124,.9);border-radius:8px;background:var(--card);color:var(--ink);font-size:26px;font-weight:900;cursor:pointer;box-shadow:inset 0 0 0 2px #ffffff8c,var(--shadow-soft)}.opt span{font-size:12px;color:var(--ink-soft);font-weight:700}.opt.right{border-color:var(--amber);color:#7a5516;box-shadow:inset 0 0 0 2px #fff9,0 0 0 3px #e2a33d66,0 0 20px #e2a33d73}.opt.wrong{border-color:var(--cinnabar);color:var(--cinnabar);animation:shake .4s both}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.feed{min-height:22px;margin:0 0 14px;color:var(--ink-soft);font-size:13px;line-height:1.55}.feed.ok{color:#7a5516;font-weight:700}.best-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;margin:14px auto;max-width:260px;font-size:14px}.best-grid span:nth-child(odd){text-align:right;color:var(--ink-soft)}.best-grid span:nth-child(2n){text-align:left;font-weight:900;color:var(--ink)}.hero-line{margin:8px 0 16px;color:var(--ink-soft);font-size:13px;line-height:1.65}.ghost{width:100%;min-height:48px;margin-top:10px;border:1px solid rgba(169,123,63,.55);border-radius:4px;color:#8a5f1d;background:transparent;font-size:14px;font-weight:700;cursor:pointer}:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:4px}.board:focus-visible{outline-offset:4px}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes settle{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:none}}.enum-game{display:flex;flex-direction:column;color:#e9f3e7}.enum-art{position:absolute;inset:0;z-index:-3;background:center / cover no-repeat url(/assets/xiezhi-enumeration-courtyard-v1.webp)}.enum-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(4,14,18,.78) 0%,rgba(4,14,18,.18) 24%,transparent 45% 72%,rgba(3,11,15,.82) 100%)}.enum-cinematic-art{background-image:url(/assets/xiezhi-enumeration-courtyard-v1.webp);animation:giantApproach 7s cubic-bezier(.16,.7,.22,1) both}.enum-cinematic-grade{background:radial-gradient(70% 44% at 50% 26%,transparent 42%,rgba(3,12,16,.22) 100%),linear-gradient(rgba(3,10,12,.2),transparent 26% 60%,rgba(3,10,12,.9) 92%)}.enum-dialogue{border-top-color:#68c4c58c;background:linear-gradient(135deg,#041216f2,#081a1edb)}.enum-dialogue>span{color:#8fd3d2}.protagonist-line{margin:-4px 0 14px;color:#cfe4de}.protagonist-line b{color:#ffd9a0;margin-right:6px}.enum-top .title-wrap p{color:#8fd3d2}.enum-top .title-wrap h1{color:#f2f6ec}.enum-icon{border-color:#8fd3d28c;color:#e9f3e7;background:#051418a8}.enum-sound{border-color:#8fd3d280;color:#cdeee9;background:#051418a8}.verified-inline{display:flex;align-items:baseline;gap:4px;width:max-content;margin-top:4px;padding:3px 8px;border:1px solid rgba(143,211,210,.5);border-radius:5px;background:#0514189e}.verified-inline span{color:#a9c9c4;font-size:9px;font-weight:800;letter-spacing:.08em}.verified-inline strong{color:#ffd9a0;font:900 21px/1 ui-serif,Songti SC,serif}.verified-inline em{font-style:normal;font-size:10px;color:#8aa8a2}.verified-inline i{width:1px;height:13px;margin:0 3px;background:#8fd3d273}.verified-inline b{color:#8fd3d2;font-size:12px}.enum-beast-line{border-left-color:#8fd3d2;background:linear-gradient(90deg,#051418ad,#0514186b);box-shadow:0 4px 14px #02090c47;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.enum-beast-line p{color:#dcebe4;text-shadow:none}.enum-speaker{color:#8fd3d2}.enum-footer p{color:#a9c9c4}.lamp-board{flex:1 1 auto;min-height:0;display:grid;gap:10px;align-content:center;margin:4px 12px;padding:14px;border:1px solid rgba(143,211,210,.22);border-radius:16px;background:#0410156b;box-shadow:inset 0 0 38px #01080b80}.lamp-board.lamps-5{grid-template-columns:repeat(5,1fr)}.lamp-board.lamps-8,.lamp-board.lamps-12{grid-template-columns:repeat(4,1fr)}.lamp{position:relative;min-width:0;min-height:58px;padding:0;display:grid;place-items:center;border:1px solid rgba(228,173,92,.62);border-radius:12px;color:#ffd9a0;background:radial-gradient(120% 100% at 50% 12%,#ffd28247,#ffd28214 38%,#081c22c7);box-shadow:inset 0 0 0 1px #ffdca029,inset 0 -10px 22px #0107098c,0 5px 14px #01070966;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease,background .26s ease}.lamp:hover:not(:disabled){transform:translateY(-3px)}.lamp:disabled{cursor:default}.lamp small{position:absolute;top:3px;right:6px;color:#b5d7d26b;font-size:9px}.lamp-mark{position:relative;z-index:1;font-size:15px;font-weight:900;letter-spacing:.12em}.lamp.true{border-color:#ffd9a0;background:radial-gradient(120% 100% at 50% 14%,#ffdc96b8,#ffbe5a6b 42%,#183a34e6);box-shadow:inset 0 0 0 1px #fff0c880,0 0 16px #ffbe5a6b,0 5px 14px #01070966;color:#fff4dc}.lamp.current{border-color:#ffd9a0;animation:lampPulse 1.6s ease-in-out infinite}@keyframes lampPulse{50%{box-shadow:inset 0 0 0 1px #fff0c899,0 0 0 4px #ffcb8247,0 0 22px #ffbe5a8c,0 5px 14px #01070966}}.lamp.pseudo.reveal{border-color:#ff8d7a;background:radial-gradient(120% 100% at 50% 14%,#ff785fb8,#96282380 46%,#1c0a0ce6);box-shadow:0 0 0 3px #ff6e5566,0 0 26px #ff6e558c,0 5px 14px #01070966;animation:stamp .5s cubic-bezier(.2,1.35,.35,1) both}.lamp.pseudo.reveal .lamp-mark{color:#ffe4da;font-size:14px}.lamp.skip-hint{border-color:#ff8d7a;animation:shake .4s both}.enum-overlay{align-items:end;padding:14px;background:linear-gradient(#030c100f,#030c103d 38%,#030b0fc7)}.enum-result,.enum-comp{max-height:76%;overflow:auto}.enum-competition .overlay,.enum-competition .result-card{animation:none}.enum-competition .competition-card{scroll-behavior:smooth}.comp-control{margin-top:10px}.lamp-recap{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:14px auto 10px;max-width:300px}.recap-lamp{width:26px;height:26px;border:1px solid rgba(111,144,124,.5);border-radius:8px;background:#091a1e66}.recap-lamp.true{border-color:#ffd9a0;background:radial-gradient(circle,#ffd282cc,#c88c3c8c)}.recap-lamp.pseudo{border-color:#ff8d7a;background:radial-gradient(circle,#ff785fd9,#96282399);box-shadow:0 0 10px #ff6e5580}.enum-review{align-items:stretch}.review-head{padding:calc(42px + env(safe-area-inset-top)) 22px 0;text-align:center}.review-head p{margin:0;color:#8fd3d2;font-size:10px;letter-spacing:.3em;font-weight:700}.review-head h2{margin:5px 0 0;font-size:26px;color:#f2f6ec;letter-spacing:.1em}.review-lamps{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:18px 16px 0;padding:14px;border:1px solid rgba(143,211,210,.22);border-radius:16px;background:#0410156b;box-shadow:inset 0 0 34px #01080b80}.review-lamp{position:relative;min-height:52px;display:grid;place-items:center;border:1px solid rgba(228,173,92,.4);border-radius:10px;color:#ffd9a080;background:#081c22b3;transition:background .3s ease,box-shadow .3s ease,border-color .3s ease,transform .3s ease}.review-lamp small{position:absolute;top:2px;right:5px;color:#b5d7d266;font-size:8px}.review-lamp span{font-size:12px;font-weight:900;letter-spacing:.08em}.review-lamp.visited{border-color:#ffd9a0;background:radial-gradient(120% 100% at 50% 14%,#ffdc96ad,#ffbe5a61 46%,#183a34e6);color:#fff4dc}.review-lamp.current{transform:translateY(-4px);box-shadow:0 0 0 3px #ffcb8259,0 0 20px #ffbe5a99;animation:lampPulse 1.2s ease-in-out infinite}.review-lamp.pseudo{border-color:#ff8d7a;background:radial-gradient(120% 100% at 50% 14%,#ff785fc7,#9628238c);color:#ffe4da;box-shadow:0 0 0 3px #ff6e5559,0 0 20px #ff6e5580}.review-path{margin:12px 0 4px;text-align:center;color:#a9c9c4;font-size:12px;letter-spacing:.1em}.review-q{margin:8px 18px 0;padding:14px 16px;border-left:3px solid #8fd3d2;border-radius:0 10px 10px 0;background:linear-gradient(90deg,#051418b3,#0514186b)}.review-q p{margin:0;color:#f0f6ec;font-size:15px;line-height:1.6}.review-q .review-answer{margin-top:8px;color:#cdeee9;font-size:13px}.enum-review>.primary{width:calc(100% - 36px);margin:14px 18px 0}.enum-review>.primary+.primary{margin-top:10px}.comp-board{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;margin:14px 0 7px}.comp-lamp{position:relative;min-width:0;min-height:46px;display:grid;place-items:center;border:1px solid rgba(228,173,92,.45);border-radius:8px;color:#ffd9a08c;background:#081c22bf;transition:background .22s ease,box-shadow .22s ease,border-color .22s ease,transform .22s ease}.comp-lamp b{font-size:11px;font-weight:900;letter-spacing:.04em}.comp-lamp small{position:absolute;top:1px;right:4px;color:#b5d7d26b;font-size:8px}.comp-lamp.visited{border-color:#ffd9a0;background:radial-gradient(120% 100% at 50% 14%,#ffdc96a8,#ffbe5a5c 46%,#183a34e6);color:#fff4dc}.comp-lamp.current{transform:translateY(-3px);border-color:#ffd9a0;box-shadow:0 0 0 3px #ffcb8261,0 0 18px #ffbe5a99}.comp-lamp.has-target{border-color:#ff8d7abf;box-shadow:inset 0 0 0 1px #ff8d7a66}.comp-lamp.missed{border-color:#ff8d7a;box-shadow:inset 0 0 0 2px #ff8d7aa6;color:#ff8d7ae6}.comp-lamp.comp-oob{border-color:#ff8d7a;background:#3c1010d1;color:#ffb4a6;box-shadow:inset 0 0 0 2px #ff8d7a80}.comp-i{position:absolute;top:-14px;left:50%;transform:translate(-50%);color:#ffd9a0;font:800 9px ui-monospace,monospace;font-style:normal;text-shadow:0 1px 4px #000}.enum-code{border-left-color:#8fd3d2;background:#0a1d22}.enum-options{max-width:340px}.enum-codex-beast{background:50% 18% / cover no-repeat url(/assets/xiezhi-enumeration-courtyard-v1.webp);filter:saturate(.8) brightness(.78)}@media(min-width:700px){body{padding:24px 0}.shell{min-height:min(100svh,860px);border-radius:18px;box-shadow:0 30px 80px #0e251d73}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}}
