.level-outcome-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(42,42,41,.62);backdrop-filter:blur(8px)}
.level-outcome-overlay.hidden{display:none!important}.level-outcome-card{width:min(520px,94vw);padding:30px;border:1px solid #e5e0d9;border-radius:30px;background:#fff;text-align:center;box-shadow:0 30px 90px rgba(42,42,41,.28);animation:outcomeIn .25s ease-out}
@keyframes outcomeIn{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
.level-outcome-icon{font-size:3.5rem;margin-bottom:4px}.level-outcome-kicker{color:#1e1f1f;font-size:.75rem;font-weight:1000;letter-spacing:.12em}.level-outcome-card h2{margin:7px 0 9px;color:#2a2a29;font-size:1.65rem}.level-outcome-card p{margin:0 auto;max-width:430px;color:#68708e;line-height:1.65}.level-outcome-stars{min-height:42px;margin:13px 0 7px;color:#ffb703;font-size:2rem;letter-spacing:5px}.level-outcome-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}.level-outcome-actions .btn{min-width:185px}
/* Prototype cards */
.prototype-strip{max-width:1180px;margin:24px auto 0;padding:20px;border:1px solid #e5e0d9;border-radius:24px;background:linear-gradient(135deg,#fff,#f6f3ee);box-shadow:0 12px 28px rgba(58,57,54,.06)}
.prototype-strip h2{margin:0 0 6px;color:#2a2a29}.prototype-strip>p{margin:0 0 15px;color:#68708e}.prototype-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.prototype-card{padding:18px;border:2px solid #efe9e1;border-radius:20px;background:#fff}.prototype-card h3{margin:0 0 7px}.prototype-card p{margin:0 0 13px;color:#68708e;line-height:1.5}.prototype-card .btn{width:100%}
/* Labirin Angka */
#mathMazePage{background:linear-gradient(145deg,#eef8ff,#fffbea)}.maze-shell{max-width:1080px;margin:18px auto;display:grid;grid-template-columns:minmax(300px,1fr) 330px;gap:20px}.maze-card,.maze-panel{padding:20px;border:1px solid #dfe6f4;border-radius:26px;background:#fff;box-shadow:0 16px 35px rgba(39,65,100,.08)}.maze-grid{display:grid;grid-template-columns:repeat(5,1fr);aspect-ratio:1;max-width:560px;margin:auto;gap:5px;padding:7px;border-radius:20px;background:#1e88e5}.maze-cell{display:grid;place-items:center;border-radius:12px;background:#fff;font-size:1.45rem;font-weight:1000;user-select:none}.maze-cell.wall{background:#72c472}.maze-cell.goal{background:#ffd95a}.maze-cell.player{background:#8be1ff;box-shadow:inset 0 0 0 4px #168bd4}.maze-controls{display:grid;grid-template-columns:repeat(3,64px);justify-content:center;gap:8px;margin-top:16px}.maze-controls button{height:58px;border:0;border-radius:16px;background:#2477e8;color:#fff;font-size:1.4rem;font-weight:1000;touch-action:manipulation}.maze-controls button:active{transform:scale(.95)}.maze-controls .empty{visibility:hidden}.maze-question{padding:16px;border-radius:18px;background:#f4f7ff}.maze-question h3{margin:0 0 7px}.maze-question .expr{font-size:1.65rem;font-weight:1000;color:#2a2a29;margin:8px 0 13px}.maze-answers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.maze-answers button{padding:12px;border:2px solid #e2e5ef;border-radius:13px;background:#fff;font-weight:900}.maze-answers button:hover{border-color:#2477e8;background:#eff7ff}.maze-status{margin-top:13px;padding:11px;border-radius:13px;background:#f3f5fa;color:#555e7d;font-weight:800}
/* Safe Cracker */
#safeCrackerPage{background:radial-gradient(circle at 50% 5%,#263550,#0c1220 55%,#080c15);color:#eef5ff}.safe-shell{max-width:720px;margin:15px auto 30px;padding:22px}.safe-story{padding:17px;border:1px solid #33455e;border-radius:18px;background:#121d2e;color:#d8e5f5;line-height:1.6;box-shadow:0 15px 45px rgba(0,0,0,.25)}.safe-card{margin-top:18px;padding:25px;border:2px solid #41546f;border-radius:30px;background:linear-gradient(145deg,#182438,#0f1725);box-shadow:0 25px 70px rgba(0,0,0,.4)}.safe-door{width:min(330px,80vw);aspect-ratio:1;margin:auto;border:12px solid #566a82;border-radius:50%;background:radial-gradient(circle,#263b52,#111b29 62%,#0b111b);display:grid;place-items:center;box-shadow:inset 0 0 35px #000,0 0 25px rgba(92,255,154,.08)}.safe-digits{display:flex;gap:8px}.safe-digit{width:48px;height:62px;display:grid;place-items:center;border:2px solid #62ff9b;border-radius:10px;background:#08130f;color:#62ff9b;font-size:1.8rem;font-weight:1000}.safe-light{width:12px;height:12px;border-radius:50%;margin-top:12px;background:#62ff9b;box-shadow:0 0 15px #62ff9b}.safe-light.bad{background:#ff5a62;box-shadow:0 0 15px #ff5a62}.safe-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;max-width:390px;margin:20px auto 0}.safe-keypad button{height:58px;border:1px solid #41546f;border-radius:14px;background:#1a293d;color:#fff;font-size:1.2rem;font-weight:1000}.safe-keypad button:hover{border-color:#62ff9b;color:#62ff9b}.safe-actions{display:flex;gap:9px;max-width:390px;margin:10px auto 0}.safe-actions button{flex:1}.safe-result{text-align:center;min-height:28px;margin-top:12px;color:#9bb0c7;font-weight:800}.safe-card.opened .safe-door{border-color:#62ff9b;box-shadow:inset 0 0 35px #000,0 0 35px rgba(98,255,155,.35);animation:safeOpen .7s ease}.safe-card.shake{animation:safeShake .35s}.safe-card.opened .safe-light{background:#62ff9b}@keyframes safeOpen{50%{transform:scale(1.03)}100%{transform:scale(1)}}@keyframes safeShake{25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-5px)}}
@media(max-width:850px){.prototype-grid,.maze-shell{grid-template-columns:1fr}.maze-panel{order:-1}.maze-grid{max-width:480px}}
