

:root{--bg:#071426;--panel:#0e2037;--panel2:#122943;--ink:#f5f8ff;--muted:#a9bad0;--line:#243b56;--cyan:#5ce1d2;--blue:#72a9ff;--violet:#b59bff;--gold:#ffc875;--pink:#ff91b5;--green:#8de3a7;--shadow:0 22px 70px #02091688}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 75% 8%,#16365a 0,transparent 34%),radial-gradient(ellipse at 5% 35%,#123348 0,transparent 30%),var(--bg);color:var(--ink);font-family:Inter,sans-serif;line-height:1.55}button,input,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1160px)/2));position:sticky;top:0;z-index:20;background:#071426d9;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff12}.brand{display:flex;gap:10px;align-items:center;font:700 17px 'Space Grotesk';letter-spacing:-.5px}.brand small{display:block;font:700 8px Inter;letter-spacing:2px;color:#8da7c2;margin-top:1px}.brand-mark{width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,var(--cyan),#6c9dff);color:#071426;display:grid;place-items:center;font:900 20px 'Space Grotesk';box-shadow:0 6px 24px #5ce1d244}.brand-mark span{color:#fff}.toplinks{display:flex;gap:28px;color:#b9c8d9;font-size:13px}.toplinks a:hover,.textlink:hover{color:var(--cyan)}.btn{border:0;border-radius:13px;padding:12px 18px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.22s;cursor:pointer}.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.primary{background:linear-gradient(115deg,var(--cyan),#83b4ff);color:#061426;box-shadow:0 10px 28px #5ce1d22b}.outline{border:1px solid #8ba5c655;background:#ffffff08;color:#eff7ff}.ghost{background:transparent;color:#d9e7f5}.hero{min-height:620px;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-top:72px;padding-bottom:70px}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:900;color:var(--cyan);display:flex;align-items:center;gap:9px}.pulse{width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 0 6px #5ce1d21b}.hero h1{font:800 clamp(42px,6vw,70px)/1.04 'Space Grotesk';letter-spacing:-3.5px;margin:20px 0}.grad{background:linear-gradient(100deg,#5ce1d2 5%,#82b9ff 52%,#c0a3ff 100%);color:transparent;background-clip:text}.lead{font-size:17px;line-height:1.8;color:#c0d0e2;max-width:600px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.proof{display:flex;gap:24px;flex-wrap:wrap;margin-top:34px}.proof div{border-left:1px solid #38516a;padding-left:13px}.proof b{display:block;font:800 23px 'Space Grotesk'}.proof small{color:#9fb3c8;font-size:11px}.hero-art{height:440px;position:relative;display:grid;place-items:center}.orb{position:absolute;border:1px solid #74d9e344;border-radius:50%;transform:rotate(-22deg)}.o1{width:340px;height:180px}.o2{width:390px;height:250px;transform:rotate(53deg)}.o3{width:430px;height:320px;transform:rotate(-55deg)}.core{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#8cf4e9,#3685ae 48%,#182e62 78%);box-shadow:0 0 90px #5ce1d255,inset 0 0 25px #fff7;z-index:2;text-align:center;font:900 27px 'Space Grotesk'}.core small{display:block;font:800 9px Inter;letter-spacing:3px}.sat{position:absolute;width:12px;height:12px;background:var(--cyan);border-radius:50%;box-shadow:0 0 18px var(--cyan)}.s1{top:90px;left:50%}.s2{bottom:100px;right:24%}.s3{top:52%;left:12%}.float{position:absolute;background:#112943eF;border:1px solid #8ab1d52c;padding:13px 16px;border-radius:15px;box-shadow:var(--shadow);backdrop-filter:blur(12px);font-size:12px}.float b{display:block}.float small{color:#a8bed4}.f1{top:45px;right:0}.f2{bottom:54px;left:0}.f3{right:4px;bottom:15px;color:var(--cyan);font-weight:800}.section{padding:65px 0}.heading{margin-bottom:28px}.heading.center{text-align:center}.heading h2{font:800 clamp(30px,4vw,44px)/1.1 'Space Grotesk';letter-spacing:-1.8px;margin:12px 0}.heading p{color:var(--muted);max-width:650px}.center p{margin:0 auto}.grade-grid,.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grade{position:relative;text-align:left;min-height:210px;padding:24px;border-radius:22px;border:1px solid #8cb3d52c;background:linear-gradient(145deg,#142e49,#0d2037);color:white;overflow:hidden;transition:.25s}.grade:hover{transform:translateY(-6px);border-color:#5ce1d288;box-shadow:var(--shadow)}.grade:after{content:'';position:absolute;width:170px;height:170px;border-radius:50%;right:-45px;top:-65px;background:#5ce1d21a}.grade .num{font:900 46px 'Space Grotesk';color:var(--cyan)}.grade h3{font:800 22px 'Space Grotesk';margin:5px 0}.grade p{font-size:13px;color:#b1c3d7;max-width:260px}.grade span{display:block;margin-top:18px;color:var(--cyan);font-weight:800;font-size:12px}.feature-grid{grid-template-columns:repeat(3,1fr)}.feature{padding:23px;border:1px solid #8cb3d526;border-radius:20px;background:linear-gradient(145deg,#122943,#0b1c31);min-height:220px;transition:.25s}.feature:hover{transform:translateY(-4px);border-color:#7eb6d866}.ico{width:43px;height:43px;border-radius:13px;background:#5ce1d21c;color:var(--cyan);display:grid;place-items:center;font-size:22px}.feature h3{font:800 18px 'Space Grotesk';margin:17px 0 8px}.feature p{font-size:13px;color:#aebfd2;margin:0}.persuade{margin:30px auto;padding:32px;border:1px solid #5ce1d244;border-radius:24px;background:linear-gradient(115deg,#10364a,#15264b 65%,#25254b);display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}.persuade h2{font:800 31px 'Space Grotesk';line-height:1.15}.persuade p{color:#c0d0e2}.steps{display:grid;gap:10px}.step{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:13px;background:#ffffff0b}.step b{color:var(--cyan);font-size:12px}.step span{font-weight:700}.guide{margin:45px auto 80px;border-radius:25px;padding:35px;background:linear-gradient(110deg,#172d4c,#183f50);border:1px solid #5ce1d244;display:flex;align-items:center;justify-content:space-between;gap:20px}.guide h2{font:800 29px 'Space Grotesk';margin:10px 0}.guide p{color:#bfd0df;max-width:690px}.footer{border-top:1px solid #ffffff14;padding:28px 0 40px;color:#91a7be;font-size:12px}.footerrow{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.hidden{display:none!important}.app{min-height:100vh}.layout{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{background:#091a2d;border-right:1px solid #ffffff13;padding:22px 15px;position:sticky;top:0;height:100vh;overflow:auto}.sidegrade{margin:28px 7px 15px;padding:14px;border:1px solid #ffffff19;border-radius:13px;background:#ffffff08}.sidegrade small{color:#8fa8c0;font-size:9px;letter-spacing:1.5px}.sidegrade button{display:flex;width:100%;justify-content:space-between;align-items:center;background:none;border:0;color:white;font-weight:800;margin-top:7px}.sidegrade button span{color:var(--cyan);font-size:11px}.navlabel{font-size:9px;letter-spacing:1.7px;color:#718ca8;margin:20px 10px 7px}.navbtn{width:100%;text-align:left;background:none;border:0;color:#a9bdd2;padding:11px 12px;border-radius:10px;margin:2px 0;font-size:13px}.navbtn:hover,.navbtn.active{background:#5ce1d21a;color:#6ce5d6}.navbtn i{font-style:normal;display:inline-block;width:25px;font-size:16px}.main{min-width:0}.apptop{height:68px;border-bottom:1px solid #ffffff13;display:flex;align-items:center;justify-content:space-between;padding:0 25px;background:#091a2d99;position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.apptop button{background:none;border:0;color:white}.crumb{font-size:10px;letter-spacing:1.5px;color:#8ea6bf}.crumb b{color:#e7f1ff}.xpchip{background:#ffc8751c;color:#ffd18d;padding:8px 13px;border-radius:12px;font-size:12px;font-weight:900}.content{padding:30px;max-width:1200px;margin:auto}.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:24px}.pagehead h1{font:800 30px 'Space Grotesk';margin:0 0 5px}.muted{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.panel{background:linear-gradient(145deg,#112943,#0c2036);border:1px solid #ffffff15;border-radius:17px;padding:19px}.panel h3{font:700 17px 'Space Grotesk';margin:0 0 10px}.panel p{color:#aebfd2;font-size:13px}.stat{font:800 27px 'Space Grotesk';color:var(--cyan)}.topiclist{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.topic{padding:15px;border-radius:13px;background:#ffffff08;border:1px solid #ffffff16;display:flex;justify-content:space-between;align-items:center;text-align:left;color:#e9f4ff}.topic small{display:block;color:#92a9c1}.topic:hover{border-color:#5ce1d277;background:#5ce1d20d}.pill{font-size:10px;color:var(--cyan);background:#5ce1d21a;padding:5px 8px;border-radius:20px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.field{background:#0b1d31;border:1px solid #34506a;color:white;padding:11px 13px;border-radius:10px;min-width:150px}.action{border:1px solid #6a8ca955;background:#ffffff0b;color:#e8f4ff;padding:10px 13px;border-radius:10px;font-weight:700}.action.primary{background:linear-gradient(110deg,var(--cyan),#8bbcff);color:#071426;border:0}.qcard{padding:20px;border:1px solid #ffffff19;background:#102741;border-radius:17px;margin:12px 0}.qtop{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#94abc3;font-size:11px}.qcard h3{font:700 16px 'Space Grotesk'}.answer{background:#071a2d;border-left:3px solid var(--cyan);padding:15px;border-radius:8px;margin-top:12px;color:#d4e4f4}.option{display:block;width:100%;text-align:left;margin:8px 0;padding:12px;border:1px solid #ffffff20;border-radius:10px;background:#ffffff08;color:white}.option.correct{border-color:#8de3a7;background:#8de3a71a}.option.wrong{border-color:#ff91b5;background:#ff91b51a}.flash{max-width:600px;min-height:230px;margin:20px auto;border-radius:22px;background:linear-gradient(140deg,#153c55,#243365);border:1px solid #72dacc66;display:grid;place-items:center;text-align:center;padding:30px;cursor:pointer;box-shadow:var(--shadow)}.flash small{color:var(--cyan);letter-spacing:2px}.flash h2{font:800 25px 'Space Grotesk'}.formula{font-size:25px;color:#8de3d8}.frac{display:inline-grid;vertical-align:middle;text-align:center;line-height:1.1;margin:0 3px}.frac>span:first-child{border-bottom:1.5px solid currentColor;padding:0 5px 3px}.frac>span:last-child{padding:3px 5px 0}.periodic{display:grid;grid-template-columns:repeat(18,minmax(28px,1fr));gap:4px;overflow-x:auto;padding:5px 0 12px}.el{min-width:30px;aspect-ratio:1;border:1px solid #5d7b9b55;background:#ffffff09;color:white;border-radius:6px;padding:3px;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.el b{font-size:12px}.el small{font-size:7px;color:#a9bfd5}.el:hover,.el.selected{background:#5ce1d22b;border-color:var(--cyan)}.elementinfo{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}.atomview{background:radial-gradient(circle,#193b5a,#081a2d);border-radius:17px;min-height:260px;display:grid;place-items:center}.atomview svg{width:min(100%,300px)}.leaderrow{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:12px;border-bottom:1px solid #ffffff12}.rank{font:800 18px 'Space Grotesk';color:var(--gold)}.bar{height:6px;background:#ffffff14;border-radius:10px;margin-top:6px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),#8daeff);border-radius:10px}.calcgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:340px}.calcgrid button{padding:15px;border:1px solid #ffffff18;background:#ffffff0c;color:white;border-radius:10px}.calcdisplay{max-width:340px;padding:18px;text-align:right;background:#061426;border-radius:12px;margin-bottom:10px;font-size:24px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#d7fff5;color:#09202a;padding:11px 17px;border-radius:12px;z-index:50;font-weight:800;box-shadow:var(--shadow)}.modalbg{position:fixed;inset:0;background:#020916bb;z-index:40;display:grid;place-items:center;padding:20px}.modal{width:min(500px,100%);background:#102943;border:1px solid #6d8ca655;border-radius:20px;padding:25px;box-shadow:var(--shadow)}.modal input,.modal select{width:100%;margin:7px 0 13px}.mobilemenu{display:none}
@media(max-width:850px){.hero{grid-template-columns:1fr;padding-top:45px}.hero-art{height:330px}.toplinks{display:none}.feature-grid{grid-template-columns:repeat(2,1fr)}.layout{grid-template-columns:1fr}.sidebar{position:fixed;z-index:30;left:-270px;width:255px;transition:.25s;box-shadow:var(--shadow)}.sidebar.open{left:0}.mobilemenu{display:inline-block}.content{padding:20px}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.wrap{width:calc(100% - 30px)}.topbar{padding:0 15px;height:65px}.hero{min-height:auto;padding:52px 0}.hero h1{letter-spacing:-2px}.hero-art{height:280px}.o1{width:270px}.o2{width:300px}.o3{width:320px}.core{width:115px;height:115px}.f1{right:-4px;top:10px}.f2{left:-5px;bottom:35px}.proof{gap:15px}.proof b{font-size:20px}.grade-grid,.feature-grid{grid-template-columns:1fr}.grade{min-height:170px}.persuade{grid-template-columns:1fr;padding:22px}.guide{display:block;padding:25px}.cards{grid-template-columns:1fr}.topiclist{grid-template-columns:1fr}.elementinfo{grid-template-columns:1fr}.content{padding:16px}.pagehead{display:block}.apptop{padding:0 15px}.periodic{grid-template-columns:repeat(18,34px)}.btn{padding:11px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* SchoolPlug Physical Sciences Mastery — refreshed violet theme */
:root{--bg:#090811;--panel:#191626;--panel2:#211d31;--ink:#faf8ff;--muted:#b4aec5;--line:#40364f;--cyan:#c3a7ff;--blue:#9672ff;--violet:#c2a4ff;--gold:#ffd18d;--pink:#ff91b5;--green:#8de3a7;--shadow:0 22px 70px #0008}
body{background:radial-gradient(ellipse at 78% 4%,#29203f 0,transparent 34%),radial-gradient(ellipse at 4% 35%,#1d1531 0,transparent 30%),#090811;color:var(--ink)}
.topbar,.apptop{background:#0b0914e8;border-color:#ffffff16}
.brand-mark{background:linear-gradient(135deg,#c9b4ff,#8b63f3);color:#120c21;box-shadow:0 6px 24px #a985ff38}
.primary{background:linear-gradient(115deg,#d2c0ff,#9366fa);color:#170d29;box-shadow:0 10px 28px #a985ff2b}
.outline{border-color:#bda2ff66;background:#ffffff08;color:#f4efff}
.hero{background:none}.grad{background:linear-gradient(100deg,#d9caff 0%,#a88aff 52%,#8f9cff 100%);color:transparent;background-clip:text}
.eyebrow{color:#c5aaff}.pulse{background:#c3a7ff;box-shadow:0 0 0 6px #c3a7ff1c}
.brand small{color:#b0a4ca}.toplinks{color:#c7bfd8}.toplinks a:hover,.textlink:hover{color:#d6c6ff}
.sidebar{background:#0d0a16;border-color:#ffffff18}.navbtn{color:#b7adc9}.navbtn:hover,.navbtn.active{background:#aa87ff1d;color:#d8c6ff}.navlabel{color:#83769e}
.sidegrade,.panel,.feature,.grade{background:linear-gradient(145deg,#201b2d,#151320);border-color:#ffffff1a}
.panel{box-shadow:0 12px 40px #0002}.stat{color:#d0baff}
.topiclist{grid-template-columns:1fr;gap:12px}
.topic{min-height:88px;padding:20px 22px;border-radius:20px;background:linear-gradient(120deg,#1e1a2a,#191623);border:1px solid #40374e;box-shadow:0 8px 22px #0002;transition:transform .22s,border-color .22s,background .22s}
.topic:hover{transform:translateY(-2px);border-color:#a987ff88;background:linear-gradient(120deg,#29213d,#1c172b)}
.pill{color:#d3c2ff;background:#a987ff20}
.action{border-color:#65527f88;background:#ffffff0a;color:#eee8ff}.action.primary{background:linear-gradient(110deg,#d2c0ff,#9366fa);color:#170d29}
.flash{background:linear-gradient(140deg,#302447,#251c42);border-color:#bda2ff66}
.formula{color:#d8c7ff}.answer{background:#100d19;border-left-color:#bda2ff;color:#e8dfff}
.grade:hover{border-color:#bda2ff88}.grade .num{color:#c7adff}.grade span{color:#c7adff}
.persuade,.guide{background:linear-gradient(110deg,#241a38,#211b35 65%,#27213e);border-color:#a987ff55}
.float{background:#201a30ef;border-color:#a98dfb33}.step{background:#ffffff0b}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal.in{opacity:1;transform:none}
.paper-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 15px}
.paper-tab{min-height:104px;border-radius:23px;padding:18px 16px;border:1px solid #4a3d60;background:#242033;color:#eee8ff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;font:800 18px 'Space Grotesk';line-height:1.35}
.paper-tab small{font:800 9px Inter;letter-spacing:1.5px;color:#9e91b8}
.paper-tab.paper-active{background:linear-gradient(125deg,#cbb6ff,#9164f4);border-color:#c7adff;color:#1b102c;box-shadow:0 12px 30px #9a72ff35}
.paper-tab.paper-active small{color:#33234c}.paper-tab.paper-disabled{opacity:.72;cursor:not-allowed}
.question-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 13px}
.topic-stack{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}
.topic-card{position:relative;width:100%;min-height:112px;text-align:left;padding:22px 52px 19px 23px;border:1px solid #413650;border-radius:24px;background:linear-gradient(112deg,#1d1928,#171521);color:#fbf8ff;display:flex;flex-direction:column;justify-content:center;gap:3px;transition:transform .22s,border-color .22s,box-shadow .22s,background .22s;overflow:hidden}
.topic-card:before{content:'';position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:4px;background:linear-gradient(#cbb6ff,#8c64ef);opacity:.8}
.topic-card:hover:not(:disabled){transform:translateY(-2px);border-color:#ab8bf7;box-shadow:0 12px 28px #0004;background:linear-gradient(110deg,#28213a,#1a1628)}
.topic-card-title{font:700 clamp(17px,2.5vw,22px) 'Space Grotesk';letter-spacing:-.4px;line-height:1.35}.topic-card-title b{color:#ccb8ff;margin-right:3px}
.topic-card-meta{font-size:14px;color:#b0a8bf}.topic-card-arrow{position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:35px;color:#bfa6ff;font-weight:300}
.topic-unavailable{opacity:.52;cursor:not-allowed}.topic-unavailable:before{background:#726b7d}
.archive-footnote,.archive-note{margin-top:18px;padding:17px 19px;border:1px solid #5b4b71;border-radius:16px;background:#181422;color:#c6bed3;font-size:12px;line-height:1.65}
.archive-note{margin:0 0 18px}.archive-note p{margin:7px 0 0}.archive-pages{display:grid;gap:17px}.archive-page{padding:13px;border:1px solid #423750;border-radius:20px;background:linear-gradient(145deg,#1c1827,#12101b);overflow:hidden;box-shadow:0 12px 26px #0003}
.archive-page-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 3px 12px}.archive-page-top div{display:grid;gap:2px}.archive-page-top small{font-size:9px;letter-spacing:1.2px;color:#c4aaff;font-weight:900}.archive-page-top b{font-size:14px}.archive-page-top span{font-size:11px;color:#aaa1b9}.archive-image-link{display:block;border-radius:12px;overflow:hidden;background:#fff;line-height:0}.archive-image-link img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;background:#fff}
.periodic-shell{overflow-x:auto;padding:7px 0 12px}.periodic{display:block;min-width:0;overflow:visible;padding:0}.ptable-main,.fblock{display:grid;grid-template-columns:14px repeat(18,minmax(0,1fr));gap:2px;width:100%;align-items:stretch}.group-label,.period-label{display:grid;place-items:center;color:#8f86a3;font-size:8px;min-width:0}.period-label{font-weight:800}.el{min-width:0;max-width:100%;aspect-ratio:1/1;border:1px solid #514365;background:linear-gradient(145deg,#262033,#191522);color:#fbf8ff;border-radius:5px;padding:2px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;overflow:hidden;transition:transform .18s,border-color .18s,background .18s}
.el b{font-size:clamp(7px,1.05vw,12px);line-height:1;text-align:center}.el small{font-size:clamp(5px,.58vw,8px);color:#b4a7cb;line-height:1}.el:hover,.el.selected{background:linear-gradient(145deg,#7355ad,#44316e);border-color:#d3bdff;transform:translateY(-1px)}
.fblock-label{font-size:10px;color:#bba8dc;margin:13px 0 5px 18px;font-weight:800;letter-spacing:.6px}.elementinfo{gap:14px}.atomview{background:radial-gradient(circle,#33264c,#120f1c);border:1px solid #47395f}
@media(max-width:560px){.content{padding:16px}.topic-card{min-height:108px;padding:20px 45px 18px 20px;border-radius:22px}.topic-card-meta{font-size:13px}.paper-tab{min-height:94px;font-size:16px;padding:15px 10px}.archive-page{padding:9px;border-radius:16px}.archive-page-top{align-items:flex-start}.archive-page-top .action{font-size:10px;padding:8px}.ptable-main,.fblock{grid-template-columns:12px repeat(18,minmax(0,1fr));gap:1px}.el{border-radius:3px;padding:1px}.el b{font-size:7px}.el small{font-size:5px}.group-label{font-size:6px}.period-label{font-size:7px}.elementinfo{grid-template-columns:1fr}.archive-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

.core{background:radial-gradient(circle at 30% 25%,#e4d9ff,#9165ed 48%,#2b1b4c 78%);box-shadow:0 0 90px #a985ff55,inset 0 0 25px #fff7}.orb{border-color:#b79dff44}.sat{background:#c3a7ff;box-shadow:0 0 18px #c3a7ff}.ico{background:#a987ff20;color:#d2beff}.btn.primary{background:linear-gradient(115deg,#d2c0ff,#9366fa);color:#170d29}.grade:after{background:#a987ff1a}
/* Inline image-first past-paper cards */
.verified-list{display:grid;gap:18px;margin:18px 0 28px}
.verified-card{background:linear-gradient(145deg,#191426,#12101d);border:1px solid #493b61;border-radius:22px;padding:16px;overflow:hidden;box-shadow:0 14px 38px #0003}
.verified-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#b9afc8;font-size:12px;margin:2px 2px 12px}
.verified-title{font:800 18px/1.3 'Space Grotesk';margin:0 2px 12px}
.verified-paper{background:#fff;border-radius:12px;overflow:hidden}
.verified-paper img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.verified-actions{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0 0}
.verified-actions .action{padding:10px 13px}
.verified-memo{display:none;margin-top:14px}
.verified-memo.show{display:block;animation:fadeUp .28s ease both}
.verified-memo-label{font-size:11px;font-weight:900;letter-spacing:1px;color:#8de3a7;margin:0 0 8px}

.verified-source{color:#8295ac;font-size:10px;margin-top:5px}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:650px){.verified-card{padding:12px;border-radius:18px}.verified-title{font-size:16px}.verified-actions .action{flex:1}}


/* SchoolPlug polish pass */
.topbar #topStart{padding:8px 12px;font-size:12px;min-height:36px;max-width:156px;border-radius:10px;white-space:nowrap;box-shadow:none;flex:0 0 auto}
.topbar{gap:16px}.toplinks{gap:22px}
.hero-art .orb{transform-origin:50% 50%;animation:orbitalDrift 20s linear infinite}
.hero-art .o2{animation-duration:27s;animation-direction:reverse}.hero-art .o3{animation-duration:34s}
.hero-art .sat{transform-origin:center;animation:particleGlow 2.4s ease-in-out infinite alternate}
.hero-art .s2{animation-delay:.7s}.hero-art .s3{animation-delay:1.3s}
@keyframes orbitalDrift{from{rotate:0deg}to{rotate:360deg}}
@keyframes particleGlow{from{filter:brightness(.8);box-shadow:0 0 8px var(--cyan)}to{filter:brightness(1.6);box-shadow:0 0 24px var(--cyan)}}
#atomview svg{overflow:visible}
#atomview .electron-system{transform-box:view-box;transform-origin:50% 50%;animation:electronOrbit 9s linear infinite}
#atomview .atom-nucleus{transform-box:view-box;transform-origin:50% 50%;animation:nucleusPulse 2.8s ease-in-out infinite}
@keyframes electronOrbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes nucleusPulse{0%,100%{filter:drop-shadow(0 0 2px #ff4d00)}50%{filter:drop-shadow(0 0 11px #ff4d00)}}
.feature-launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 30px}
.launch-card{display:flex;align-items:center;gap:13px;text-align:left;width:100%;padding:15px;border-radius:16px;background:linear-gradient(145deg,#142e49,#0b1c31);border:1px solid #8cb3d52c;color:#f5f8ff;min-height:86px;transition:.2s}
.launch-card:hover{transform:translateY(-3px);border-color:#5ce1d288;box-shadow:var(--shadow)}
.launch-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:13px;background:#5ce1d21b;color:var(--cyan);font-size:20px}
.launch-card b{display:block;font:800 14px 'Space Grotesk'}.launch-card small{display:block;color:#a9bad0;font-size:11px;margin-top:3px}
.topic-section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:30px 0 14px}.topic-section-title h2{margin:0;font:800 23px 'Space Grotesk'}.topic-section-title p{margin:4px 0 0;color:var(--muted);font-size:12px}
.topic-lesson{display:grid;gap:14px}.lesson-section{padding:20px;border:1px solid #ffffff18;border-radius:17px;background:linear-gradient(145deg,#112943,#0b1d32)}.lesson-section h3{margin:0 0 10px;font:800 18px 'Space Grotesk';color:#eaf4ff}.lesson-section p{color:#bfd0e2;margin:8px 0;font-size:14px;line-height:1.75}.lesson-section ul{padding-left:20px;color:#bfd0e2;font-size:14px}.lesson-section li{margin:7px 0}.lesson-callout{border-left:3px solid var(--cyan);padding:12px 15px;background:#5ce1d20d;border-radius:0 12px 12px 0;color:#d8e9f7;margin-top:10px;font-size:13px}
.guideline-defs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.guideline-def{padding:14px;border:1px solid #ffffff16;border-radius:13px;background:#ffffff07}.guideline-def b{display:block;color:var(--cyan);font-size:13px;margin-bottom:5px}.guideline-def span{color:#d3dfed;font-size:13px;line-height:1.6}
.source-note{font-size:11px;color:#91a8c0;margin:14px 0 0}.topic-lesson-actions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}
.flip-scene{height:250px;max-width:720px;margin:10px auto 18px;perspective:1200px;cursor:pointer;background:transparent;border:0;padding:0}
.flip-card{height:100%;width:100%;position:relative;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.flip-scene.is-flipped .flip-card{transform:rotateY(180deg)}
.flip-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;border:1px solid #5ce1d255;border-radius:22px;background:linear-gradient(145deg,#142e49,#0a1a30);backface-visibility:hidden;box-shadow:var(--shadow)}
.flip-face small{color:var(--cyan);font-size:10px;letter-spacing:1.6px;font-weight:900;margin-bottom:16px}.flip-face h2{font:800 clamp(20px,3vw,28px)/1.4 'Space Grotesk';margin:0;max-width:620px}.flip-face p{color:var(--muted);font-size:12px;margin-top:18px}
.flip-face h2{max-height:180px;overflow-y:auto;overflow-wrap:anywhere;-webkit-overflow-scrolling:touch;padding:0 3px}
.flip-back{transform:rotateY(180deg);background:linear-gradient(145deg,#173a48,#18264c)}
.practice-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.practice-pick{padding:17px;border:1px solid #ffffff18;border-radius:15px;background:#ffffff08;text-align:left;color:var(--ink)}.practice-pick:hover{border-color:#5ce1d288;background:#5ce1d20d}.practice-pick b{display:block;font:800 15px 'Space Grotesk'}.practice-pick span{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.assessment-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.assessment-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.assessment-timer{font:700 17px 'Space Grotesk';color:var(--gold);padding:8px 12px;background:#ffc8751b;border-radius:10px}.assessment-question{font:800 19px/1.45 'Space Grotesk';margin:18px 0}.assessment-option{width:100%;display:block;text-align:left;padding:13px 15px;margin:8px 0;border:1px solid #ffffff20;background:#ffffff08;color:#eaf4ff;border-radius:12px}.assessment-option:hover{border-color:#5ce1d2}.assessment-option.correct{border-color:#8de3a7;background:#8de3a71a}.assessment-option.wrong{border-color:#ff91b5;background:#ff91b51a}.assessment-feedback{min-height:40px;color:#c9d9e8;font-size:13px;margin:13px 0}.assessment-progress{height:6px;background:#ffffff14;border-radius:10px;overflow:hidden;margin:14px 0}.assessment-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),#8bbcff);width:0}
@media(max-width:850px){.feature-launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-picks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.topbar #topStart{padding:7px 9px;font-size:10px;min-height:32px}.topbar{gap:8px}.brand{font-size:15px}.brand-mark{width:34px;height:34px}.feature-launch-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.launch-card{padding:11px;gap:9px;min-height:78px}.launch-icon{width:34px;height:34px;flex-basis:34px;font-size:17px}.launch-card b{font-size:12px}.launch-card small{font-size:10px}.guideline-defs{grid-template-columns:1fr}.practice-picks{grid-template-columns:1fr}.flip-scene{height:280px}.lesson-section{padding:16px}.topic-section-title{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.hero-art .orb,.hero-art .sat,#atomview .electron-system,#atomview .atom-nucleus{animation:none!important}.flip-card{transition:none}}


/* Concept Academy: visual science-lab learning experience */
.academy-shell{display:grid;gap:18px}.academy-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.12fr .88fr;gap:20px;align-items:center;padding:26px;border:1px solid #6bded044;border-radius:24px;background:radial-gradient(circle at 85% 15%,#3d5d9b55,transparent 34%),linear-gradient(125deg,#102b43,#17274b 65%,#20234a);box-shadow:0 20px 55px #02091655}.academy-hero:after{content:'✧';position:absolute;right:30%;top:-35px;font-size:150px;color:#a9d9ff0b;pointer-events:none}.academy-kicker{font-size:10px;letter-spacing:2px;color:var(--cyan);font-weight:900}.academy-hero h1{font:800 clamp(27px,4vw,42px)/1.08 'Space Grotesk';margin:10px 0;letter-spacing:-1.4px}.academy-hero p{color:#c0d1e5;max-width:600px;margin:0}.academy-visual{min-height:175px;border:1px solid #8bd9e533;border-radius:19px;background:radial-gradient(circle at center,#21496a,#0a1b31 72%);display:grid;place-items:center;position:relative;overflow:hidden}.academy-visual .science-symbol{font-size:84px;filter:drop-shadow(0 0 24px #5ce1d277);animation:academyFloat 4s ease-in-out infinite}.academy-visual .orbit{position:absolute;width:180px;height:75px;border:1px solid #5ce1d277;border-radius:50%;transform:rotate(-28deg);animation:orbitPulse 6s ease-in-out infinite}.academy-visual .orbit.two{transform:rotate(55deg);width:210px;height:95px;animation-delay:-2s}.academy-visual small{position:absolute;bottom:12px;letter-spacing:2px;font-size:9px;color:#a9c8e4}.academy-progress{display:flex;gap:6px;margin-top:20px}.academy-progress span{height:5px;flex:1;border-radius:10px;background:#ffffff20}.academy-progress span:first-child{background:linear-gradient(90deg,var(--cyan),#8bbcff)}.academy-path{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.academy-step{border:1px solid #ffffff16;border-radius:15px;padding:13px;background:#ffffff08;display:flex;gap:10px;align-items:center}.academy-step b{width:30px;height:30px;flex:none;border-radius:10px;background:#5ce1d21c;color:var(--cyan);display:grid;place-items:center}.academy-step strong{display:block;font-size:11px}.academy-step small{display:block;color:#8fa9c2;font-size:9px}.academy-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:26px 0 12px}.academy-section-head h2{font:800 22px 'Space Grotesk';margin:0}.academy-section-head p{font-size:11px;color:#91a9c1;margin:3px 0 0}.academy-topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.academy-topic{display:flex;align-items:center;gap:13px;text-align:left;padding:15px;border:1px solid #ffffff17;border-radius:16px;background:linear-gradient(135deg,#122b45,#0c1e33);color:#eff7ff;transition:.2s}.academy-topic:hover,.academy-topic.selected{border-color:#5ce1d288;transform:translateY(-2px);background:linear-gradient(135deg,#173b51,#182b4b)}.academy-topic .topic-no{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:#5ce1d21a;color:var(--cyan);font:800 14px 'Space Grotesk';flex:none}.academy-topic b{display:block;font-size:13px}.academy-topic small{display:block;color:#91a9c1;font-size:10px;margin-top:3px}.academy-topic .arrow{margin-left:auto;color:var(--cyan);font-size:20px}.academy-lesson{margin-top:22px;scroll-margin-top:90px}.lesson-welcome{padding:21px;border-radius:19px;background:linear-gradient(120deg,#173b50,#1c2a4b);border:1px solid #5ce1d244;display:flex;align-items:center;justify-content:space-between;gap:15px}.lesson-welcome h2{font:800 22px 'Space Grotesk';margin:5px 0}.lesson-welcome p{font-size:12px;color:#bdd0e3;margin:0}.lesson-badge{padding:8px 11px;border-radius:12px;background:#5ce1d21a;color:var(--cyan);font-size:10px;font-weight:900;white-space:nowrap}.lesson-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:13px}.lesson-card{position:relative;overflow:hidden;padding:19px;border:1px solid #ffffff17;border-radius:17px;background:linear-gradient(145deg,#122c46,#0c1e33);min-height:150px}.lesson-card:before{content:'';position:absolute;width:100px;height:100px;right:-38px;top:-42px;border-radius:50%;background:var(--lesson-accent,#5ce1d2);opacity:.09}.lesson-card .lesson-label{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:1.4px;font-weight:900;color:var(--lesson-accent,var(--cyan));text-transform:uppercase}.lesson-card .lesson-label i{font-style:normal;font-size:17px}.lesson-card h3{font:800 16px 'Space Grotesk';margin:10px 0 7px}.lesson-card p{font-size:12px;line-height:1.75;color:#c0d0e1;margin:0;white-space:pre-line}.lesson-card.wide{grid-column:1/-1}.lesson-card.definition{--lesson-accent:#b59bff;background:linear-gradient(145deg,#27274a,#14243e)}.lesson-card.example{--lesson-accent:#ffc875}.lesson-card.exam{--lesson-accent:#8de3a7}.lesson-card.mistake{--lesson-accent:#ff91b5}.academy-definition{padding:12px 13px;margin-top:8px;border-left:3px solid #b59bff;border-radius:8px;background:#ffffff09}.academy-definition b{display:block;color:#d0c0ff;font-size:12px}.academy-definition span{display:block;font-size:11px;color:#d0dceb;margin-top:4px;line-height:1.6}.academy-source{font-size:10px;color:#8da7c1;margin-top:12px}.academy-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.academy-actions button{flex:1;min-width:145px}.academy-note{padding:15px;border:1px solid #5ce1d233;background:#5ce1d20b;border-radius:14px;color:#c3d6e8;font-size:11px;margin-top:13px}.academy-note b{color:var(--cyan)}@keyframes academyFloat{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-9px) rotate(4deg)}}@keyframes orbitPulse{50%{opacity:.45;transform:rotate(0deg) scale(1.08)}}
@media(max-width:700px){.academy-hero{grid-template-columns:1fr;padding:20px}.academy-visual{min-height:135px}.academy-visual .science-symbol{font-size:64px}.academy-path{grid-template-columns:repeat(2,1fr)}.academy-topic-grid,.lesson-cards{grid-template-columns:1fr}.lesson-card.wide{grid-column:auto}.lesson-welcome{align-items:flex-start;flex-direction:column}.academy-section-head{align-items:flex-start;flex-direction:column}.academy-actions button{min-width:100%}}


/* ===== SchoolPlug light "Chemistry" theme (matches Physical_Sciences_Mastery_THEME) ===== */
:root{--bg:#fafafa;--panel:#fff;--panel2:#f6f6f4;--ink:#0a0a0c;--muted:#6b6b76;--line:#e8e8ec;--cyan:#2b5cff;--blue:#2b5cff;--violet:#7a4dff;--gold:#e8590c;--pink:#e5484d;--green:#00a67e;--teal:#00c48c;--orange:#ff4d00;--shadow:0 18px 50px #0a0a0c14;--mono:'JetBrains Mono','SF Mono',ui-monospace,Menlo,monospace;--serif:'Instrument Serif',Georgia,'Times New Roman',serif}
html{background:#fafafa}
body{color:var(--ink);font-family:Inter,system-ui,sans-serif;background:
linear-gradient(#0a0a0c07 1px,transparent 1px) 0 0/44px 44px,linear-gradient(90deg,#0a0a0c07 1px,transparent 1px) 0 0/44px 44px,
radial-gradient(ellipse at 85% 0,#e9ecff 0,transparent 38%),radial-gradient(ellipse at 0 40%,#e6f7f0 0,transparent 32%),#fafafa;}
h1,h2,h3,.brand,.stat,.rank{font-family:'Space Grotesk',Inter,sans-serif}
.topbar,.apptop{background:#fffffff0;border-color:var(--line);backdrop-filter:blur(16px)}
.brand-mark{background:#0a0a0c;color:#fff;box-shadow:none;border-radius:12px}.brand-mark span{color:var(--teal)}
.brand small{color:#8a8a96;font-family:var(--mono);font-weight:500;letter-spacing:2px}
.toplinks{color:#55555f}.toplinks a:hover,.textlink:hover{color:var(--cyan)}
.btn,.action{border-radius:999px}.btn{font-weight:600}
.primary,.btn.primary,.action.primary{background:#0a0a0c;color:#fff;box-shadow:none;border:0}
.btn:hover{filter:none;transform:translateY(-2px);box-shadow:0 10px 24px #0a0a0c26}
.outline{background:#fff;color:var(--ink);border:1px solid var(--line)}.ghost{color:var(--ink)}
.action{background:#fff;border:1px solid var(--line);color:var(--ink);font-weight:600}.action:hover{border-color:#0a0a0c}
.eyebrow,.academy-kicker{font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:2.4px;color:#6b6b76}
.pulse{background:var(--cyan);box-shadow:0 0 0 5px #2b5cff1f}
.hero h1,.heading h2{font-weight:700;letter-spacing:-2.4px;color:var(--ink)}
.grad{background:linear-gradient(var(--teal),var(--teal)) no-repeat 0 96%/100% 3px;color:var(--ink);-webkit-text-fill-color:currentColor;background-clip:border-box;font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-1px;padding-bottom:3px}
.lead{color:#6b6b76}
.proof div{border-left:1px solid var(--line)}.proof b{color:var(--ink)}.proof small{color:#8a8a96;font-family:var(--mono);font-size:9px;letter-spacing:1.2px;text-transform:uppercase}
.heading p,.muted{color:var(--muted)}
.core{background:radial-gradient(circle at 32% 28%,#ff7a3d,#ff4d00 45%,#1a1a1f 46%,#1a1a1f 100%);color:#fff;box-shadow:0 0 90px #2b5cff30}.core small{color:#ffffffb0;font-family:var(--mono)}
.orb{border-color:#0a0a0c1c}.sat{background:var(--teal);box-shadow:0 0 14px #00c48c88}.s2{background:var(--orange);box-shadow:0 0 14px #ff4d0066}.s3{background:var(--blue);box-shadow:0 0 14px #2b5cff66}
@keyframes particleGlow{from{filter:brightness(.9)}to{filter:brightness(1.25)}}
.float{background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 10px 30px #0a0a0c12;backdrop-filter:none}.float small{color:#8a8a96;font-family:var(--mono);font-size:9px}.f3{color:var(--green);font-family:var(--mono);font-size:10px}
.grade,.feature,.panel,.sidegrade,.lesson-section,.lesson-card,.launch-card,.academy-topic,.academy-step,.qcard,.practice-pick,.verified-card,.archive-page,.archive-note,.archive-footnote,.guideline-def,.topic,.topic-card,.modal,.lesson-welcome,.academy-note{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 1px 2px #0a0a0c06}
.panel,.topic,.topic-card,.verified-card,.archive-page{box-shadow:0 1px 2px #0a0a0c06}
.grade,.feature,.topic-card,.topic,.lesson-section,.lesson-card,.qcard,.panel{border-radius:22px}
.grade:after{background:#2b5cff12}.grade:hover,.feature:hover,.launch-card:hover,.academy-topic:hover,.academy-topic.selected,.practice-pick:hover,.topic:hover,.topic-card:hover:not(:disabled){border-color:#0a0a0c;background:#fff;box-shadow:0 14px 34px #0a0a0c12}
.grade .num,.grade span{color:var(--cyan)}.grade h3,.feature h3{color:var(--ink)}.grade p,.feature p,.panel p,.topic small,.topic-card-meta,.launch-card small,.lesson-card p,.lesson-section p,.lesson-section ul,.academy-topic small,.practice-pick span,.academy-step small,.lesson-welcome p,.academy-section-head p,.topic-section-title p,.source-note,.academy-source{color:var(--muted)}
.lesson-section h3,.lesson-card h3,.launch-card b,.topic-card,.topic-card-title,.topic,.practice-pick,.academy-topic,.academy-topic b{color:var(--ink)}
.topic-card-title b{color:var(--cyan)}.topic-card-arrow{color:var(--ink)}.topic-card:before{background:var(--cyan)}.topic-unavailable:before{background:#c8c8d0}
.ico,.launch-icon,.academy-topic .topic-no,.academy-step b{background:#2b5cff12;color:var(--cyan)}
.stat{color:var(--ink)}.pill,.lesson-badge{background:#2b5cff12;color:var(--cyan);font-family:var(--mono);font-weight:500}
.guideline-def b{color:var(--cyan)}.guideline-def span{color:#44444e}.guideline-def{background:#fafaf8}
.lesson-callout{background:#00c48c12;border-left-color:var(--teal);color:#2a3a35}
.lesson-card.definition{background:#f3f4ff}.lesson-card.example{--lesson-accent:#e8590c;background:#fff7f0}.lesson-card.exam{--lesson-accent:#00a67e;background:#effaf6}.lesson-card.mistake{--lesson-accent:#e5484d;background:#fff3f1}
.academy-definition{background:#f6f6f4;border-left-color:var(--violet)}.academy-definition b{color:var(--violet)}.academy-definition span{color:#44444e}
.persuade,.guide,.academy-hero{background:radial-gradient(circle at 88% 0,#16257a 0,transparent 42%),#0a0a0c;border:1px solid #1f1f26;color:#fff;box-shadow:0 20px 50px #0a0a0c26}
.persuade h2,.persuade h3,.guide h2,.academy-hero h1{color:#fff}.guide p,.persuade p,.academy-hero p{color:#b4b4c0}
.guide .eyebrow,.persuade .eyebrow,.academy-hero .academy-kicker{color:var(--teal)}
.guide .btn.primary,.persuade .btn.primary,.academy-hero .btn.primary{background:#fff;color:#0a0a0c}
.guide .btn.outline,.persuade .btn.outline{background:transparent;color:#fff;border-color:#ffffff40}
.academy-visual{background:radial-gradient(circle at center,#1c2a78,#0a0a0c 72%);border-color:#ffffff1a}.academy-visual small{color:#9ea6cf}.academy-visual .orbit{border-color:#00c48c88}.academy-progress span{background:#ffffff22}.academy-progress span:first-child{background:var(--teal)}
.sidebar{background:#fff;border-color:var(--line)}.navbtn{color:#55555f}.navbtn:hover,.navbtn.active{background:#2b5cff12;color:var(--cyan)}.navlabel,.sidegrade small{color:#8a8a96;font-family:var(--mono)}.sidegrade button{color:var(--ink)}.sidegrade button span{color:var(--cyan)}
.apptop button,.apptop{color:var(--ink)}.crumb{color:#8a8a96;font-family:var(--mono)}.crumb b{color:var(--ink)}.xpchip{background:#ff4d0014;color:var(--gold);font-family:var(--mono)}
.field,.modal input,.modal select{background:#fafaf8;border:1px solid var(--line);color:var(--ink);border-radius:12px}
.qtop{color:#8a8a96;font-family:var(--mono)}.answer{background:#effaf6;border-left-color:var(--teal);color:#1d3b33}
.option,.assessment-option{background:#fff;border:1px solid var(--line);color:var(--ink);border-radius:14px}.option:hover,.assessment-option:hover{border-color:#0a0a0c}
.option.correct,.assessment-option.correct{border-color:var(--teal);background:#00c48c14}.option.wrong,.assessment-option.wrong{border-color:var(--orange);background:#ff4d0010}
.assessment-feedback{color:#55555f}.assessment-timer{background:#ff4d0012;color:var(--gold);font-family:var(--mono)}.assessment-progress{background:#e8e8ec}.assessment-progress i,.bar i,.academy-progress span:first-child{background:var(--teal)}
.bar{background:#e8e8ec}
.flash,.flip-face{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 20px 50px #0a0a0c12}
.flip-face small,.flash small{color:var(--cyan);font-family:var(--mono)}.flip-face p{color:#8a8a96}
.flip-back{background:#0a0a0c;color:#fff;border-color:var(--teal)}.flip-back small{color:var(--teal)}.flip-back h2{color:#d6d6de}
.formula{color:#fff}.frac{color:#fff}
.paper-tab{background:#fff;border:1px solid var(--line);color:var(--ink)}.paper-tab small{color:#8a8a96;font-family:var(--mono)}
.paper-tab.paper-active{background:#0a0a0c;color:#fff;border-color:#0a0a0c;box-shadow:0 12px 30px #0a0a0c26}.paper-tab.paper-active small{color:var(--teal)}
.verified-paper,.archive-image-link{background:#fff;border:1px solid var(--line)}.verified-meta,.verified-source,.archive-page-top span{color:#8a8a96}.verified-memo-label{color:var(--green);font-family:var(--mono)}.archive-page-top small{color:var(--cyan);font-family:var(--mono)}.archive-note,.archive-footnote{color:#55555f;background:#fafaf8}
.el{background:#fff;border:1px solid var(--line);color:var(--ink)}.el small{color:#8a8a96}.group-label,.period-label{color:#a0a0ab;font-family:var(--mono)}.fblock-label{color:var(--violet);font-family:var(--mono)}
.el:hover,.el.selected{background:#0a0a0c;color:#fff;border-color:#0a0a0c}.el:hover small,.el.selected small{color:#c0c0cc}
.atomview{background:radial-gradient(circle,#e9ecff 0,#fff 72%);border:1px solid var(--line)}
.calcdisplay{background:#0a0a0c;color:#fff}.calcgrid button{background:#fff;border:1px solid var(--line);color:var(--ink)}
.leaderrow{border-color:var(--line)}.rank{color:var(--gold)}
.toast{background:#0a0a0c;color:#fff}.modalbg{background:#0a0a0c80}.modal{background:#fff}
.step{background:#f6f6f4}
.footer{background:#0a0a0c;border-top:0;color:#8a8a96;font-family:var(--mono);font-size:11px;letter-spacing:.5px}
.footer a:hover{color:#fff}
button{color:inherit}
@media(max-width:850px){.sidebar{box-shadow:var(--shadow)}}

/* ===== Site animations ===== */
.reveal{opacity:0;transform:translateY(26px) scale(.985);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.grade-grid .reveal:nth-child(2),.feature-grid .reveal:nth-child(2){transition-delay:.08s}.grade-grid .reveal:nth-child(3),.feature-grid .reveal:nth-child(3){transition-delay:.16s}.feature-grid .reveal:nth-child(4){transition-delay:.24s}.feature-grid .reveal:nth-child(5){transition-delay:.32s}.feature-grid .reveal:nth-child(6){transition-delay:.4s}
.hero h1{animation:riseIn .8s cubic-bezier(.2,.7,.2,1) both}.hero .lead{animation:riseIn .8s .12s cubic-bezier(.2,.7,.2,1) both}.hero-actions{animation:riseIn .8s .22s cubic-bezier(.2,.7,.2,1) both}.proof{animation:riseIn .8s .32s cubic-bezier(.2,.7,.2,1) both}
.grad{background-size:0 3px;animation:underline 1s .6s cubic-bezier(.2,.7,.2,1) forwards}
.pulse{animation:pulseDot 2s ease-in-out infinite}
.float{animation:bob 5s ease-in-out infinite}.f2{animation-delay:-1.7s}.f3{animation-delay:-3.2s}
.core{animation:corePulse 4s ease-in-out infinite}
.btn,.action,.grade,.feature,.topic-card,.launch-card,.academy-topic,.practice-pick,.option,.assessment-option,.paper-tab,.navbtn,.el{transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,border-color .25s,background .25s,color .25s}
.btn:active,.action:active,.option:active,.assessment-option:active,.paper-tab:active,.topic-card:active{transform:scale(.97)}
.primary:hover,.btn.primary:hover{box-shadow:0 12px 28px #0a0a0c33}
.btn b,.grade span,.topic-card-arrow{transition:transform .25s}.btn:hover b,.grade:hover span{transform:translateX(5px)}.topic-card:hover .topic-card-arrow{transform:translate(5px,-50%)}
.ico,.launch-icon{transition:transform .3s}.feature:hover .ico,.launch-card:hover .launch-icon{transform:rotate(-8deg) scale(1.1)}
.topbar{animation:dropIn .6s cubic-bezier(.2,.7,.2,1) both}
.content>*,.academy-shell>*,.topic-lesson>*,.qcard,.lesson-card{animation:riseIn .55s cubic-bezier(.2,.7,.2,1) both}
.lesson-cards .lesson-card:nth-child(2){animation-delay:.07s}.lesson-cards .lesson-card:nth-child(3){animation-delay:.14s}.lesson-cards .lesson-card:nth-child(4){animation-delay:.21s}
.option.correct,.assessment-option.correct{animation:popIn .4s cubic-bezier(.2,.9,.3,1.3)}.option.wrong,.assessment-option.wrong{animation:shake .4s}
.bar i,.assessment-progress i{transition:width .8s cubic-bezier(.2,.7,.2,1)}
.el.selected{animation:popIn .35s}.modal{animation:popIn .35s cubic-bezier(.2,.9,.3,1.2)}.toast{animation:riseIn .35s both}
.persuade,.guide,.academy-hero{background-size:140% 140%;animation:glowShift 12s ease-in-out infinite alternate}
.academy-visual .science-symbol{animation:academyFloat 4s ease-in-out infinite}
@keyframes riseIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes dropIn{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}
@keyframes underline{to{background-size:100% 3px}}
@keyframes pulseDot{0%,100%{box-shadow:0 0 0 4px #2b5cff1f}50%{box-shadow:0 0 0 9px #2b5cff0a}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes corePulse{0%,100%{box-shadow:0 0 70px #2b5cff30}50%{box-shadow:0 0 110px #ff4d0040}}
@keyframes popIn{from{transform:scale(.92);opacity:.5}to{transform:none;opacity:1}}
@keyframes shake{20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
@keyframes glowShift{from{background-position:60% 0}to{background-position:100% 100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}.grad{background-size:100% 3px}}

/* ===== Performance / responsiveness ===== */
*{-webkit-tap-highlight-color:transparent}
html,body{touch-action:manipulation}
.topbar,.apptop,.float{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.persuade,.guide,.academy-hero{animation:none!important;background-size:auto!important}
.float,.core{animation:none!important}
.hero-art .orb{animation-duration:60s!important}
.hero-art .sat{animation:none!important}
.content>*,.academy-shell>*,.topic-lesson>*,.qcard,.lesson-card,.topbar{animation:none!important}
.reveal{transition-duration:.45s;will-change:auto}
.grade,.feature,.panel,.topic-card,.lesson-section,.lesson-card,.verified-card,.archive-page,.qcard,.launch-card{box-shadow:none!important}
.verified-paper img,.archive-image-link img{content-visibility:auto}
.verified-card,.archive-page,.lesson-section,.feature,.grade{content-visibility:auto;contain-intrinsic-size:auto 300px}
@media(max-width:700px){.hero-art .orb{animation:none!important}.reveal{transform:none!important;transition:opacity .3s}.btn:hover,.grade:hover,.feature:hover{transform:none!important}}

/* ===== Readability: dark text on light surfaces ===== */
:root{--muted:#3f3f4a}
.formula,.formula *,.frac,.frac *{color:#0a0a0c!important}
.frac>span:first-child{border-bottom-color:#0a0a0c}
.persuade .step,.guide .step{background:#ffffff14;color:#fff}.persuade .step *,.guide .step *{color:inherit}
[style*="7f9ab4"],[style*="#7f9ab4"]{color:#3f3f4a!important}
.group-label,.period-label{color:#55555f}
.lead,.heading p,.grade p,.feature p,.panel p,.topic small,.topic-card-meta,.launch-card small,.lesson-card p,.lesson-section p,.lesson-section ul,.lesson-section li,.academy-topic small,.practice-pick span,.academy-step small,.lesson-welcome p,.academy-section-head p,.topic-section-title p,.source-note,.academy-source,.verified-meta,.verified-source,.archive-page-top span,.archive-note,.archive-footnote,.assessment-feedback,.qtop,.crumb,.proof small,.brand small,.eyebrow,.navlabel,.sidegrade small,.flip-face p,.float small,.paper-tab small,.el small,.muted{color:#3f3f4a}
.lesson-section h3,.lesson-card h3,.panel h3,.pagehead h1,.qcard h3,.assessment-question,.topic-section-title h2,.academy-section-head h2,.lesson-welcome h2,li,td,th{color:#0a0a0c}
.persuade li,.persuade td,.guide li{color:inherit}
.footer,.footer *{color:#b4b4c0}
.dark-text,.main label,.main small{color:inherit}
.academy-hero .academy-kicker,.guide .eyebrow,.persuade .eyebrow{color:var(--teal)}
.academy-hero p,.guide p,.persuade p,.academy-visual small{color:#d0d0da}

.footer *,.footer .brand small{color:#b4b4c0!important}.flip-back p,.flip-back small{color:#b4b4c0!important}.flip-back small{color:var(--teal)!important}

.cm-chips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 18px}.cm-chip{border:1px solid var(--line);background:#fff;color:#0a0a0c;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600}.cm-chip.on{background:#0a0a0c;color:#fff;border-color:#0a0a0c}
.cm-list{display:grid;gap:12px}.cm-topic{margin:14px 0 2px;font:500 10px var(--mono);letter-spacing:2px;text-transform:uppercase;color:#3f3f4a}.cm-topic span:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--cyan);margin-right:8px}
.cm-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.cm-wrong,.cm-right{padding:14px 18px}.cm-wrong{background:#fff3f1}.cm-right{background:#effaf6}
.cm-wrong b{color:#c2321f;font:600 10px var(--mono);letter-spacing:1.4px;text-transform:uppercase}.cm-right b{color:#00805f;font:600 10px var(--mono);letter-spacing:1.4px;text-transform:uppercase}
.cm-card p{margin:6px 0 0;color:#0a0a0c;font-size:14px;line-height:1.6}.cm-tip{padding:11px 18px;font-size:12px;color:#3f3f4a;border-top:1px solid var(--line)}.cm-tip b{color:var(--cyan);font-family:var(--mono);letter-spacing:1px;margin-right:4px}

/* ===== Scroll slide-up animations ===== */
.sr{opacity:0;transform:translateY(46px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.sr.sr-in{opacity:1;transform:none}
.reveal{transform:translateY(46px)!important;transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)!important}
.reveal.in{transform:none!important}
@media(prefers-reduced-motion:reduce){.sr,.reveal{opacity:1!important;transform:none!important;transition:none!important}}

#spImageViewer{display:none;position:fixed;inset:0;z-index:99999;background:rgba(5,4,10,.96);align-items:center;justify-content:center;padding:22px}#spImageViewer.open{display:flex}#spImageViewer img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px}#spImageViewer .sp-viewer-close{position:absolute;top:14px;right:16px;width:44px;height:44px;border:1px solid #a98cf0;background:#211a30;color:#fff;border-radius:50%;font-size:30px;line-height:1;z-index:2}
