/* School practice: one reading grid; scoped styles, no overrides of campaign pages. */
.pr-page { background:#fff; }
.pr-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:12px; padding-block:24px; }
.pr-breadcrumb a { text-decoration:none; min-height:24px; }
.pr-breadcrumb span:last-child { max-width:55ch; }
.pr-hero { padding:24px 0 56px; }
.pr-hero-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--gutter); align-items:end; }
.pr-hero-copy { grid-column:1/9; }
.pr-hero .s-kicker { color:var(--blue); margin-bottom:20px; }
.pr-hero h1,.pr-hub-hero h1 { font-size:clamp(38px,4.3vw,64px); line-height:1.08; max-width:22ch; letter-spacing:-.048em; text-wrap:balance; }
.pr-hero-lead { margin-top:24px; max-width:58ch; font-size:20px; line-height:1.55; }
.pr-hero-side { grid-column:10/-1; font-size:13px; line-height:1.7; color:var(--muted); padding-bottom:4px; }
.pr-hero-side p+p { margin-top:14px; }
.pr-hero-side a { display:inline-block; }
.pr-meta { display:flex; gap:12px 24px; flex-wrap:wrap; font-size:12px; color:var(--muted); margin-top:24px; }
.pr-visual { border-radius:2px; height:300px; width:100%; object-fit:cover; object-position:center 52%; margin-top:40px; }
.pr-visual-caption { color:var(--muted); font-size:12px; margin-top:8px; }
.pr-layout { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--gutter); align-items:start; padding-bottom:72px; }
.pr-toc { grid-column:1/4; position:sticky; top:calc(var(--header-height) + 24px); padding-right:24px; font-size:13px; }
.pr-toc h2 { font-size:11px; letter-spacing:.065em; text-transform:uppercase; margin-bottom:16px; color:var(--muted); }
.pr-toc ol { list-style:none; padding:0; margin:0; border-left:1px solid var(--line); }
.pr-toc li { margin:0; }
.pr-toc a { display:block; text-decoration:none; padding:9px 0 9px 16px; margin-left:-1px; border-left:2px solid transparent; line-height:1.5; transition:color .16s,border-color .16s; }
.pr-toc a:hover,.pr-toc a[aria-current] { color:var(--blue); border-left-color:var(--blue); }
.pr-reading { grid-column:5/12; font-size:17px; line-height:1.8; min-width:0; }
.pr-answer { padding:24px 0 24px 24px; border-left:3px solid var(--blue); margin-bottom:48px; }
.pr-answer strong { display:block; font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--blue); margin-bottom:8px; }
.pr-reading section { margin-top:52px; scroll-margin-top:calc(var(--header-height) + 28px); }
.pr-reading section:first-child { margin-top:0; }
.pr-reading h2 { font-size:clamp(26px,2.1vw,32px); line-height:1.22; margin-bottom:24px; letter-spacing:-.035em; }
.pr-reading h3 { font-size:22px; margin-block:28px 12px; }
.pr-reading p { text-wrap:pretty; }
.pr-reading ul,.pr-reading ol { margin-block:20px; padding-left:24px; }
.pr-reading li { padding-left:4px; margin-block:10px; }
.pr-reading strong { font-weight:600; }
.pr-reading a:not(.s-button) { color:var(--blue); }
.pr-reading :not(pre)>code { background:var(--paper); font-size:.86em; padding:2px 5px; border-radius:3px; overflow-wrap:anywhere; }
.pr-formula { padding:24px; background:var(--paper); margin-block:24px; font-size:15px; line-height:1.6; border-left:2px solid var(--blue); }
.pr-table-wrap { overflow-x:auto; max-width:100%; margin-block:28px; padding-bottom:8px; }
.pr-table-hint { display:none; }
@media(max-width:760px) { .pr-table-hint { display:block; font-size:12px; color:var(--muted); margin-top:24px; }.pr-table-hint+.pr-table-wrap { margin-top:12px; } }
.pr-table-wrap table { border-collapse:collapse; width:100%; font-size:13px; line-height:1.55; min-width:540px; }
.pr-table-wrap th,.pr-table-wrap td { text-align:left; vertical-align:top; padding:14px 12px; border-bottom:1px solid var(--line); }
.pr-table-wrap th:first-child,.pr-table-wrap td:first-child { padding-left:0; }
.pr-table-wrap thead th { color:var(--muted); font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.025em; border-top:1px solid var(--line); }
.pr-table-wrap tbody th { font-weight:500; min-width:90px; }
.pr-table-wrap caption { text-align:left; font-size:13px; font-weight:600; margin-bottom:14px; }
.pr-prompt { background:var(--night); color:#f2f4fc; border-radius:4px; margin-block:28px; padding:24px; }
.pr-prompt-head { display:flex; gap:20px; justify-content:space-between; align-items:center; font-size:12px; color:#c6cde0; border-bottom:1px solid #3e465c; padding-bottom:16px; }
.pr-prompt button { border:1px solid #7887b9; border-radius:4px; background:transparent; color:#fff; padding:9px 12px; font-size:12px; min-height:40px; }
.pr-prompt button:hover { background:#263352; }
.pr-prompt pre { white-space:pre-wrap; overflow-wrap:anywhere; font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace; margin:22px 0 0; }
.pr-prompt [data-copy-status] { font-size:12px; color:#c6d1ff; margin:0; }
.pr-prompt [data-copy-status]:not(:empty) { margin-top:12px; }
.pr-download { background:var(--pale); padding:28px; margin-block:36px; }
.pr-download h2 { font-size:26px; margin-bottom:12px; }
.pr-download p { font-size:14px; line-height:1.7; }
.pr-download .s-actions { margin-top:20px; gap:12px; }
.pr-download small { display:block; margin-top:14px; color:var(--muted); font-size:12px; }
.pr-editorial { padding-top:28px; border-top:1px solid var(--line); margin-top:48px; font-size:13px; color:var(--muted); }
.pr-sources { font-size:13px; }
.pr-sources ol { padding-left:20px; }
.pr-sources li { margin-block:18px; }
.pr-sources span { display:block; margin-top:6px; color:var(--muted); }
.pr-school { padding:64px 0; background:var(--paper); border-top:1px solid var(--line); }
.pr-school-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--gutter); }
.pr-school-grid>div:first-child { grid-column:1/7; }
.pr-school-grid>div:last-child { grid-column:8/-1; }
.pr-school h2 { font-size:clamp(30px,3vw,44px); line-height:1.14; max-width:20ch; }
.pr-school p { font-size:17px; max-width:54ch; }
.pr-school .s-actions { margin-top:28px; }
.pr-school small { display:block; font-size:12px; color:var(--muted); margin-top:16px; }
.pr-related { padding-block:64px; }
.pr-related h2 { font-size:26px; margin-bottom:24px; }
.pr-related-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.pr-related-list a { text-decoration:none; padding-top:20px; border-top:1px solid var(--line); display:block; font-size:20px; line-height:1.35; letter-spacing:-.025em; }
.pr-related-list a:hover { color:var(--blue); border-top-color:var(--blue); }
.pr-related-list small { display:block; color:var(--muted); font-size:11px; margin-bottom:12px; letter-spacing:0; }
.pr-telegram { display:flex; align-items:center; justify-content:space-between; gap:24px 48px; padding-block:32px; border-top:1px solid var(--line); }
.pr-telegram h2 { font-size:22px; line-height:1.25; margin-bottom:10px; }
.pr-telegram p { max-width:62ch; font-size:14px; line-height:1.65; color:var(--muted); }
.pr-telegram>a { flex-shrink:0; display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--blue); }
.pr-telegram>a:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
@media(max-width:760px) { .pr-telegram { display:block; padding-block:28px; }.pr-telegram>a { margin-top:12px; } }
.pr-hub-hero { padding:44px 0 0; background:var(--paper); }
.pr-hub-hero h1 { max-width:18ch; }
.pr-hub-hero .s-kicker { color:var(--blue); }
.pr-hub-hero .pr-visual { height:380px; margin-top:36px; }
.pr-hub-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:26px; }
.pr-list { padding-block:64px; }
.pr-list-title { display:flex; align-items:baseline; justify-content:space-between; gap:24px; padding-bottom:26px; }
.pr-list-title h2 { font-size:32px; }
.pr-list-title p { font-size:13px; color:var(--muted); }
.pr-guide-row { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--gutter); align-items:start; border-top:1px solid var(--line); padding-block:32px; }
.pr-guide-row>a { grid-column:1/4; overflow:hidden; }
.pr-guide-row img { width:100%; aspect-ratio:3/2; object-fit:cover; transition:transform .25s; }
.pr-guide-row>a:hover img { transform:scale(1.025); }
.pr-guide-main { grid-column:5/10; }
.pr-guide-main .s-kicker { margin-bottom:14px; color:var(--muted); font-size:10px; }
.pr-guide-main h3 { font-size:clamp(25px,2.3vw,34px); line-height:1.2; margin-bottom:16px; }
.pr-guide-main h3 a { text-decoration:none; }
.pr-guide-main h3 a:hover { color:var(--blue); }
.pr-guide-main p { font-size:15px; line-height:1.7; max-width:50ch; }
.pr-guide-meta { grid-column:11/-1; font-size:12px; color:var(--muted); }
.pr-guide-meta time { display:block; margin-top:10px; }
.pr-guide-meta a { display:block; margin-top:16px; color:var(--blue); padding-block:10px; }
.pr-method { padding-block:52px; border-top:1px solid var(--line); }
.pr-method h2 { font-size:30px; max-width:23ch; margin-bottom:20px; }
.pr-method p { max-width:75ch; font-size:16px; }
.pr-hero-copy { animation:pr-enter .5s both; }
@keyframes pr-enter { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@media(max-width:1000px) { .pr-hero-copy { grid-column:1/10; }.pr-hero-side { grid-column:10/-1; }.pr-toc { grid-column:1/4; padding-right:0; }.pr-reading { grid-column:4/-1; }.pr-hero h1 { font-size:46px; }.pr-hero-lead{font-size:18px}.pr-guide-main{grid-column:4/10}.pr-guide-row>a{grid-column:1/4}.pr-guide-meta{grid-column:10/-1} }
@media(max-width:760px) { .pr-hero-grid,.pr-layout,.pr-school-grid,.pr-guide-row { display:block; }.pr-breadcrumb{font-size:11px;padding-block:20px}.pr-breadcrumb span:last-child{display:none}.pr-hero{padding:12px 0 36px}.pr-hero h1{font-size:clamp(32px,7.8vw,46px);max-width:24ch}.pr-hero-lead{font-size:17px;margin-top:20px}.pr-hero-side{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.pr-hero-side p+p{margin-top:8px}.pr-visual{height:190px;margin-top:26px}.pr-meta{font-size:11px;gap:8px 16px}.pr-layout{padding-bottom:44px}.pr-toc{position:static;margin-bottom:34px;padding:0}.pr-toc ol{columns:2;column-gap:16px}.pr-toc li{break-inside:avoid}.pr-toc a{padding:8px 10px;font-size:12px}.pr-reading{font-size:16px;line-height:1.75}.pr-answer{padding:18px 0 18px 18px;margin-bottom:34px}.pr-reading section{margin-top:38px}.pr-reading h2{font-size:26px;margin-bottom:18px}.pr-prompt{padding:18px}.pr-prompt pre{font-size:12px}.pr-download{padding:22px}.pr-school{padding:44px 0}.pr-school-grid>div:last-child{margin-top:24px}.pr-related{padding-block:40px}.pr-related-list{grid-template-columns:1fr;gap:20px}.pr-related-list a{font-size:22px}.pr-hub-hero{padding-top:24px}.pr-hub-hero .pr-visual{height:240px;margin-top:26px}.pr-list{padding-block:40px}.pr-list-title{display:block}.pr-list-title p{margin-top:12px}.pr-guide-row{padding-block:28px}.pr-guide-row>a{display:block;width:100%;margin-bottom:24px}.pr-guide-row img{aspect-ratio:2.1/1}.pr-guide-main h3{font-size:28px}.pr-guide-meta{display:flex;gap:24px;align-items:center;margin-top:18px}.pr-guide-meta a{margin:0}.pr-method{padding-block:36px} }
@media(max-width:380px) { .pr-toc ol{columns:1}.pr-prompt-head{gap:8px}.pr-prompt{padding:14px}.pr-download .s-button{width:100%} }
@media(prefers-reduced-motion:reduce) { .pr-hero-copy { animation:none; }.pr-guide-row img,.pr-toc a { transition:none; } }
