:root{color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:#0a0705}.trial,.hub{max-width:560px;margin:0 auto;padding:16px 14px 44px;color:#e8e0d4;font-family:Gothic A1,sans-serif;min-height:100vh;background:radial-gradient(120% 80% at 50% -10%,#2a2018,#140f0a 70%,#0a0705)}.trial h1,.hub h1{font-family:Black Han Sans,sans-serif;font-size:2rem;letter-spacing:1px;margin:.2em 0}.trial h2{font-family:Jua,sans-serif;font-size:1.3rem;margin:.2em 0}.trial h3,.hub h3{font-size:.95rem;color:#c9a86a;margin:.9em 0 .4em;letter-spacing:.5px}.body{line-height:1.7;font-size:.98rem}.hub-head{text-align:center;padding:4vh 0 1vh}.hub-sub{color:#c9a86a;font-size:.9rem;margin:.3em 0 0;line-height:1.5}.rep-card{background:#1a130c;border:1px solid #33261a;border-radius:16px;padding:14px 16px;margin:16px 0}.rep-rank{display:flex;gap:12px;align-items:center}.rank-badge{font-size:2.2rem}.rep-rank b{font-family:Jua,sans-serif;font-size:1.15rem;color:#f0dcae}.rank-note{color:#a8946f;font-size:.82rem;margin:3px 0 0;line-height:1.45}.rep-bars{margin-top:12px;display:flex;flex-direction:column;gap:7px}.rep-bar{display:flex;align-items:center;gap:8px;font-size:.82rem}.rep-bar>span:first-child{width:56px;flex:0 0 auto}.rep-bar>span:last-child{width:20px;text-align:right;color:#cdbfa8}.bar{flex:1;height:9px;background:#2a2014;border-radius:6px;overflow:hidden}.bar i{display:block;height:100%;border-radius:6px;transition:width .4s}.threads{background:#17110b;border:1px solid #2c2116;border-radius:14px;padding:12px 14px;margin-bottom:14px}.thread{line-height:1.6;font-size:.88rem;color:#d6c7a6;border-left:3px solid #6a533a;padding-left:10px;margin:8px 0}.case-list{display:flex;flex-direction:column;gap:12px}.case-card{text-align:left;background:#1c140d;border:1px solid #3a2c1e;border-radius:16px;padding:15px 16px;color:#e8dcc4;cursor:pointer}.case-card.solved{border-color:#4a5a3a}.case-card.locked{opacity:.55;cursor:default}.case-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.case-sub{color:#a8946f;font-size:.78rem}.badge-new{color:#e8b84a;font-size:.78rem;font-weight:700}.badge-solved{color:#8fd08a;font-size:.78rem;font-weight:700}.badge-lock{color:#8a7a60;font-size:.78rem}.case-card h2{font-family:Jua,sans-serif;font-size:1.35rem;margin:2px 0 5px}.case-brief-sm{color:#b3a488;font-size:.86rem;line-height:1.55;margin:0}.hub-reset{display:block;margin:22px auto 6px;background:none;border:1px solid #4a3a26;color:#8a7a60;border-radius:10px;padding:9px 16px;cursor:pointer;font-size:.82rem}.hub-foot{text-align:center;color:#6a5c46;font-size:.78rem;margin-top:6px}.back{background:none;border:1px solid #4a3a26;color:#b3a488;border-radius:20px;padding:5px 12px;cursor:pointer;font-size:.78rem;flex:0 0 auto}.case-brief{background:#17110b;border:1px solid #2c2116;border-radius:12px;padding:11px 13px;line-height:1.6;font-size:.9rem;margin:12px 0;color:#cdbfa8}.cta{background:linear-gradient(#e8b84a,#c9902a);color:#2a1c0a;border:none;border-radius:14px;padding:14px 22px;font-family:Jua,sans-serif;font-size:1.1rem;margin:18px auto 0;display:block;cursor:pointer;box-shadow:0 4px #8a5f1a}.cta:disabled{opacity:.4;box-shadow:none}.trial-intro{text-align:center;padding-top:6vh}.trial-intro .win{color:#f0c96a}.trial-intro .lose{color:#c96a5a}.arc{background:#221913;border:1px solid #6a533a;border-radius:12px;padding:13px 15px;line-height:1.65;font-size:.92rem;color:#e8d4a8;margin:18px 0;text-align:left}.hud{display:flex;justify-content:space-between;gap:8px;align-items:center;position:sticky;top:0;background:#140f0acc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:8px 4px;border-radius:10px;font-size:.82rem;z-index:5}.gauge{background:#221913;border:1px solid #3a2c1e;border-radius:20px;padding:5px 12px}.gauge.danger{border-color:#c96a5a;color:#f0a08a;animation:pulse 1.2s infinite}@keyframes pulse{50%{background:#3a1c14}}.people{display:flex;gap:8px;overflow-x:auto;padding:12px 2px}.chip{flex:0 0 auto;width:66px;background:#1c140d;border:2px solid #33261a;border-radius:12px;padding:6px 4px;color:#cdbfa8;cursor:pointer;text-align:center;font-size:.72rem}.chip.on{border-color:#e8b84a;background:#2a2014}.chip img{width:52px;height:52px;object-fit:cover;border-radius:8px;display:block;margin:0 auto 3px}.chip.scene .scene-ic{font-size:2.1rem;display:block;height:52px;line-height:52px}.panel{background:#1a130c;border:1px solid #33261a;border-radius:16px;padding:16px;margin-top:6px}.who{display:flex;gap:12px;align-items:center;margin-bottom:10px}.who img{width:64px;height:64px;object-fit:cover;border-radius:10px;border:2px solid #3a2c1e}.role{color:#a8946f;font-size:.82rem}.say{background:#221913;border-left:3px solid #6a533a;border-radius:0 10px 10px 0;padding:10px 12px;line-height:1.6;margin:8px 0;font-size:.94rem}.intro-say{color:#d8cbb2}.say.crack{border-left-color:#e8b84a;background:#2c2110;color:#f0dcb0}.caught{display:inline-block;color:#8fd08a;font-weight:700;font-size:.85rem;margin:2px 0 8px}.topic{margin:10px 0}.act{width:100%;text-align:left;background:#241a11;border:1px solid #3d2e1e;border-radius:10px;padding:11px 13px;color:#e8dcc4;cursor:pointer;font-size:.92rem}.act:disabled{opacity:.4}.act.press{background:linear-gradient(#7a3a2a,#5a2818);border-color:#a05038;color:#ffd8c0;font-weight:700}.act.soft{background:#2a2414;border-color:#5a4a2a}.notebook{margin-top:16px}.notebook h3{margin:8px 2px}.ev-list{display:flex;flex-direction:column;gap:7px}.ev{background:#20180f;border:1px solid #33261a;border-radius:10px;padding:9px 11px;font-size:.84rem;line-height:1.5}.ev b{display:block;color:#e8c982;margin-bottom:2px}.ev span{color:#b3a488}.dim{color:#8a7a60;font-size:.85rem}.accuse-btn{width:100%;margin-top:18px;background:linear-gradient(#b8863a,#8a5f1a);color:#241400;border:none;border-radius:14px;padding:15px;font-family:Jua,sans-serif;font-size:1.05rem;cursor:pointer}.acc-row,.acc-ev{display:flex;flex-direction:column;gap:8px}.acc-opt{text-align:left;background:#221913;border:2px solid #3a2c1e;border-radius:10px;padding:12px;color:#e0d4bc;cursor:pointer;font-size:.92rem}.acc-opt.on{border-color:#e8b84a;background:#2e2312;color:#f4e2b8}.acc-actions{display:flex;gap:10px;margin-top:18px;align-items:center}.ghost{background:none;border:1px solid #4a3a26;color:#b3a488;border-radius:10px;padding:12px 14px;cursor:pointer;flex:0 0 auto}.acc-actions .cta{margin:0;flex:1}.panel.rebut{border-color:#c96a5a;box-shadow:0 0 30px #c96a5a33}.rebut-rival{display:flex;align-items:center;gap:12px;margin-bottom:6px}.rebut-face{width:60px;height:60px;object-fit:cover;border-radius:12px;border:2px solid #c96a5a;filter:grayscale(.2) contrast(1.1)}.rebut-rival h2{margin:0;color:#f0b8a8}.rival-claim{color:#f4d0c4;border-left:3px solid #c96a5a;padding-left:12px;font-style:italic}.panel.rebut .acc-ev{margin-top:12px}.rank-SS{color:#b98cff;text-shadow:0 0 10px #b98cff88}.under-open{display:block;width:100%;margin:22px auto 0;max-width:440px;background:linear-gradient(#2a2036,#1a1424);border:2px solid #6b4fa0;color:#d8c7f4;border-radius:12px;padding:14px;font-family:Jua,sans-serif;font-size:1rem;cursor:pointer;animation:fadeUp 1s ease both}.under-open:hover{border-color:#b98cff;box-shadow:0 0 22px #6b4fa055}.under-teaser{max-width:460px;margin:22px auto 0;color:#8a7ba8;font-size:.9rem;font-style:italic;line-height:1.6;animation:fadeUp 1.2s ease both}.undertruth-reveal{margin-top:24px;padding-top:18px;border-top:1px dashed #6b4fa0;animation:fadeUp .6s ease both}.under-head{font-family:Black Han Sans,sans-serif;color:#b98cff;font-size:1.15rem;text-shadow:0 0 16px #6b4fa066;margin-bottom:10px}.under-tag{color:#8a7ba8}.under-tag.done{color:#b98cff}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}}.shard-line{color:#d8b45a;font-size:.92rem;margin-top:14px;animation:fadeUp 1s ease both}.under-open.true-open{border-color:#c99a3a;color:#f0d69a}.under-open.true-open:hover{border-color:#ffd86a;box-shadow:0 0 24px #c99a3a55}.true-reveal{border-top-color:#c99a3a}.under-head.true-head{color:#ffd86a;text-shadow:0 0 16px #c99a3a66}.trial-flash{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:Black Han Sans,sans-serif;font-size:2.4rem;color:#ffd86a;text-shadow:0 0 30px #ff9a3c,0 4px 0 #7a2a0a;background:#0a0705aa;z-index:50;pointer-events:none;animation:flash .4s ease;text-align:center;padding:0 20px}@keyframes flash{0%{transform:scale(.6);opacity:0}}.trial-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#3a1c14;border:1px solid #a05038;color:#ffcdb8;padding:11px 16px;border-radius:12px;font-size:.86rem;max-width:90%;z-index:40;text-align:center}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0705dd;display:flex;align-items:flex-end;justify-content:center;z-index:30}.picker{background:#1c140d;border:1px solid #4a3a26;border-radius:16px 16px 0 0;padding:18px;width:100%;max-width:560px;max-height:70vh;overflow:auto}.ev-pick{display:block;width:100%;text-align:left;background:#241a11;border:1px solid #3d2e1e;border-radius:10px;padding:12px;color:#e8dcc4;margin:7px 0;cursor:pointer;font-size:.92rem}.close{width:100%;margin-top:10px;background:none;border:1px solid #4a3a26;color:#a8946f;border-radius:10px;padding:11px;cursor:pointer}.village-map{display:flex;flex-direction:column;margin:10px 0 4px}.village{display:flex;gap:12px;text-align:left;background:none;border:none;padding:4px 0;color:#e8dcc4;cursor:pointer;position:relative;width:100%}.village.locked{opacity:.5;cursor:default}.village-mark{position:relative;flex:0 0 auto;width:48px;display:flex;justify-content:center}.village-mark:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:repeating-linear-gradient(#4a3a26 0 6px,transparent 6px 13px);z-index:0}.village:first-child .village-mark:before{top:50%}.village:last-child .village-mark:before{bottom:50%}.village-emoji{position:relative;z-index:1;width:46px;height:46px;border-radius:50%;background:#1c140d;border:2px solid #3a2c1e;display:flex;align-items:center;justify-content:center;font-size:1.6rem;align-self:center}.village.solved .village-emoji{border-color:#4a5a3a}.village.next .village-emoji{border-color:#e8b84a;box-shadow:0 0 14px #e8b84a66;animation:pulse 1.6s infinite}.village-body{flex:1;min-width:0;background:#1c140d;border:1px solid #3a2c1e;border-radius:14px;padding:12px 14px;margin:5px 0}.village.next .village-body{border-color:#6a533a;background:#221913}.village.solved .village-body{border-color:#3a4a30}.village-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.village-name{color:#c9a86a;font-size:.78rem;font-weight:700;letter-spacing:.5px}.village-body h2{font-family:Jua,sans-serif;font-size:1.3rem;margin:3px 0 2px}.village-sub{color:#a8946f;font-size:.76rem;margin:0 0 5px}.season-select .hub-head{padding:8vh 0 2vh}.season-list{display:flex;flex-direction:column;gap:14px;margin:10px 0}.season-card{display:flex;gap:14px;align-items:center;text-align:left;background:#1c140d;border:1px solid #3a2c1e;border-radius:18px;padding:16px;color:#e8dcc4;cursor:pointer}.season-emoji{flex:0 0 auto;width:60px;height:60px;border-radius:14px;background:#241a10;border:2px solid #4a3a26;display:flex;align-items:center;justify-content:center;font-size:2.2rem}.season-body{flex:1;min-width:0}.season-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.season-top b{font-family:Jua,sans-serif;font-size:1.25rem;color:#f0dcae}.season-sub{color:#c9a86a;font-size:.8rem;margin:3px 0 5px}.season-back{position:absolute;left:14px;top:14px;z-index:6}.hub{position:relative}.method-opts{display:flex;flex-direction:column;gap:9px;margin-top:6px}.act.ruled{opacity:.45;text-decoration:line-through;border-color:#3a2c1e;background:#17110b;cursor:default}.say.gentle-a{margin-top:8px}.spot-list{display:flex;flex-direction:column;gap:8px;margin-top:6px}.act.spot{display:flex;flex-direction:column;gap:3px}.spot-label{display:block}.spot-note{display:block;font-size:.8rem;color:#9a8a6c;font-weight:400}.act.spot.done-find{border-color:#6a8f5a;background:#1a2214;cursor:default}.act.spot.done-find .spot-label{color:#a8d08a}.act.spot.done-dud{opacity:.6;border-color:#5a3a2e;background:#1c1410;cursor:default}.act.spot.done-dud .spot-label{color:#b08a7a;text-decoration:line-through}.ev.claim{border-color:#6a5330;background:#241b0e}.ev.claim b{color:#d8b25a}.acc-opt.claim{border-color:#6a5330}.acc-opt.claim.on{border-color:#e8b84a}.cta.confident{background:linear-gradient(#e88a4a,#c95a2a);box-shadow:0 4px #8a3a1a;color:#2a1200}.acc-actions .cta.confident{flex:1}.peek-open{display:block;width:100%;margin-top:12px;background:none;border:1px dashed #4a3a26;color:#a8946f;border-radius:10px;padding:11px;cursor:pointer;font-size:.86rem}.peek-open:disabled{opacity:.4;cursor:default}.ending-lines{margin:22px 0 6px}.ending-line{opacity:0;animation:endingFade .9s ease forwards;line-height:1.7;font-size:1.03rem;margin:1.05em 0;color:#ece4d6}.ending-stat{opacity:0;animation:endingFade .9s ease forwards;color:#f0c96a;font-weight:700;font-family:Jua,sans-serif;font-size:1.05rem;margin:20px 0 0}.trial-intro.end .arc{opacity:0;animation:endingFade .9s ease forwards}@keyframes endingFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rank{font-family:Black Han Sans,sans-serif}.rank-S{color:#f0c96a;text-shadow:0 0 8px #e8b84a88}.rank-A{color:#8fd08a}.rank-B{color:#b9c2cc}.rank-C{color:#a8946f}.rank-line{opacity:0;animation:endingFade .9s ease forwards;font-family:Jua,sans-serif;font-size:1.1rem;color:#ece4d6;margin:16px 0 0}.rank-line .rank{font-size:1.5rem;margin:0 4px}.badge-solved .rank{font-size:.82rem}.trial-intro.confront{padding-top:9vh}.confront-face{width:148px;height:148px;object-fit:cover;border-radius:16px;border:3px solid #c96a5a;margin:0 auto 14px;display:block;filter:grayscale(.25) contrast(1.1);box-shadow:0 0 44px #c96a5a55;animation:confrontIn .5s ease}.trial-intro.confront h1{color:#f0dcae;animation:confrontShake .55s ease}.confront-line{font-family:Black Han Sans,sans-serif;font-size:1.55rem;color:#ffd86a;text-shadow:0 3px 0 #7a2a0a;margin:8px 0 26px;animation:confrontIn .8s ease}@keyframes confrontIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}@keyframes confrontShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}
