@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#34164d;--purple:#70408e;--purple2:#9d5bb0;--pink:#f6dce7;--cream:#fffaf6;--line:#eadfe3;--green:#dff3e4;--blue:#dff1f5;--yellow:#fff0cf;--shadow:0 12px 35px rgba(72,38,62,.09)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#fffaf6,#fbf2f2);color:var(--ink);font-family:'DM Sans',sans-serif}.app{max-width:1120px;margin:auto;min-height:100vh;padding:24px 24px 105px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.brand{font:700 29px 'Playfair Display',serif}.brand span{font-family:sans-serif}.menu{color:#52305f;text-decoration:none}.hero{display:grid;grid-template-columns:1.25fr .75fr;background:linear-gradient(120deg,#fff7ef,#f7e7eb);border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.hero-copy{padding:42px}.eyebrow{font-size:16px;color:#795b79}.hero h1{font:700 48px/1.05 'Playfair Display',serif;margin:7px 0 10px}.hero p{font-size:17px;max-width:560px}.hero-art{display:flex;align-items:center;justify-content:center;font-size:130px;background:radial-gradient(circle,#f7d9e5,transparent 67%)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.stat{background:rgba(255,255,255,.82);padding:16px;border-radius:18px;text-align:center}.stat b{display:block;font-size:22px}.section{margin-top:22px}.section-title{display:flex;justify-content:space-between;align-items:center}.section h2,.page-title{font:700 28px 'Playfair Display',serif}.training-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mini{border-radius:18px;padding:18px;text-align:center;background:#eee}.mini:nth-child(1){background:#f1e3f6}.mini:nth-child(2){background:#dff1f5}.mini:nth-child(3){background:#e5f3e6}.mini:nth-child(4){background:#fff0cf}.mini .ico{font-size:34px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;border-radius:16px;background:linear-gradient(90deg,#5c337d,#764796);color:#fff;padding:15px 24px;text-decoration:none;font-weight:700;cursor:pointer;font-size:16px}.btn.full{width:100%;margin-top:15px}.btn.light{background:#fff;color:var(--ink);border:1px solid var(--line)}.card{background:#fff;border:1px solid var(--line);border-radius:25px;padding:26px;box-shadow:var(--shadow)}.bottomnav{position:fixed;left:50%;transform:translateX(-50%);bottom:14px;width:min(760px,calc(100% - 24px));background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;display:grid;grid-template-columns:repeat(5,1fr);padding:8px;z-index:20}.bottomnav a{text-align:center;text-decoration:none;color:#745f77;font-size:12px;padding:7px}.bottomnav a span{display:block;font-size:20px}.bottomnav a.active{color:var(--purple);font-weight:700}.train-shell{max-width:700px;margin:auto}.progressline{height:8px;background:#eadfe5;border-radius:10px;overflow:hidden}.progressline i{display:block;height:100%;background:linear-gradient(90deg,#dc7bb1,#794197);border-radius:10px}.game-head{display:flex;justify-content:space-between;align-items:center;margin:8px 0 18px}.game-title{font:700 29px 'Playfair Display',serif}.instruction{background:#fae8ef;border-radius:16px;padding:15px;text-align:center;font-size:17px}.objects{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.obj{min-height:100px;border:1px solid var(--line);border-radius:15px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:49px;cursor:pointer;box-shadow:0 5px 15px rgba(50,20,40,.05)}.obj.selected{outline:3px solid #a65c9f;background:#fae8f3}.answer{width:100%;padding:15px;border:1px solid #dfd4db;border-radius:14px;font-size:16px}.choicegrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.choice{padding:18px;border:1px solid var(--line);border-radius:15px;background:#fff;cursor:pointer;font-size:18px}.bigprompt{text-align:center;font-size:52px;font-weight:700;margin:28px}.result{text-align:center}.result .brain{font-size:88px}.result h1{font:700 48px 'Playfair Display',serif;margin:5px}.resultstats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.resultstats div{padding:15px;background:#fff7f8;border-radius:15px}.bars .row{display:grid;grid-template-columns:150px 1fr 50px;align-items:center;gap:10px;margin:17px 0}.bar{height:13px;background:#eee6eb;border-radius:10px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#7a4598,#b376c0);border-radius:10px}.achgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.badge{text-align:center}.badge .medal{font-size:64px}.muted{color:#826d81}.notice{background:#eef8f0;border-radius:14px;padding:12px}.footer-note{text-align:center;color:#8a7785;font-size:12px;margin-top:25px}@media(max-width:700px){.app{padding:14px 14px 100px}.brand{font-size:24px}.hero{grid-template-columns:1fr}.hero-copy{padding:25px}.hero h1{font-size:38px}.hero-art{display:none}.stats{gap:6px}.stat{padding:11px;font-size:12px}.training-grid{grid-template-columns:repeat(2,1fr)}.objects{grid-template-columns:repeat(3,1fr)}.obj{min-height:85px;font-size:42px}.achgrid{grid-template-columns:1fr 1fr}.bars .row{grid-template-columns:95px 1fr 38px;font-size:13px}.bottomnav{bottom:8px}.game-title{font-size:25px}.card{padding:18px}}
