:root{--ink:#24234a;--muted:#6b6a82;--purple:#4c46c8;--purple-dark:#37319f;--yellow:#ffd66b;--cream:#fffaf0;--paper:#fff;--mint:#d9f5e7;--mint-ink:#16734b;--coral:#ffe0dc;--coral-ink:#a33e42;--line:#e8e5f3;--shadow:0 18px 50px rgba(46,39,119,.13);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);min-width:320px}.page-shell{min-height:100vh;background:radial-gradient(circle at 15% 5%,#fff1b7 0 9%,transparent 25%),radial-gradient(circle at 90% 45%,#e9e7ff 0 10%,transparent 32%)}.topbar{height:74px;padding:0 clamp(20px,5vw,74px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(76,70,200,.1);background:rgba(255,250,240,.7);backdrop-filter:blur(10px)}.brand{font-weight:800;letter-spacing:-.03em;display:flex;gap:10px;align-items:center}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:var(--purple);color:#fff;font-size:17px;box-shadow:4px 4px 0 var(--yellow)}.topbar-note{color:var(--muted);font-size:13px;font-weight:650}.app{max-width:1120px;margin:0 auto;padding:clamp(28px,6vw,74px) clamp(18px,4vw,44px)}.footer{text-align:center;padding:20px;color:#89879d;font-size:13px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:38px;align-items:center;min-height:560px}.eyebrow{color:var(--purple);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px}.hero-title{font-size:clamp(40px,7vw,76px);line-height:.98;letter-spacing:-.07em;margin:0 0 22px;max-width:680px}.hero-title em{font-style:normal;color:var(--purple);position:relative;white-space:nowrap}.hero-title em:after{content:"";position:absolute;left:2px;right:4px;bottom:-5px;height:8px;background:var(--yellow);z-index:-1;transform:rotate(-2deg);border-radius:6px}.hero-copy{font-size:18px;line-height:1.6;color:var(--muted);max-width:560px}.hero-card{background:var(--purple);color:#fff;border-radius:30px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden;transform:rotate(2deg)}.hero-card:before,.hero-card:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}.hero-card:before{width:180px;height:180px;right:-55px;top:-65px}.hero-card:after{width:100px;height:100px;left:-30px;bottom:-40px}.notebook{position:relative;z-index:1}.notebook-title{font-size:14px;opacity:.75;margin-bottom:22px}.rule{display:flex;align-items:center;gap:14px;margin:17px 0;font-size:19px;font-weight:750}.rule-badge{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--yellow);color:var(--ink);font-size:20px}.rule small{display:block;font-size:12px;font-weight:500;opacity:.7;margin-top:3px}.button{border:0;border-radius:15px;padding:16px 23px;font:inherit;font-weight:800;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}.button:hover{transform:translateY(-2px)}.button:focus-visible,.answer:focus-visible{outline:4px solid #8dd8ff;outline-offset:3px}.primary{background:var(--purple);color:#fff;box-shadow:0 8px 0 var(--purple-dark)}.primary:hover{box-shadow:0 11px 0 var(--purple-dark)}.hero-actions{display:flex;align-items:center;gap:18px;margin-top:30px}.meta-pill{font-size:13px;color:var(--muted);font-weight:700}.quiz-wrap{max-width:850px;margin:0 auto}.quiz-header{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:24px}.quiz-label{color:var(--purple);font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px}.quiz-counter{font-size:26px;font-weight:850;letter-spacing:-.04em;margin:0}.score-chip{padding:11px 15px;border-radius:14px;background:#fff;color:var(--purple);font-weight:850;box-shadow:0 5px 18px rgba(76,70,200,.1);white-space:nowrap}.progress-track{height:11px;background:#e8e5f4;border-radius:50px;overflow:hidden;margin-bottom:26px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--purple),#8b76e8);border-radius:50px;transition:width .4s ease}.question-card{background:#fff;border:1px solid rgba(76,70,200,.09);border-radius:27px;padding:clamp(22px,4vw,42px);box-shadow:var(--shadow)}.question-tag{display:inline-flex;background:#fff2c8;color:#805d00;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:800;margin-bottom:18px}.question-text{font-size:clamp(25px,4vw,38px);line-height:1.12;letter-spacing:-.045em;margin:0 0 30px;max-width:720px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:14px}.answer{display:flex;align-items:center;gap:14px;text-align:left;border:2px solid var(--line);background:#fff;border-radius:17px;padding:17px 18px;color:var(--ink);font:inherit;font-size:16px;font-weight:700;cursor:pointer;min-height:70px;transition:transform .18s,border-color .18s,background .18s}.answer:hover:not(:disabled){transform:translateY(-2px);border-color:#aaa6eb;background:#fbfaff}.answer:disabled{cursor:default}.letter{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:11px;background:#f1effb;color:var(--purple);font-size:14px;font-weight:900}.answer.correct{border-color:#55c78c;background:var(--mint);color:#145b3e}.answer.correct .letter{background:#55c78c;color:#fff}.answer.incorrect{border-color:#ef8780;background:var(--coral);color:#8e3035}.answer.incorrect .letter{background:#ef8780;color:#fff}.feedback{margin-top:24px;border-radius:18px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start}.feedback.good{background:var(--mint);color:var(--mint-ink)}.feedback.try{background:var(--coral);color:var(--coral-ink)}.feedback-icon{font-size:23px;line-height:1}.feedback strong{display:block;font-size:18px;margin-bottom:5px}.feedback p{margin:0;line-height:1.5;color:inherit}.next-row{display:flex;justify-content:flex-end;margin-top:22px}.celebrate{position:fixed;inset:0;pointer-events:none;overflow:hidden}.star{position:absolute;animation:float 900ms ease-out forwards;font-size:28px;color:var(--yellow)}@keyframes float{0%{transform:translateY(30px) scale(.5) rotate(0);opacity:0}20%{opacity:1}100%{transform:translateY(-190px) scale(1.2) rotate(180deg);opacity:0}}.results{text-align:center;max-width:760px;margin:0 auto}.results-badge{font-size:58px;margin-bottom:8px}.results h1{font-size:clamp(38px,6vw,62px);letter-spacing:-.06em;margin:0 0 12px}.results-lede{color:var(--muted);font-size:18px;margin:0 auto 28px;max-width:570px;line-height:1.5}.score-panel{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:24px 0 30px}.stat{min-width:140px;background:#fff;border-radius:18px;padding:20px 14px;box-shadow:0 8px 26px rgba(46,39,119,.08)}.stat b{display:block;font-size:32px;color:var(--purple)}.stat span{display:block;color:var(--muted);font-size:13px;font-weight:700;margin-top:4px}.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.secondary{background:#fff;color:var(--purple);border:2px solid #e4e1f6}.review{max-width:900px;margin:0 auto}.review-head{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:25px}.review-head h1{font-size:clamp(32px,5vw,52px);letter-spacing:-.06em;margin:0}.review-item{background:#fff;border-radius:18px;padding:20px;margin:12px 0;border:1px solid var(--line)}.review-item h3{font-size:17px;line-height:1.4;margin:0 0 13px}.review-answers{display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.review-answers span{padding:7px 10px;border-radius:8px;background:#f4f2fa;color:var(--muted)}.review-answers .right{background:var(--mint);color:var(--mint-ink)}.review-answers .wrong{background:var(--coral);color:var(--coral-ink)}.review-item p{font-size:14px;line-height:1.5;color:var(--muted);margin:13px 0 0}.empty-note{color:var(--muted)}@media(max-width:760px){.topbar{height:64px}.topbar-note{display:none}.hero-grid{grid-template-columns:1fr;gap:30px;min-height:auto}.hero-card{transform:none}.hero-title{font-size:52px}.hero-actions{flex-wrap:wrap}.quiz-header{align-items:start}.answers{grid-template-columns:1fr}.question-card{border-radius:21px}.review-head{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
