:root{--bg: linear-gradient(135deg, #fdfbfb 0%, #ebedff 100%);--bg-solid: #f6f7ff;--card: #ffffff;--line: #e3e6f5;--txt: #232946;--mut: #6b7194;--vio: #7c3aed;--vio2: #06b6d4;--ok: #16a34a;--bad: #dc2626;--warn: #d97706;--input: #ffffff;--choice: #f4f5ff;--fs: 16px;--font: system-ui, sans-serif}[data-theme=dark]{--bg: linear-gradient(135deg, #0b0f1a 0%, #141b33 100%);--bg-solid: #0b0f1a;--card: rgba(255,255,255,.06);--line: rgba(255,255,255,.12);--txt: #eef2ff;--mut: #9aa4c0;--input: #11172a;--choice: rgba(255,255,255,.04)}[data-dys="1"]{--font: "OpenDyslexic", Verdana, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);font-size:var(--fs);background:var(--bg);background-attachment:fixed;color:var(--txt)}a{color:var(--vio2)}.wrap{max-width:1000px;margin:0 auto;padding:1rem}.topbar{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg-solid);z-index:5}.brand{font-weight:800;font-size:1.3rem;background:linear-gradient(90deg,var(--vio),var(--vio2));-webkit-background-clip:text;background-clip:text;color:transparent;cursor:pointer}.pill{background:linear-gradient(90deg,var(--vio),var(--vio2));color:#fff;border-radius:999px;padding:.25rem .8rem;font-weight:700}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.1rem;margin:1rem 0;box-shadow:0 4px 18px #7c3aed14}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 700px){.grid2{grid-template-columns:1fr}}input,select,textarea{width:100%;margin:.3rem 0;padding:.55rem;border-radius:10px;border:1px solid var(--line);background:var(--input);color:var(--txt);font-size:1rem;font-family:inherit}button{padding:.55rem 1.1rem;border-radius:10px;border:0;background:linear-gradient(90deg,var(--vio),var(--vio2));color:#fff;cursor:pointer;margin:.25rem .2rem;font-weight:700}button.ghost{background:transparent;border:1px solid var(--line);color:var(--txt)}button.ok{background:var(--ok)}button:disabled{opacity:.5}.msg{min-height:1.2em;color:var(--mut)}.msg.bad{color:var(--bad)}.msg.ok{color:var(--ok)}.hint{color:var(--mut);font-size:.9rem}.qgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:.3rem;margin:.5rem 0}.qgrid button{padding:.4rem 0;margin:0;background:#e6e9ff;color:var(--txt)}[data-theme=dark] .qgrid button{background:#1a2340}.qgrid button.done{background:var(--vio);color:#fff}.qgrid button.flagged{outline:2px solid var(--warn)}.qgrid button.cur{outline:2px solid var(--vio2)}.choice{display:block;border:1px solid var(--line);border-radius:10px;padding:.6rem;margin:.4rem 0;cursor:pointer;background:var(--choice)}.choice.sel{border-color:var(--vio);background:#7c3aed1f}.choice.right{border-color:var(--ok);background:#16a34a1f}.choice.wrong{border-color:var(--bad);background:#dc26261a}.timer{font-size:1.4rem;font-weight:800;color:var(--vio)}.timer.low{color:var(--bad);animation:blink 1s infinite}@keyframes blink{50%{opacity:.4}}.donut{width:150px;height:150px}.acc{border:1px solid var(--line);border-radius:10px;margin:.5rem 0;padding:.6rem;background:var(--card)}.acc summary{cursor:pointer;font-weight:600}.flip{perspective:800px;cursor:pointer}.flipinner{transition:transform .5s;transform-style:preserve-3d;position:relative;min-height:200px}.flip.on .flipinner{transform:rotateY(180deg)}.face{backface-visibility:hidden;position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ede9fe,#cffafe);border:1px solid var(--line);border-radius:12px;padding:1.5rem;display:flex;align-items:center;justify-content:center;text-align:center;color:#232946}[data-theme=dark] .face{background:#141b33;color:#eef2ff}.back{transform:rotateY(180deg)}table{width:100%;border-collapse:collapse;font-size:.9rem}td,th{border-bottom:1px solid var(--line);padding:.35rem;text-align:left}.resume{background:#fef3c7;border:1px solid var(--warn);border-radius:10px;padding:.8rem;margin:1rem 0;color:#78350f}[data-theme=dark] .resume{background:#f59e0b26;color:#eef2ff}.offline{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:50}.thumbs{display:flex;gap:.5rem;overflow-x:auto;padding:.5rem 0}.thumb{border:2px solid var(--line);border-radius:8px;cursor:pointer;text-align:center;font-size:.75rem;padding:.2rem;background:var(--card)}.thumb.sel{border-color:var(--vio);box-shadow:0 0 0 2px #7c3aed4d}.thumb.cur{outline:2px solid var(--vio2)}.conf button{font-size:.8rem;padding:.3rem .6rem}.conf button.on{outline:2px solid var(--vio2)}.prog{height:12px;background:var(--line);border-radius:6px;overflow:hidden}.prog>div{height:100%;background:linear-gradient(90deg,var(--vio),var(--vio2));transition:width .4s}.hero{background:linear-gradient(135deg,#7c3aed,#06b6d4,#22c55e);color:#fff;border-radius:16px;padding:1.5rem;margin:1rem 0}.hero h1{margin:0 0 .3rem}@media print{.topbar,button,.noprint{display:none!important}body{background:#fff;color:#000}.card,.acc{border-color:#ccc;box-shadow:none}}.tabbar{position:sticky;bottom:0;display:flex;justify-content:space-around;background:var(--bg-solid);border-top:1px solid var(--line);padding:.4rem 0 calc(.4rem + env(safe-area-inset-bottom));z-index:5}.tabbar button{background:transparent;border:0;font-size:1.6rem;margin:0;padding:.1rem .6rem;line-height:1}.tabbar button small{display:block;font-size:.6rem;color:var(--mut)}.tabbar button.on{background:#7c3aed26;border-radius:12px}.iconcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.8rem}.iconcard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.2rem .6rem;text-align:center;cursor:pointer;box-shadow:0 4px 18px #7c3aed14}.iconcard .ic{font-size:2.6rem;display:block}.iconcard b{display:block;margin-top:.3rem;font-size:.95rem}.iconcard small{color:var(--mut)}.bigbtn{font-size:1.3rem!important;padding:1rem 1.4rem!important;border-radius:16px!important}.stepdots{display:flex;gap:.4rem;margin:.6rem 0;font-size:1.6rem}.stepdots .todo{filter:grayscale(1);opacity:.4}.choice.cA{border-left:8px solid #ef4444}.choice.cB{border-left:8px solid #3b82f6}.choice.cC{border-left:8px solid #eab308}.choice.cD{border-left:8px solid #22c55e}.choice .cl{font-size:1.3rem;font-weight:800;margin-right:.5rem}.navbtns{display:flex;justify-content:space-between;align-items:center}.navbtns button{font-size:1.4rem;padding:.5rem 1rem}
