/* UAV Campus site styles (po_eva 2026-10-23, b25c88fa). House style = VP design system kb 39db3d13 DS1-DS6: Corlera clean,
   pure white light sections, dark sections with white accents, the shield icon as the eyebrow mark, blue glow cards, living
   dark backgrounds. Brand colours from the UAV Campus logo (teal -> blue -> indigo). */
:root{--ink:#0a0d14;--paper:#fff;--line:#e6e9f0;--muted:#5a6275;--blue:#1d6fe0;--teal:#19b9c9;--indigo:#5c6cc4;--night:#04060c;--night2:#0a0f1c;
  --glow:0 0 0 1px rgba(29,111,224,.10),0 18px 50px -18px rgba(29,111,224,.42),0 2px 8px rgba(10,13,20,.05);
  --glow-hi:0 0 0 1px rgba(29,111,224,.22),0 26px 70px -18px rgba(29,111,224,.6),0 2px 8px rgba(10,13,20,.06);--r:20px}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}  /* .dash etc. set display: the hidden attribute must still win */
html{scroll-behavior:smooth}
[id],.coach{scroll-margin-top:96px}  /* anchor jumps and scroll-into-view land below the fixed nav */
body{background:var(--paper);color:var(--ink);font:400 17px/1.65 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{font-family:'Plus Jakarta Sans',Inter,sans-serif;font-weight:700;letter-spacing:-.025em;line-height:1.06}
h1{font-size:clamp(40px,6.4vw,84px)}
.h2{font-size:clamp(32px,4.4vw,56px);margin-bottom:18px}
h3{font-size:20px;letter-spacing:-.01em;line-height:1.25}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.pad{padding:120px 0}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.lead{font-size:20px;line-height:1.55;color:var(--muted);max-width:60ch}
.dark .lead{color:rgba(255,255,255,.72)}
.muted{color:var(--muted)}
.grad{background:linear-gradient(92deg,#3fd0de,#3b8cff 55%,#8a96ff);-webkit-background-clip:text;background-clip:text;color:transparent}

/* DS1 eyebrow: the shield icon above every headline */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 12px/1.2 Inter;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:18px}
.eyebrow .mark{width:22px;height:20px;background:url(/assets/brand/icon.png) center/contain no-repeat;flex:none}
.dark .eyebrow{color:#9ed8ff}
.dark .eyebrow .mark{background-image:url(/assets/brand/icon-light.png);filter:drop-shadow(0 0 8px rgba(80,170,255,.8))}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 24px;border-radius:999px;font:600 15px Inter;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-glow{background:linear-gradient(135deg,#1d6fe0,#19a6c9);color:#fff;box-shadow:0 8px 30px -8px rgba(29,111,224,.7)}
.btn-glow:hover{box-shadow:0 12px 40px -6px rgba(29,111,224,.9)}
.btn-ink{background:var(--ink);color:#fff}
.btn-ghost{border:1px solid var(--line);background:transparent;color:var(--ink)}
.dark .btn-ghost{border-color:rgba(255,255,255,.28);color:#fff}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.center .ctas{justify-content:center}

/* nav */
nav{position:fixed;inset:0 0 auto;z-index:50;border-bottom:1px solid transparent;transition:background .3s,border-color .3s}
nav.scrolled{background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-color:var(--line)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:16px}
nav .logo img{height:40px;width:auto;display:block}
nav .logo-light{display:none!important}
nav.on-dark .logo-light{display:block!important}nav.on-dark .logo-ink{display:none!important}
nav.on-dark{color:#fff}
nav.on-dark.scrolled{background:rgba(4,6,12,.72);border-color:rgba(255,255,255,.08)}
nav ul{display:flex;gap:30px;list-style:none;font-size:15px}
nav ul a{opacity:.74}nav ul a:hover,nav ul a.here{opacity:1}nav ul a.here{font-weight:600}
.m-only{display:none}
/* UAV-NAV (cca7c9fb): signed in (html.in), the app menu replaces the marketing menu; the Account menu drops down */
.app-nav,.nav-acct{display:none}html.in .pub-nav,html.in .nav-cta{display:none}html.in .app-nav{display:flex}
html.in .nav-acct{display:flex;align-items:center;gap:10px;position:relative}
.nav-credits{padding:9px 15px;border-radius:999px;border:1px solid rgba(120,150,200,.45);font:600 14px Inter;white-space:nowrap}
.acct-btn{background:none;border:1px solid rgba(120,150,200,.45);border-radius:999px;padding:9px 15px;color:inherit;font:600 14px Inter;cursor:pointer;white-space:nowrap}
.nav-credits:hover,.acct-btn:hover,.acct-btn[aria-expanded=true]{border-color:#1d6fe0}
.acct-menu{position:absolute;right:0;top:calc(100% + 10px);min-width:230px;display:flex;flex-direction:column;padding:8px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px -20px rgba(4,10,30,.45)}
.acct-menu a,.acct-menu button{display:block;width:100%;text-align:left;padding:11px 14px;border-radius:10px;font:500 15px Inter;color:var(--ink);background:none;border:0;cursor:pointer}
.acct-menu a:hover,.acct-menu button:hover{background:#eef4ff}.acct-menu .nav-out{border-top:1px solid var(--line);border-radius:0 0 10px 10px;margin-top:4px}
.app-nav .nav-out{background:none;border:0;font:inherit;color:inherit;cursor:pointer;padding:0;opacity:.74}
@media(max-width:1280px){html.in .app-nav{gap:20px}html.in .nav-acct{gap:8px}}
@media(max-width:1120px){html.in .app-nav{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;gap:0;background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
  html.in .app-nav.open{display:flex}html.in .app-nav li a,html.in .app-nav li .nav-out{display:block;width:100%;text-align:left;padding:16px 24px;opacity:1;border-top:1px solid var(--line)}
  html.in .app-nav .m-only{display:block}html.in .menu-btn{display:block}html.in .nav-acct{display:none}}
.menu-btn{display:none;background:none;border:0;color:inherit;font:600 15px Inter;cursor:pointer;padding:10px}
.nav-cta{padding:11px 20px}
@media(max-width:860px){nav ul{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;gap:0;background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}
  nav ul.open{display:flex}nav ul li a{display:block;padding:16px 24px;opacity:1;border-top:1px solid var(--line)}.m-only{display:block}.menu-btn{display:block}.nav-cta{display:none}}

/* dark sections: alive (DS4). Two blue/teal glows drift slowly behind the content */
.dark{background:var(--night);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.dark p,.dark li{color:rgba(255,255,255,.74)}
.alive::before,.alive::after{content:'';position:absolute;z-index:-1;width:70vmax;height:70vmax;border-radius:50%;filter:blur(40px);opacity:.55;pointer-events:none}
.alive::before{background:radial-gradient(circle,rgba(29,111,224,.55),transparent 60%);left:-25vmax;top:-30vmax;animation:drift1 22s ease-in-out infinite alternate}
.alive::after{background:radial-gradient(circle,rgba(25,185,201,.38),transparent 60%);right:-30vmax;bottom:-35vmax;animation:drift2 26s ease-in-out infinite alternate}
@keyframes drift1{to{transform:translate(18vmax,12vmax) scale(1.15)}}
@keyframes drift2{to{transform:translate(-16vmax,-10vmax) scale(1.1)}}
.grid-bg{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 40%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 40%,#000 20%,transparent 75%)}
@media(prefers-reduced-motion:reduce){.alive::before,.alive::after,.flight path{animation:none!important}}

/* HERO-IMG (home) */
.hero{min-height:100svh;display:flex;align-items:flex-end;padding:140px 0 90px}
.hero .media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;z-index:-2;animation:float 16s ease-in-out infinite alternate}
@keyframes float{from{transform:translateY(0)}to{transform:translateY(-1.5%) scale(1.02)}}
.hero .shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,6,12,.62) 0,rgba(4,6,12,.5) 30%,rgba(4,6,12,.8) 62%,rgba(4,6,12,.97) 100%)}  /* narrow: the lead sits over the drone/sky (Prism #1) */
.hero h1{max-width:14ch}.hero h1 .grad{white-space:nowrap}.hero .btn-ghost{background:rgba(4,6,12,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.hero .wrap{width:100%}
/* desktop: the drone sits right of the copy (object-position slides the 1920x700 plate), a dark wash behind the text */
@media(min-width:900px){.hero .media{object-position:70% 45%!important}.hero .shade{background:linear-gradient(90deg,rgba(4,6,12,.92) 0,rgba(4,6,12,.7) 38%,rgba(4,6,12,.05) 70%),linear-gradient(180deg,transparent 60%,rgba(4,6,12,.95))}.hero .wrap>*{max-width:600px}}
.hero .lead{margin-top:22px}
.flight{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none}
.flight path{fill:none;stroke:url(#fp);stroke-width:1.6;stroke-dasharray:6 10;animation:dash 30s linear infinite;opacity:.8}
@keyframes dash{to{stroke-dashoffset:-800}}
.hero-facts{display:flex;gap:28px;flex-wrap:wrap;margin-top:44px;font-size:14px;color:rgba(255,255,255,.7)}
.hero-facts b{display:block;font:700 26px 'Plus Jakarta Sans';color:#fff}
@media(max-width:600px){.hero-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:32px;font-size:12.5px;line-height:1.35}.hero-facts b{font-size:22px}}

/* page hero (inner pages) */
.phero{padding:170px 0 110px}
.phero h1{font-size:clamp(38px,5.6vw,72px);max-width:16ch}
.phero .lead{margin-top:22px}
.phero.center h1{margin:0 auto}
.band-img{position:absolute;inset:0;z-index:-2}.band-img .media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32}
.band-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,6,12,.5),rgba(4,6,12,.92))}

/* glow cards (DS3) */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:54px}
.cards.three{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border-radius:var(--r);padding:30px 26px;box-shadow:var(--glow);transition:transform .3s,box-shadow .3s;position:relative}
.card:hover{transform:translateY(-4px);box-shadow:var(--glow-hi)}
.card .ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(29,111,224,.12),rgba(25,185,201,.14));margin-bottom:20px}
.card .ic svg{width:24px;height:24px;stroke:var(--blue);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card h3{margin-bottom:8px}.card p{color:var(--muted);font-size:15.5px}
.dark .card{background:rgba(255,255,255,.04);border:1px solid rgba(120,180,255,.18);box-shadow:0 0 40px -12px rgba(29,111,224,.5),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(6px)}
.dark .card p{color:rgba(255,255,255,.68)}
.dark .card .ic{background:rgba(29,111,224,.2)}.dark .card .ic svg{stroke:#8fd0ff}
@media(max-width:980px){.cards,.cards.three{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cards,.cards.three{grid-template-columns:1fr}}

/* STD-L / STD-R */
.two{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.two.flip>.frame{order:2}
.frame{position:relative;border-radius:24px;overflow:hidden;box-shadow:var(--glow-hi);aspect-ratio:4/3;background:#eef2f8}
.frame .media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.frame.contain{background:#fff}.frame.contain .media{object-fit:contain}
.ticks{list-style:none;margin-top:24px;display:grid;gap:12px}
.ticks li{padding-left:32px;position:relative}
.ticks li::before{content:'';position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--teal));box-shadow:0 0 12px rgba(29,111,224,.5)}
.ticks li::after{content:'';position:absolute;left:6px;top:9px;width:6px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
/* the home page's coach section (eee60f92, 10-25): no sample chat; the ticks + the free-account button (the demo video goes here) */
.coach-demo{max-width:820px;margin-left:auto;margin-right:auto}.coach-demo .ticks{margin:0 auto 28px;max-width:640px;color:#dbe7ff;font-size:17px}
.coach-demo .ctas{display:flex;justify-content:center;margin:0}.coach-demo .note{text-align:center}
.demo-video{position:relative;margin:0 auto 36px;border-radius:22px;overflow:hidden;background:#05080f;box-shadow:0 0 0 1px rgba(120,180,255,.25),0 30px 90px -20px rgba(29,111,224,.75)}
.demo-video video{display:block;width:100%;height:auto;aspect-ratio:16/10}
.demo-video video::cue{font:500 15px/1.4 Inter,sans-serif;background:rgba(5,8,15,.82);color:#fff}
.demo-sound{flex:none;padding:7px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(5,8,15,.7);color:#fff;font:600 13.5px Inter,sans-serif;cursor:pointer}
.demo-sound[aria-pressed=true]{background:var(--blue);border-color:var(--blue)}
.demo-video figcaption{display:flex;align-items:center;justify-content:center;gap:14px;padding:10px 16px;color:#8fa9cf;font-size:13.5px;text-align:left;background:#0a1020}
@media(max-width:600px){.demo-video{border-radius:14px}.demo-video video::cue{font-size:13px}.demo-sound{padding:6px 11px;font-size:12.5px}}
@media(max-width:900px){.two{grid-template-columns:1fr;gap:40px}.two.flip>.frame{order:0}.pad{padding:84px 0}}

/* PRF-STATS */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:54px}
.stat{padding:30px 24px;border-radius:var(--r);border:1px solid rgba(120,180,255,.18);background:rgba(255,255,255,.035);box-shadow:0 0 50px -16px rgba(29,111,224,.55)}
.stat b{display:block;font:700 clamp(40px,5vw,60px)/1 'Plus Jakarta Sans';letter-spacing:-.03em;margin-bottom:10px}
.stat span{font-size:15px;color:rgba(255,255,255,.7)}
@media(max-width:900px){.stats{grid-template-columns:1fr 1fr}}

/* QZ-TRY + quiz app */
.qz{max-width:860px;margin:0 auto}
.qcard{background:#fff;color:var(--ink);border-radius:24px;padding:40px;box-shadow:var(--glow-hi)}
.dark .qcard{box-shadow:0 0 0 1px rgba(120,180,255,.25),0 30px 90px -20px rgba(29,111,224,.75)}
.dark .qcard p,.dark .qcard li{color:var(--ink)}
.qhead{display:flex;justify-content:space-between;align-items:center;gap:16px;font:600 13px Inter;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.qbar{height:6px;border-radius:9px;background:#edf1f7;overflow:hidden;margin-bottom:28px}
.qbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--blue));border-radius:9px;transition:width .4s}
.qtext{font:600 clamp(20px,2.4vw,25px)/1.35 'Plus Jakarta Sans';letter-spacing:-.01em;margin-bottom:22px}
.qfig{display:block;margin:0 0 22px;border-radius:14px;overflow:hidden;border:1px solid var(--line);cursor:zoom-in;background:#f6f8fb}
.qfig img{display:block;width:100%;max-height:420px;object-fit:contain}
.qfig figcaption{font-size:13px;color:var(--muted);padding:8px 12px}
.opts{list-style:none;display:grid;gap:12px}
.opt{width:100%;text-align:left;display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font:500 16.5px/1.45 Inter;color:var(--ink);cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s}
.opt:hover:not(:disabled){border-color:var(--blue);box-shadow:0 0 0 4px rgba(29,111,224,.1)}
.opt .k{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#eef3fb;font:700 13px Inter;color:var(--blue)}
.opt:disabled{cursor:default}
.opt.right{border-color:#12a36b;background:#effbf5;box-shadow:0 0 0 4px rgba(18,163,107,.12)}.opt.right .k{background:#12a36b;color:#fff}
.opt.wrong{border-color:#e0484d;background:#fff3f3}.opt.wrong .k{background:#e0484d;color:#fff}
.fb{margin-top:20px;padding:18px 20px;border-radius:14px;background:#f5f8fd;border-left:4px solid var(--blue);font-size:15.5px;display:none}
.fb.show{display:block}
.fb b{display:block;margin-bottom:4px}
.fb.ok{border-color:#12a36b}.fb.no{border-color:#e0484d}
.fb .qfig{margin:14px 0 0}
.qnav{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}
.qnav .btn[hidden]{display:none}
.score{text-align:center;padding:10px 0}
.ring{width:170px;height:170px;margin:0 auto 22px;position:relative}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:12}.ring .bg{stroke:#edf1f7}.ring .fg{stroke:url(#rg);stroke-linecap:round;transition:stroke-dashoffset 1s}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font:700 44px 'Plus Jakarta Sans'}
.review{list-style:none;text-align:left;margin-top:28px;display:grid;gap:10px}
.review li{padding:14px 16px;border-radius:12px;background:#f6f8fb;font-size:15px}
.review li.r{border-left:4px solid #12a36b}.review li.w{border-left:4px solid #e0484d}
.review small{display:block;color:var(--muted);margin-top:4px}
.note{font-size:13.5px;color:var(--muted);margin-top:18px;text-align:center}
.dark .note{color:rgba(255,255,255,.55)}
@media(max-width:600px){.qcard{padding:24px 18px;border-radius:18px}.opt{padding:14px}
  .qhead{flex-wrap:wrap;gap:10px}.qhead label{flex:1 1 100%}  /* the flashcard score was squeezed into a 4-line column beside the topic menu */
  .tmeta a,.tmeta button,.tchips button,.replay{min-height:40px}.tb-back{display:inline-flex;align-items:center;min-height:40px;padding:0 14px}}  /* phone tap targets in the coach */
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(4,6,12,.92);display:grid;place-items:center;padding:20px;cursor:zoom-out}
.lightbox img{max-width:100%;max-height:100%;border-radius:10px;background:#fff}

/* SVC-ACC curriculum */
.acc{margin-top:48px;display:grid;gap:14px}
.acc details{background:#fff;border-radius:18px;box-shadow:var(--glow);overflow:hidden}
.acc summary{list-style:none;cursor:pointer;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:16px;font:600 18px 'Plus Jakarta Sans'}
.acc summary::-webkit-details-marker{display:none}
.acc summary span{font:500 14px Inter;color:var(--muted);white-space:nowrap;margin-left:auto}
.acc summary::after{content:'+';font:400 26px Inter;color:var(--blue);transition:transform .25s}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc ol{padding:0 26px 22px 50px;color:var(--muted);columns:2;column-gap:40px}
.acc li{padding:4px 0;break-inside:avoid;font-size:15.5px}
@media(max-width:700px){.acc ol{columns:1}.acc summary{padding:18px}.acc summary span{display:none}}

/* SVC-STEPS */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:54px;counter-reset:s}
.steps .card::before{counter-increment:s;content:'0' counter(s);display:block;font:700 15px Inter;letter-spacing:.1em;margin-bottom:18px}
.steps .card::before{background:linear-gradient(90deg,var(--teal),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
@media(max-width:900px){.steps{grid-template-columns:1fr}}

/* TRUST-FAQ */
.faq{max-width:860px;margin:44px auto 0;display:grid;gap:12px}
.faq details{border:1px solid var(--line);border-radius:16px;padding:0 24px;background:#fff}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font:600 17.5px 'Plus Jakarta Sans';display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--blue);font:400 24px Inter;line-height:1}
.faq details[open] summary::after{content:'\2212'}
.faq p{padding:0 0 20px;color:var(--muted)}

/* CTA-BAND */
.cta-band{padding:130px 0;text-align:center}
.cta-band .band-img .media{opacity:.55;object-position:center}
.cta-band .band-img::after{background:radial-gradient(ellipse at center,rgba(4,6,12,.55),rgba(4,6,12,.94) 70%)}
.cta-band h2{max-width:20ch;margin:0 auto 16px}

/* FORM-IN (enroll) */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:6px 0 26px}
.plan{position:relative;cursor:pointer}
.plan input{position:absolute;opacity:0}
.plan .pc{display:block;height:100%;padding:24px;border-radius:18px;border:1.5px solid var(--line);background:#fff;transition:border-color .2s,box-shadow .2s}
.plan input:checked+.pc{border-color:var(--blue);box-shadow:var(--glow-hi)}
.plan input:focus-visible+.pc{outline:3px solid rgba(29,111,224,.4)}
.plan b{display:block;font:700 19px 'Plus Jakarta Sans'}
.plan .price{display:block;font:700 30px 'Plus Jakarta Sans';margin:8px 0 6px}
.plan .price small{font:500 14px Inter;color:var(--muted)}
.plan p{font-size:15px;color:var(--muted)}
.formcard{background:#fff;border-radius:24px;padding:40px;box-shadow:var(--glow-hi);max-width:820px;margin:0 auto}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fields .full{grid-column:1/-1}
label.f{display:grid;gap:7px;font:600 14px Inter}
label.f input,label.f select,label.f textarea{font:400 16px Inter;padding:14px 16px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink);width:100%}
label.f input:focus,label.f select:focus,label.f textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(29,111,224,.12)}
.formmsg{margin-top:16px;font-size:15px;min-height:1.4em}
.formmsg.ok{color:#0e8a5a}
.fine-p{font-size:13px;color:var(--muted);margin-top:14px}
.dark .formcard{color:var(--ink)}.dark .formcard .fine-p,.dark .formcard p:not([class]),.dark .formcard p.muted{color:var(--muted)}
.dark .formcard .btn-ghost{border-color:var(--line);color:var(--ink)}  /* the coach page gate: its text + 'Unlock student access' were white on white (ccfa008d QA) */  /* a white card in a dark section: .dark's white text vanished (labels, fine print) */
.ex-off .btn{display:flex;width:max-content;margin-top:14px}
.pwlogin{margin-top:22px}.pwlogin summary{cursor:pointer;color:var(--blue);font-weight:600;font-size:14.5px}.pwlogin form{margin-top:14px}
.opt-l{font-weight:400;color:var(--muted)}
.trial-meter{display:flex;gap:6px;align-items:center;margin-top:8px}.trial-meter i{flex:1;height:6px;border-radius:3px;background:#e6edf7;overflow:hidden;max-width:220px}.trial-meter i b{display:block;height:100%;background:var(--blue)}
.linkform{margin-top:28px;padding:22px;border-radius:16px;background:#f2f6fc}
.linkh{font:700 18px Inter;color:var(--ink);margin:0}
@media(max-width:700px){.plans,.fields{grid-template-columns:1fr}.formcard{padding:24px 18px}}

/* footer */
footer{background:var(--night);color:rgba(255,255,255,.72);padding:72px 0 40px;font-size:15px}
footer .cols{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;margin-bottom:36px}
footer .logo img{height:40px;width:auto}
footer p{max-width:40ch;margin-top:12px}
footer ul{list-style:none;display:grid;gap:10px;align-content:start}  /* same rhythm in every column; a short column ends short */
footer a:hover{color:#fff}
footer .fine{font-size:13px;color:rgba(255,255,255,.45);max-width:none;margin-top:8px}

/* reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.hero .media{animation:none}}
@media(max-width:600px){.btn{white-space:normal;text-align:center;justify-content:center}}

/* CTA-CHAT: AI exam coach demo (chat card) */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.coach{max-width:820px;margin:0 auto;background:#fff;color:var(--ink);border-radius:26px;box-shadow:var(--glow-hi);overflow:hidden;display:flex;flex-direction:column;text-align:left}
.dark .coach{box-shadow:0 0 0 1px rgba(120,180,255,.25),0 30px 90px -20px rgba(29,111,224,.75)}
.dark .coach p{color:var(--ink)}
.chat-head{display:flex;gap:14px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#f7faff,#fff)}
.chat-head b{display:block;font:700 16px 'Plus Jakarta Sans'}
.chat-head small{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted)}
.chat-head .dot{width:8px;height:8px;border-radius:50%;background:#12a36b;box-shadow:0 0 0 3px rgba(18,163,107,.18)}
.avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#0d2a5c,#1d6fe0);box-shadow:0 0 18px rgba(29,111,224,.55);flex:none}
.avatar .mark{width:24px;height:22px;background:url(/assets/brand/icon-light.png) center/contain no-repeat}
.log{min-height:200px;max-height:460px;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth;background:#fbfcfe}
.coach.short .log{max-height:380px}
.msg{max-width:86%;padding:13px 16px;border-radius:18px;font-size:15.5px;line-height:1.5;animation:pop .25s ease}
.msg p+p,.msg p+blockquote,.msg blockquote+p{margin-top:8px}
.msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:6px;box-shadow:0 6px 24px -14px rgba(29,111,224,.45)}
.msg.me{align-self:flex-end;background:linear-gradient(135deg,#1d6fe0,#1aa0c8);color:#fff;border-bottom-right-radius:6px}
.dark .msg.me p{color:#fff}
.msg blockquote{border-left:3px solid var(--teal);padding-left:12px;color:var(--muted);font-style:italic}
.msg .ans{font-weight:600}
.msg .btn{margin-top:12px}
.msg .qfig{margin:10px 0 0;max-width:360px}
.msg.typing{display:flex;gap:5px;padding:16px}
.msg.typing i{width:7px;height:7px;border-radius:50%;background:#9db3d6;animation:blink 1s infinite}
.msg.typing i:nth-child(2){animation-delay:.15s}.msg.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{50%{opacity:.25}}
@keyframes pop{from{opacity:0;transform:translateY(6px)}}
.chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 4px;background:#fbfcfe}
.chips:not(:empty){padding:12px 22px 14px}
.chip{font:600 14.5px Inter;padding:10px 16px;border-radius:999px;border:1.5px solid rgba(29,111,224,.35);background:#fff;color:var(--blue);cursor:pointer;transition:background .2s,box-shadow .2s;text-align:left}
.chip:hover{background:#eef4ff;box-shadow:0 0 0 4px rgba(29,111,224,.1)}
.chip.ghost{border-color:var(--line);color:var(--muted)}
.chip.opt-chip{border-radius:14px;color:var(--ink);font-weight:500;width:100%}
.ask{display:flex;gap:10px;padding:14px 16px;border-top:1px solid var(--line)}
.ask input{flex:1;min-width:0;font:400 16px Inter;padding:13px 16px;border-radius:999px;border:1.5px solid var(--line);color:var(--ink)}
.ask input:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(29,111,224,.12)}
.ask .btn{padding:12px 20px}
.ask :disabled{opacity:.5;cursor:not-allowed}
.coach .left{font-size:12.5px;color:var(--muted);text-align:center;padding:0 0 12px}
@media(max-width:600px){.log{max-height:420px;padding:16px}.msg{max-width:94%}.chips:not(:empty){padding:10px 14px 12px}.chat-head{padding:14px 16px}}
@media(prefers-reduced-motion:reduce){.msg{animation:none}.log{scroll-behavior:auto}}

/* SVC-PRICE: the two memberships */
.tiers{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:54px auto 0}
.tier{position:relative;border-radius:24px;padding:36px 32px;background:rgba(255,255,255,.04);border:1px solid rgba(120,180,255,.2);box-shadow:0 0 50px -16px rgba(29,111,224,.5);display:flex;flex-direction:column}
.tier.hot{background:#fff;color:var(--ink);border-color:transparent;box-shadow:0 0 0 1px rgba(120,180,255,.35),0 30px 90px -20px rgba(29,111,224,.85)}
.dark .tier.hot p,.dark .tier.hot li{color:var(--muted)}
.tier h3{font-size:22px}
.tier .price{font:700 48px/1 'Plus Jakarta Sans';letter-spacing:-.03em;margin:16px 0 6px}
.tier .price small{font:500 16px Inter;color:inherit;opacity:.6}
.tier .for{font-size:15px;margin-bottom:6px}
.tier .ticks{margin:16px 0 30px;flex:1}
.tier .btn{align-self:flex-start}
.tier .tag{position:absolute;top:-13px;right:24px;font:700 11px Inter;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,var(--blue),var(--teal));padding:7px 12px;border-radius:999px;box-shadow:0 6px 18px -4px rgba(29,111,224,.7)}
@media(max-width:760px){.tiers{grid-template-columns:1fr}}
.ai-only{display:none}
form:has(input[value=ai]:checked) .ai-only{display:block}

/* member dashboard + practice exam */
.dash{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;max-width:900px}
.dash>*{min-width:0}
.dash>.coach{width:100%;margin-left:0;margin-right:0}
.exam{max-width:none}
.opt.picked{border-color:var(--blue);background:#f0f6ff;box-shadow:0 0 0 4px rgba(29,111,224,.12)}
.opt.picked .k{background:var(--blue);color:#fff}
.ex-nav{align-items:center;flex-wrap:wrap}
.ex-nav .ex-left{margin-right:auto;font-size:14px}
.ex-topics{list-style:none;display:grid;gap:12px;margin:26px 0}
.ex-topics li{display:grid;grid-template-columns:1fr auto;gap:6px 14px;font-size:15px}
.ex-topics em{grid-column:1/-1;height:8px;border-radius:9px;background:#edf1f7;overflow:hidden}
.ex-topics em i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--blue));border-radius:9px}
.ex-plan{padding:20px 22px;border-radius:16px;background:#f5f8fd;border-left:4px solid var(--blue)}
.ex-plan b{display:block;margin-bottom:6px}
.ex-misses{list-style:none;display:grid;gap:12px}
.ex-misses li{padding:16px 18px;border-radius:14px;background:#f6f8fb;border-left:4px solid #e0484d}
.ex-misses .mq{font-weight:600}
.ex-misses .mp{font-size:14px;color:var(--muted);margin:6px 0 10px}
.ex-misses .why{margin-top:10px;font-size:15.5px}

/* member area v2: bar, tabs, flashcards, voice */
/* UAV-NAV: the dashboard's tiles to the member pages; a member page's tool sits on the hero's edge like the dashboard bar */
.dash-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.dtile{display:flex;flex-direction:column;gap:8px;padding:24px 24px 22px;background:#fff;border-radius:22px;box-shadow:var(--glow);color:var(--ink);transition:transform .25s,box-shadow .25s}
.dtile:hover{transform:translateY(-2px);box-shadow:var(--glow-hi)}
.dtile .dt-eyebrow{font:600 11.5px Inter;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.dtile b{font:700 19px/1.3 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.01em}
.dtile .dt-sub{font-size:14.5px;color:var(--muted);flex:1}.dtile .dt-go{font:600 14.5px Inter;color:var(--blue);margin-top:6px}
.member-page .mp-body{margin-top:-90px;position:relative}
.plan-card{scroll-margin-top:100px}
/* pricing 10-25: the AI on top of a free grade, and the weak spots inside the flashcards */
.chip.explain,.chip.ex-ai{margin-top:12px}.ai-say{margin-top:14px;padding:14px 16px;border-radius:14px;background:#eef4ff;border:1px solid rgba(29,111,224,.18)}
.stat[hidden]{display:none}
.rv-wrap{margin-top:44px}.rvs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rvs-wall{grid-template-columns:repeat(3,minmax(0,1fr))}
.rv{margin:0;padding:24px 24px 20px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--glow);display:flex;flex-direction:column;gap:12px}
.rv-stars{color:#f5a623;font-size:18px;letter-spacing:2px;line-height:1}.rv blockquote{margin:0;flex:1}.rv blockquote p{margin:0;font-size:16px;line-height:1.6;color:var(--ink)}
.rv figcaption{font-size:14px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.rv figcaption b{color:var(--ink)}
.rv figcaption a{margin-left:auto;color:var(--blue);font-weight:600;font-size:13px}
.crs-facts{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.crs-facts li{padding:16px 18px;border-radius:14px;background:#f3f7ff;border:1px solid rgba(29,111,224,.14);font-size:14px;color:var(--muted)}
.crs-facts b{display:block;font:700 26px 'Plus Jakarta Sans';color:var(--ink);margin-bottom:2px}.crs-acc{margin-top:28px}.crs-src{margin:14px 0 0;font-size:13px;color:var(--muted)}
.udemy-cta{margin-top:40px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 32px;border-radius:22px;background:linear-gradient(135deg,#0b1c3d,#123a74);color:#fff}
.udemy-cta h3{margin:0 0 6px;font-size:22px;color:#fff}.udemy-cta p{margin:0;color:rgba(255,255,255,.8);max-width:60ch}.udemy-cta .btn{flex:none}
@media (max-width:900px){.rvs,.rvs-wall{grid-template-columns:1fr}.crs-facts{grid-template-columns:1fr 1fr}.udemy-cta{flex-direction:column;align-items:flex-start;padding:24px}}
.tz{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.tz .chip{margin:0}.tz-card{margin-top:14px;padding:16px 18px;border-radius:14px;background:#eef4ff;border:1px solid rgba(29,111,224,.18)}
.tz-card>b{display:block;font:700 17px Inter;margin-bottom:4px}.tz-card>p{margin:0 0 10px}.tz-card form{display:flex;flex-wrap:wrap;gap:8px}.tz-card input{flex:1 1 200px;min-height:44px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);font:inherit;background:#fff}
.tz-card input:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(29,111,224,.12)}.formcard{scroll-margin-top:96px}
.tz-card .fine-p{margin:10px 0 0}.tz-card .fine-p a{color:var(--blue);font-weight:600}
.ai-say b{display:block;font:600 12px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:6px}.ai-say p{margin:0}
.fc-weak{background:#fff;border-radius:22px;box-shadow:var(--glow);padding:18px 22px;margin-bottom:18px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.fw-head{display:flex;flex-direction:column;flex:1 1 220px}.fw-head b{font:700 17px 'Plus Jakarta Sans',Inter,sans-serif}.fw-sub{font-size:13.5px;color:var(--muted)}
.fw-chips{display:flex;flex-wrap:wrap;gap:8px;flex:2 1 320px}.fw-chips .chip.weak{border-color:#e8a800;background:#fff8e1}
.member-page .fc-weak+.qcard{margin-top:0}
.acct-menu .voice-toggle{border-top:1px solid var(--line);border-radius:0;margin-top:4px}
html.in .app-nav li .voice-toggle{display:block;width:100%;text-align:left;padding:16px 24px;border:0;border-top:1px solid var(--line);background:none;font:inherit;color:inherit;cursor:pointer}
@media(max-width:860px){.dash-tiles{grid-template-columns:minmax(0,1fr);gap:14px}.dtile{padding:20px}}
.dash-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border-radius:20px;padding:14px 16px 14px 14px;box-shadow:var(--glow)}
.dash-id{display:flex;align-items:center;gap:12px;min-width:0}
.dash-av{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--teal),var(--blue));color:#fff;font:700 15px 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:.02em}
.dash-av:empty{visibility:hidden}
.dash-bar .who{display:flex;flex-direction:column;min-width:0;line-height:1.3}
.dash-bar .who b{font:700 16.5px 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-bar .who span{font-size:13.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bar-actions{display:flex;gap:8px;flex:none}
.tabs{display:flex;gap:4px;flex-wrap:wrap;width:fit-content;max-width:100%;padding:5px;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 1px 2px rgba(10,13,20,.04)}
.tabs [role=tab]{font:600 15px Inter;padding:10px 20px;border-radius:999px;border:0;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s,background .2s}
.tabs [role=tab]:hover{color:var(--ink);background:#f3f6fb}
.tabs [role=tab]:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.tabs [role=tab][aria-selected=true]{border-color:transparent;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;box-shadow:0 8px 24px -10px rgba(29,111,224,.8)}
.fc-topic{font:500 14px Inter;padding:6px 10px;border-radius:10px;border:1.5px solid var(--line);margin-left:8px;text-transform:none;letter-spacing:0}
.fc-fb .src,.msg .src{font-size:14px;margin-top:10px}
.fc-fb a,.msg .src a{color:var(--blue);text-decoration:underline}
.replay{margin-top:10px;font:600 13px Inter;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--blue);cursor:pointer}
.formmsg.err{color:#c0353a}
.member-gate .ctas{justify-content:center}
.tier-fine{font-size:14px;opacity:.72;margin-top:14px}
.note.center a{color:var(--blue);font-weight:600}
.dark .note.center a{color:#8fc7ff}
.tier .ticks{align-content:start}
.tier .price small,.plan .price small{letter-spacing:0}

/* FAA LIBRARY (dashboard tab) + READER (/reader/) */
.docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:20px}
.doc{background:#fff;border-radius:var(--r);padding:26px 24px;box-shadow:var(--glow);display:flex;flex-direction:column;gap:6px}
.doc .doc-code{font:600 12px/1.2 Inter;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.doc h3{font-size:20px}
.doc .doc-meta{font-size:14px;color:var(--muted)}
.doc p:not(.doc-code):not(.doc-meta){color:var(--muted);font-size:15.5px;flex:1}
.doc-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.doc-acts .btn{padding:11px 18px;font-size:14px}
.reader{min-height:100svh;padding:74px 0 80px;background:var(--night2)}
.dark.reader{overflow:visible}  /* .dark clips with overflow:hidden, which turns off position:sticky for the bar */
.rd-bar{position:sticky;top:74px;z-index:20;background:rgba(10,15,28,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(120,180,255,.16)}
.rd-row{display:flex;align-items:center;gap:18px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.rd-back{background:transparent;color:#cfe6ff;border-color:rgba(120,180,255,.35)}
.rd-back:hover{background:rgba(29,111,224,.18)}
.rd-title{flex:1;min-width:200px;color:#fff}
.rd-code{font:600 11.5px/1.3 Inter;letter-spacing:.14em;text-transform:uppercase;color:#9ed8ff}
.rd-h1{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.015em;margin-top:2px}
.rd-tools{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.75);font-size:14px}
.rd-tools input{width:64px;padding:8px 8px;border-radius:10px;border:1px solid rgba(120,180,255,.35);background:rgba(255,255,255,.06);color:#fff;font:600 14px Inter;text-align:center}
.rd-tools .chip{background:transparent;color:#fff;border-color:rgba(120,180,255,.35);min-width:40px;padding:8px 12px}
.rd-tools .btn{padding:10px 18px;font-size:14px}
.rd-status{color:rgba(255,255,255,.75);text-align:center;margin:40px auto 0;max-width:60ch}
.rd-status:empty{display:none}
.rd-gate{margin-top:60px}
.rd-pages{--z:1;display:flex;flex-direction:column;align-items:center;gap:18px;padding:28px 16px 0}
.rd-pg{width:min(100%,calc(900px * var(--z)));background:#fff;border-radius:6px;box-shadow:0 18px 50px -20px rgba(0,0,0,.8),0 0 0 1px rgba(120,180,255,.12);overflow:hidden;scroll-margin-top:170px}
.rd-pg canvas{display:block;width:100%;height:100%}
.rd-text{color:var(--ink);max-width:860px;margin-top:32px;background:#fff;border-radius:24px;padding:44px 48px;box-shadow:var(--glow-hi)}
.rd-src{color:var(--muted);font-size:15px}.rd-src a,.rd-toc a{color:var(--blue);font-weight:600}
.rd-toc{display:flex;flex-wrap:wrap;gap:6px 14px;margin:18px 0 8px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}
.rd-sec{padding-top:26px;scroll-margin-top:170px}
.rd-sec h2{font-size:21px;letter-spacing:-.01em;margin-bottom:10px}
.rd-sec p{margin:0 0 10px;font-size:16.5px;scroll-margin-top:170px}.rd-sec p.hl{background:#fff1b8;box-shadow:-10px 0 0 #fff1b8,10px 0 0 #fff1b8}.rd-sec p.l2{padding-left:22px}.rd-sec p.l3{padding-left:44px}
@media (max-width:700px){.rd-row{gap:10px}.rd-tools{width:100%}.rd-tools .btn{margin-left:auto}.rd-text{padding:28px 20px;border-radius:18px}.rd-pages{padding:16px 8px 0;gap:10px}}
.dark .rd-text p{color:var(--ink)}.dark .rd-text p.rd-src{color:var(--muted)}
.dark .rd-gate p.muted{color:var(--muted)}

/* BILLING plan card (member dashboard) */
/* the credits card (eee60f92 A2): balance + answers left, the free-credits meter, purchased credits, a buy box; states low / out */
.plan-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:22px 36px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px 28px;box-shadow:var(--glow)}
.plan-card .pc-text{display:flex;flex-direction:column;min-width:0}
.plan-card .pc-eyebrow{font:600 12px Inter;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.plan-card .pc-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:6px 0 16px;font:700 clamp(26px,2.6vw,32px)/1.1 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.02em;color:var(--ink)}
.plan-card .pc-left{font:600 13px/1 Inter;letter-spacing:0;padding:7px 12px;border-radius:999px;background:#e9f2ff;color:#1558b3;white-space:nowrap}
.plan-card .pc-sub{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:14px;line-height:1.5;max-width:460px}
.plan-card .pc-row{display:flex;justify-content:space-between;gap:12px;font:600 13.5px Inter;color:var(--ink)}
.plan-card .pc-row span:last-child{color:var(--muted);font-weight:500}
.plan-card .trial-meter{margin:0}.plan-card .trial-meter i{max-width:none;height:8px;border-radius:4px;background:#edf1f7}
.plan-card .trial-meter i b{border-radius:4px;background:linear-gradient(90deg,var(--teal),var(--blue));transition:width .6s}
.plan-card .pc-paid{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:500}
.plan-card .pc-paid::before{content:'';flex:none;width:8px;height:8px;border-radius:50%;background:var(--indigo)}
.plan-card .pc-alert{margin-top:4px;font-weight:600;color:#a3262b}
.plan-card .pc-acts{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#f4f8ff,#eefaff);border:1px solid rgba(29,111,224,.14)}
.plan-card .pc-buy-h{font:700 17px 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink)}
.plan-card .pc-buy-s{margin-top:-8px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.plan-card .pc-buy{display:flex;gap:8px}
.plan-card .btn{padding:11px 18px;font-size:14.5px;flex:none}
.plan-card .pc-fine{grid-column:1/-1;margin:0;padding-top:16px;border-top:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--muted)}
.plan-card .pc-qty{flex:1;min-width:0;font:600 14px Inter;padding:10px 12px;border-radius:999px;border:1.5px solid rgba(29,111,224,.3);background:#fff;color:var(--ink)}
.plan-card.low .pc-left{background:#fff3dc;color:#7a4b00}
.plan-card.out{border-color:rgba(224,72,77,.28)}
.plan-card.out .pc-left{background:#fdeaea;color:#a3262b}
.plan-card.out .pc-acts{border-color:rgba(29,111,224,.4);box-shadow:0 14px 36px -18px rgba(29,111,224,.7)}
@media(max-width:760px){.plan-card{grid-template-columns:minmax(0,1fr);gap:18px;padding:20px 18px;border-radius:20px}.plan-card .pc-title{margin-bottom:14px}
  .plan-card .pc-acts{padding:16px}.dash-bar{padding:12px}.dash-av{width:40px;height:40px;font-size:14px}
  .tabs{width:100%}.tabs [role=tab]{flex:1 1 0;padding:10px 4px;font-size:13.5px;white-space:nowrap}
  .plan-card .pc-buy{flex-wrap:wrap}.plan-card .pc-qty{flex-basis:100%}.plan-card .pc-buy .btn{flex:1 1 100%;justify-content:center}
  .dash .train-card{grid-template-columns:minmax(0,1fr);gap:14px;padding:22px 20px}.dash .train-card .tc-aura{width:64px;height:64px;margin:-4px 0 -6px -6px}}
.code-opt{margin-top:18px}.code-opt summary{cursor:pointer;color:var(--blue);font-weight:600;font-size:15px}
/* YOUR WEAK SPOTS (the mastery loop, eee60f92): the dashboard card + the same rows in the terminal; praise lines */
.weak-card{margin-top:14px;background:#fff;border:1px solid rgba(29,111,224,.16);border-radius:18px;padding:16px 18px}
.wk-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.wk-text{display:flex;flex-direction:column;gap:2px;min-width:220px;flex:1}
.wk-text b{font:700 17px 'Plus Jakarta Sans',Inter,sans-serif}
.wk-sub{color:var(--muted);font-size:14.5px}
.weak-card .btn{padding:10px 18px;font-size:14px}
.wk-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.wk-list:empty{display:none}
.wk-row{display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(80px,1fr) minmax(110px,auto) minmax(120px,auto);gap:12px;align-items:center;font-size:14.5px}
.wk-row>i{height:6px;border-radius:3px;background:#e6edf7;overflow:hidden}.wk-row>i b{display:block;height:100%;background:var(--blue)}
.wk-row.weak>i b{background:#f0a23a}
.wk-t{font-weight:600}.wk-row.weak .wk-t::after{content:' \00b7  weak spot';color:#c07a14;font-weight:600;font-size:12.5px}
.wk-n{color:var(--muted);font-variant-numeric:tabular-nums}.wk-m{color:var(--muted);font-size:13.5px;text-align:right}
@media(max-width:700px){.wk-row{grid-template-columns:1fr auto;gap:4px 12px}.wk-row>i{grid-column:1/-1;order:3}.wk-m{grid-column:1/-1;text-align:left;order:4}.wk-m:empty{display:none}}
.tweak{margin:-4px 0 18px;padding:12px 14px;border:1px solid rgba(120,180,255,.22);border-radius:12px;background:rgba(29,111,224,.07);font:400 13.5px/1.5 Inter}
.tweak .wk-h{margin:0 0 8px;color:#bfe3ff;font-weight:600}
.tweak .wk-list{margin:0}.tweak .wk-row{font-size:13.5px;color:#dbe7ff}
.tweak .wk-row>i{background:rgba(255,255,255,.1)}.tweak .wk-row>i b{background:#67d4ff}.tweak .wk-row.weak>i b{background:#ffb454}
.tweak .wk-n,.tweak .wk-m{color:#8fa9cf}.tweak .wk-row.weak .wk-t::after{color:#ffb454}
.tline.praise{color:#7ff0b5!important;font-weight:600}
.fc-fb .praise{color:#1a8f5a;font-weight:700}
.plan-what{margin-top:22px;padding:18px 20px;border-radius:16px;background:#f4f8ff;border:1px solid rgba(29,111,224,.16)}
.plan-what p{margin:4px 0 0;color:var(--muted);font-size:15px}

/* AI TRAINING (Chris 10-24, 70d6d04a): /coach/, the full-page terminal coach. Terminal on the left with the aura (Ortaic
   AuraRingsOrb) that glows while the voice speaks; the FAA page behind the answer on the right (inline in the log on phones). */
.trainer{min-height:100svh;padding:94px 0 28px;background:radial-gradient(1100px 620px at 18% -12%,rgba(29,111,224,.30),transparent 62%),radial-gradient(900px 520px at 100% 0,rgba(25,185,201,.16),transparent 60%),var(--night)}
.trainer .wrap{max-width:1480px}
.tr-gate{padding-top:40px}
.tr-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,1fr);gap:22px;height:calc(100svh - 122px);min-height:640px}
.term,.srcpane{min-height:0;border-radius:22px;border:1px solid rgba(120,180,255,.18);overflow:hidden;display:flex;flex-direction:column}
.term{position:relative;background:linear-gradient(180deg,rgba(10,16,32,.94),rgba(6,9,18,.96));box-shadow:0 30px 90px -30px rgba(29,111,224,.55),inset 0 1px 0 rgba(255,255,255,.05);transition:box-shadow .5s,border-color .5s}
.term::after{content:'';position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,transparent,#67d4ff,#3b8cff,#8a96ff,transparent);opacity:0;transition:opacity .5s;pointer-events:none}
.term.speaking{border-color:rgba(103,212,255,.5);box-shadow:0 0 0 1px rgba(103,212,255,.35),0 0 70px -8px rgba(103,212,255,.5),0 30px 90px -30px rgba(29,111,224,.85)}
.term.speaking::after{opacity:1}
.term-bar{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid rgba(120,180,255,.13);font:500 13px Inter;color:#9fb6d8;flex:none}
.tb-back{color:#cfe6ff;padding:6px 12px;border-radius:999px;border:1px solid rgba(120,180,255,.3);font-weight:600;white-space:nowrap}
.tb-back:hover{background:rgba(29,111,224,.18)}
.tb-title{flex:1;display:flex;align-items:center;gap:9px;font:600 13.5px/1.4 'JetBrains Mono',ui-monospace,monospace;letter-spacing:0;color:#e8f1ff;min-width:0;white-space:nowrap;overflow:hidden}
.tb-title .mark{width:18px;height:16px;background:url(/assets/brand/icon-light.png) center/contain no-repeat;flex:none;filter:drop-shadow(0 0 6px rgba(80,170,255,.8))}
.tb-dim{color:#6f86ab;font-weight:500}
.tb-acts{display:flex;align-items:center;gap:10px}
.tleft{font-size:12.5px;color:#8fa9cf;white-space:nowrap}
.tmeter{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:#bfe3ff;white-space:nowrap;padding:4px 2px}
.tmeter i{width:72px;height:6px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden}.tmeter i b{display:block;height:100%;background:#67d4ff;transition:width .6s}
.tmeter.low{color:#ffc46b}.tmeter.low i b{background:#ffb454}
.tmeter.out{color:#ffc46b;text-decoration:underline;text-underline-offset:3px}.tmeter.out i{display:none}
.tmeter[hidden],.tleft[hidden]{display:none}
.term-bar .chip{background:rgba(29,111,224,.16);color:#cfe6ff;border:1px solid rgba(120,180,255,.3)}
.aura{position:relative;flex:none;height:190px;display:grid;place-items:center;border-bottom:1px solid rgba(120,180,255,.09);background:radial-gradient(closest-side,rgba(103,212,255,.09),transparent 70%)}
.aura canvas{width:220px;height:220px;filter:drop-shadow(0 0 18px rgba(103,212,255,.35))}
.term.speaking .aura canvas{filter:drop-shadow(0 0 26px rgba(103,212,255,.75))}
.aura{overflow:hidden}
.aura .state{position:absolute;left:20px;bottom:14px;display:flex;align-items:center;gap:8px;font:600 11px Inter;letter-spacing:.2em;text-transform:uppercase;color:#7fd3ff;opacity:.85}
.aura .state::before{content:'';width:7px;height:7px;border-radius:50%;background:#3fd18f;box-shadow:0 0 0 3px rgba(63,209,143,.18)}
.term.speaking .aura .state::before{background:#67d4ff;box-shadow:0 0 10px #67d4ff}
.tlog{flex:1;min-height:0;overflow-y:auto;padding:20px 24px 8px;font:400 15px/1.7 'JetBrains Mono',ui-monospace,monospace;color:#e9f1ff;scrollbar-color:rgba(120,180,255,.3) transparent}
.tline{margin:0 0 16px;white-space:pre-wrap;overflow-wrap:anywhere;color:#e9f1ff!important}
.tline .who{color:#67d4ff;font-weight:700;margin-right:12px}
.tline.me{color:#b9c6e4!important}
.tline.me .who{color:#9aa8ff}
.tline.sys{color:#8fa9cf!important;font-size:13.5px}
.tline .caret{display:inline-block;width:.55em;height:1.05em;margin-left:2px;vertical-align:-.15em;background:#67d4ff;animation:blink 1s steps(1) infinite}
.topts{list-style:none;margin:-6px 0 16px;display:grid;gap:6px}
.topts button{width:100%;text-align:left;font:400 14.5px/1.5 'JetBrains Mono',ui-monospace,monospace;color:#dbe7ff;background:rgba(29,111,224,.10);border:1px solid rgba(120,180,255,.24);border-radius:10px;padding:9px 12px;cursor:pointer}
.topts button:hover:not(:disabled){background:rgba(29,111,224,.22);border-color:rgba(120,180,255,.5)}
.topts button b{color:#67d4ff;margin-right:10px}
.topts button:disabled{opacity:.55;cursor:default}
.topts button.right{border-color:#2fd38a;background:rgba(47,211,138,.12);opacity:1}
.topts button.wrong{border-color:#ff7a7a;background:rgba(255,122,122,.10);opacity:1}
.tmeta{display:flex;gap:8px;flex-wrap:wrap;margin:-8px 0 18px;font:500 12.5px Inter}
.tmeta a,.tmeta button{display:inline-flex;align-items:center;gap:6px;color:#bfe3ff;background:rgba(103,212,255,.08);border:1px solid rgba(103,212,255,.26);border-radius:999px;padding:5px 11px;cursor:pointer;font:inherit}
.tmeta a:hover,.tmeta button:hover{background:rgba(103,212,255,.18)}
.tcard{display:none;margin:-6px 0 18px;border-radius:14px;overflow:hidden;border:1px solid rgba(120,180,255,.22);background:#0c1222}
.tcard .tc-h{padding:10px 12px;font:600 11px Inter;letter-spacing:.12em;text-transform:uppercase;color:#9ed8ff}
.tcard .tc-b{background:#1a2133;padding:10px}
.tcard canvas,.tcard img{display:block;width:100%;height:auto;border-radius:6px;background:#fff}
.tchips{display:flex;gap:8px;flex-wrap:wrap;padding:2px 24px 12px;flex:none;min-height:46px}  /* desktop: the chips wrap, none is cut (Prism #4) */
.tchips.more{mask-image:linear-gradient(90deg,#000 calc(100% - 96px),transparent)}  /* phones: more chips to the right -> the edge fades (site.js) */
.tchips::-webkit-scrollbar{display:none}
.tchips button{flex:none;white-space:nowrap;font:500 13px Inter;color:#cfe6ff;background:rgba(29,111,224,.14);border:1px solid rgba(120,180,255,.28);border-radius:999px;padding:7px 13px;cursor:pointer}
.tchips button:hover{background:rgba(29,111,224,.28)}
.tform{display:flex;align-items:center;gap:12px;padding:12px 14px 12px 20px;border-top:1px solid rgba(120,180,255,.13);background:rgba(3,5,10,.55);flex:none}
.tform .ps{font:700 20px 'JetBrains Mono',monospace;color:#67d4ff;line-height:1}
.tform input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:#fff;font:400 15.5px 'JetBrains Mono',ui-monospace,monospace;caret-color:#67d4ff;padding:8px 0}
.tform input::placeholder{color:#5f7398}
.tform .btn{padding:11px 20px}
.srcpane{background:#0b1120;box-shadow:0 30px 90px -30px rgba(0,0,0,.7)}
.src-head{padding:16px 20px;border-bottom:1px solid rgba(120,180,255,.13);flex:none}
.src-code{font:600 11.5px/1.3 Inter;letter-spacing:.14em;text-transform:uppercase;color:#9ed8ff!important}
.src-title{font:700 18px/1.3 'Plus Jakarta Sans',Inter,sans-serif;color:#fff;margin-top:4px;letter-spacing:-.01em}
.src-body{flex:1;min-height:0;overflow:auto;background:radial-gradient(600px 400px at 50% 0,rgba(29,111,224,.12),transparent),#141a2b;padding:18px;display:flex;flex-direction:column;align-items:center}
.src-body canvas,.src-body img.pg{display:block;width:100%;max-width:820px;height:auto;border-radius:6px;background:#fff;box-shadow:0 18px 50px -14px rgba(0,0,0,.8);cursor:zoom-in;animation:pop .35s ease}
.src-empty{margin:auto;max-width:300px;text-align:center;color:#8fa9cf}
.src-empty .mark{display:block;width:54px;height:48px;margin:0 auto 16px;background:url(/assets/brand/icon-light.png) center/contain no-repeat;opacity:.5;filter:drop-shadow(0 0 14px rgba(80,170,255,.7))}
.src-empty p{color:#8fa9cf!important;font-size:15px}
.src-wait{margin:auto;color:#8fa9cf!important;font:500 14px Inter}
.srcpane.stale .src-code::before{content:"Earlier answer \00b7  "}
.srcpane.stale .src-body>*{opacity:.45;transition:opacity .4s}
.src-acts{display:flex;gap:10px;padding:12px 16px;border-top:1px solid rgba(120,180,255,.13);flex:none}
.src-acts .btn{padding:11px 18px;font-size:14px}
/* UAV-PANEL P1: a Part 107 section in the panel, the cited paragraph highlighted */
.src-reg{width:100%;max-width:820px;background:#fff;border-radius:10px;padding:22px 26px;font-family:Inter,sans-serif;text-align:left;box-shadow:0 18px 50px -14px rgba(0,0,0,.8);animation:pop .35s ease}
.src-reg h3{font:700 17px/1.35 'Plus Jakarta Sans',Inter,sans-serif;color:#0d1526;margin:0 0 12px;letter-spacing:-.01em}
.src-reg p{margin:0 0 6px;padding:3px 8px;border-radius:6px;font-size:15px;line-height:1.55;color:#1d2840}
.src-reg p.l2{padding-left:30px}.src-reg p.l3{padding-left:52px}
.src-reg p.hl{background:#fff1b8;box-shadow:inset 3px 0 0 #e8a800;color:#0d1526}
.src-reg p.reg-asof{margin-top:14px;font-size:12.5px;color:#5b6b86}
.src-code .cite,.tc-h .cite{text-transform:none}.srcpane .src-reg h3{display:none}  /* the pane's header already names the section */
.tcard .src-reg{max-height:340px;overflow:auto;padding:14px;border-radius:6px;box-shadow:none}.tcard .src-reg h3{font-size:15px}.tcard .src-reg p{font-size:14px;line-height:1.5}
.tr-note{margin:0;padding:12px 24px 22px;background:var(--night);color:rgba(255,255,255,.5)}
/* the dashboard's AI training card (/member/) */
.train-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:26px;padding:22px 30px 22px 18px;border-radius:24px;color:#fff;background:radial-gradient(500px 260px at 0 50%,rgba(103,212,255,.16),transparent 70%),linear-gradient(135deg,#0a1226,#060a16);box-shadow:0 0 0 1px rgba(120,180,255,.22),0 26px 70px -24px rgba(29,111,224,.8);transition:transform .25s,box-shadow .25s}
.train-card:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(103,212,255,.45),0 32px 80px -22px rgba(29,111,224,.95)}
.tc-aura{width:132px;height:132px;display:block}
.tc-aura canvas{width:100%;height:100%}
.tc-text{display:flex;flex-direction:column;gap:6px;min-width:0}
.tc-eyebrow{font:600 12px Inter;letter-spacing:.18em;text-transform:uppercase;color:#7fd3ff}
.tc-text b{font:700 clamp(22px,2.3vw,30px)/1.15 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.02em}
.tc-sub{color:rgba(255,255,255,.72);font-size:15.5px;line-height:1.55}
@media(max-width:980px){
  .trainer{padding:84px 0 16px}
  .tr-grid{grid-template-columns:1fr;height:calc(100svh - 100px);min-height:560px}
  .srcpane{display:none}
  .tcard{display:block}
  .aura{height:116px}.aura canvas{width:138px;height:138px}.aura .state{left:14px;bottom:10px}
  .tlog{padding:16px 16px 6px;font-size:14.5px}
  .tchips{padding:2px 16px 10px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}  /* phones: one row that scrolls sideways */
  .term-bar{padding:10px 12px;gap:10px}.tb-title .tb-dim,.tleft{display:none}.tmeter i{width:44px}
  .train-card{grid-template-columns:auto minmax(0,1fr);padding:20px}
  .tc-go{grid-column:1/-1;justify-content:center}
  .tc-aura{width:96px;height:96px}
}
@media(max-width:600px){.trainer .wrap{padding:0 10px}.tform{padding:10px 10px 10px 14px;gap:8px}.tform .btn{padding:10px 16px}.tb-title{font-size:0;flex:1;width:0}.tb-title .mark{display:none}.tb-back{padding:0 10px}.term-bar .voice-toggle{padding-left:11px;padding-right:11px;white-space:nowrap}.term-bar{gap:8px}.tb-acts{gap:8px}.tmeter{gap:6px}.tmeter i{width:32px}.tmeter.out{white-space:normal;max-width:112px;line-height:1.25;text-align:right}}  /* phones: the site logo sits right above, so the bar keeps only Dashboard, the credit meter and Voice (the name stays for screen readers) */
@media(prefers-reduced-motion:reduce){.tline .caret{animation:none}.src-body canvas,.src-body img.pg{animation:none}}
/* ADMIN (760d935e): Chris's read-only view */
.adm .wrap{max-width:1180px}
.adm{padding-top:48px}.adm-hero h1{max-width:none}
.adm-login{text-align:left}.adm-login h2{font-size:clamp(24px,2.6vw,30px);word-spacing:.06em;margin-bottom:6px}.adm-login .adm-login-sub{color:var(--muted);font-size:15px;margin:0 0 22px}
.adm-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:22px;padding:12px 12px 12px 18px;background:#fff;border:1px solid var(--line);border-radius:18px;font-size:13.5px}.adm-bar .adm-out{margin-left:auto}
.adm-site{display:flex;flex-wrap:wrap;gap:6px}
.adm-pill{display:inline-flex;align-items:center;gap:7px;font:600 12.5px/1 Inter;padding:6px 11px 6px 9px;border-radius:999px;background:#f1f4f9;color:var(--ink)}
.adm-pill::before{content:'';width:7px;height:7px;border-radius:50%;background:#a3adbf}.adm-pill.on::before{background:#12a36b}.adm-pill.info::before{background:var(--blue)}
/* KPI strips: one card, hairline-separated cells (the 1px gap shows the card's line color) */
.adm-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:22px}
.adm-tile{background:#fff;padding:18px 20px 20px;display:flex;flex-direction:column;gap:6px;min-width:0}
.adm-tile .adm-tl{font:600 11.5px/1.3 Inter;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.adm-tile b{font:700 30px/1.1 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.02em;color:var(--ink)}.adm-tile .adm-ts{font-size:12.5px;line-height:1.4;color:var(--muted)}
.adm-card .adm-tiles{border-radius:16px}.adm-funnel .adm-tl{min-height:2.6em}
.adm-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px 26px;margin-bottom:22px;position:relative;min-width:0;box-shadow:0 1px 2px rgba(10,13,20,.04)}
.adm-card h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;font:700 19px/1.3 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.01em;word-spacing:.08em;margin:0 0 16px}.adm-card h2 small{font:500 13px Inter;letter-spacing:0;color:var(--muted)}
.adm-empty{grid-column:2;grid-row:1;align-self:center;justify-self:center;margin:0;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;color:var(--muted)}
.adm-t tbody tr:hover td{background:#f8fafd}.adm-t td.adm-none{color:var(--muted);text-align:center;padding:22px 10px;white-space:normal}
.adm-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}.adm-two .adm-card{margin-bottom:22px}
.adm-chart{display:grid;grid-template-columns:auto 1fr;grid-template-rows:180px auto;column-gap:10px}
.adm-axis{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between;font-size:12px;color:var(--muted);text-align:right}
.adm-bars{grid-column:2;grid-row:1;display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid var(--line);height:180px}
.adm-col{flex:1;height:100%;display:flex;align-items:flex-end;cursor:pointer;min-width:0}.adm-col i{display:block;width:100%;background:linear-gradient(180deg,#3d8af0,var(--blue));border-radius:4px 4px 0 0}
.adm-col:hover i{background:#1558b3}
.adm-ticks{grid-column:2;display:flex;justify-content:space-between;font-size:12px;color:var(--muted);padding-top:6px}
.adm-tip{position:absolute;top:58px;background:var(--ink);color:#fff;font-size:13px;padding:7px 10px;border-radius:10px;pointer-events:none;white-space:nowrap}
.adm-card details{margin-top:14px;font-size:14px}.adm-card summary{cursor:pointer;color:var(--blue);font-weight:600}
.adm-scroll{overflow-x:auto;max-height:520px;overflow-y:auto}
.adm-t{width:100%;border-collapse:collapse;font-size:14px}.adm-t th{position:sticky;top:0;background:#fff;text-align:left;font:600 11.5px Inter;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px;border-bottom:1px solid var(--line)}
.adm-t td{padding:11px 10px;border-top:1px solid #eef2f7;vertical-align:top;white-space:nowrap}.adm-t tbody tr:first-child td{border-top:0}
.notice-red{margin:0 0 20px;padding:14px 18px;border:1px solid #f3b4ae;border-radius:14px;background:#fff1f0;color:#b42318;font-weight:700}
.lead-note{max-width:760px;margin:14px auto 0;font-size:16px;line-height:1.6;color:rgba(255,255,255,.82)}.lead-note a{color:#9ec9ff;font-weight:600}.hero .lead-note{margin-left:0}
.udemy-open{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0 0}.udemy-open .fine-p{margin:0}
.study-docs{margin:0 0 24px}.study-old h2{margin:10px 0 12px}.study-gate{margin:0 0 20px}
.support-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:24px;align-items:start}.support-cta h2{margin:10px 0 12px}.support-form textarea{width:100%;font:inherit;padding:12px 14px;border:1px solid #d5dce6;border-radius:12px;resize:vertical}
.support-form select{width:100%;padding:12px 14px;border:1px solid #d5dce6;border-radius:12px;font:inherit;background:#fff}.support-form fieldset[hidden],.support-form .ctas[hidden],.support-form .cf-turnstile[hidden]{display:none}
@media(max-width:860px){.support-grid{grid-template-columns:1fr}}
.codebox .cb-form{margin-top:16px}.codebox input[name=code]{font:600 24px 'JetBrains Mono',monospace;letter-spacing:.35em;text-align:center}.ts-tip{margin-top:10px}
.pc-udemy{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line,#e6ebf2)}.pc-udemy b{font-size:14px}
.pc-udemy-row{display:flex;gap:8px;flex-wrap:wrap}.pc-udemy-row input{flex:1 1 160px;min-width:0;padding:9px 12px;border:1px solid #d5dce6;border-radius:10px;font:500 14px Inter;text-transform:uppercase}
.pc-udemy-s{font-size:13px;color:var(--muted)}.pc-udemy-s a{color:var(--blue);font-weight:600}
.adm-sup{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.adm-sup .adm-sup-m{white-space:pre-wrap;color:var(--ink)}.adm-sup.done{opacity:.6}.adm-sup .chip{padding:3px 10px;font-size:12px}
.adm-ud-now{margin:0 0 8px}.adm-ud-form{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-top:10px}.adm-ud-form .f{flex:1 1 200px}
.adm-ud-form input,.adm-ud-form select{width:100%;padding:10px 12px;border:1px solid #d5dce6;border-radius:10px;font:500 14px Inter}
.adm-ud-made{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#e3f6ee;color:#0b6b46}.adm-ud-made.err{background:#fde8e8;color:#9b1c1c}
.adm-ud-code{font:700 18px 'JetBrains Mono',monospace;letter-spacing:.06em;margin:0 6px;user-select:all}
.adm-net{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.adm-net span{font-size:13px;color:var(--muted)}.adm-net .adm-flags{color:#7a4b00}.adm-net .chip{padding:3px 10px;font-size:12px}
.adm-who{display:flex;flex-direction:column}.adm-who span{font-size:13px;color:var(--muted)}
.adm-st{font:600 12px Inter;padding:3px 9px;border-radius:999px;background:#eef2f7;color:var(--ink)}.adm-st.active{background:#e3f6ee;color:#0b6b46}.adm-st.claim,.adm-st.pending{background:#fff3dc;color:#7a4b00}
.adm-find{width:100%;max-width:380px;font:400 15px Inter;padding:10px 14px;border-radius:12px;border:1.5px solid var(--line);margin-bottom:12px}
.adm-list{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:12px;font-size:14.5px}.adm-list li{padding-left:4px}.adm-list li::marker{color:var(--muted);font-weight:600}.adm-list li.muted{list-style:none;margin-left:-22px}
.adm-list em{display:block;font-style:normal;font-size:12.5px;color:var(--muted)}
@media(max-width:800px){.adm-t thead{display:none}.adm-t tr{display:block;padding:10px 0;border-top:1px solid #eef2f7}.adm-t tbody tr:first-child{border-top:0}
  .adm-t td{display:flex;justify-content:space-between;gap:12px;border:0;padding:3px 0;white-space:normal;text-align:right}
  .adm-t td::before{content:attr(data-label);font:600 11.5px Inter;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:left;flex:none}
  .adm-t td[data-label=Member]{display:block;text-align:left}.adm-t td[data-label=Member]::before{content:none}.adm-scroll{max-height:none}
  .adm-t td.adm-none{display:block;text-align:center}.adm-t td.adm-none::before{content:none}}
@media(max-width:800px){.adm{padding-top:32px}.adm-two{grid-template-columns:1fr}.adm-card{padding:18px 16px}.adm-chart{grid-template-rows:140px auto}.adm-bars{height:140px}
  .adm-tiles{grid-template-columns:1fr 1fr}.adm-tile{padding:14px 14px 16px}.adm-tile b{font-size:24px}.adm-tile:last-child:nth-child(odd){grid-column:1/-1}
  .adm-bar{padding:12px}.adm-bar .adm-site{order:3;flex-basis:100%}}

/* FREE PRACTICE TEST (/part-107-practice-test/, UAV-GROWTH B2): the member quiz's cards (.qcard .opt .fb) as one long list, a sticky
   tally under the nav, the answer in a <details> (open after a tap, or by hand without JavaScript) */
.pq-bar{position:sticky;top:84px;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;border-radius:18px;max-width:860px;margin:0 auto 22px;font:600 15px Inter}
.pq-bar .btn{padding:11px 18px;font-size:14px}
.pq-list{display:grid;gap:22px;max-width:860px;margin:0 auto}
.pq .qtext{font-size:clamp(18px,2vw,21px);margin-bottom:18px}
.pq-ans{margin-top:16px}
.pq-ans summary{cursor:pointer;font:600 14.5px Inter;color:var(--blue);list-style:none}
.pq-ans summary::-webkit-details-marker{display:none}
.pq-ans[open] summary{display:none}
.pq-ans .fb{margin-top:0}
.pq-ans .fb p{margin-top:6px}
.pq-src{font-size:14px;color:var(--muted)}
.pq-src a{color:var(--blue)}
.pq.ok .pq-ans .fb{border-color:#12a36b}.pq.no .pq-ans .fb{border-color:#e0484d}
.pq,.pq-score{scroll-margin-top:180px}  /* anything scrolled into view clears the nav + the sticky tally (Prism #26465) */
.pq-score{max-width:860px;margin:34px auto 0}
.pq-bar .pq-tally,.pq-bar .btn{white-space:nowrap}.pq-n{display:none}
.pq-key{margin-top:10px;font-size:14px;color:var(--muted)}
.pq-score h2{font:700 26px 'Plus Jakarta Sans';margin-bottom:10px}
.pq-result{font-size:18px}
.pq-next{margin-top:18px;color:var(--muted)}
.pq-next a,.art p a{color:var(--blue)}
@media(max-width:700px){.pq-bar{top:68px;padding:10px 14px;font-size:14px}.pq-bar .btn{padding:9px 14px}
  .pq-w{display:none}.pq-n{display:inline}.pq,.pq-score{scroll-margin-top:140px}}  /* one-line bar: '3 of 60 · 2 right' + 'Score' */

/* GUIDE PAGES (/how-to-get-a-drone-license/, UAV-GROWTH B2): one readable column, question headings, the FAA source under each answer */
.art-body{max-width:780px}
.art-legal a{color:var(--blue);font-weight:600}  /* privacy + terms: links read as links */
.art-meta{font-size:14px;color:var(--muted);margin-bottom:8px}
.art h2.q,.art-legal h2{font:700 clamp(24px,2.6vw,32px)/1.2 'Plus Jakarta Sans';letter-spacing:-.01em;margin:52px 0 14px;scroll-margin-top:100px}
.art p{font-size:17.5px;line-height:1.65;margin-top:12px}
.art p.a{font-size:19px;color:var(--ink)}
.src,.faq p.src{font-size:14px!important;color:var(--muted)}
.src a,.faq .src a{color:var(--blue)}
.lic-steps{margin:18px 0 0 22px;display:grid;gap:12px;font-size:17px;line-height:1.6}
.lic-steps li::marker{font-weight:700;color:var(--blue)}
/* PART 107 ANSWER PAGES (/part-107/<slug>/, UAV-GROWTH B3): the guide column + the regulation's own text, exam traps, practice questions */
.art h2:not(.q){font:700 clamp(22px,2.3vw,28px)/1.2 'Plus Jakarta Sans';letter-spacing:-.01em;margin:48px 0 12px;scroll-margin-top:100px}
.art-meta a{color:var(--blue)}
.reg{margin-top:14px;padding:18px 22px;border-left:4px solid var(--blue);background:#f4f7fd;border-radius:0 14px 14px 0}
.reg p{font-size:16px!important;line-height:1.65;margin-top:6px}
.reg .reg-h{font-weight:600;margin-top:0;color:var(--ink)}
.reg p+p{margin-top:10px}
.reg-more{margin-top:10px}.reg-more summary{cursor:pointer;font:600 14.5px Inter;color:var(--blue)}
.reg .reg-doc{font-size:12.5px!important;color:var(--muted);margin-top:12px}
.ap-cards{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.ap-cards a{display:block;height:100%;padding:18px 20px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--glow);transition:transform .2s,box-shadow .2s}
.ap-cards a:hover{transform:translateY(-2px);box-shadow:var(--glow-hi)}
.ap-cards .ap-code{display:block;font:600 12px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.ap-cards .ap-t{display:block;margin-top:6px;font:600 17px/1.35 'Plus Jakarta Sans';color:var(--ink)}
@media(max-width:700px){.ap-cards{grid-template-columns:1fr}}
.traps{margin:12px 0 0 22px;display:grid;gap:10px;font-size:17px;line-height:1.6}
.traps li::marker{color:#e0484d}
.ap-q{margin-top:18px;padding:22px 24px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--glow)}
.ap-qn{font:600 12.5px Inter!important;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 8px!important}
.ap-q .qtext{font-size:19px;line-height:1.4}
.ap-opts{list-style:none;margin-top:12px;display:grid;gap:8px;font-size:16.5px}
.ap-opts .k{display:inline-block;min-width:22px;font-weight:700;color:var(--blue)}
.ap-q .fb p,.ap-q .fb b{font-size:16px!important;line-height:1.6}
.ap-rel{margin:12px 0 0 22px;display:grid;gap:8px;font-size:17px}
.ap-rel a{color:var(--blue)}
@media(max-width:600px){.reg{padding:14px 16px}.ap-q{padding:18px 16px}}
/* admin Abuse review (UAV-SEC Phase 4) */
.adm-acts{display:flex;flex-wrap:wrap;gap:6px}
.chip.adm-danger{color:#b42318;border-color:#f3b4ae}
.adm-ip{margin:0 0 16px;padding:14px 16px;border:1px solid var(--line,#e4e7ec);border-radius:14px;background:#fafbfc}
.adm-ip h3{font:700 16px/1.3 'Plus Jakarta Sans';margin:0 0 8px}
.adm-ip-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.acs-k{list-style:none;margin:10px 0 0;display:grid;gap:6px}.acs-k li{font-size:15px;line-height:1.5}.acs-k .k{font:600 12px 'JetBrains Mono',monospace;color:var(--muted);margin-right:6px}
.hub-other{margin-top:18px;font-size:16px}.hub-other a{color:var(--blue)}
.acs-w{width:100%;margin-top:14px;border-collapse:collapse;font-size:15.5px}.acs-w caption{text-align:left;font:600 14px Inter;color:var(--muted);padding-bottom:6px}.acs-w th,.acs-w td{padding:8px 12px;border-bottom:1px solid var(--line);text-align:left}.acs-w td+td,.acs-w th+th{text-align:right;white-space:nowrap}.acs-w tr.here td{font-weight:600;color:var(--blue);background:#f4f7fd}.acs-w tfoot td{font-weight:600}
.q-cta{margin-top:44px;padding:26px 26px 28px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--glow);background:#fbfcfe}.art-body .q-cta h2{margin-top:0}.q-cta .ctas{margin-top:18px}
@media(max-width:600px){footer .cols{display:grid;grid-template-columns:1fr 1fr;gap:28px 18px}footer .cols>div{grid-column:1/-1}footer ul{gap:9px;font-size:14px}.q-cta{padding:20px 18px 22px}}
.qfig a{display:block;cursor:zoom-in}
.q-table{width:100%;margin-top:14px;border-collapse:collapse;font-size:15.5px;line-height:1.5}.q-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.q-table th,.q-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.q-table thead th{font:600 13px Inter;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.q-table tbody th{font:600 15px 'Plus Jakarta Sans';color:var(--ink);width:22%}@media(max-width:700px){.q-table thead{display:none}.q-table tr{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.q-table th,.q-table td,.q-table tbody th{display:block;border:0;padding:4px 0;width:auto}.q-table td::before{content:attr(data-col);display:block;font:600 12px Inter;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}}
