/* Vecnine checkpoint 54 · Batch 21
   Consolidated learning routes, composition tools, theory guides, and responsive study flow. */
:root{--v54-orange:#e8692a;--v54-gold:#c9a96e;--v54-lavender:#b9a5d6;--v54-bg:#0a0720;--v54-ink:#f2edf7;--v54-muted:rgba(242,237,247,.62)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:6.3rem;overflow-x:hidden}
body.v54-polished{overflow-x:hidden}
body.v54-polished main,body.v54-polished section,body.v54-polished article,body.v54-polished aside,body.v54-polished nav{min-width:0}
body.v54-polished img,body.v54-polished svg,body.v54-polished canvas,body.v54-polished video{max-width:100%}
.v55-skip-link{position:fixed;z-index:100000;top:.7rem;left:.8rem;transform:translateY(-180%);padding:.72rem 1rem;border:1px solid rgba(201,169,110,.55);border-radius:.55rem;background:#fff;color:#130d27;font:800 .85rem/1 system-ui,sans-serif;text-decoration:none}.v55-skip-link:focus{transform:none}
body.v54-polished :focus-visible{outline:3px solid var(--v54-gold)!important;outline-offset:3px!important}

.v55-continuity-page{min-height:100vh;margin:0;display:grid;place-items:center;padding:clamp(1rem,5vw,3rem);background:radial-gradient(circle at 17% 14%,rgba(232,105,42,.12),transparent 27%),radial-gradient(circle at 84% 78%,rgba(185,165,214,.11),transparent 30%),#09061a;color:var(--v54-ink);font:16px/1.67 Outfit,Inter,system-ui,sans-serif}
.v55-continuity-card{width:min(720px,100%);padding:clamp(1.35rem,5vw,3.2rem);border:1px solid rgba(201,169,110,.30);border-radius:1.15rem;background:linear-gradient(145deg,rgba(232,105,42,.075),rgba(185,165,214,.07) 55%,rgba(255,255,255,.022));box-shadow:0 30px 80px rgba(0,0,0,.46);position:relative;overflow:hidden}
.v55-continuity-card::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--v54-orange),var(--v54-gold),var(--v54-lavender))}
.v55-continuity-card__eyebrow{margin:0;color:var(--v54-orange);font:750 .72rem/1.35 "JetBrains Mono",ui-monospace,monospace;letter-spacing:.13em;text-transform:uppercase}
.v55-continuity-card h1{max-width:16ch;margin:.65rem 0 1rem;font:400 clamp(2rem,7vw,4.2rem)/.98 Fraunces,Georgia,serif;letter-spacing:-.035em}
.v55-continuity-card p{max-width:63ch;color:var(--v54-muted)}
.v55-continuity-card__note{padding-left:1rem;border-left:2px solid rgba(185,165,214,.55)}
.v55-continuity-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.72rem 1rem;border:1px solid rgba(232,105,42,.55);border-radius:.65rem;background:rgba(232,105,42,.11);color:#fff;text-decoration:none;font-weight:750}

/* The established reading maps remain; this pass improves hierarchy and scanning. */
body.v54-polished .v35-reading-map,body.v54-polished .v44-map{position:relative;overflow:hidden;box-shadow:0 20px 56px rgba(0,0,0,.18)}
body.v54-polished .v35-reading-map::before,body.v54-polished .v44-map::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--v54-orange),var(--v54-gold),var(--v54-lavender))}
body.v54-polished .v35-mechanism-grid,body.v54-polished .v44-grid{align-items:stretch}
body.v54-polished .v35-mechanism-grid>div,body.v54-polished .v44-card{min-height:108px;display:flex;flex-direction:column;justify-content:flex-start}
body.v54-polished .v35-mechanism-grid dt,body.v54-polished .v44-card b{letter-spacing:.07em}
body.v54-polished .v35-local-nav,body.v54-polished .v44-nav{scroll-margin-top:6.4rem}
body.v54-polished .v35-local-nav a,body.v54-polished .v44-nav a{min-height:42px;display:inline-flex;align-items:center}

/* Composition pages distinguish operation from outcome at a glance. */
body[data-v35-page="compare"].v54-polished .v35-reading-map,
body[data-v35-page="combinations"].v54-polished .v35-reading-map{border-color:rgba(185,165,214,.28)}
body[data-v35-page="compare"].v54-polished .v35-mechanism-grid>div:nth-child(even),
body[data-v35-page="combinations"].v54-polished .v35-mechanism-grid>div:nth-child(even){background:rgba(185,165,214,.035)}
body[data-v35-page="sequence"].v54-polished .v35-reading-map{border-color:rgba(201,169,110,.30)}
body[data-v35-page="instincts"].v54-polished .v35-reading-map{border-color:rgba(185,165,214,.30)}

/* Theory guides: center/stance/instinct cards retain differences on small screens. */
body.guide-centers.v54-polished .v35-mechanism-grid>div:nth-child(-n+3){border-top-width:2px}
body.guide-stances.v54-polished .v44-card:nth-child(1){border-top:2px solid rgba(201,169,110,.65)}
body.guide-stances.v54-polished .v44-card:nth-child(2){border-top:2px solid rgba(80,144,184,.65)}
body.guide-stances.v54-polished .v44-card:nth-child(3){border-top:2px solid rgba(196,112,80,.65)}
body.guide-instincts.v54-polished .v44-map{border-color:rgba(185,165,214,.28)}
body.guide-countertypes.v54-polished .v44-map{border-color:rgba(232,105,42,.25)}

/* Practice hub: the choice surface should precede explanation, not disappear into it. */
body.v54-polished .game-card,body.v54-polished .practice-card,body.v54-polished [class*="game-card"]{min-width:0}
body.v54-polished .v35-next-step,body.v54-polished .v44-next{margin-bottom:clamp(2rem,5vw,4rem)}

@media(max-width:820px){
 body.v54-polished .v35-mechanism-grid,body.v54-polished .v44-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.v54-polished .v35-local-nav ol{display:flex;overflow-x:auto;gap:.45rem;padding-bottom:.35rem;scroll-snap-type:x proximity}
 body.v54-polished .v35-local-nav li{flex:0 0 auto;scroll-snap-align:start}
}
@media(max-width:560px){
 html{scroll-padding-top:5.2rem}
 body.v54-polished .v35-mechanism-grid,body.v54-polished .v44-grid{grid-template-columns:1fr!important}
 body.v54-polished .v35-mechanism-grid>div,body.v54-polished .v44-card{min-height:0}
 body.v54-polished .v35-reading-actions,body.v54-polished .v44-nav{display:grid!important;grid-template-columns:1fr!important}
 body.v54-polished .v35-reading-actions a,body.v54-polished .v44-nav a{width:100%;justify-content:center}
 body.v54-polished table{display:block;max-width:100%;overflow-x:auto}
}
@media(prefers-reduced-motion:reduce){body.v54-polished *,body.v54-polished *::before,body.v54-polished *::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
