/* plan-v1.css: the /plan page and the "Your plan" card on the Learn landing page. CET-D39, 9 Oct 2026.
 * Colours come from the variables atlas-v3.css and site-dark-v1.css already set for light and dark,
 * so this file has no colour of its own except the fallbacks. Versioned by filename and ?v= stamp. */

.planpage h1{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:14px 0 4px;line-height:1.15}
.planpage .sub{color:var(--muted,#5c6a86);font-size:14.5px;line-height:1.5;margin:0 0 16px}
.planpage .pk{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5c6a86);margin:0 0 6px}
.planpage h2{font-size:17px;font-weight:800;margin:22px 0 8px}

/* choice buttons: big targets, one per row */
.popts{display:grid;gap:10px;margin:0 0 14px}
.popt{display:block;width:100%;text-align:left;font:inherit;color:var(--ink,#12213f);background:var(--card,#fff);
  border:1.5px solid var(--line,#e6e9f1);border-radius:14px;padding:14px 16px;min-height:56px;cursor:pointer}
.popt:hover{border-color:var(--accent,#2f5cff)}
.popt:focus-visible{outline:3px solid var(--accent,#2f5cff);outline-offset:2px}
.popt .pt{display:block;font-size:16.5px;font-weight:800;line-height:1.25}
.popt .pl{display:block;font-size:13.5px;color:var(--muted,#5c6a86);margin-top:3px;line-height:1.4}
.popts.row3{grid-template-columns:repeat(3,1fr)}
.popts.row3 .popt{text-align:center;padding:16px 8px}
.popts.row3 .pt{font-size:22px}
.popts.row3 .pl{font-size:12.5px}

.pback{display:inline-block;font:inherit;font-size:14px;font-weight:700;color:var(--accent,#2f5cff);background:none;border:0;padding:8px 0;cursor:pointer}
.pnote{font-size:13.5px;color:var(--muted,#5c6a86);line-height:1.5;margin:0 0 14px}

/* the plan itself */
.pbar{display:block;height:10px;border-radius:99px;background:var(--line,#e6e9f1);overflow:hidden;margin:6px 0 4px}
.pbar i{display:block;height:100%;background:var(--accent-fill,var(--accent,#2f5cff));border-radius:99px;min-width:0}
.ppct{font-size:13.5px;font-weight:700;color:var(--ink,#12213f);margin:0 0 14px}
.pgo{display:block;text-align:center;font-weight:800;font-size:16.5px;text-decoration:none;color:#fff;
  background:var(--accent-fill,var(--accent,#2f5cff));border-radius:14px;padding:15px 16px;margin:0 0 6px;line-height:1.3}
.pgo small{display:block;font-weight:600;font-size:13px;opacity:.92;margin-top:2px}
.pwk{margin:0;padding:0;list-style:none}
.pwk li{margin:0 0 8px}
.pmod{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink,#12213f);background:var(--card,#fff);
  border:1px solid var(--line,#e6e9f1);border-radius:12px;padding:11px 13px;min-height:52px}
.pmod:hover{border-color:var(--accent,#2f5cff)}
.pmod .pm-t{flex:1;min-width:0}
.pmod .pm-n{display:block;font-weight:700;font-size:15px;line-height:1.3}
.pmod .pm-s{display:block;font-size:12.5px;color:var(--muted,#5c6a86);margin-top:1px}
.pmod .pm-d{flex:0 0 22px;height:22px;border-radius:50%;border:2px solid var(--line,#e6e9f1);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:transparent}
.pmod.done .pm-d{background:var(--good-fill,var(--good,#0f7a50));border-color:var(--good-fill,var(--good,#0f7a50));color:#fff}
.pmod.next{border-color:var(--accent,#2f5cff);border-width:1.5px}
.pacts{display:flex;flex-wrap:wrap;gap:10px 18px;margin:20px 0 6px}
.pacts a,.pacts button{font:inherit;font-size:14.5px;font-weight:700;color:var(--accent,#2f5cff);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:underline}

/* the card on the Learn landing page */
.hplan{display:block;margin:14px 0 18px;border-radius:14px;background:var(--card,#fff);border:1.5px solid var(--accent,#2f5cff);color:var(--ink,#12213f)}
.hplan[hidden]{display:none}
.hplan .hpl-a{display:flex;flex-direction:column;gap:3px;padding:12px 14px;text-decoration:none;color:inherit}
.hplan .k{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent,#2f5cff)}
.hplan .t{font-size:16px;font-weight:800;line-height:1.3}
.hplan .s{font-size:13px;color:var(--muted,#5c6a86);line-height:1.4}
.hplan .hpl-bar{display:block;height:8px;border-radius:99px;background:var(--line,#e6e9f1);overflow:hidden;margin:5px 0 1px}
.hplan .hpl-bar i{display:block;height:100%;background:var(--accent-fill,var(--accent,#2f5cff));border-radius:99px}
.hplan .hpl-next{display:flex;flex-direction:column;gap:2px;padding:10px 14px 12px;border-top:1px solid var(--line,#e6e9f1);text-decoration:none;color:inherit}
.hplan.hplan-new{border-width:1px;border-color:var(--line,#e6e9f1)}
.hplan.hplan-new .k{color:var(--muted,#5c6a86)}

/* the Economics IQ link card on Learn and home */
.hiq{display:block;margin:0 0 18px;border-radius:14px;background:var(--card,#fff);border:1px solid var(--line,#e6e9f1);color:var(--ink,#12213f);text-decoration:none;padding:12px 14px}
.hiq .k{display:block;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent,#2f5cff)}
.hiq .t{display:block;font-size:16px;font-weight:800;line-height:1.3;margin-top:3px}
.hiq .s{display:block;font-size:13px;color:var(--muted,#5c6a86);line-height:1.4;margin-top:2px}
.hiq:hover{border-color:var(--accent,#2f5cff)}
@media (prefers-color-scheme: dark){.hiq .k,.hplan .k{color:#7aaaf5}.hplan.hplan-new .k{color:#a3acbd}}

/* several choices at once: a pressed button shows a tick */
.popt[aria-pressed="true"]{border-color:var(--accent,#2f5cff);border-width:2px;padding:13.5px 15.5px;position:relative}
.popt[aria-pressed="true"]::after{content:"\2713";position:absolute;right:14px;top:12px;font-weight:800;color:var(--accent,#2f5cff)}
.popt[aria-pressed="false"]{position:relative}
.pcont{display:block;width:100%;font:inherit;text-align:center;font-weight:800;font-size:16.5px;color:#fff;
  background:var(--accent-fill,var(--accent,#2f5cff));border:0;border-radius:14px;padding:15px 16px;margin:0 0 8px;cursor:pointer;line-height:1.3}
.pcont[disabled]{opacity:.45;cursor:default}
.pcont:focus-visible{outline:3px solid var(--accent,#2f5cff);outline-offset:2px}
.pdaily{margin:0 0 6px;padding:0;list-style:none;font-size:14.5px;line-height:1.5}
.pdaily li{padding:6px 0;border-bottom:1px solid var(--line,#e6e9f1)}
main [tabindex="-1"]:focus{outline:none}

/* ==== Round 3 (9 Oct 2026): Luke's review. Lane colours are the Learn hub's own (learn.html and
   site-polish-v1.css set the same .hlane-* variables; site-polish wins where it has a rule). ==== */
.hlane-history{--cat:#1d7a67;--cat-fill:#edf4f3}.hlane-theory{--cat:#265cd9;--cat-fill:#eef2fc}
.hlane-ideas{--cat:#7530cf;--cat-fill:#f4eefb}.hlane-general{--cat:#a93eba;--cat-fill:#f8f0f9}
.hlane-atlas{--cat:#0973a5;--cat-fill:#ebf4f8}.hlane-practice{--cat:#c53465;--cat-fill:#faeff3}
.pc-game,.pc-acc{--cat:var(--accent,#2f5cff);--cat-fill:#edf2ff}.pc-ee{--cat:#b4541a;--cat-fill:#fbefe6}
@media (prefers-color-scheme: dark){
.hlane-history{--cat:#73dec9;--cat-fill:#203030}.hlane-theory{--cat:#6e92e5;--cat-fill:#1f2634}
.hlane-ideas{--cat:#ab81e1;--cat-fill:#272333}.hlane-general{--cat:#c87dd4;--cat-fill:#2b2331}
.hlane-atlas{--cat:#5ac5f6;--cat-fill:#1c2d36}.hlane-practice{--cat:#db7698;--cat-fill:#2e2229}
.pc-game,.pc-acc{--cat:#7aaaf5;--cat-fill:#1c2438}.pc-ee{--cat:#f0a46b;--cat-fill:#2e241c}}

/* step header: progress dots and a reason line under each question */
.pstep{display:flex;align-items:center;gap:10px;margin:14px 0 0}
.pstep .pk{margin:0}
.pdots{display:inline-flex;gap:5px}
.pdots i{display:block;width:22px;height:6px;border-radius:99px;background:var(--line,#e6e9f1);transition:background .25s}
.pdots i.done{background:color-mix(in srgb,var(--accent,#2f5cff) 55%,var(--line,#e6e9f1))}
.pdots i.on{background:var(--accent,#2f5cff)}
.pwhy{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;line-height:1.45;color:var(--ink,#12213f);
  background:var(--card,#fff);border:1px dashed var(--line,#e6e9f1);border-radius:12px;padding:9px 12px;margin:-6px 0 16px}
.pwhy .ic{flex:0 0 18px;width:18px;height:18px;margin-top:1px;color:var(--accent,#2f5cff)}

/* icon choice cards */
.pcard{display:flex;align-items:center;gap:13px;padding:13px 44px 13px 13px;transition:transform .12s,border-color .15s,background .15s}
.pcard:active{transform:scale(.985)}
.pcard .pci{flex:0 0 44px;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:var(--cat-fill,#eef2ff);color:var(--cat,var(--accent,#2f5cff));border:1px solid color-mix(in srgb,var(--cat,#2f5cff) 25%,transparent)}
.pcard.pc-goal{--cat:var(--accent,#2f5cff);--cat-fill:color-mix(in srgb,var(--accent,#2f5cff) 12%,var(--card,#fff))}
.pcard .pci .ic{width:22px;height:22px}
.pcard .pct{flex:1;min-width:0}
.pcard .ptick{position:absolute;right:13px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;
  border:2px solid var(--line,#e6e9f1);display:flex;align-items:center;justify-content:center;color:transparent;transition:all .15s}
.pcard .ptick .ic{width:14px;height:14px;stroke-width:3}
.popt.pcard[aria-pressed="true"]{border-color:var(--cat,var(--accent,#2f5cff));background:color-mix(in srgb,var(--cat,#2f5cff) 7%,var(--card,#fff));padding:12.5px 43.5px 12.5px 12.5px}
.popt.pcard[aria-pressed="true"]::after{content:none}
.pcard[aria-pressed="true"] .ptick{background:var(--cat,var(--accent,#2f5cff));border-color:var(--cat,var(--accent,#2f5cff));color:#fff}
.pfix{display:inline-block;margin-top:5px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted,#5c6a86)}

/* minutes */
.ptime{text-align:center;padding:14px 6px}
.ptime .pt{font-size:26px;font-weight:900;line-height:1}
.ptime .pu{display:block;font-size:12.5px;font-weight:700;color:var(--muted,#5c6a86);margin-top:2px}
.ptime .pl{font-size:12px;margin-top:6px}
.popts.row2{grid-template-columns:repeat(2,1fr)}
.popt.ptime[aria-pressed="true"]{border-color:var(--accent,#2f5cff);background:color-mix(in srgb,var(--accent,#2f5cff) 9%,var(--card,#fff));padding:13.5px 5.5px}
.popt.ptime[aria-pressed="true"]::after{content:none}
.pmore{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5c6a86);margin:4px 0 8px}

/* "Creating your plan" */
.pmaking{padding:24px 0 8px;cursor:pointer}
.pmaking h1{margin-bottom:14px}
.pmaking > .pk{display:none}
.pmk-bar{height:8px;margin:0 0 18px}
.pmk-bar i{transition:width .6s ease}
.pmk-l{list-style:none;margin:0 0 14px;padding:0}
.pmk-l li{display:flex;gap:10px;align-items:flex-start;font-size:16px;font-weight:700;line-height:1.4;padding:8px 0;opacity:.25;transform:translateY(4px);transition:opacity .35s,transform .35s}
.pmk-l li .ic{flex:0 0 20px;width:20px;height:20px;margin-top:2px;color:var(--good-fill,var(--good,#0f7a50));stroke-width:3;opacity:0;transition:opacity .2s}
.pmk-l li.on{opacity:1;transform:none}
.pmk-l li.on .ic{opacity:1}

/* the plan: built-from echo */
.pbuilt{border:1px solid var(--line,#e6e9f1);border-radius:14px;background:var(--card,#fff);padding:12px 14px;margin:4px 0 14px}
.pbuilt .pbh{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5c6a86);margin:0 0 6px}
.pbuilt dl{margin:0}
.pbuilt dl>div{display:grid;grid-template-columns:62px 1fr auto;gap:8px;align-items:baseline;padding:6px 0;border-top:1px solid var(--line,#e6e9f1)}
.pbuilt dl>div:first-child{border-top:0}
.pbuilt dt{font-size:12.5px;font-weight:800;color:var(--muted,#5c6a86)}
.pbuilt dd{margin:0;font-size:14px;font-weight:700;line-height:1.35}
.pbuilt .ped button{font:inherit;font-size:13px;font-weight:700;color:var(--accent,#2f5cff);background:none;border:0;padding:4px 0 4px 8px;cursor:pointer;text-decoration:underline}
.pwhy2{font-size:13px;line-height:1.5;color:var(--muted,#5c6a86);margin:8px 0 0}

/* typed rows */
.plegend{display:flex;flex-wrap:wrap;gap:6px 12px;list-style:none;margin:16px 0 4px;padding:0;font-size:12.5px;font-weight:700;color:var(--muted,#5c6a86)}
.plegend li{display:flex;align-items:center;gap:5px}
.plegend .pri{width:20px;height:20px;border-radius:6px;flex-basis:20px}
.plegend .pri .ic{width:12px;height:12px}
.pwkh{display:flex;align-items:center;gap:8px}
.prow{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink,#12213f);background:var(--card,#fff);
  border:1px solid var(--line,#e6e9f1);border-left:4px solid var(--cat,var(--line,#e6e9f1));border-radius:12px;padding:10px 12px;min-height:56px;transition:transform .12s,border-color .15s}
.prow:hover{border-color:var(--cat,var(--accent,#2f5cff))}
.prow:active{transform:scale(.99)}
.pri{flex:0 0 36px;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--cat-fill,#eef2ff);color:var(--cat,var(--accent,#2f5cff))}
.pri .ic{width:19px;height:19px}
.prt{flex:1;min-width:0;display:flex;flex-direction:column}
.prk{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--cat,var(--muted,#5c6a86));line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prn{font-weight:700;font-size:15px;line-height:1.3}
.prs{font-size:12.5px;color:var(--muted,#5c6a86);margin-top:1px}
.prd{flex:0 0 24px;height:24px;border-radius:50%;border:2px solid var(--line,#e6e9f1);display:flex;align-items:center;justify-content:center;color:transparent}
.prd .ic{width:13px;height:13px;stroke-width:3}
.prow.done .prd{background:var(--good-fill,var(--good,#0f7a50));border-color:var(--good-fill,var(--good,#0f7a50));color:#fff}
.prow.done .prn{opacity:.75}
.prow.next{box-shadow:0 0 0 1.5px var(--accent,#2f5cff)}
.prgo{flex:0 0 18px;color:var(--muted,#5c6a86)}
.prgo .ic{width:18px;height:18px}
/* scoped: home.html uses .sr for series rows (9 Oct 2026 hotfix) */
.prow .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pkeep{display:grid;gap:8px;margin:0 0 6px}
.pkeep .prow{border-left-width:1px}

/* membership and email cards */
.pmem,.pmc{border-radius:16px;padding:16px;margin:20px 0 6px;background:var(--card,#fff);border:1px solid var(--line,#e6e9f1)}
.pmem{border-color:#f2b632;background:linear-gradient(135deg,#fff7e6 0%,var(--card,#fff) 70%)}
.pmk{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5c6a86);margin:0 0 6px}
.pmk .ic{width:16px;height:16px}
.pmem .pmk{color:#8a5a00}
.pmem h2,.pmc h2{margin:0 0 6px;font-size:19px}
.pmem p{font-size:14.5px;line-height:1.5;margin:0 0 12px}
.pmem-b{display:block;width:100%;font:inherit;font-weight:800;font-size:16px;color:#2b1d00;background:#f2b632;border:0;border-radius:12px;padding:13px 16px;cursor:pointer}
.pmc .s{font-size:13px;color:var(--muted,#5c6a86);margin:0 0 10px;line-height:1.45}
.pmc input[type=email]{display:block;width:100%;box-sizing:border-box;min-height:46px;padding:10px 12px;font:inherit;font-size:16px;border:1px solid var(--line,#e6e9f1);border-radius:10px;color:var(--ink,#12213f);background:var(--bg,#f5f7fb);margin:0 0 10px}
.pmc label.bx{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px;cursor:pointer;font-size:14px;line-height:1.4;font-weight:600}
.pmc label.bx input{flex:0 0 auto;width:22px;height:22px;margin:0;accent-color:var(--accent-fill,var(--accent,#2f5cff))}
.pmc label.bx small{display:block;font-weight:400;font-size:12.5px;color:var(--muted,#5c6a86);margin-top:2px}
.pmc .go{display:block;width:100%;min-height:46px;font:inherit;font-size:15.5px;font-weight:800;border:0;border-radius:12px;background:var(--accent-fill,var(--accent,#2f5cff));color:#fff;cursor:pointer}
.pmc .go[disabled]{opacity:.6}
.pmc .fine{margin:9px 0 0;font-size:12px;line-height:1.45;color:var(--muted,#5c6a86)}
.pmc .no{margin-top:6px;min-height:40px;background:none;border:0;font:inherit;font-size:12.5px;color:var(--muted,#5c6a86);text-decoration:underline;cursor:pointer;padding:4px 0}
.pmc .msg{font-size:13.5px;line-height:1.45}
.pmc .msg.err{color:var(--warm,#a33a12)}.pmc .msg.ok{color:var(--good,#0f7a50);font-weight:700}
@media (prefers-color-scheme: dark){
.pmem{border-color:#7a5a16;background:linear-gradient(135deg,#2a2314 0%,var(--card,#1a1d22) 70%)}
.pmem .pmk{color:#f0b43c}
.pmc .msg.err{color:#f28b8b}.pmc .msg.ok{color:#6fcf9f}}
.pgo{transition:transform .12s}.pgo:active{transform:scale(.99)}
@media (prefers-reduced-motion: reduce){
.pcard,.prow,.pgo,.pdots i,.pmk-l li,.pmk-l li .ic,.pmk-bar i{transition:none!important}}

.pmorewk{margin:18px 0 0}
.pmorewk>summary{cursor:pointer;font-weight:800;font-size:14.5px;color:var(--accent,#2f5cff);padding:10px 0;list-style-position:inside}
.pcard{position:relative}

/* round 3b: the "why" line, its research, and the weak-area offer */
.pwhyline{font-size:15px;font-weight:800;line-height:1.4;color:var(--accent,#2f5cff);margin:10px 0 0}
.planpage h1+.pwhyline{margin:-2px 0 12px}
.presearch{font-size:14px;font-weight:700;line-height:1.45;color:var(--ink,#12213f);margin:8px 0 14px}
.pnudge{border:1px solid color-mix(in srgb,var(--cat,#2f5cff) 45%,var(--line,#e6e9f1));background:var(--cat-fill,#eef2ff);border-radius:14px;padding:12px 14px;margin:0 0 12px}
.pnudge p{margin:0 0 10px;font-size:14.5px;line-height:1.45;color:var(--ink,#12213f)}
.pnudge button{font:inherit;font-weight:800;font-size:14.5px;color:#fff;background:var(--cat,var(--accent,#2f5cff));border:0;border-radius:10px;padding:10px 14px;cursor:pointer}
@media (prefers-color-scheme: dark){.pnudge button{color:#121417}}
