@import"https://fonts.googleapis.com/css2?family=Fraunces:wght@500;600;700&family=IBM+Plex+Mono:wght@400;500&family=Inter:wght@400;500;600;700&display=swap";:root{--paper: #ffffff;--ink: #0a1628;--mist: #3d4a5c;--blue: #1f5fa8;--blue-soft: rgba(31,95,168,.07);--blue-line: rgba(31,95,168,.18);--red: #b31942;--red-soft: rgba(179,25,66,.08);--gold: #b8860b;--good: #1e6b3f;--good-soft: #e3f3e8;--bad-soft: #fbe3e8}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper)}body{font-family:Inter,system-ui,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}button:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:3px}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.app{max-width:640px;margin:0 auto;padding:0 1.25rem 4rem}.header{padding:2rem 0 1.25rem;border-bottom:3px solid var(--red);margin-bottom:1.5rem}.header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.brand-btn{background:none;border:none;padding:0;text-align:left}.brand{font-family:IBM Plex Mono,monospace;font-size:.8rem;letter-spacing:.18em;color:var(--blue);font-weight:500}.tagline{font-family:Fraunces,serif;font-size:1.35rem;color:var(--ink);margin-top:.25rem;line-height:1.2}.lang-toggle{display:flex;border:1px solid var(--blue-line);border-radius:999px;padding:2px;flex-shrink:0}.lang-btn{background:transparent;border:none;border-radius:999px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;color:var(--mist)}.lang-btn.active{background:var(--blue);color:#fff}.back-link{background:none;border:none;padding:0;margin-top:1rem;color:var(--blue);font-size:.85rem;font-weight:500}.home{display:flex;flex-direction:column;gap:.85rem}.state-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.35rem}.state-row label{font-family:IBM Plex Mono,monospace;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--mist)}.state-row select{flex:1;padding:.55rem .75rem;border:1px solid var(--blue-line);border-radius:8px;background:#fff;color:var(--ink);font-family:inherit;font-size:.9rem}.mode-card{display:flex;align-items:flex-start;gap:1rem;width:100%;text-align:left;background:var(--blue-soft);border:1px solid var(--blue-line);border-radius:14px;padding:1.25rem;transition:transform .12s,border-color .12s}.mode-card:hover{border-color:var(--blue)}.mode-card:active{transform:scale(.99)}.mode-card.big{background:var(--blue);border-color:var(--blue);color:#fff}.mode-card.big .mode-label,.mode-card.big .mode-sub{color:#fff}.mode-icon{font-size:1.75rem;line-height:1}.mode-label{font-family:Fraunces,serif;font-size:1.2rem;color:var(--ink)}.mode-card.big .mode-label{font-size:1.45rem}.mode-sub{font-size:.88rem;color:var(--mist);margin-top:.25rem;line-height:1.45}.mode-card.big .mode-sub{opacity:.9}.app-note{text-align:center;font-size:.8rem;color:var(--mist);margin-top:.75rem}.card{background:#fff;border:1px solid var(--blue-line);border-radius:14px;padding:1.5rem}.card.passed{border-color:var(--good);background:var(--good-soft)}.meta-row{display:flex;justify-content:space-between;margin:.25rem 0 .6rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--mist)}.question{font-family:Fraunces,serif;font-size:1.3rem;line-height:1.35;margin:0;color:var(--ink)}.question.small{font-size:1rem;font-family:Inter,sans-serif;font-weight:600}.fact{font-size:1.05rem;line-height:1.65;margin:0}.answers{display:flex;flex-direction:column;gap:.5rem;margin-top:1.25rem}.answer{background:var(--red-soft);border-left:3px solid var(--red);border-radius:0 8px 8px 0;padding:.75rem 1rem;font-weight:500;color:var(--ink)}.live-note{font-size:.75rem;color:var(--mist);margin:.25rem 0 0}.big-icon{font-size:2.25rem}.card-title{font-family:Fraunces,serif;font-size:1.6rem;margin:.5rem 0;color:var(--ink)}.card-title.result{font-size:1.9rem;color:var(--red)}.card.passed .card-title.result{color:var(--good)}.card-text{color:var(--mist);font-size:.95rem;line-height:1.6;margin:0 0 .75rem}.card-text.muted{font-size:.88rem}.btn{border:none;border-radius:10px;padding:.8rem 1.1rem;font-size:.9rem;font-weight:700;transition:filter .12s,opacity .12s}.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.3;cursor:default}.btn.full{width:100%;margin-top:1.25rem}.btn.mt{margin-top:1rem}.btn.primary{background:var(--red);color:#fff}.btn.secondary{background:var(--blue);color:#fff}.btn.ghost{background:transparent;color:var(--blue);border:1px solid var(--blue-line)}.btn.good{background:var(--good);color:#fff}.btn-row{display:flex;gap:.75rem;margin-top:1.25rem}.btn-row .btn{flex:1}.progress{display:flex;gap:.35rem;margin-bottom:.25rem}.pip{flex:1;height:6px;border-radius:999px;background:var(--blue-line)}.pip.seen{background:#1f5fa866}.pip.right{background:var(--red)}.place-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media (min-width: 520px){.place-grid{grid-template-columns:repeat(3,1fr)}}.place-card{text-align:left;background:var(--blue-soft);border:1px solid var(--blue-line);border-radius:12px;padding:1rem;transition:border-color .12s}.place-card:hover{border-color:var(--blue)}.place-code{font-family:Fraunces,serif;font-size:2rem;color:var(--red);line-height:1}.place-name{font-size:.9rem;font-weight:600;color:var(--ink);margin-top:.35rem}.place-count{font-size:.72rem;color:var(--mist);margin-top:.15rem}.opt{text-align:left;width:100%;background:#fff;border:1px solid var(--blue-line);border-radius:10px;padding:.75rem 1rem;font-size:.95rem;color:var(--ink)}.opt.good{background:var(--good-soft);border-color:var(--good);color:var(--good);font-weight:600}.opt.bad{background:var(--bad-soft);border-color:var(--red);color:var(--red)}.footer{margin-top:3.5rem;padding-top:2rem;border-top:3px solid var(--blue);text-align:center}.stamp{font-family:Fraunces,serif;color:var(--red);margin:0 0 .35rem}.identity{font-size:.9rem;color:var(--mist);margin:0 0 1rem;line-height:1.55}.links{font-size:.8rem;margin:.35rem 0}.links a{color:var(--blue);text-decoration:none}.links a:hover{text-decoration:underline}.disclaimer{font-size:.75rem;color:var(--mist);line-height:1.65;margin:1.25rem auto 0;max-width:520px}
