.mastery-page{--mastery-green:#116b3c;--mastery-red:#a82a38}
.mastery-wrap{width:min(1040px,calc(100% - 48px));margin:0 auto 80px}
.mastery-hero{padding:84px 0 64px;border-bottom:2px solid var(--ink)}
.mastery-kicker{margin:0 0 20px;color:var(--mastery-green);font-size:.75rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.mastery-hero h1{max-width:950px;margin:0;font:700 clamp(4rem,8.7vw,7.4rem)/.82 Papernotes,Georgia,serif;letter-spacing:-.02em}
.mastery-hero h1 span{color:var(--mastery-green)}
.mastery-hero>p:not(.mastery-kicker){max-width:720px;margin:30px 0 0;font-size:1.2rem;line-height:1.6}
.mastery-formula{margin-top:36px;padding:20px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;background:var(--paper-raised);box-shadow:7px 7px 0 var(--yellow);font-size:1rem}
.mastery-formula strong{font:700 1.7rem/1 Papernotes,Georgia,serif;color:var(--mastery-red)}
.mastery-formula span{color:var(--muted);font-weight:900}
.mastery-formula b{font-size:.76rem;letter-spacing:.08em}
.mastery-section{padding:64px 0;border-bottom:1px solid var(--line)}
.mastery-heading{display:grid;grid-template-columns:54px 1fr;gap:18px;margin-bottom:30px}
.mastery-heading>p{margin:5px 0 0;color:var(--mastery-green);font:700 1.35rem/1 Papernotes,Georgia,serif}
.mastery-heading h2,.proof-panel h2{margin:0;font:700 clamp(2.3rem,5vw,3.6rem)/.92 Papernotes,Georgia,serif}
.mastery-heading div>p{max-width:670px;margin:10px 0 0;color:var(--muted);line-height:1.55}
.gate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-left:72px}
.gate-grid article{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--paper-raised);display:flex;flex-direction:column}
.gate-grid article>span{color:var(--mastery-green);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.gate-grid h3{margin:20px 0 10px;font:700 2rem/1 Papernotes,Georgia,serif}
.gate-grid p{margin:0 0 24px;color:var(--muted);line-height:1.55}
.gate-grid strong{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:.76rem;line-height:1.45;text-transform:uppercase}
.gate-grid code,.finish-flow code{font:650 .85em/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}
.finish-flow{margin:0 0 0 72px;padding:0;list-style:none;border-top:1px solid var(--line)}
.finish-flow li{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.finish-flow li>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--paper);font-weight:900}
.finish-flow h3{margin:2px 0 7px;font-size:1rem}
.finish-flow p{max-width:750px;margin:0;color:var(--muted);line-height:1.55}
.proof-panel{margin:64px 0 0;padding:36px;border:2px solid var(--ink);border-radius:18px;background:var(--paper-raised);box-shadow:8px 8px 0 var(--yellow);display:grid;grid-template-columns:1.1fr .9fr;gap:38px}
.proof-panel>div>p{margin:0 0 10px;color:var(--mastery-green);font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.proof-panel ul{margin:24px 0 0;padding-left:1.2rem;line-height:1.7}
.proof-panel aside{padding:24px;border-radius:12px;background:color-mix(in srgb,var(--mastery-red) 9%,var(--paper));align-self:start}
.proof-panel aside strong{display:block;margin-bottom:10px;color:var(--mastery-red);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.proof-panel aside p{margin:0;line-height:1.6}
.research-note details{margin:0 0 30px 72px;border:1px solid var(--line);border-radius:12px;background:var(--paper-raised)}
.research-note summary{padding:17px 20px;font-weight:900;cursor:pointer}
.research-note ul{margin:0;padding:0 40px 22px;line-height:1.7}
.research-note a{font-weight:800;text-underline-offset:3px}
.research-note>.notes-button{margin-left:72px;color:var(--paper);text-decoration:none}
html[data-theme=dark] .mastery-page{--mastery-green:#4cd486;--mastery-red:#ff8290}
@media(max-width:800px){.gate-grid{grid-template-columns:1fr}.proof-panel{grid-template-columns:1fr}}
@media(max-width:700px){.mastery-wrap{width:min(100% - 32px,1040px)}.mastery-hero{padding:58px 0 48px}.mastery-hero h1{font-size:clamp(3.2rem,16vw,5rem)}.mastery-hero>p:not(.mastery-kicker){font-size:1.05rem}.mastery-heading{grid-template-columns:40px 1fr}.gate-grid,.finish-flow,.research-note details,.research-note>.notes-button{margin-left:0}.proof-panel{padding:28px 20px}.reader-header__actions{gap:10px}}
@media(prefers-reduced-motion:reduce){.mastery-page *{scroll-behavior:auto}}

.mastery-hero__button{margin-top:28px}
.essential-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-left:72px}
.essential-grid article{padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--paper-raised)}
.essential-grid code{display:inline-block;color:var(--mastery-green);font-weight:900}
.essential-grid h3{margin:16px 0 8px;font:700 1.35rem/1.05 Papernotes,Georgia,serif}
.essential-grid p{margin:0;color:var(--muted);line-height:1.55}
.safety-note{margin:24px 0 0 72px;padding:20px 22px;border:2px solid var(--ink);background:color-mix(in srgb,var(--yellow) 30%,var(--paper));line-height:1.6}
.safety-note strong{color:var(--mastery-red)}
.lab-video{display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:start;margin:0 0 30px 72px;padding:22px 24px;border:1px solid var(--line);border-left:7px solid var(--mastery-red);border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--mastery-red) 7%,var(--paper-raised))}
.lab-video__play{display:grid;width:52px;height:52px;place-items:center;border-radius:50%;background:var(--mastery-red);color:#fff;font-size:1.05rem;box-shadow:4px 4px 0 var(--ink)}
.lab-video__eyebrow{margin:0 0 8px!important;color:var(--mastery-red)!important;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.lab-video h3{margin:0 0 8px;font:700 1.65rem/1.05 Papernotes,Georgia,serif}
.lab-video>div>p:not(.lab-video__eyebrow){max-width:700px;margin:0;color:var(--muted);line-height:1.55}
.lab-video__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:15px}
.lab-video__actions a{font-weight:900;text-underline-offset:4px}
.lab-video__actions a:first-child{color:var(--mastery-red)}
.lab-video small{display:block;margin-top:11px;color:var(--muted);line-height:1.4}
.lab-launch{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;margin-left:72px;padding:28px;border:2px solid var(--ink);border-radius:14px;background:var(--paper-raised);box-shadow:7px 7px 0 var(--yellow)}
.lab-launch h3{margin:0 0 8px;font:700 1.65rem/1 Papernotes,Georgia,serif}
.lab-launch p{max-width:620px;margin:0;color:var(--muted);line-height:1.55}
.lab-launch__actions{display:grid;min-width:230px;gap:12px;text-align:center}
.lab-launch__repo{color:var(--ink);font-size:.75rem;font-weight:900;text-underline-offset:4px}
.copy-choice{display:grid;grid-template-columns:minmax(150px,.36fr) 1fr;gap:28px;margin:24px 0 0 72px;padding:24px 28px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--mastery-green) 8%,var(--paper-raised))}
.copy-choice h3{margin:0;font:700 1.55rem/1 Papernotes,Georgia,serif}
.copy-choice div{display:grid;gap:12px}
.copy-choice p{margin:0;line-height:1.6}
.command-flow{min-width:0;display:grid;gap:20px;margin:32px 0 0 72px;padding:0;list-style:none;counter-reset:none}
.command-flow>li{min-width:0;padding:26px;border:1px solid var(--line);border-radius:14px;background:var(--paper-raised)}
.command-flow__heading{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}
.command-flow__heading>div{min-width:0}
.command-flow__heading>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper);font-weight:900}
.command-flow h3{margin:1px 0 5px;font:700 1.45rem/1.05 Papernotes,Georgia,serif}
.command-flow p{margin:0;color:var(--muted);line-height:1.55}
.command-flow pre{max-width:100%;margin:20px 0 14px;padding:18px;overflow:auto;border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);border-radius:10px;background:#172019;color:#f6f1e6;line-height:1.6}
.command-flow .expected{padding-left:14px;border-left:3px solid var(--mastery-green);color:var(--ink)}
.submission-demo{margin-left:72px;padding:30px;border:2px solid var(--ink);border-radius:16px;background:var(--paper-raised);box-shadow:8px 8px 0 color-mix(in srgb,var(--mastery-green) 24%,var(--paper))}
.submission-demo__fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.submission-demo label{display:grid;gap:7px;font-weight:900}
.submission-demo label span{color:var(--muted);font-size:.76rem;font-weight:700}
.submission-demo input[type=url],.submission-demo input:not([type]){width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--ink);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit}
.submission-demo fieldset{display:grid;gap:12px;margin:24px 0 0;padding:20px;border:1px solid var(--line);border-radius:10px}
.submission-demo legend{padding:0 8px;font-weight:900}
.submission-demo fieldset label{display:flex;align-items:flex-start;gap:10px;font-weight:700}
.submission-demo input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;accent-color:var(--mastery-green)}
.submission-demo__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px}
.submission-demo button{font:inherit}
.text-button{border:0;background:transparent;color:var(--ink);font-weight:900;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.submission-result{margin-top:22px;padding:20px;border:2px solid currentColor;border-radius:10px}
.submission-result[data-state=pass]{background:color-mix(in srgb,var(--mastery-green) 10%,var(--paper));color:var(--mastery-green)}
.submission-result[data-state=revise]{background:color-mix(in srgb,var(--mastery-red) 9%,var(--paper));color:var(--mastery-red)}
.submission-result strong{display:block;font:700 1.45rem/1 Papernotes,Georgia,serif}
.submission-result p{margin:9px 0 0;color:var(--ink)}
.submission-result ul{margin:12px 0 0;padding-left:20px;color:var(--ink)}
.submission-result li+li{margin-top:5px}
.mastery-page :is(input,button,a,summary):focus-visible{outline:3px solid var(--mastery-red);outline-offset:4px}

@media(max-width:840px){.essential-grid{grid-template-columns:1fr 1fr}.lab-launch{grid-template-columns:1fr;align-items:start}.submission-demo__fields{grid-template-columns:1fr}}
@media(max-width:700px){.essential-grid,.command-flow,.lab-video,.lab-launch,.copy-choice,.submission-demo,.safety-note{margin-left:0}.essential-grid{grid-template-columns:1fr}.command-flow>li,.submission-demo{padding:20px}.command-flow__heading{grid-template-columns:36px 1fr}.command-flow__heading>span{width:32px;height:32px}.lab-video{grid-template-columns:1fr;padding:20px}.lab-video__play{width:44px;height:44px}.lab-video__actions{align-items:flex-start;flex-direction:column;gap:11px}.lab-launch{padding:22px}.lab-launch .notes-button{width:100%;text-align:center}.copy-choice{grid-template-columns:1fr;padding:22px}.submission-demo__actions{align-items:stretch;flex-direction:column}.submission-demo__actions .notes-button,.submission-demo__actions .text-button{width:100%;text-align:center}}
