@import url('data:text/css,');
:root{--ink:#173f47;--ink2:#285b62;--paper:#fffaf0;--cream:#f4ead2;--yellow:#f5c94b;--orange:#ef8354;--mint:#9fd8c2;--blue:#84c7d9;--purple:#7d6ba8;--white:#fff;--shadow:0 12px 28px #153c4320;--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;min-height:100vh;background-image:radial-gradient(#1740470c 1px,transparent 1px);background-size:18px 18px}button,input{font:inherit}button{color:inherit}.topbar{height:76px;padding:10px clamp(14px,3vw,38px);display:flex;align-items:center;justify-content:space-between;background:#fffaf0e8;backdrop-filter:blur(12px);border-bottom:1px solid #173f4720;position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:9px;border:0;background:transparent;text-align:left;cursor:pointer;padding:3px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--yellow);font-size:22px;transform:rotate(-8deg)}.brand b{display:block;font-size:17px;letter-spacing:.04em}.brand small{display:block;font-size:9px;letter-spacing:.22em;color:var(--orange)}.case-progress{display:flex;align-items:center;gap:10px}.progress-label{font-size:12px;font-weight:800;min-width:60px;text-align:right}.progress-track{width:min(20vw,180px);height:8px;background:#173f4715;border-radius:9px;overflow:hidden}.progress-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--yellow),var(--orange));transition:.5s}.icon-btn{border:2px solid var(--ink);background:white;border-radius:50%;width:39px;height:39px;font-weight:900;cursor:pointer}.screen{display:none;max-width:1240px;margin:auto;padding:clamp(24px,4vw,52px) clamp(16px,4vw,48px) 70px;animation:arrive .45s ease}.screen.active{display:block}@keyframes arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.intro-screen.active{display:grid;grid-template-columns:1.03fr .97fr;gap:48px;align-items:center;min-height:calc(100vh - 76px)}.eyebrow{margin:0 0 12px;text-transform:uppercase;font-size:12px;letter-spacing:.18em;font-weight:900;color:var(--orange)}h1{font-size:clamp(40px,6vw,74px);line-height:1.06;margin:0 0 22px;letter-spacing:-.05em}h1 em{font-style:normal;color:var(--orange);position:relative}h1 em:after{content:"";position:absolute;height:8px;background:var(--yellow);left:0;right:0;bottom:1px;z-index:-1;border-radius:50%}.lead{font-size:clamp(16px,1.8vw,20px);line-height:1.9;margin:0 0 24px;max-width:620px}.mission-card{background:white;border:2px solid var(--ink);border-radius:18px;padding:16px 18px;display:flex;gap:14px;align-items:center;box-shadow:6px 6px 0 var(--mint);margin-bottom:25px;max-width:590px}.mission-icon{font-size:34px;background:var(--cream);border-radius:50%;width:54px;height:54px;display:grid;place-items:center}.mission-card b{font-size:15px}.mission-card p{margin:4px 0 0;line-height:1.6;font-size:14px}.primary,.secondary{border:2px solid var(--ink);border-radius:13px;padding:13px 20px;font-weight:900;cursor:pointer;transition:.18s;box-shadow:4px 4px 0 var(--ink);background:var(--yellow)}.primary:hover:not(:disabled),.secondary:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.primary:active:not(:disabled),.secondary:active{transform:translate(4px,4px);box-shadow:none}.primary:disabled{opacity:.38;cursor:not-allowed}.primary.big{font-size:18px;padding:16px 24px}.primary span{margin-left:14px}.primary.full{width:100%}.secondary{background:white}.tiny{font-size:12px;color:#597177}.intro-art{height:min(66vw,590px);max-height:590px;min-height:470px;border:3px solid var(--ink);border-radius:40px 40px 120px 40px;position:relative;overflow:hidden;background:linear-gradient(#6ca8b8 0 52%,#315f58 52%);box-shadow:15px 15px 0 var(--yellow)}.moon{width:58px;height:58px;border-radius:50%;background:#fff1b0;position:absolute;right:12%;top:10%;box-shadow:0 0 25px #fff1b099}.school{position:absolute;width:82%;height:43%;left:9%;top:25%;background:#dfb76e;border:4px solid var(--ink);border-radius:8px 8px 0 0}.school:before{content:"";position:absolute;left:-5%;right:-5%;height:18px;top:-20px;background:#834f3d;border:4px solid var(--ink);transform:skew(-8deg)}.school i{position:relative;display:inline-block;margin:14% 4.5%;width:14%;height:30%;background:#ffe28b;border:3px solid var(--ink);box-shadow:inset 0 50px #89bdc5}.garden-bed{position:absolute;left:4%;right:4%;height:25%;bottom:4%;background:#7a4e37;border:4px solid var(--ink);border-radius:50% 50% 12px 12px}.garden-bed span{position:relative;display:inline-block;width:12%;height:68%;margin:-10% 3% 0;border-left:6px solid #3f7a4e;transform:rotate(4deg)}.garden-bed span:before{content:"";position:absolute;width:38px;height:28px;background:var(--orange);border-radius:50% 5% 50% 5%;top:-12px;left:-21px;box-shadow:20px 4px 0 #f5c94b;transform:rotate(20deg)}.detective{position:absolute;left:10%;bottom:5%;width:150px;height:245px;filter:drop-shadow(8px 8px 0 #173f4730)}.head{position:absolute;top:53px;left:36px;background:#d89363;border:4px solid var(--ink);width:83px;height:75px;border-radius:45%;display:grid;place-items:center;font-weight:900}.hat{position:absolute;z-index:2;top:27px;left:20px;width:112px;height:45px;border-radius:70px 70px 8px 8px;background:var(--yellow);border:4px solid var(--ink)}.hat:after{content:"";position:absolute;left:-20px;right:-20px;bottom:-8px;height:12px;background:var(--yellow);border:4px solid var(--ink);border-radius:50%}.coat{position:absolute;top:117px;left:15px;width:125px;height:120px;background:var(--orange);border:4px solid var(--ink);clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.glass{position:absolute;z-index:4;top:78px;right:2px;width:55px;height:55px;border:7px solid var(--ink);border-radius:50%;background:#bcefff66}.glass:after{content:"";position:absolute;width:52px;height:8px;background:var(--ink);right:-41px;bottom:-19px;transform:rotate(48deg)}.case-tag{position:absolute;top:5%;left:5%;background:var(--paper);border:2px solid var(--ink);padding:10px 16px;transform:rotate(-4deg);font-size:12px;box-shadow:4px 4px 0 var(--ink)}.case-tag b{font-size:24px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px;gap:20px}.section-head h2,.discovery h2{margin:0;font-size:clamp(27px,4vw,44px);letter-spacing:-.04em}.counter{border:2px solid var(--ink);border-radius:999px;padding:10px 17px;background:white;margin:0;font-size:14px;white-space:nowrap}.counter b{color:var(--orange);font-size:23px}.scene-layout,.board-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.garden-scene{position:relative;height:640px;overflow:hidden;border:3px solid var(--ink);border-radius:var(--radius);background:#accfd1;box-shadow:var(--shadow)}.sky{position:absolute;inset:0 0 47% 0;background:linear-gradient(#8fb9c3,#c4d9d5)}.cloud{position:absolute;width:150px;height:42px;background:#e8e5dc;border-radius:50%;filter:drop-shadow(0 5px 0 #7f9ca0);opacity:.9}.cloud:before,.cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.cloud:before{width:70px;height:70px;left:22px;bottom:0}.cloud:after{width:84px;height:84px;right:18px;bottom:0}.c1{top:55px;right:11%}.c2{top:110px;left:8%;transform:scale(.7)}.drizzle{position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 39px,#fff8 40px 42px,transparent 43px 73px);opacity:.35}.school-wall{position:absolute;left:0;right:0;top:36%;height:26%;background:#d8bc7d;border-top:6px solid #885545;border-bottom:6px solid var(--ink)}.window{position:absolute;left:8%;top:14%;width:145px;height:105px;background:#7fb0b8;border:8px solid #f1e4c5;box-shadow:0 0 0 3px var(--ink)}.window:after{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:4px solid #f1e4c5}.clock{position:absolute;right:8%;top:22%;background:white;border:4px solid var(--ink);padding:12px;border-radius:50%;font-weight:900}.notice{position:absolute;left:42%;top:16%;background:#fff8c6;border:2px solid var(--ink);padding:8px 18px;transform:rotate(2deg);text-align:center;font-size:13px}.soil{position:absolute;inset:62% 0 0;background:linear-gradient(165deg,#6e4d37,#4b372c);border-top:16px solid #b77848}.soil:before{content:"";position:absolute;left:9%;right:9%;top:18%;height:120px;background:repeating-linear-gradient(82deg,#406e4d 0 6px,transparent 7px 63px);opacity:.9}.hotspot{position:absolute;border:2px solid var(--ink);border-radius:999px;background:#fffdf4e8;padding:8px 12px 8px 8px;display:flex;gap:7px;align-items:center;font-weight:900;font-size:12px;cursor:pointer;box-shadow:3px 3px 0 var(--ink);animation:pulse 2.8s infinite}.hotspot span{display:grid;place-items:center;width:25px;height:25px;background:var(--yellow);border-radius:50%;font-size:18px}.hotspot.found{background:var(--mint);animation:none;box-shadow:none;transform:translate(3px,3px)}@keyframes pulse{50%{box-shadow:3px 3px 0 var(--ink),0 0 0 9px #f5c94b22}}.hs-stems{left:42%;bottom:17%}.hs-ground{right:8%;bottom:5%}.hs-photo{left:24%;top:43%}.hs-weather{right:26%;top:15%}.hs-fence{left:3%;bottom:3%}.hs-tracks{right:31%;bottom:2%}.spark{position:absolute;right:4%;top:42%;border:0;background:transparent;color:#ffe676;font-size:24px;cursor:pointer;filter:drop-shadow(0 0 6px white);animation:twinkle 1.3s infinite}@keyframes twinkle{50%{transform:scale(1.35) rotate(20deg)}}.notebook,.compare-panel{background:white;border:3px solid var(--ink);border-radius:var(--radius);padding:22px;box-shadow:7px 7px 0 var(--mint);height:max-content;position:sticky;top:100px}.notebook-title{display:flex;gap:10px;align-items:center;border-bottom:2px dashed #173f4740;padding-bottom:14px}.notebook-title span{font-size:28px}.notebook>p{font-size:13px;line-height:1.7;color:#526e72}.notebook small{display:block;text-align:center;margin-top:9px;color:#789095}.clue-mini-list{display:grid;gap:7px;margin:18px 0}.mini-clue{background:var(--cream);border-radius:8px;padding:8px;font-size:12px;font-weight:800}.spark-note{background:#fff3b7!important}.evidence-board{background:#dfcfaa;border:9px solid #855b3e;border-radius:8px;min-height:590px;padding:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-content:start;box-shadow:inset 0 0 35px #4b2b1833,var(--shadow)}.evidence-card{position:relative;background:#fffdf5;border:0;padding:14px;text-align:left;min-height:170px;cursor:pointer;transform:rotate(var(--tilt));box-shadow:3px 5px 9px #4b2b1844;transition:.2s}.evidence-card:before{content:"";position:absolute;width:15px;height:15px;border-radius:50%;background:var(--orange);top:5px;left:50%;box-shadow:1px 2px 2px #0005}.evidence-card:hover{transform:rotate(0) translateY(-4px)}.evidence-card.selected{outline:5px solid var(--yellow);transform:rotate(0) scale(1.03)}.evidence-card .e-icon{display:grid;place-items:center;height:82px;background:var(--cream);font-size:44px;margin-bottom:10px}.evidence-card b{display:block;font-size:14px}.evidence-card small{font-size:11px;color:#64777a;line-height:1.45;display:block;margin-top:4px}.compare-panel{box-shadow:7px 7px 0 var(--yellow)}.panel-kicker{font-size:11px;letter-spacing:.15em;font-weight:900;color:var(--orange)}.compare-slots{display:flex;align-items:center;gap:7px;margin:12px 0}.compare-slots div{min-width:0;flex:1;min-height:80px;border:2px dashed #173f4766;border-radius:10px;display:grid;place-items:center;text-align:center;font-size:11px;padding:5px;background:var(--paper)}.text-btn{border:0;background:transparent;text-decoration:underline;cursor:pointer;width:100%;margin:12px 0;color:#517076;font-size:12px}.insight-log{border-top:2px dashed #173f4740;margin-top:12px;padding-top:12px;font-size:13px;line-height:1.55}.insight{background:#eff8e8;border-left:5px solid #75aa63;padding:10px;margin:8px 0}.hidden{display:none!important}.subnote{font-size:13px;color:#61797d}.hypothesis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.hypothesis-card{background:white;border:3px solid var(--ink);border-radius:var(--radius);overflow:hidden;box-shadow:8px 8px 0 var(--cream);transition:.2s}.hypothesis-card.examined{box-shadow:8px 8px 0 var(--mint)}.hypothesis-top{padding:22px}.hypothesis-icon{font-size:48px}.hypothesis-card h3{font-size:21px;margin:8px 0}.hypothesis-card p{font-size:13px;line-height:1.65;color:#526c70}.evidence-check{background:#f4ead2aa;border-top:2px dashed #173f4744;padding:18px;display:none}.hypothesis-card.open .evidence-check{display:block}.fit-row{display:flex;gap:8px;margin:8px 0;font-size:12px}.fit{font-weight:900;min-width:52px}.fit.good{color:#32815b}.fit.weak{color:#c65842}.hypothesis-card button{margin:0 22px 22px;width:calc(100% - 44px)}.reasoning-dock{margin-top:27px;background:var(--ink);color:white;border-radius:18px;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.reasoning-dock b{color:var(--yellow)}.reasoning-dock p{margin:3px 0 0;font-size:13px}.deduction-wrap{max-width:850px;margin:auto}.deduction-wrap>h2{font-size:clamp(34px,5vw,58px);margin:0 0 28px}.deduction-step{display:grid;grid-template-columns:45px 1fr;gap:16px;margin:23px 0}.deduction-step>b{width:42px;height:42px;border:3px solid var(--ink);border-radius:50%;display:grid;place-items:center;background:var(--yellow)}.deduction-step h3{margin:8px 0 14px}.choice-list{display:grid;gap:9px}.choice{border:2px solid var(--ink);border-radius:13px;background:white;padding:13px 16px;text-align:left;cursor:pointer;font-weight:800;box-shadow:3px 3px 0 #173f4730}.choice.selected{background:var(--mint);box-shadow:3px 3px 0 var(--ink)}.confidence{padding:18px 22px;background:var(--cream);border-radius:15px;margin:24px 0}.confidence label{display:block;font-weight:800;margin-bottom:10px}.confidence input{width:100%;accent-color:var(--orange)}.deduction-wrap>.big{width:100%}.deduction-wrap>.tiny{text-align:center}.result-hero{max-width:850px;margin:0 auto 35px;text-align:center;background:var(--ink);color:white;border-radius:30px;padding:35px;box-shadow:12px 12px 0 var(--yellow)}.result-hero .result-mark{font-size:64px}.result-hero h2{font-size:clamp(30px,5vw,50px);margin:10px 0}.result-hero p{line-height:1.8;max-width:650px;margin:10px auto}.result-meta{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}.result-meta span{border:1px solid #ffffff66;border-radius:99px;padding:7px 12px;font-size:12px}.explanation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:55px 0}.explanation-card{background:white;border:2px solid var(--ink);border-radius:18px;padding:22px;position:relative}.card-no{font-size:11px;color:var(--orange);font-weight:900;letter-spacing:.15em}.explanation-card h3{font-size:18px}.explanation-card p{font-size:13px;line-height:1.75;color:#536d70}.discovery{background:var(--cream);border-radius:25px;padding:clamp(22px,4vw,40px);text-align:center}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.path-card{border:2px solid var(--ink);border-radius:15px;background:white;padding:18px;cursor:pointer;box-shadow:4px 4px 0 var(--ink)}.path-card.selected{background:var(--yellow);transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}.path-card span,.path-card b,.path-card small{display:block}.path-card span{font-size:33px}.path-card b{margin:8px}.path-detail{background:white;border-radius:13px;padding:16px;min-height:55px;font-size:14px;line-height:1.7}.replay-row{display:flex;justify-content:center;gap:15px;margin:30px 0}.privacy-note{text-align:center;color:#73878a;font-size:11px}dialog{border:3px solid var(--ink);border-radius:22px;padding:0;max-width:min(92vw,520px);box-shadow:12px 12px 0 var(--yellow);background:var(--paper)}dialog::backdrop{background:#173f47aa;backdrop-filter:blur(3px)}#clueDialogBody,#messageBody{padding:30px 30px 10px}.dialog-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:25px;cursor:pointer}.dialog-ok{margin:12px 30px 28px;width:calc(100% - 60px)!important}.clue-reveal{text-align:center}.clue-reveal .big-icon{font-size:65px}.clue-reveal h3{font-size:26px;margin:8px}.clue-reveal p{line-height:1.75}.fact-label{display:inline-block;background:var(--mint);padding:5px 9px;border-radius:5px;font-size:11px;font-weight:900}.toast{position:fixed;z-index:50;bottom:22px;left:50%;transform:translate(-50%,90px);background:var(--ink);color:white;padding:12px 20px;border-radius:99px;font-weight:800;font-size:13px;transition:.3s;box-shadow:var(--shadow)}.toast.show{transform:translate(-50%,0)}
@media(max-width:820px){.topbar{height:65px}.brand b{font-size:14px}.brand-mark{width:34px;height:34px}.progress-track{width:80px}.progress-label{display:none}.screen{padding-top:25px}.intro-screen.active{grid-template-columns:1fr;min-height:auto}.intro-art{order:-1;min-height:330px;height:52vh;max-height:450px}.detective{transform:scale(.72);transform-origin:bottom left}.scene-layout,.board-layout{grid-template-columns:1fr}.notebook,.compare-panel{position:static}.garden-scene{height:580px}.evidence-board{grid-template-columns:repeat(2,1fr);min-height:auto}.hypothesis-grid,.explanation-grid{grid-template-columns:1fr}.reasoning-dock{align-items:stretch;flex-direction:column}.path-grid{grid-template-columns:1fr}.path-card{display:grid;grid-template-columns:44px 1fr;text-align:left}.path-card span{grid-row:1/3}.path-card b{margin:2px 5px}.path-card small{margin-left:5px}.section-head{align-items:flex-start}.subnote{display:none}}
@media(max-width:480px){.brand small{display:none}.case-progress{margin-left:auto;margin-right:8px}.screen{padding-left:12px;padding-right:12px}h1{font-size:40px}.intro-art{min-height:290px}.garden-scene{height:510px}.hotspot b{display:none}.hotspot{padding:6px}.hotspot span{width:30px;height:30px}.hs-stems{left:44%;bottom:18%}.hs-photo{left:28%}.evidence-board{padding:13px;gap:12px;border-width:6px}.evidence-card{min-height:155px;padding:10px}.evidence-card .e-icon{height:66px}.replay-row{flex-direction:column}.deduction-step{grid-template-columns:34px 1fr}.deduction-step>b{width:32px;height:32px}.result-hero{padding:25px 16px}.explanation-grid{margin:40px 0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
