:root{--green:#16583d;--deep:#0d3f2c;--ink:#17362d;--muted:#60736b;--line:#dde9e1;--cream:#fbfcf8;--orange:#fff0dc;--pink:#fdebf1;--blue:#eaf3fb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 32px);height:72px;margin:auto;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:10px;font-weight:900;display:flex}.brand-mark{background:var(--green);color:#fff;border-radius:13px;place-items:center;width:38px;height:38px;display:grid}.nav{gap:5px;display:flex}.nav button,.version-row button{color:#53675e;background:0 0;border:0;border-radius:11px;padding:9px 12px;font-weight:800}.nav button.active,.nav button:hover,.version-row button.active{color:var(--green);background:#eaf4eb}.hero{background:radial-gradient(circle at 80% 20%,#eff8dc 0,#0000 35%),linear-gradient(#fff,#f8fbf4)}.hero-inner{grid-template-columns:1.05fr .95fr;align-items:center;gap:44px;width:min(1180px,100% - 32px);min-height:455px;margin:auto;padding:55px 0;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#6f846f;font-size:12px;font-weight:900;display:inline-block}.hero h1{letter-spacing:-.065em;color:var(--deep);margin:10px 0 20px;font-size:clamp(48px,7vw,80px);line-height:.98}.hero h1 em{color:#6da536;font-style:normal}.hero p{color:#50655b;max-width:650px;font-size:18px}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.primary,.secondary{border:1px solid #0000;border-radius:14px;min-height:48px;padding:0 17px;font-weight:900}.primary{background:var(--green);color:#fff}.secondary{color:var(--green);background:#fff;border-color:#cfe0d4}.small{min-height:42px}.hero-board{gap:12px;display:grid}.mini-card{border-radius:22px;grid-template-rows:auto auto;grid-template-columns:60px 1fr;align-items:center;column-gap:14px;padding:20px;display:grid;box-shadow:0 18px 45px #17362d14}.mini-card span{grid-row:1/3;font-size:38px}.mini-card b{font-size:22px}.mini-card small{color:#65786f}.orange{background:var(--orange)}.pink{background:var(--pink)}.blue{background:var(--blue)}.track-strip{width:min(1180px,100% - 32px);margin:-12px auto 0}.track-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.track-card{text-align:left;min-height:178px;color:var(--ink);border:2px solid #0000;border-radius:22px;padding:20px;transition:transform .18s,box-shadow .18s,border-color .18s}.track-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px #123f2c14}.track-card.selected{border-color:var(--green)}.track-kicker{text-transform:uppercase;letter-spacing:.1em;color:#718077;font-size:11px;font-weight:900;display:block}.track-card strong{margin:5px 0;font-size:24px;display:block}.track-card p{color:#5e6d67;margin:0}.content-shell{width:min(1180px,100% - 32px);margin:auto;padding:72px 0}.section-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px;display:flex}.section-head h2{letter-spacing:-.05em;color:var(--deep);margin:5px 0 8px;font-size:clamp(32px,4vw,48px)}.section-head p{max-width:760px;color:var(--muted);margin:0}.search input{border:1px solid var(--line);background:#fff;border-radius:16px;width:100%;min-height:52px;margin:0 0 16px;padding:0 18px;font-size:16px}.study-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.study-card,.question-card,.source-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:22px}.card-top{justify-content:space-between;display:flex}.category,.q-number{text-transform:uppercase;letter-spacing:.08em;color:#75857d;font-size:12px;font-weight:900}.dot{color:#8ebd58}.study-card h3,.question-card h3{margin:8px 0;font-size:22px}.clue{color:#405a4f;font-weight:700}.study-card ul{color:#53675e;padding-left:20px}.memory{background:#f6f8ed;border-radius:13px;flex-direction:column;gap:3px;margin-top:14px;padding:12px 14px;display:flex}.memory b{text-transform:uppercase;letter-spacing:.1em;color:#71805f;font-size:11px}.source-links{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.source-links a{color:#397352;background:#eff7ef;border-radius:8px;padding:5px 8px;font-size:11px;font-weight:800}.version-row{gap:5px;display:flex}.question-list{gap:14px;display:grid}.question-card.correct{border-color:#7fb56c}.question-card.wrong{border-color:#d69176}.options{gap:8px;display:grid}.options label{cursor:pointer;border:1px solid #e4ece6;border-radius:13px;align-items:flex-start;gap:10px;padding:12px;display:flex}.options input{margin-top:4px}.explanation{background:#f4f8f2;border-radius:14px;margin-top:15px;padding:14px}.explanation p{margin:4px 0}.score-bar{background:var(--deep);color:#fff;border-radius:18px;justify-content:flex-end;align-items:center;gap:14px;margin-top:18px;padding:14px 16px;display:flex;position:sticky;bottom:16px;box-shadow:0 14px 40px #0d3f2c38}.score-bar strong{font-size:24px}.score-bar .primary{color:var(--deep);background:#cfe97e}.source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.source-card strong{font-size:20px}.source-card p{color:var(--muted)}.source-card span{color:var(--green);font-weight:900}.notice{color:#635a35;background:#fff6dc;border-radius:16px;margin-top:20px;padding:18px}.notice b{color:#4d461f}footer{border-top:1px solid var(--line);color:#687970;justify-content:space-between;gap:20px;width:min(1180px,100% - 32px);margin:auto;padding:36px 0 70px;display:flex}@media (max-width:800px){.nav{display:none}.hero-inner{grid-template-columns:1fr;padding:42px 0}.hero-board,.track-grid,.study-grid,.source-grid{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start}.version-row{flex-wrap:wrap}.score-bar{justify-content:space-between}.hero h1{font-size:52px}footer{flex-direction:column}}
