.academy-app{height:calc(100svh - 76px)}@media(max-width:767px){.academy-app{height:calc(100svh - 148px)}}.academy-app .module{display:none}.academy-app .module.active{display:block;animation:modIn .4s ease}@keyframes modIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.academy-app .module.active{animation:none}}.academy-app .module-nav{display:flex;align-items:center;gap:12px;border-top:1px solid var(--color-line);padding-top:10px}.academy-app .takeaway-line{font-size:.9rem;color:var(--color-mute);border-left:3px solid var(--color-gold);padding-left:10px;line-height:1.45}.academy-app .takeaway-line strong{color:var(--color-ink);font-family:var(--font-head)}.academy-app .step-pill .n{color:var(--color-mute)}.academy-app .step-pill.active{border-color:var(--color-ink);color:var(--color-ink);background:var(--color-cream)}.academy-app .step-pill.active .n{color:var(--color-goldtext)}.academy-app .step-pill.done .n:after{content:" ✓";color:var(--color-good)}.academy-app .hit{fill:transparent;cursor:pointer}.academy-app .hit:hover{fill:#1616160d}.academy-app .hit:focus-visible{outline:none;stroke:var(--color-gold);stroke-width:3}.academy-app .zone-btn.active{border-color:var(--color-ink);background:var(--color-cream)}.academy-app .zone-btn.active .font-display{color:var(--color-goldtext)}.academy-app .zone-btn:hover{border-color:#bcb7aa}.academy-app .rain-stage{opacity:.6}.academy-app .rain-stage.active{opacity:1;border-color:var(--color-ink);background:var(--color-cream)}.academy-app .rain-stage:hover{opacity:1}.academy-app .evidence-img{transition:opacity .35s ease}.academy-app .polaroid{position:absolute;right:10px;bottom:10px;width:clamp(150px,24%,230px);background:#fff;border:1px solid var(--color-line);padding:6px;box-shadow:0 16px 32px -16px #16161659;transform:rotate(-2deg);transform-origin:bottom right;animation:polIn .45s cubic-bezier(.2,.9,.3,1.3)}.academy-app .polaroid[hidden]{display:none}@keyframes polIn{0%{opacity:0;transform:rotate(-2deg) translateY(14px) scale(.92)}to{opacity:1;transform:rotate(-2deg) translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.academy-app .polaroid{animation:none}}.academy-app .pol-cap{font-family:var(--font-head);font-weight:700;font-size:.72rem;line-height:1.3;padding:6px 2px 2px;color:var(--color-ink)}.academy-app .pol-chip{position:absolute;top:-10px;left:10px;background:var(--color-accent);color:var(--color-ink);font-family:var(--font-display);font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;z-index:1}.academy-app .dripline{animation:dripA 1.5s ease-in infinite}.academy-app .dripline.d2{animation-delay:.5s}.academy-app .dripline.d3{animation-delay:1s}@keyframes dripA{0%{transform:translateY(0);opacity:0}18%{opacity:1}82%{opacity:1}to{transform:translateY(26px);opacity:0}}@media(prefers-reduced-motion:reduce){.academy-app .dripline{animation:none}}.academy-app input[type=range].depth-slider{-webkit-appearance:none;appearance:none;width:100%;height:8px;background:var(--color-cream);border:1px solid var(--color-line);outline:none;margin:10px 0 6px}.academy-app .depth-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:30px;height:30px;border-radius:999px;background:var(--color-accent);border:3px solid var(--color-ink);cursor:grab}.academy-app .depth-slider::-moz-range-thumb{width:26px;height:26px;border-radius:999px;background:var(--color-accent);border:3px solid var(--color-ink);cursor:grab}.academy-app .verdict.bad{background:#e0512f1f;color:#a83c1d}.academy-app .verdict.mid{background:#dc9f1329;color:#8a6309}.academy-app .verdict.good{background:#2fa36b24;color:#1d7a4f}.academy-app .era-btn{font-family:var(--font-head);font-weight:700;font-size:.85rem;cursor:pointer;border:1px solid var(--color-line);background:var(--color-paper);color:var(--color-mute);padding:.45em 1em;transition:border-color .2s ease,color .2s ease}.academy-app .era-btn:hover{border-color:#bcb7aa;color:var(--color-ink)}.academy-app .era-btn.active{border-color:var(--color-ink);color:var(--color-ink);background:var(--color-cream)}.academy-app .toggle-btn{font-family:var(--font-head);font-weight:700;font-size:.9rem;cursor:pointer;border:1px solid var(--color-line);background:var(--color-paper);color:var(--color-mute);padding:.5em 1.2em;transition:all .2s ease}.academy-app .toggle-btn:hover{color:var(--color-ink)}.academy-app .toggle-btn.active{border-color:var(--color-ink);color:var(--color-ink);background:var(--color-accent)}.academy-app .sl-before,.academy-app .sl-after,.academy-app .vl-open,.academy-app .vl-blocked{transition:opacity .4s ease}.academy-app .sl-after,.academy-app .vl-blocked,.academy-app .seal-board[data-state=before] .sl-after{opacity:0}.academy-app .seal-board[data-state=before] .sl-before{opacity:1}.academy-app .seal-board[data-state=after] .sl-before{opacity:0}.academy-app .seal-board[data-state=after] .sl-after{opacity:1}.academy-app .vent-board[data-state=blocked] .vl-open{opacity:0}.academy-app .vent-board[data-state=blocked] .vl-blocked{opacity:1}.academy-app .vent-board[data-state=open] .vl-blocked{opacity:0}.academy-app .vent-board[data-state=open] .vl-open{opacity:1}.academy-app .quiz-progress{font-family:var(--font-display);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-mute);margin-bottom:10px}.academy-app .quiz-q{font-family:var(--font-head);font-weight:700;font-size:1.1rem;margin-bottom:12px}.academy-app .quiz-opts{display:grid;gap:8px}.academy-app .quiz-opt{text-align:left;font-family:var(--font-body);font-size:.95rem;color:var(--color-ink);cursor:pointer;border:1px solid var(--color-line);background:var(--color-paper);padding:10px 14px;width:100%;display:flex;gap:12px;align-items:center;transition:border-color .15s ease}.academy-app .quiz-opt:hover{border-color:#bcb7aa}.academy-app .quiz-opt .key{font-family:var(--font-display);font-size:.6rem;color:var(--color-mute);flex:none;border:1px solid var(--color-line);width:26px;height:26px;display:grid;place-items:center}.academy-app .quiz-opt.correct{border-color:var(--color-good);background:#2fa36b12}.academy-app .quiz-opt.correct .key{border-color:var(--color-good);color:#1d7a4f}.academy-app .quiz-opt.wrong{border-color:#c2410c;background:#e0512f0f}.academy-app .quiz-opt.wrong .key{border-color:#c2410c;color:#a83c1d}.academy-app .quiz-opt:disabled{cursor:default}.academy-app .quiz-explain{display:none;border-left:3px solid var(--color-gold);background:var(--color-cream);padding:10px 14px;margin-top:12px;font-size:.92rem}.academy-app .quiz-explain.show{display:block}.academy-app .quiz-next{margin-top:12px;display:none}.academy-app .quiz-next.show{display:inline-flex}.academy-app .quiz-done{text-align:center;padding:10px 0}.academy-app .quiz-done .score{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.6rem);color:var(--color-goldtext);display:block;margin-bottom:8px}.academy-app .polaroid{cursor:zoom-in;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}.academy-app .polaroid:hover,.academy-app .polaroid:focus-visible{transform:rotate(0) scale(1.85);z-index:40;box-shadow:0 30px 60px -20px #16161673}@media(max-width:767px){.academy-app .polaroid:hover{transform:rotate(0) scale(1.45)}}#module-2 .board{cursor:zoom-in}#module-2 .board .evidence-img{transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .35s ease}#module-2 .board:hover .evidence-img:not(.hidden){transform:scale(1.05)}.try-hint{position:absolute;top:12px;left:12px;z-index:5;background:var(--color-accent);color:var(--color-ink);font-family:var(--font-head);font-weight:700;font-size:.82rem;padding:6px 12px;animation:hintPulse 2s ease-in-out infinite}@keyframes hintPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@media(prefers-reduced-motion:reduce){.try-hint{animation:none}}.academy-lightbox{position:fixed;inset:0;z-index:300;background:#000000e0;display:none;align-items:center;justify-content:center;padding:4vmin}.academy-lightbox.open{display:flex}.academy-lightbox img{max-width:92vw;max-height:80vh;object-fit:contain;border:4px solid #fff}.academy-lightbox figcaption{color:#fff;font-family:var(--font-head);font-weight:600;text-align:center;margin-top:14px;font-size:1rem}.academy-lightbox button{position:absolute;top:18px;right:18px;width:48px;height:48px;background:#fff;color:var(--color-ink);font-size:1.4rem;font-weight:700;cursor:pointer;border:none}@media(max-width:767px){.academy-app .takeaway-line{font-size:.8rem}.academy-app .label{font-size:.6rem}}
