:root{--ink:#f7f5ee;--muted:#b7c6db;--navy:#06101e;--blue:#10233b;--gold:#f2b84b;--cyan:#61d7e8;--line:#ffffff1c;--green:#6ee7a2;--site-header-height:130px;--text-scale:1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 20% 0,#17345a 0,#071423 42%,#030914 100%);color:var(--ink);font:1rem/1.6 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button,a,select,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}p{margin:0 0 1em}h1,h2,h3{font-family:Georgia,serif;line-height:1.15;overflow-wrap:break-word}h1{margin:8px 0 10px}h2{font-size:1.9rem;margin:0 0 16px}h3{font-size:1.5rem;margin:15px 0 8px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;padding:10px 16px;background:var(--gold);color:var(--navy);z-index:100}.skip-link:focus{top:10px}
/* One persistent navigation row, compact reading controls above it. */
.site-header{position:sticky;top:0;z-index:30;padding:6px 3vw;background:#050e1afa;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.header-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:7px;flex-shrink:0;line-height:1.2}.brand>span{font-size:26px;color:var(--gold)}.brand>b{font-size:1rem}
.reading-toolbar{display:flex;align-items:center;gap:7px;margin-left:auto}.reading-toolbar>label{font-size:.75rem;color:var(--muted);font-weight:400;white-space:nowrap}.font-size-controls{display:flex;align-items:center;gap:3px}.font-size-controls button{min-height:28px;min-width:28px;padding:3px;background:transparent;border:0;border-radius:5px;font-size:.8125rem;line-height:1}.font-size-controls button:hover:not(:disabled){background:#ffffff12;color:var(--gold)}#font-size{width:65px;height:24px;margin:0;accent-color:var(--gold)}#font-size-value{font-size:.75rem;min-width:3em;color:var(--muted);text-align:center}#font-reset{font-size:1rem}
.header-menu{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:5px;padding-top:5px;border-top:1px solid var(--line)}.page-navigation{min-width:0;flex:0 1 auto}.navigation-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.navigation-actions>a{font-size:.875rem;line-height:1.3;padding:6px 0;color:var(--muted)}.navigation-actions .nav-categories{color:var(--gold);font-weight:650}.navigation-actions .nav-parent{color:var(--cyan)}.navigation-actions a:hover{text-decoration:underline;text-underline-offset:4px}.nav-divider{color:#71869d}.navigation-actions .nav-back{display:grid;place-items:center;font-size:1.25rem;line-height:1;min-width:32px;min-height:32px;padding:3px;border:0;border-radius:7px;background:transparent;color:var(--ink);box-shadow:none}.nav-back:hover{background:#ffffff12}.lesson-jump{display:flex;min-width:0}.lesson-jump select{width:clamp(140px,14vw,210px);max-width:100%;padding:6px 8px;background:#10233b;border:1px solid #61d7e830;border-radius:7px;font-size:.8125rem;min-height:34px}
.site-search{display:flex;flex:1 1 180px;min-width:150px;max-width:370px;background:#10233b;border:1px solid #61d7e834;border-radius:8px;overflow:hidden}.site-search:focus-within{outline:2px solid var(--cyan);outline-offset:2px}.site-search input{width:100%;min-width:0;flex:1;padding:7px 9px;border:0;background:transparent;outline:0;font-size:.8125rem}.site-search input::placeholder{color:#aabbd0}.site-search button{padding:6px 9px;border:0;border-left:1px solid var(--line);background:transparent;color:var(--gold);font-size:.8125rem}.main-menu{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-left:auto}.main-menu a{padding:6px 0;color:var(--muted);font-size:.8125rem;white-space:nowrap}.main-menu a:hover,.main-menu a[aria-current]{color:var(--gold)}
/* The complete scene is retained; the atmospheric layer fills extra-wide space. */
.section-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);align-items:center;min-height:225px;padding:24px 5vw;gap:26px;background:#06101e}.section-hero:before{content:'';position:absolute;inset:0;z-index:-3;background:radial-gradient(ellipse at 75% 30%,#17314b77,transparent 65%),linear-gradient(105deg,#12243b,#06101e 80%)}.hero-scene{position:absolute;z-index:-2;left:0;top:50%;transform:translateY(-50%);height:100%;max-height:none;width:auto;max-width:none;object-fit:contain;mask-image:linear-gradient(90deg,#000 0 65%,transparent 100%);pointer-events:none}.section-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 0 25%,#06101e65 40%,#06101edb 55%,#06101e7a 100%)}.hero-copy{grid-column:2;min-width:0;max-width:840px}.hero-copy h1{font-size:clamp(1.75rem,calc(3vw * var(--text-scale)),2.75rem);text-shadow:0 2px 12px #0008}.hero-copy p{font-size:.9375rem;line-height:1.55;color:#e0e8f3;margin:0;max-width:740px}.eyebrow{display:inline-block;color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.encyclopedia-title{font-size:.875rem;text-transform:none;letter-spacing:.02em}
/* The same card language is used for categories, lessons and search results. */
.section{width:min(1220px,90vw);margin:0 auto;padding:26px 0 64px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:17px}.section-head h2{font-size:clamp(1.6rem,calc(2.6vw * var(--text-scale)),2.25rem);margin:4px 0}.section-head>span{font-size:.875rem;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{display:flex;flex-direction:column;min-width:0;overflow:hidden;position:relative;border:1px solid var(--line);border-radius:20px;background:linear-gradient(150deg,#17314edb,#091523);box-shadow:0 12px 35px #0003;transition:border-color .2s,transform .2s}.card:hover{transform:translateY(-3px);border-color:#f2b84b88}.card-icons{display:flex;align-items:center;gap:14px;padding:20px 20px 0}.icon{display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;border-radius:17px;background:radial-gradient(circle at 30% 20%,#ffe3a0,#d78e26);color:#07111e;font-size:36px;line-height:1;box-shadow:0 7px 22px #f2b84b13}.card-open{display:block;flex:1;padding:16px 20px 0;min-width:0}.category-card .card-open{padding-top:0}.card h3{font-size:1.5rem;line-height:1.2;margin:14px 0 8px}.card p{font-size:.9375rem;color:var(--muted);margin:0;line-height:1.65}.card-open:hover h3{color:#ffe0a1}.card-open:focus-visible{outline-offset:-3px}.card-link-label{display:block;margin-top:16px;font-size:.875rem;font-weight:650;color:var(--gold)}.card-link-label>span{float:right;font-size:1.1rem}.card-progress{padding:14px 20px 18px;margin-top:auto}.topic-icons{display:flex;justify-content:space-between;gap:6px;flex:1;min-width:0}.topic-icon{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;min-width:0;color:var(--cyan);border-radius:9px;padding:3px 0}.topic-icon>span{display:grid;place-items:center;width:34px;height:34px;font-size:24px;background:#61d7e810;border:1px solid transparent;border-radius:10px;line-height:1}.topic-icon small{font-size:.6875rem;color:#d0deef;text-align:center;line-height:1.25;overflow-wrap:anywhere}.topic-icon:hover{background:#61d7e813}.topic-icon:hover>span{border-color:transparent}.lesson-card .card-open{padding-top:20px}.lesson-card .card-open p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.lesson-card{scroll-margin-top:calc(var(--site-header-height) + 20px)}.linked-lesson{border-color:var(--gold);box-shadow:0 0 0 3px #f2b84b44}.is-complete{border-color:#6ee7a26b;background:linear-gradient(145deg,#173e40,#091523)}
.progress-summary{display:flex;align-items:center;flex-wrap:wrap;gap:7px 16px;margin:0 0 16px;color:#dfe8f5;font-size:.875rem}.save-status{margin-left:auto;color:var(--muted);font-size:.75rem}.save-error{color:#ffca8a}.progress-retry{padding:4px 10px;background:transparent;color:var(--gold);border:1px solid var(--gold);border-radius:8px}.completion-control{display:inline-flex;align-items:center;gap:9px;min-height:40px;font-size:.875rem;font-weight:650;cursor:pointer;color:#dce9f5}.completion-control input{width:21px;height:21px;flex-shrink:0;margin:0;accent-color:var(--green);cursor:pointer}.completion-control input:disabled{opacity:.45;cursor:wait}.completion-control:has(input:checked){color:var(--green)}.progress-row{display:flex;align-items:center;gap:10px;font-size:.8125rem;margin-top:8px}.bar{height:7px;flex:1;overflow:hidden;border-radius:10px;background:#ffffff1c;min-width:50px}.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--gold));transition:width .2s}.lesson-status{min-width:0}.lesson-meter{display:flex;align-items:center;gap:10px;font-size:.75rem;color:var(--muted)}.lesson-meter>span{min-width:3em;text-align:right}.category-progress{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:8px 14px;margin-bottom:18px;border:1px solid var(--line);border-radius:12px;background:#ffffff05;font-size:.875rem;color:var(--muted)}.category-progress>.bar{max-width:300px}.search-results{display:grid;gap:32px}.search-category,.journey-group{min-width:0}.search-category .section-head a,.journey-group .section-head a{color:#ffdb93}.search-category .section-head a:hover,.journey-group .section-head a:hover{text-decoration:underline}.search-result-count{color:var(--muted);font-size:.9375rem;margin:0 0 20px}.journey-group+.journey-group{margin-top:36px}.empty-state{padding:28px;border:1px solid var(--line);border-radius:20px;background:#10233b77}.empty-state p{color:var(--muted)}.empty-state .primary{display:inline-flex;margin-top:12px}
/* Tutorial: text on the left, a correctly proportioned board on the right. */
.lesson-view{width:min(1320px,92vw);margin:auto;padding:26px 0 70px}.lesson-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:start}.lesson-copy{grid-column:1;grid-row:1;min-width:0}.board-wrap{position:sticky;top:calc(var(--site-header-height) + 16px);grid-column:2;grid-row:1;min-width:0;display:flex;flex-direction:column;align-items:center}.board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));width:min(100%,calc(100dvh - var(--site-header-height) - 165px));min-width:220px;aspect-ratio:1;border:8px solid #c78b3d;border-radius:12px;overflow:hidden;box-shadow:0 18px 55px #0007}.sq{position:relative;min-width:0;min-height:0;overflow:hidden}.sq.light{background:#e6c389}.sq.dark{background:#815331}.chess-piece{position:absolute;bottom:10%;left:10%;width:80%;height:76%;overflow:hidden;pointer-events:none}.piece-p{height:63%}.piece-r{height:70%}.piece-n{height:74%}.piece-b{height:76%}.piece-q,.piece-k{height:78%}.sq:after{content:attr(data-square);position:absolute;top:3px;left:3px;font:400 clamp(.5rem,calc(.65vw * var(--text-scale)),.6875rem)/1 system-ui;z-index:3;pointer-events:none}.sq.light:after{color:#896c47;text-shadow:none}.sq.dark:after{color:#c3a17c;text-shadow:none}.sq.hot{box-shadow:none}.sq.hot:before{content:'';position:absolute;inset:3px;border:2px solid #ffeb00;border-radius:2px;background:#ffeb0052;box-shadow:inset 0 0 13px #ffeb0066;z-index:0;pointer-events:none}.board-tools{width:100%;max-width:570px;margin-top:10px}.board-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #61d7e831;border-radius:10px;background:#10233b;padding:9px 12px;font-size:.875rem;line-height:1.35}.board-caption b{color:var(--gold);min-width:0;overflow-wrap:anywhere}.board-caption>span{font-size:.75rem;color:var(--muted);flex-shrink:0}.board-controls{display:flex;gap:7px;margin-top:8px}.board-controls button{padding:5px 13px;border:1px solid #61d7e841;border-radius:8px;background:#10233b;font-size:1rem;min-height:36px}.board-controls select{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;background:#10233b;padding:5px 8px;font-size:.8125rem}.board-follow{display:block;text-align:center;color:var(--muted);font-size:.75rem;margin-top:7px}.lesson-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.8125rem;color:var(--muted);margin:0 0 12px}.download-score{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}.lesson-completion{padding:10px 16px;border:1px solid var(--line);border-radius:12px;background:#10233b55;margin:10px 0 18px}.lesson-index{padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#10233b55;margin:12px 0 22px}.lesson-index summary,.source-notes summary{cursor:pointer;color:var(--gold);font-size:.875rem;font-weight:650}.lesson-index ol{padding-left:22px;max-height:360px;overflow:auto}.lesson-index li{padding:3px 0;font-size:.9375rem}.lesson-index a{color:var(--cyan);text-decoration:underline;text-underline-offset:3px}.step{border-left:2px solid #ffffff26;padding:18px 16px 18px 22px;margin:0 0 16px;border-radius:0 14px 14px 0;scroll-margin-top:calc(var(--site-header-height) + 24px);transition:border-color .2s,background .2s}.step h2{font-size:1.5rem;margin:4px 0 12px}.step p{color:#cbd7e6;line-height:1.8;font-size:1rem;overflow-wrap:break-word}.step p:last-child{margin-bottom:0}.step.active{background:#132c4866;border-left-color:var(--gold)}.step.active h2{color:#ffe1a5}.step:hover{border-left-color:var(--cyan)}.chapter-no{display:block;color:var(--cyan);font-size:.75rem;font-weight:750;letter-spacing:.08em}.position-context{display:block;color:#a4bdd6;font-size:.8125rem;margin-bottom:12px}.coord{padding:0 3px;border-radius:4px;color:#fff0c3;background:#f2b84b1c;border-bottom:1px solid #f2b84b77;cursor:help;white-space:nowrap}.coord:hover,.coord:focus{background:var(--gold);color:#07111e}.position-details{border-top:1px solid var(--line);padding-top:10px;margin-top:13px}.position-details summary{font-weight:500;font-size:.8125rem;color:#9dcfdb}.position-details p{font-size:.875rem;margin-top:12px}.san-list{font-family:ui-monospace,monospace;line-height:1.8}.quiz{padding:22px;border:1px solid #61d7e843;border-radius:18px;background:#132a44;margin-top:22px}.quiz h2{font-size:1.375rem;margin:10px 0 16px}.quiz button{display:block;text-align:left;width:100%;padding:12px;margin:8px 0;border:1px solid var(--line);border-radius:10px;background:#081626;font-size:.9375rem}.quiz button:hover{border-color:var(--cyan)}.quiz .answer-correct{border-color:var(--green);background:#163b30}.quiz .answer-wrong{border-color:#ee9e70}.quiz #quiz-feedback{font-size:.875rem;margin:12px 0 0;color:#dce8f4}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin-top:24px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 17px;border:1px solid var(--gold);border-radius:11px;font-size:.9375rem;font-weight:750}.primary{background:var(--gold);color:#102030}.secondary{background:#10233b;color:var(--gold)}.source-notes{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-top:20px;font-size:.8125rem;color:var(--muted)}.source-notes ul{padding-left:18px}.source-notes li{margin:9px 0;overflow-wrap:anywhere}.source-notes a{color:var(--cyan);text-decoration:underline}.source-notes p{margin-bottom:0}.game-players{display:flex;flex-wrap:wrap;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:16px}.player{display:flex;align-items:center;gap:10px;flex:1;min-width:180px}.player>div:last-child{display:flex;flex-direction:column}.player small{font-size:.75rem;color:var(--gold)}.player b{font-size:.9375rem;line-height:1.3}.portrait{height:82px;width:72px;flex-shrink:0;overflow:hidden;border:1px solid #f2b84b66;border-radius:11px;background:#0c1c2c}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.portrait-right img{position:relative;width:220%;max-width:none;height:auto;left:-114%;top:-25%;object-fit:initial;transform:none}.player-piece{display:grid;place-items:center;width:64px;height:72px;font-size:40px;flex-shrink:0;border:1px solid var(--line);border-radius:10px;background:#10233b;color:var(--gold)}.game-facts{flex-basis:100%;font-size:.8125rem;color:var(--muted);margin:0}.toast{position:fixed;bottom:18px;left:50%;width:max-content;max-width:92vw;transform:translate(-50%,150px);background:#e1f6e9;color:#16452e;padding:11px 18px;border-radius:15px;font-size:.9375rem;z-index:100;box-shadow:0 8px 24px #0005;transition:transform .2s}.toast.show{transform:translate(-50%,0)}
@media(min-width:1600px){.section-hero{grid-template-columns:minmax(0,34%) minmax(0,1fr);min-height:240px}}
@media(max-width:1200px){.brand small{display:none}.header-top{gap:10px}.reading-toolbar{gap:6px}.site-search{max-width:none}.page-navigation{margin-left:0}.header-menu{gap:8px}.lesson-layout{gap:26px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-icons{gap:12px}.hero-copy p{font-size:.875rem}.hero-copy h1{font-size:2rem}}
@media(max-width:850px){.site-header{position:relative;backdrop-filter:none}.header-top{justify-content:space-between}.reading-toolbar{margin-left:auto}.site-search{flex-basis:100%;min-width:0;order:3}.header-menu{justify-content:space-between}.main-menu{gap:0;justify-content:space-between;width:100%}.main-menu a{padding:6px 8px}.page-navigation{width:100%}.navigation-actions{justify-content:flex-end}.navigation-actions .nav-back{margin-right:auto}.lesson-jump select{width:210px}.navigation-trail{font-size:1rem;padding:9px 5vw}.section-hero{min-height:210px;grid-template-columns:minmax(0,36%) minmax(0,1fr);gap:20px}.hero-scene{left:-40px}.hero-copy h1{font-size:1.8rem}.lesson-view{width:92vw;padding-top:18px}.lesson-layout{display:block}.board-wrap{grid-column:1;grid-row:1;top:0;z-index:15;flex-direction:row;align-items:center;gap:12px;padding:10px 0;background:#071422fa;max-height:50dvh}.board{width:min(42vw,230px);min-width:130px;flex-shrink:0;border-width:5px;border-radius:9px}.board-tools{margin:0;flex:1;min-width:0}.board-caption{display:flex;flex-direction:column;align-items:flex-start;padding:8px;font-size:.8125rem;gap:6px}.board-caption>span{font-size:.6875rem}.board-controls{gap:4px}.board-controls button{padding:5px 10px}.board-controls select{font-size:.75rem;padding:5px 3px}.board-follow{text-align:left;font-size:.6875rem;line-height:1.4}.lesson-copy{grid-column:1;grid-row:2;margin-top:20px}.step{scroll-margin-top:calc(var(--mobile-board-height,min(42vw,230px)) + 12px)}.lesson-card{scroll-margin-top:15px}.sq:after{font-size:clamp(7px,1.6vw,10px);top:2px;left:2px}.save-status{margin-left:0}.lesson-completion{margin-top:0}.section-head h2{font-size:1.75rem}}
@media(max-width:560px){.site-header{padding:8px 4vw}.brand>b{font-size:.9375rem}.brand>span{font-size:25px}.reading-toolbar{justify-content:flex-end;flex-wrap:wrap;gap:4px;max-width:100%}.reading-toolbar>label{font-size:.75rem}.font-size-controls{gap:4px}.font-size-controls button{min-width:28px;min-height:30px;padding:4px;font-size:.75rem}#font-size{width:70px}#font-size-value{font-size:.6875rem}#font-reset{font-size:.6875rem}.main-menu a{font-size:.75rem;padding:5px 6px}.navigation-actions{gap:6px}.navigation-actions>a,.navigation-actions>button{font-size:.75rem;min-height:38px;padding:6px 9px}.navigation-actions .nav-back{font-size:1rem}.lesson-jump{flex:1;order:4;flex-basis:100%}.lesson-jump select{width:100%}.navigation-trail{font-size:.9375rem;gap:7px}.section-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:0 0 16px;gap:0}.hero-scene{position:relative;left:auto;top:auto;transform:none;height:auto;width:100%;max-width:100%;max-height:none;mask-image:linear-gradient(180deg,#000 0 82%,transparent 100%);margin-bottom:-8px}.section-hero:before{background-size:auto 100%;background-position:center;opacity:.3}.section-hero:after{background:linear-gradient(180deg,transparent 0 40%,#06101e99 80%)}.hero-copy{padding:0 5vw;max-width:none}.hero-copy h1{font-size:1.65rem;line-height:1.15;margin:5px 0 0}.hero-copy p{display:none}.hero-copy .eyebrow{font-size:.6875rem;letter-spacing:.05em}.section{width:90vw;padding:20px 0 44px}.grid{grid-template-columns:minmax(0,1fr);gap:15px}.card-open,.card-icons{padding-left:18px;padding-right:18px}.card-progress{padding:12px 18px 16px}.card h3{font-size:1.45rem}.card p{font-size:.9375rem}.topic-icon small{font-size:.6875rem}.section-head{gap:7px}.section-head h2{font-size:1.6rem}.progress-summary{font-size:.8125rem;gap:4px 12px}.category-progress{gap:8px}.category-progress>.bar{flex-basis:100%;max-width:none}.board-wrap{gap:9px}.board-caption{font-size:.75rem}.board-controls button{padding:4px 8px}.board-controls select{max-width:calc(100% - 68px)}.board-follow{font-size:.625rem}.step{padding:16px 10px 18px 15px;margin-bottom:12px}.step h2{font-size:1.375rem}.step p{line-height:1.75}.quiz{padding:18px}.empty-state{padding:22px}.player{min-width:145px}.portrait{width:60px;height:70px}.player b{font-size:.875rem}.actions>.primary{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.card:hover{transform:none}}

@media(min-width:851px) and (max-height:650px){.board{min-width:160px;width:min(100%,calc(100dvh - var(--site-header-height) - 140px))}.board-follow{display:none}}

/* Coordinate controls inherit the reader’s text size and remain usable by mouse, keyboard and touch. */
button.coord{display:inline;font:inherit;line-height:inherit;color:var(--gold);background:#f6bf4a12;border:0;border-bottom:1px dashed currentColor;border-radius:3px;padding:0 .14em;cursor:pointer;vertical-align:baseline;min-width:0;min-height:0}button.coord:hover,button.coord:focus-visible{color:#06111f;background:#ffeb00;outline:2px solid #ffeb00;outline-offset:2px}.move-reference{color:inherit}.move-reference:hover{color:#ffdf8c}.step h2 .move-reference{font:inherit}.san-list{line-height:1.9}

/* Keep the same single navigation on narrow screens and with enlarged text. */
@media(max-width:1200px){.header-menu{gap:8px 12px}.main-menu{width:auto;margin-left:auto;gap:10px}.main-menu a{padding:6px 0}.page-navigation{margin:0}.site-search{max-width:none;flex:1 1 190px}}
@media(max-width:850px){.site-header{position:sticky;top:0}.header-top{gap:6px}.reading-toolbar{gap:4px}.reading-toolbar>label{font-size:.6875rem}.header-menu{display:flex;gap:6px 10px}.page-navigation{width:auto;flex:1 1 100%}.navigation-actions{justify-content:flex-start;gap:6px}.navigation-actions .nav-back{margin:0}.navigation-actions>a{font-size:.8125rem;padding:4px 0}.lesson-jump{order:0;flex:1 1 130px;max-width:250px}.lesson-jump select{width:100%;min-height:32px}.site-search{order:0;flex:1 1 180px;min-width:100px}.main-menu{width:auto;gap:10px;justify-content:flex-end;margin-left:auto}.main-menu a{font-size:.75rem;padding:5px 0}.board-wrap{top:var(--site-header-height);max-height:calc(100dvh - var(--site-header-height) - 100px)}.step,.quiz{scroll-margin-top:calc(var(--site-header-height) + var(--mobile-board-height,min(42vw,230px)) + 12px)}.lesson-card{scroll-margin-top:calc(var(--site-header-height) + 12px)}}
@media(max-width:560px){.site-header{padding:5px 3vw}.brand>b{font-size:.875rem}.brand>span{font-size:22px}.reading-toolbar>label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#font-size{width:42px}.font-size-controls button{min-width:26px;min-height:28px}#font-size-value{font-size:.6875rem}.lesson-jump{flex:1 1 110px;max-width:none}.navigation-actions{gap:5px}.navigation-actions>a{font-size:.75rem}.navigation-actions .nav-back{min-height:30px;min-width:30px;font-size:1.15rem}.site-search{flex-basis:100%}.main-menu{width:100%;gap:16px;margin:0;justify-content:flex-end}.main-menu a{font-size:.75rem}.board-follow{display:none}}

/* Selection remains visible on completed cards and after anchored navigation. */
.card:hover,.card:focus-within,.card.linked-lesson,.card:target{background:linear-gradient(150deg,#254868,#132638);border-color:#ffdb35;box-shadow:inset 0 0 0 1px #ffdb35,0 12px 35px #0003}
.card.linked-lesson,.card:target{box-shadow:inset 0 0 0 2px #ffdb35,0 0 0 2px #ffdb354d;transform:none}
.card.linked-lesson:focus{outline:2px solid #ffdb35;outline-offset:2px}
.step:hover,.step.active,.step:focus-within{border-left-color:#ffdb35;background:#24446188}
.topic-icon:focus-visible{background:#61d7e813}.topic-icon:focus-visible>span{border-color:var(--gold)}
/* One proportional scene grows with the title at every text-size setting. */
.section-hero{height:auto}.hero-scene{max-height:none}.hero-copy{padding-block:2px}
@media(min-width:561px){.section-hero{min-height:225px}.hero-scene{height:100%;width:auto;top:0;left:0;transform:none;object-position:left center}}
.piece-mention{display:inline;white-space:normal}.piece-name{font:inherit}
.move-reference{border-radius:4px;cursor:pointer}.move-reference:focus-visible{outline:2px solid #ffeb00;outline-offset:3px}
.board-caption>span{max-width:32%;white-space:normal}
.board{position:relative}.move-ghost{z-index:5;pointer-events:none;will-change:transform}.chess-piece.moving-source{visibility:hidden}.move-ghost .chess-piece{visibility:visible}.legacy-anchor{display:block;height:0;scroll-margin-top:calc(var(--site-header-height) + 24px)}
.quiz-answer{display:flex;align-items:flex-start;gap:12px;margin:10px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#0b1c2e}.quiz-answer:hover,.quiz-answer:focus-within{background:#203d56;border-color:#ffdb35}.quiz-answer>button[data-answer]{flex:0 0 36px;width:36px;min-height:36px;margin:0;padding:5px;text-align:center;border:1px solid #c1d7e64d;font-weight:700;background:#122d46}.answer-text{flex:1;min-width:0;line-height:1.7;font-size:.9375rem}.quiz button.coord{display:inline;width:auto;padding:0 .14em;margin:0;background:#f6bf4a12;border:0;border-bottom:1px dashed currentColor;border-radius:3px;font:inherit}.quiz button.coord:hover,.quiz button.coord:focus-visible{background:#ffeb00;color:#06111f}.quiz-answer.answer-correct{background:#163b30;border-color:var(--green)}.quiz-answer.answer-wrong{border-color:#ee9e70}
@media(max-width:850px){.legacy-anchor{scroll-margin-top:calc(var(--site-header-height) + var(--mobile-board-height,min(42vw,230px)) + 12px)}}

.search-slot{display:flex;justify-content:center;flex:1 1 190px;min-width:150px}.search-slot>.site-search{flex:1 1 auto;width:100%;margin-inline:auto}.navigation-actions .nav-parent,.lesson-jump select{color:var(--gold);font-weight:650;font-size:.875rem;line-height:1.3}.lesson-jump{position:relative}.lesson-jump select{appearance:none;-webkit-appearance:none;border:0;border-radius:0;background:transparent;box-shadow:none;padding:6px 22px 6px 0;cursor:pointer}.lesson-jump-chevron{position:absolute;right:3px;top:calc(50% + 5px);transform:translateY(-50%);width:1.125rem;height:1.125rem;color:var(--gold);pointer-events:none}.lesson-jump select:hover{text-decoration:underline;text-underline-offset:4px}.lesson-jump option{background:#10233b;color:var(--gold)}.piece-mention:focus-visible{outline:2px solid #ffeb00;outline-offset:3px}.piece-mention:hover .piece-name{color:#ffdf8c}
@media(max-width:850px){.search-slot{flex:1 1 180px;min-width:100px}.navigation-actions .nav-parent,.lesson-jump select{font-size:.8125rem}.board-caption>span{max-width:100%}}
@media(max-width:560px){.search-slot{flex-basis:100%;min-width:0}.navigation-actions .nav-parent,.lesson-jump select{font-size:.75rem}}

/* The selected lesson wraps as real text; the native select stays operable above it. */
.navigation-actions .nav-parent{white-space:normal;overflow-wrap:anywhere;max-width:100%}.navigation-actions .lesson-jump{display:block;flex:0 1 auto;width:auto;max-width:min(34vw,560px);min-width:140px;padding:6px 24px 6px 0;color:var(--gold);font-size:.875rem;font-weight:650;line-height:1.3}.lesson-jump-value{display:block;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;overflow:visible}.navigation-actions .lesson-jump select{position:absolute;inset:0;opacity:0;width:100%;height:100%;max-width:none;min-height:0;padding:0;cursor:pointer}.lesson-jump:focus-within{outline:2px solid var(--gold);outline-offset:3px;border-radius:3px}.lesson-jump:hover .lesson-jump-value{text-decoration:underline;text-underline-offset:4px}
@media(max-width:850px){.navigation-actions .lesson-jump{max-width:min(50vw,420px);font-size:.8125rem;flex:0 1 auto}.navigation-actions .nav-parent{max-width:100%}}
@media(max-width:560px){.navigation-actions .lesson-jump{max-width:100%;font-size:.75rem;min-width:100px;flex:1 1 150px}}

/* Compact graphic controls preserve native lesson selection. */
.navigation-actions .lesson-jump.is-empty{flex:0 0 32px;width:32px;min-width:32px;max-width:32px;height:32px;padding:0}.lesson-jump.is-empty .lesson-jump-chevron{right:50%;transform:translate(50%,-50%)}
.navigation-actions .nav-back{margin-inline-start:12px;color:var(--gold);border:0;box-shadow:none}.nav-back svg{display:block;width:1.1875rem;height:1.1875rem}.nav-back:hover{background:#f9bd4814}.nav-back:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Keep lesson completion compact while the meter adapts to the available width. */
.lesson-completion .lesson-status{display:flex;align-items:center;gap:12px}.lesson-completion .completion-control{flex:0 0 auto}.lesson-completion .lesson-meter{flex:1 1 0;min-width:0;gap:8px}.lesson-completion .lesson-meter .bar{min-width:0}.lesson-completion .lesson-meter>span{min-width:0;flex-shrink:0}

/* Uniform category surfaces, transparent shortcuts and a compact completion row below the index. */
.home-catalog .category-card{background:linear-gradient(150deg,#17314e,#091523)}.home-catalog .category-card:hover,.home-catalog .category-card:has(:focus-visible){background:linear-gradient(150deg,#254868,#132638)}
.topic-icon{padding:7px 4px;border:1px solid transparent;border-radius:10px;background:transparent;transition:background .15s,border-color .15s}.topic-icon>span,.topic-icon:hover>span,.topic-icon:focus-visible>span{background:transparent;border-color:transparent}.topic-icon:hover,.topic-icon:focus-visible{background:#61d7e824;border-color:#ffdb35}
.lesson-index{margin-bottom:12px}.lesson-index+.lesson-completion{margin-top:0}.lesson-completion .lesson-status{flex-wrap:nowrap}

/* The lesson list opens below its trigger, with an exact five-pixel text inset. */
.navigation-actions .lesson-jump{padding:0;min-width:0}.lesson-jump:focus-within{outline:0}.lesson-jump:hover .lesson-jump-value{text-decoration:none}
.lesson-jump-trigger{display:flex;align-items:center;gap:5px;width:100%;min-height:32px;padding:6px 5px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--gold);font:inherit;line-height:1.3;text-align:left;box-shadow:none}
.lesson-jump-value{min-width:0;flex:0 1 auto}.lesson-jump-value:empty{display:none}.lesson-jump .lesson-jump-chevron,.lesson-jump.is-empty .lesson-jump-chevron{position:static;flex:0 0 1.125rem;width:1.125rem;height:1.125rem;transform:translateY(5px);pointer-events:none}
.lesson-jump-trigger:hover,.lesson-jump-trigger:focus-visible,.lesson-jump.is-open .lesson-jump-trigger{border-color:#ffdb35;outline:0}
.lesson-options{position:absolute;top:calc(100% + 2px);left:0;z-index:100;min-width:100%;width:max-content;max-width:min(440px,calc(100vw - 24px));max-height:min(420px,55dvh);overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:5px;padding:5px 0;border:1px solid #ffdb35;border-radius:7px;background:#10233b;box-shadow:0 14px 32px #0008}
.lesson-option{display:block;padding:8px 5px;font-size:inherit;line-height:1.45;font-weight:500;color:var(--gold);white-space:normal;overflow-wrap:anywhere;text-decoration:none}.lesson-option[aria-selected="true"]{background:#f2b84b19;font-weight:700}.lesson-option.is-active,.lesson-option:hover{background:#284763;color:#ffe6a5;text-decoration:none}

.navigation-actions .lesson-jump.is-empty{flex:0 0 auto;width:auto;min-width:32px;max-width:none;height:auto}.lesson-options .lesson-option:hover{text-decoration:none}

/* Mint marks the linked move; yellow remains the general explanation highlight. */
:root{--move-highlight:#91e5b2}
.sq.hot.move-hot:before{border-color:var(--move-highlight);background:#91e5b24d;box-shadow:inset 0 0 13px #91e5b266}
.sq.hot.glossary-hot:before{border-color:#b7f5bb;background:#b7f5bb55;box-shadow:inset 0 0 13px #b7f5bb80}
#app .coord.is-move-coordinate,#app .coord-label.is-move-coordinate{padding:0 .14em;color:#08291b;background:var(--move-highlight);border-bottom:1px solid var(--move-highlight);border-radius:3px;outline:1px solid var(--move-highlight);outline-offset:1px}
#app .move-reference:has(.is-move-coordinate):focus-visible{outline-color:var(--move-highlight)}
.player .portrait-credit{max-width:32em;margin-top:5px;font-size:.6875rem;line-height:1.45;color:var(--muted);overflow-wrap:anywhere}
.portrait-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* Medio Gioco: compact module navigation and accessible section targets. */
.module-navigation{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 24px}.module-navigation a{padding:8px 12px;border:1px solid var(--line);border-radius:10px;color:var(--gold);background:#10233b;font-size:.875rem}.module-navigation a:hover,.module-navigation a:focus-visible{border-color:var(--gold);background:#1b3551}.course-module{scroll-margin-top:calc(var(--site-header-height) + 16px);margin:0 0 30px}.module-heading{margin-bottom:16px}.module-heading h2{font-size:1.7rem;margin:4px 0 8px}.module-heading p{color:var(--muted);margin:0;max-width:760px}.search-module{margin:18px 0}.search-module h3{font-size:1.1rem;color:var(--gold);margin-bottom:14px}.module-context{font-size:.875rem;color:var(--gold);margin-bottom:12px}.module-context a{text-decoration:underline;text-underline-offset:4px}

.course-module .lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

/* A quiet blue and gold surface makes the persistent navigation easy to find. */
.site-header{background:linear-gradient(115deg,#0c1e31,#102a40 55%,#0a1a2b);border-bottom:1px solid #f6bf4a55;box-shadow:0 4px 20px #0003}
.header-menu{background:linear-gradient(100deg,#20425b88,#122b4299);border:1px solid #e2bc6533;border-radius:10px;padding:5px 10px;margin-block:4px}
#font-reset,.navigation-actions #previous-page{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;min-height:30px;min-width:30px;padding:3px;border:0;border-radius:6px;background:transparent;color:var(--gold);box-shadow:none;font-size:1.15rem;line-height:1;cursor:pointer}
.navigation-actions #previous-page{margin-inline-start:12px}
#font-reset:hover,.navigation-actions #previous-page:hover{background:#f6bf4a1c}
#font-reset:focus-visible,.navigation-actions #previous-page:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.category-jump .lesson-options{min-width:min(240px,calc(100vw - 24px))}

/* Technical words retain the surrounding typography; definitions do not move the text. */
.chess-term{font-style:italic;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:#e2bc6566;text-underline-offset:3px;cursor:pointer;border-radius:2px}
.chess-term:hover,.chess-term.term-active,.chess-term:focus-visible{color:#ffe09a;text-decoration-color:currentColor;background:#f6bf4a13}
.chess-term:focus-visible{outline:1px solid var(--gold);outline-offset:3px}
.chess-tooltip[hidden]{display:none}
.chess-tooltip{position:fixed;z-index:1000;max-width:min(25rem,calc(100vw - 16px));max-height:min(50dvh,26rem);overflow:auto;padding:14px 16px;border:1px solid #d5a84c;border-radius:12px;background:#10283d;color:#eef5fb;box-shadow:0 12px 40px #0008;font-size:.9375rem;line-height:1.6;font-style:normal;pointer-events:auto}
.chess-tooltip strong{display:block;margin:0;color:#ffe09a;font-size:1rem;font-style:normal;overflow-wrap:anywhere}
.chess-tooltip .tooltip-heading{display:flex;align-items:center;gap:8px;margin-bottom:8px;position:sticky;top:-14px;z-index:1;background:#10283d}
.chess-tooltip .tooltip-heading strong{flex:1}
.chess-tooltip .tooltip-heading button{flex:0 0 32px;width:32px;height:32px;min-height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#ffe09a;font-size:1.25rem;cursor:pointer;line-height:1}
.chess-tooltip .tooltip-heading button:hover{background:#ffffff12}
.chess-tooltip :focus-visible{outline:2px solid #f4be4f;outline-offset:2px}
.chess-tooltip:focus{outline:1px solid #ffe09a}
.chess-tooltip .chess-term,.glossary-entry .chess-term{color:inherit;cursor:pointer}
.chess-tooltip .chess-term:hover,.chess-tooltip .chess-term.term-active,.glossary-entry .chess-term:hover{color:#ffe09a}
.chess-tooltip .tooltip-permalink{display:inline-block;margin-top:12px;color:#c8d9e9;font-size:.8125rem;text-decoration:none}
.chess-tooltip .tooltip-permalink:hover{color:#ffe09a;text-decoration:underline}
.chess-tooltip .tooltip-board-example{margin:10px 0 0;color:#f5d077;font-size:.8125rem;line-height:1.5}
@media(pointer:fine){.chess-term,.chess-tooltip .chess-term,.glossary-entry .chess-term{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='18' viewBox='0 0 14 18'%3E%3Cpath d='M2 1v13l3.4-3 2.3 5 2-1-2.3-5H12Z' fill='%23fff8df' stroke='%23101d2a' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/svg%3E") 2 1,pointer}}
.chess-tooltip.tooltip-ancestor{display:none}
@media(max-width:699px){.chess-tooltip{padding:12px;overscroll-behavior:contain}.chess-tooltip .tooltip-heading{top:-12px}.chess-tooltip .tooltip-heading button{width:40px;height:40px;flex-basis:40px}.chess-tooltip .tooltip-description{line-height:1.85}.chess-tooltip .chess-term{padding-block:3px}}
.page-glossary{margin:22px 0;padding:14px 16px;border:1px solid #e2bc6540;border-radius:12px;background:#10283d66;font-size:.9375rem;line-height:1.6}
.page-glossary summary{cursor:pointer;color:var(--gold);font-weight:600}
.page-glossary dl,.glossary-page dl{margin:16px 0}
.glossary-entry{margin:0 0 16px;scroll-margin-top:calc(var(--site-header-height) + 18px)}
.glossary-entry dt{color:#ffe09a;font-weight:650;margin-bottom:4px}
.glossary-entry dfn{font-style:normal}.glossary-entry dd{margin:0;color:var(--muted);line-height:1.7}
.term-permalink{margin-left:10px;color:var(--muted);font-weight:400;text-decoration:none}
.term-permalink:hover{color:var(--gold)}
.glossary-link{padding:15px 5vw 30px;text-align:center;font-size:.875rem;color:var(--muted)}
.glossary-link a,.page-glossary>a{color:var(--gold)}
.glossary-alphabet{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.glossary-alphabet a{padding:6px 10px;border:1px solid var(--line);border-radius:6px;color:var(--gold)}
.glossary-letter{scroll-margin-top:calc(var(--site-header-height) + 18px);margin:30px 0}
.glossary-entry dt{display:flex;align-items:baseline;gap:8px}.glossary-entry dt dfn a{color:inherit}.term-permalink{font-size:.82em;text-decoration:none}
.glossary-term-page{max-width:1100px}.term-trail{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:22px;color:var(--muted);font-size:.92rem}.term-trail a{color:var(--gold)}
.glossary-term-answer,.glossary-term-section,.glossary-course-cta{margin:0 0 24px;padding:clamp(18px,3vw,30px);border:1px solid var(--line);border-radius:16px;background:var(--theme-surface-soft)}
.glossary-term-answer h2,.glossary-term-section h2,.glossary-course-cta h2{margin:.35rem 0 .8rem}.glossary-term-answer p{font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.75}.glossary-term-answer dfn{color:var(--theme-heading);font-style:normal;font-weight:750}
.term-alias{display:inline-block;margin:4px 5px 4px 0;padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:var(--navy)}
.glossary-lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.glossary-lesson-card{padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--navy)}.glossary-lesson-card h3{margin:.3rem 0 .65rem}.glossary-lesson-card h3 a{color:var(--theme-heading)}.glossary-lesson-card>p:last-child{margin-bottom:0;color:var(--muted);line-height:1.65}
.glossary-related-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;list-style:none}.glossary-related-list li{padding:14px;border-left:3px solid var(--gold);background:var(--navy)}.glossary-related-list a{display:block;margin-bottom:5px;color:var(--theme-heading);font-weight:700}.glossary-related-list span{display:block;color:var(--muted);font-size:.92rem;line-height:1.55}.glossary-course-cta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}.glossary-course-cta h2,.glossary-course-cta p{flex-basis:100%}.glossary-course-cta>a:not(.primary){align-self:center;color:var(--gold)}
@media(max-width:560px){.header-menu{padding:5px 7px}.navigation-actions #previous-page{margin-inline-start:8px}.chess-tooltip{font-size:.875rem}.page-glossary{padding:12px}}
@media(max-width:700px){.glossary-lesson-grid,.glossary-related-list{grid-template-columns:1fr}.glossary-term-answer,.glossary-term-section,.glossary-course-cta{padding:16px}}
@media(max-width:560px){.course-module .lesson-grid{grid-template-columns:minmax(0,1fr)}.section-hero-portrait .hero-scene{width:100%;height:170px;object-fit:contain;object-position:left center}}

/* Brief entrance motion. Layout, scrolling and draggable dividers stay immediate. */
@keyframes surface-reveal{from{opacity:0}to{opacity:1}}
@keyframes panel-reveal{from{opacity:0;translate:0 -5px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){
 .lesson-options:not([hidden]){animation:panel-reveal 300ms cubic-bezier(.22,.61,.36,1)}
 .chess-tooltip:not([hidden]):not(.tooltip-ancestor){animation:surface-reveal 160ms ease-out}
 details[open]>:not(summary){animation:surface-reveal 180ms ease-out}
 .lesson-video-dialog[open]{animation:surface-reveal 420ms ease-out}
 .lesson-video-dialog[open]::backdrop{animation:surface-reveal 360ms ease-out}
 .contact-thanks:not([hidden]){animation:surface-reveal 220ms ease-out}
}

/* Mobile and tablet: two calm navigation rows, with controls revealed on demand. */
.header-actions{display:none;align-items:center;gap:4px;margin-left:auto}.mobile-text-size-value{display:none;color:var(--muted);font-size:.75rem;font-weight:700;font-variant-numeric:tabular-nums}
.header-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:8px;border:0;border-radius:8px;background:transparent;color:var(--gold);font-size:.875rem;line-height:1.25}
.header-toggle:hover,.header-toggle[aria-expanded="true"]{background:#f2b84b1c}
.header-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
@media(max-width:1100px),(hover:none) and (pointer:coarse){
 .site-header{position:sticky;top:0;padding:4px max(12px,env(safe-area-inset-right)) 4px max(12px,env(safe-area-inset-left));backdrop-filter:none}
 .header-top{flex-wrap:nowrap;gap:4px;min-height:44px}
 .brand{min-width:0;flex-shrink:1;gap:5px}.brand>b{font-size:.9375rem;overflow-wrap:anywhere}.brand>span{font-size:24px}
 .header-actions{display:flex;flex:0 0 auto}.header-toggle{font-size:.875rem}.mobile-text-size-value{display:inline}
 .header-menu{display:block;margin:3px 0 0;padding:4px 7px;border-radius:8px}
 .page-navigation{width:100%;margin:0;min-width:0}
 .navigation-actions{justify-content:flex-start;align-items:center;gap:2px 6px;flex-wrap:wrap}
 .navigation-actions .nav-categories,.navigation-actions .nav-parent,.navigation-actions .lesson-jump{font-size:.875rem;line-height:1.4}
 .navigation-actions .nav-categories,.navigation-actions .nav-parent{min-height:38px;padding:8px 0;display:flex;align-items:center;min-width:0}
 .navigation-actions .nav-parent{flex:0 1 auto;max-width:100%;overflow-wrap:anywhere}
 .navigation-actions .lesson-jump{flex:1 1 160px;max-width:100%;min-width:0;order:0}
 .navigation-actions .lesson-jump.is-empty{flex:0 0 auto;min-width:40px}
 .lesson-jump-trigger{min-height:40px;padding:6px 5px;gap:5px}
 .lesson-jump-value{white-space:normal;overflow:visible;overflow-wrap:anywhere}
 .navigation-actions #previous-page{flex:0 0 40px;width:40px;min-width:40px;height:40px;min-height:40px;margin-inline-start:auto}
 .lesson-options{max-width:calc(100vw - 24px);max-height:min(420px,55dvh);box-shadow:0 14px 32px #000a}
 .lesson-option{min-height:44px;padding:11px 5px;line-height:1.5}
 .navigation-ready .reading-toolbar,.navigation-ready .search-slot,.navigation-ready .main-menu{display:none;position:absolute;top:calc(100% + 6px);left:12px;right:12px;width:auto;max-width:none;max-height:calc(100dvh - var(--site-header-height) - 24px);overflow-y:auto;overscroll-behavior:contain;margin:0;padding:14px;border:1px solid #e2bc6566;border-radius:12px;background:#102a40;box-shadow:0 12px 30px #0008;z-index:40}
 .navigation-ready[data-panel="menu"] .main-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .main-menu a{display:flex;align-items:center;justify-content:flex-start;white-space:normal;min-height:48px;padding:10px 12px;font-size:1rem;line-height:1.4;border-radius:8px;background:#ffffff06;overflow-wrap:anywhere}
 .main-menu a:hover,.main-menu a[aria-current]{background:#f2b84b18;color:var(--gold)}
 .navigation-ready[data-panel="search"] .search-slot{display:flex;align-items:center;justify-content:center}
 .site-search{min-width:0;max-width:none;flex-basis:auto}.site-search input{font-size:1rem;min-height:46px;padding:10px 12px}.site-search button{font-size:.9375rem;min-height:46px;padding:10px 12px}
 .navigation-ready[data-panel="reading"] .reading-toolbar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}
 @media(prefers-reduced-motion:no-preference){
  .navigation-ready[data-panel="menu"] .main-menu,
  .navigation-ready[data-panel="search"] .search-slot,
  .navigation-ready[data-panel="reading"] .reading-toolbar{animation:panel-reveal 300ms cubic-bezier(.22,.61,.36,1)}
 }
 .reading-toolbar>label{position:static;width:auto;height:auto;clip:auto;overflow:visible;font-size:.875rem}
 .font-size-controls{gap:6px;max-width:100%}.font-size-controls button,#font-reset{min-width:40px;min-height:40px;width:40px;height:40px;font-size:1rem}.font-size-controls #font-size{width:clamp(50px,20vw,120px);height:40px}#font-size-value{font-size:.875rem}
 /* The board and its controls take part in normal document scrolling. */
 .lesson-layout{display:block}.lesson-view{width:min(100%,820px);padding:12px 0 48px}
 .board-wrap{position:static;top:auto;display:flex;flex-direction:column;align-items:center;gap:0;max-height:none;padding:0;background:transparent;z-index:auto}
 .board{width:min(100%,620px);min-width:0;max-width:100%;flex:none;border-width:6px;border-radius:10px;aspect-ratio:1;box-shadow:0 8px 28px #0005}
 .board-tools{width:min(100%,620px);max-width:none;flex:none;margin:0;padding:10px 12px 0}
 .board-caption{flex-direction:row;align-items:center;gap:10px;padding:8px 10px;font-size:.875rem}.board-caption>span{font-size:.8125rem;max-width:38%;text-align:right}
 .board-controls{gap:8px;margin-top:8px}.board-controls button{min-width:44px;min-height:44px;padding:8px}.board-controls select{max-width:none;font-size:1rem;min-height:44px;padding:8px;flex:1}
 .board-follow{display:none}.lesson-copy{margin:20px 0 0;padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right))}
 .step,.quiz,.legacy-anchor,.lesson-card{scroll-margin-top:calc(var(--site-header-height) + 16px)}
 .sq:after{font-size:clamp(8px,1.9vw,11px);font-weight:400;top:3px;left:3px}
 .lesson-index summary{min-height:30px}.lesson-index a{display:inline-block;padding-block:6px}
 .lesson-completion{padding:8px 12px}.completion-control{min-height:44px}.lesson-meta{font-size:.875rem}
 .step{padding:16px 12px;margin-bottom:12px}.step p{font-size:1rem;line-height:1.75}
 .quiz-answer{gap:10px}.quiz-answer>button[data-answer]{min-height:44px;min-width:44px}
 .player{min-width:0;flex-basis:240px}.player>div:last-child{min-width:0}.player b{overflow-wrap:anywhere}
 .section-hero{min-height:0;gap:16px;padding-block:18px}.hero-copy h1{font-size:clamp(1.65rem,3.5vw,2rem)}
 .topic-icon{min-height:66px;min-width:44px}.module-navigation a,.glossary-alphabet a{min-height:44px}
}
@media(max-width:600px){
 .header-toggle{padding:8px 6px}.header-actions{gap:0}.header-toggle svg{width:18px;height:18px}
 .section-hero{display:flex;flex-direction:column;gap:0;padding:0 0 14px}
 .hero-scene{position:relative;top:auto;left:auto;transform:none;width:100%;height:auto;object-fit:contain;object-position:left center;mask-image:linear-gradient(180deg,#000 0 82%,transparent 100%);margin-bottom:-6px}
 .section-hero-portrait .hero-scene{height:150px;width:100%;object-fit:contain;object-position:left center}
 .hero-copy{padding:0 16px}.hero-copy h1{font-size:1.65rem}.hero-copy p{display:none}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.045em}
 .board{width:100%;border-radius:0;border-width:5px}.lesson-view{padding-top:10px}
 .section{width:calc(100% - 28px);padding-top:20px}.grid{grid-template-columns:minmax(0,1fr)}
 .section-head h2{font-size:1.6rem}.card p{font-size:1rem}.topic-icon small{font-size:.75rem}
 .board-caption{font-size:.8125rem}.board-caption>span{font-size:.75rem}
}
@media(max-width:360px){.brand>b{font-size:.8125rem}.brand>span{font-size:21px}.header-toggle{min-width:40px}.header-toggle span{font-size:.8125rem}.site-header{padding-inline:8px}.header-menu{padding-inline:5px}.navigation-actions{gap:2px 5px}}
@media(max-height:500px) and (max-width:1100px){.navigation-ready .main-menu{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-options{max-height:calc(100dvh - var(--site-header-height) - 16px)}}
/* Keep navigation compact as lesson text grows; the brand remains a single word. */
@media(max-width:1100px),(hover:none) and (pointer:coarse){
 .brand>b{font-size:clamp(14px,.9375rem,16px);white-space:nowrap;overflow-wrap:normal}
 .header-toggle{font-size:clamp(14px,.875rem,16px)}
 .navigation-actions .nav-categories,.navigation-actions .nav-parent,.navigation-actions .lesson-jump{font-size:clamp(14px,.875rem,18px)}
 .nav-divider{font-size:clamp(14px,1rem,18px)}
}
@media(max-width:360px){.header-actions #menu-toggle span{display:none}.brand>b{font-size:14px}}
/* On phones the open section menu is a single readable list, even at 160% text. */
@media(max-width:600px){
 .navigation-ready[data-panel="menu"] .main-menu{grid-template-columns:minmax(0,1fr);gap:6px}
 .main-menu a{overflow-wrap:normal;word-break:normal;padding:10px 12px}
}

/* Ten high-legibility reading themes: five light and five dark choices. */
html[data-color-theme="classic"]{
 color-scheme:dark;--ink:#f7f5ee;--muted:#b7c6db;--navy:#06101e;--blue:#10233b;--gold:#f2b84b;--cyan:#61d7e8;--line:#ffffff1c;--green:#6ee7a2;
 --theme-page-background:radial-gradient(ellipse at 20% 0,#17345a 0,#071423 42%,#030914 100%);--theme-header-background:linear-gradient(115deg,#0c1e31,#102a40 55%,#0a1a2b);--theme-header-menu-background:linear-gradient(100deg,#20425b88,#122b4299);--theme-panel-background:#102a40;
 --theme-hero-background:#06101e;--theme-hero-atmosphere:radial-gradient(ellipse at 75% 30%,#17314b77,transparent 65%),linear-gradient(105deg,#12243b,#06101e 80%);--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#06101ef2 55%,#06101e 100%);
 --theme-card-background:linear-gradient(150deg,#17314edb,#091523);--theme-card-active-background:linear-gradient(150deg,#254868,#132638);--theme-home-card-background:linear-gradient(150deg,#17314e,#091523);--theme-surface:#10233b;--theme-surface-translucent:#10233b77;--theme-surface-soft:#10233b55;--theme-surface-strong:#132a44;--theme-control:#081626;
 --theme-answer:#0b1c2e;--theme-answer-hover:#203d56;--theme-answer-button:#122d46;--theme-step-active:#24446188;--theme-copy:#cbd7e6;--theme-hero-copy:#e0e8f3;--theme-strong-copy:#dfe8f5;--theme-topic-copy:#d0deef;--theme-placeholder:#aabbd0;--theme-heading:#ffe0a1;--theme-tooltip:#10283d;--theme-tooltip-text:#eef5fb;--theme-success:#163b30;--theme-warning:#ffca8a;
 --theme-icon-background:radial-gradient(circle at 30% 20%,#ffe3a0,#d78e26);--theme-icon-ink:#07111e;--theme-shadow:#0007;--theme-primary-ink:#102030;--theme-focus-ink:#06111f;--theme-panel-item:#ffffff06;--theme-panel-hover:#f2b84b18;--theme-accent-wash:#f2b84b1c;--theme-option-hover:#284763;
}
html[data-color-theme="white"]{
 color-scheme:light;--ink:#111827;--muted:#4b5563;--navy:#fff;--blue:#e6edf5;--gold:#7a3e00;--cyan:#005ea8;--line:#1f293744;--green:#17663d;
 --theme-page-background:#f6f7f9;--theme-header-background:#fff;--theme-header-menu-background:#f1f3f6;--theme-panel-background:#fff;
 --theme-hero-background:#dce9f5;--theme-hero-atmosphere:#dce9f5;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#dce9f5f2 55%,#dce9f5 100%);
 --theme-card-background:#fff;--theme-card-active-background:#eaf2f9;--theme-home-card-background:#fff;--theme-surface:#fff;--theme-surface-translucent:#fffffff2;--theme-surface-soft:#f4f6f8;--theme-surface-strong:#e7edf3;--theme-control:#fff;
 --theme-answer:#f4f6f8;--theme-answer-hover:#e1ebf3;--theme-answer-button:#e7edf3;--theme-step-active:#e6eff7;--theme-copy:#273444;--theme-hero-copy:#172033;--theme-strong-copy:#111827;--theme-topic-copy:#334155;--theme-placeholder:#566171;--theme-heading:#653500;--theme-tooltip:#111827;--theme-tooltip-text:#fff;--theme-success:#d8f2e2;--theme-warning:#7a2f00;
 --theme-icon-background:#005ea8;--theme-icon-ink:#fff;--theme-shadow:#0f172a24;--theme-primary-ink:#fff;--theme-focus-ink:#fff;--theme-panel-item:#eef2f6;--theme-panel-hover:#e6eef6;--theme-accent-wash:#f1e7dc;--theme-option-hover:#dfeaf3;
}
html[data-color-theme="pearl"]{
 color-scheme:light;--ink:#1f2937;--muted:#4b5563;--navy:#fff;--blue:#dde2e8;--gold:#704500;--cyan:#005f73;--line:#1f293747;--green:#17633c;
 --theme-page-background:#e7eaee;--theme-header-background:#f8fafc;--theme-header-menu-background:#eef1f4;--theme-panel-background:#f8fafc;
 --theme-hero-background:#dfe4ea;--theme-hero-atmosphere:#dfe4ea;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#dfe4eaf2 55%,#dfe4ea 100%);
 --theme-card-background:#f8fafc;--theme-card-active-background:#e2e8ee;--theme-home-card-background:#f8fafc;--theme-surface:#f8fafc;--theme-surface-translucent:#f8fafcf2;--theme-surface-soft:#eef1f4;--theme-surface-strong:#dce2e8;--theme-control:#fff;
 --theme-answer:#eef1f4;--theme-answer-hover:#dce5ea;--theme-answer-button:#e1e6eb;--theme-step-active:#dce7ec;--theme-copy:#303b49;--theme-hero-copy:#18222d;--theme-strong-copy:#1f2937;--theme-topic-copy:#3d4856;--theme-placeholder:#596575;--theme-heading:#5d3b00;--theme-tooltip:#1f2937;--theme-tooltip-text:#fff;--theme-success:#d5eddf;--theme-warning:#793100;
 --theme-icon-background:#005f73;--theme-icon-ink:#fff;--theme-shadow:#11182726;--theme-primary-ink:#fff;--theme-focus-ink:#fff;--theme-panel-item:#e7ebef;--theme-panel-hover:#dfe7ec;--theme-accent-wash:#eee5d6;--theme-option-hover:#d8e4e9;
}
html[data-color-theme="sky"]{
 color-scheme:light;--ink:#10243e;--muted:#40566d;--navy:#fff;--blue:#d8eafb;--gold:#704000;--cyan:#005ca8;--line:#17385b42;--green:#17643c;
 --theme-page-background:#e6f3ff;--theme-header-background:#f8fcff;--theme-header-menu-background:#eaf5ff;--theme-panel-background:#f8fcff;
 --theme-hero-background:#d5eaff;--theme-hero-atmosphere:#d5eaff;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#d5eafff2 55%,#d5eaff 100%);
 --theme-card-background:#f8fcff;--theme-card-active-background:#dbeeff;--theme-home-card-background:#f8fcff;--theme-surface:#f8fcff;--theme-surface-translucent:#f8fcfff2;--theme-surface-soft:#e9f5ff;--theme-surface-strong:#d7eafb;--theme-control:#fff;
 --theme-answer:#edf7ff;--theme-answer-hover:#d5eaff;--theme-answer-button:#dfedfa;--theme-step-active:#d9ecfc;--theme-copy:#273f58;--theme-hero-copy:#10243e;--theme-strong-copy:#10243e;--theme-topic-copy:#304961;--theme-placeholder:#50657b;--theme-heading:#593500;--theme-tooltip:#10243e;--theme-tooltip-text:#fff;--theme-success:#d4efdf;--theme-warning:#793000;
 --theme-icon-background:#005ca8;--theme-icon-ink:#fff;--theme-shadow:#10243e24;--theme-primary-ink:#fff;--theme-focus-ink:#fff;--theme-panel-item:#e4f1fc;--theme-panel-hover:#d6eafa;--theme-accent-wash:#efe3d2;--theme-option-hover:#d3e8f8;
}
html[data-color-theme="ivory"]{
 color-scheme:light;--ink:#241c14;--muted:#5d5042;--navy:#fff;--blue:#ead9bd;--gold:#6d3d00;--cyan:#075e66;--line:#4c382842;--green:#246238;
 --theme-page-background:#fff5df;--theme-header-background:#fffdf7;--theme-header-menu-background:#f7ead3;--theme-panel-background:#fffdf7;
 --theme-hero-background:#f1dfbd;--theme-hero-atmosphere:#f1dfbd;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#f1dfbdf2 55%,#f1dfbd 100%);
 --theme-card-background:#fffdf7;--theme-card-active-background:#f3e2c5;--theme-home-card-background:#fffdf7;--theme-surface:#fffdf7;--theme-surface-translucent:#fffdf7f2;--theme-surface-soft:#f8ecd7;--theme-surface-strong:#ead9bd;--theme-control:#fff;
 --theme-answer:#faf0df;--theme-answer-hover:#ead9bd;--theme-answer-button:#f0e1ca;--theme-step-active:#f2e2c8;--theme-copy:#40362c;--theme-hero-copy:#2a2118;--theme-strong-copy:#241c14;--theme-topic-copy:#4b4035;--theme-placeholder:#695e50;--theme-heading:#573100;--theme-tooltip:#241c14;--theme-tooltip-text:#fff;--theme-success:#dcebd8;--theme-warning:#7b3000;
 --theme-icon-background:#6d3d00;--theme-icon-ink:#fff;--theme-shadow:#3f2b1c24;--theme-primary-ink:#fff;--theme-focus-ink:#fff;--theme-panel-item:#f4e7d2;--theme-panel-hover:#ead9bd;--theme-accent-wash:#eee0c8;--theme-option-hover:#ead8ba;
}
html[data-color-theme="mint"]{
 color-scheme:light;--ink:#10261b;--muted:#3f5c4c;--navy:#fff;--blue:#d7eadf;--gold:#6f4200;--cyan:#00664f;--line:#1d49343f;--green:#17613a;
 --theme-page-background:#e7f5eb;--theme-header-background:#fbfffc;--theme-header-menu-background:#e4f2e8;--theme-panel-background:#fbfffc;
 --theme-hero-background:#d4eadc;--theme-hero-atmosphere:#d4eadc;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#d4eadcf2 55%,#d4eadc 100%);
 --theme-card-background:#fbfffc;--theme-card-active-background:#dcefe3;--theme-home-card-background:#fbfffc;--theme-surface:#fbfffc;--theme-surface-translucent:#fbfffcf2;--theme-surface-soft:#e8f5ec;--theme-surface-strong:#d7eadf;--theme-control:#fff;
 --theme-answer:#edf8f0;--theme-answer-hover:#d5eadc;--theme-answer-button:#deeee3;--theme-step-active:#daede0;--theme-copy:#294335;--theme-hero-copy:#10261b;--theme-strong-copy:#10261b;--theme-topic-copy:#345040;--theme-placeholder:#4d6858;--theme-heading:#573700;--theme-tooltip:#10261b;--theme-tooltip-text:#fff;--theme-success:#cfe9d8;--theme-warning:#793000;
 --theme-icon-background:#00664f;--theme-icon-ink:#fff;--theme-shadow:#10261b24;--theme-primary-ink:#fff;--theme-focus-ink:#fff;--theme-panel-item:#e1f0e6;--theme-panel-hover:#d4e9db;--theme-accent-wash:#eee4d2;--theme-option-hover:#d2e8da;
}
html[data-color-theme="night"]{
 color-scheme:dark;--ink:#f7fbff;--muted:#b9cee0;--navy:#142033;--blue:#123452;--gold:#ffd166;--cyan:#78dfff;--line:#d8ecff38;--green:#83e6aa;
 --theme-page-background:#061421;--theme-header-background:#081d30;--theme-header-menu-background:#0a243a;--theme-panel-background:#0d2942;
 --theme-hero-background:#081c2f;--theme-hero-atmosphere:#081c2f;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#081c2ff2 55%,#081c2f 100%);
 --theme-card-background:#0d2942;--theme-card-active-background:#153b5b;--theme-home-card-background:#0d2942;--theme-surface:#0d2942;--theme-surface-translucent:#0d2942f2;--theme-surface-soft:#102f4a;--theme-surface-strong:#143650;--theme-control:#071827;
 --theme-answer:#0a2237;--theme-answer-hover:#183d5a;--theme-answer-button:#123552;--theme-step-active:#173c58;--theme-copy:#d5e5f1;--theme-hero-copy:#f7fbff;--theme-strong-copy:#f7fbff;--theme-topic-copy:#c9ddeb;--theme-placeholder:#b9cee0;--theme-heading:#ffe09a;--theme-tooltip:#071827;--theme-tooltip-text:#fff;--theme-success:#18533b;--theme-warning:#ffd3a1;
 --theme-icon-background:#ffd166;--theme-icon-ink:#142033;--theme-shadow:#0009;--theme-primary-ink:#142033;--theme-focus-ink:#142033;--theme-panel-item:#14344e;--theme-panel-hover:#1a405e;--theme-accent-wash:#3b3727;--theme-option-hover:#1a405e;
}
html[data-color-theme="graphite"]{
 color-scheme:dark;--ink:#f7f8fa;--muted:#c5cbd2;--navy:#14191f;--blue:#2f3740;--gold:#ffd166;--cyan:#7dd3fc;--line:#ffffff38;--green:#82dfa6;
 --theme-page-background:#11161c;--theme-header-background:#181e25;--theme-header-menu-background:#1d242c;--theme-panel-background:#232a32;
 --theme-hero-background:#171c22;--theme-hero-atmosphere:#171c22;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#171c22f2 55%,#171c22 100%);
 --theme-card-background:#232a32;--theme-card-active-background:#343e49;--theme-home-card-background:#232a32;--theme-surface:#232a32;--theme-surface-translucent:#232a32f2;--theme-surface-soft:#2a323b;--theme-surface-strong:#303943;--theme-control:#14191f;
 --theme-answer:#1b2128;--theme-answer-hover:#38434e;--theme-answer-button:#303943;--theme-step-active:#343e49;--theme-copy:#dde1e5;--theme-hero-copy:#f7f8fa;--theme-strong-copy:#f7f8fa;--theme-topic-copy:#d2d7dc;--theme-placeholder:#c5cbd2;--theme-heading:#ffe29a;--theme-tooltip:#14191f;--theme-tooltip-text:#fff;--theme-success:#1d563e;--theme-warning:#ffd2a0;
 --theme-icon-background:#ffd166;--theme-icon-ink:#14191f;--theme-shadow:#0009;--theme-primary-ink:#14191f;--theme-focus-ink:#14191f;--theme-panel-item:#303841;--theme-panel-hover:#3a444f;--theme-accent-wash:#3a3626;--theme-option-hover:#3a444f;
}
html[data-color-theme="forest"]{
 color-scheme:dark;--ink:#f7fff9;--muted:#c6ded1;--navy:#102018;--blue:#194a39;--gold:#ffd27a;--cyan:#8eead0;--line:#e6fff040;--green:#94f7b8;
 --theme-page-background:#071f17;--theme-header-background:#0b2b20;--theme-header-menu-background:#0e3528;--theme-panel-background:#123c2e;
 --theme-hero-background:#09291f;--theme-hero-atmosphere:#09291f;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#09291ff2 55%,#09291f 100%);
 --theme-card-background:#123c2e;--theme-card-active-background:#1d5542;--theme-home-card-background:#123c2e;--theme-surface:#123c2e;--theme-surface-translucent:#123c2ef2;--theme-surface-soft:#164535;--theme-surface-strong:#194a39;--theme-control:#09251b;
 --theme-answer:#0d3125;--theme-answer-hover:#205743;--theme-answer-button:#194a39;--theme-step-active:#1c513f;--theme-copy:#d8eadf;--theme-hero-copy:#f7fff9;--theme-strong-copy:#f7fff9;--theme-topic-copy:#d1e5da;--theme-placeholder:#c6ded1;--theme-heading:#ffe0a3;--theme-tooltip:#09251b;--theme-tooltip-text:#fff;--theme-success:#236447;--theme-warning:#ffd3a1;
 --theme-icon-background:#ffd27a;--theme-icon-ink:#102018;--theme-shadow:#0009;--theme-primary-ink:#102018;--theme-focus-ink:#102018;--theme-panel-item:#194a39;--theme-panel-hover:#205743;--theme-accent-wash:#3b4228;--theme-option-hover:#205743;
}
html[data-color-theme="contrast"]{
 color-scheme:dark;--ink:#f8f8f8;--muted:#d6d6d6;--navy:#111;--blue:#222;--gold:#ffe45c;--cyan:#72e6ff;--line:#ffffffb8;--green:#8cffb4;
 --theme-page-background:#050505;--theme-header-background:#0a0a0a;--theme-header-menu-background:#111;--theme-panel-background:#111;
 --theme-hero-background:#050505;--theme-hero-atmosphere:#050505;--theme-hero-overlay:linear-gradient(90deg,transparent 0 43%,#050505f2 55%,#050505 100%);
 --theme-card-background:#111;--theme-card-active-background:#242424;--theme-home-card-background:#111;--theme-surface:#111;--theme-surface-translucent:#111;--theme-surface-soft:#181818;--theme-surface-strong:#1d1d1d;--theme-control:#050505;
 --theme-answer:#0b0b0b;--theme-answer-hover:#282828;--theme-answer-button:#1d1d1d;--theme-step-active:#222;--theme-copy:#ededed;--theme-hero-copy:#f8f8f8;--theme-strong-copy:#fff;--theme-topic-copy:#e3e3e3;--theme-placeholder:#d6d6d6;--theme-heading:#ffe45c;--theme-tooltip:#050505;--theme-tooltip-text:#fff;--theme-success:#17583a;--theme-warning:#ffd19a;
 --theme-icon-background:#ffe45c;--theme-icon-ink:#111;--theme-shadow:#000;--theme-primary-ink:#111;--theme-focus-ink:#111;--theme-panel-item:#1d1d1d;--theme-panel-hover:#2b2b2b;--theme-accent-wash:#3a351d;--theme-option-hover:#2b2b2b;
}

/* Il tema Classico blu e oro è l'unica combinazione esposta. */
.header-top{position:relative}

/* Every main reading surface consumes the active theme while the board keeps its familiar squares. */
body{background:var(--theme-page-background)}.site-header{background:var(--theme-header-background);border-color:var(--line);box-shadow:0 4px 20px var(--theme-shadow)}.header-menu{background:var(--theme-header-menu-background);border-color:var(--line)}
.section-hero{background:var(--theme-hero-background)}.section-hero::before{background:var(--theme-hero-atmosphere)}.section-hero::after{background:var(--theme-hero-overlay)}.hero-scene{mask-image:linear-gradient(90deg,#000 0 88%,transparent 100%)}.hero-copy p{color:var(--theme-hero-copy)}
.card,.home-catalog .category-card{background:var(--theme-card-background);box-shadow:0 12px 35px var(--theme-shadow)}.card:hover,.card:focus-within,.card.linked-lesson,.card:target,.home-catalog .category-card:hover,.home-catalog .category-card:has(:focus-visible){background:var(--theme-card-active-background)}.card-open:hover h3,.step.active h2{color:var(--theme-heading)}.icon{background:var(--theme-icon-background);color:var(--theme-icon-ink)}.topic-icon small{color:var(--theme-topic-copy)}
.site-search,.lesson-options,.board-caption,.board-controls button,.board-controls select,.lesson-completion,.lesson-index,.secondary,.source-notes,.player-piece,.module-navigation a{background:var(--theme-surface)}.site-search input::placeholder{color:var(--theme-placeholder)}.lesson-jump option{background:var(--theme-surface);color:var(--gold)}.lesson-option.is-active,.lesson-option:hover,.module-navigation a:hover,.module-navigation a:focus-visible{background:var(--theme-option-hover);color:var(--theme-heading)}
.progress-summary{color:var(--theme-strong-copy)}.save-error{color:var(--theme-warning)}.completion-control{color:var(--theme-strong-copy)}.empty-state{background:var(--theme-surface-translucent)}.is-complete,.quiz-answer.answer-correct{background:var(--theme-success)}.step p{color:var(--theme-copy)}.step.active,.step:hover,.step:focus-within{background:var(--theme-step-active)}.position-context{color:var(--muted)}.position-details summary{color:var(--cyan)}
.coord,button.coord,.quiz button.coord{color:var(--gold);background:var(--theme-accent-wash)}.coord:hover,.coord:focus,button.coord:hover,button.coord:focus-visible,.quiz button.coord:hover,.quiz button.coord:focus-visible{color:var(--theme-focus-ink);background:var(--gold)}
.quiz{background:var(--theme-surface-strong)}.quiz button{background:var(--theme-control)}.quiz #quiz-feedback{color:var(--theme-strong-copy)}.quiz-answer{background:var(--theme-answer)}.quiz-answer:hover,.quiz-answer:focus-within{background:var(--theme-answer-hover)}.quiz-answer>button[data-answer]{background:var(--theme-answer-button)}.primary{color:var(--theme-primary-ink)}
.chess-term:hover,.chess-term.term-active,.chess-term:focus-visible,.chess-tooltip strong,.chess-tooltip .tooltip-heading button,.chess-tooltip .chess-term:hover,.chess-tooltip .chess-term.term-active,.glossary-entry .chess-term:hover,.chess-tooltip .tooltip-permalink:hover,.glossary-entry dt{color:var(--theme-heading)}.chess-tooltip,.chess-tooltip .tooltip-heading{background:var(--theme-tooltip);color:var(--theme-tooltip-text)}.chess-tooltip .tooltip-permalink{color:var(--muted)}.page-glossary{background:var(--theme-surface-soft)}
.navigation-ready .reading-toolbar,.navigation-ready .search-slot,.navigation-ready .main-menu{background:var(--theme-panel-background);border-color:var(--line);box-shadow:0 12px 30px var(--theme-shadow)}.main-menu a{background:var(--theme-panel-item)}.main-menu a:hover,.main-menu a[aria-current]{background:var(--theme-panel-hover)}
.search-category .section-head a,.journey-group .section-head a,.move-reference:hover{color:var(--theme-heading)}.board-wrap{background:var(--theme-page-background)}

@media(max-width:600px){.header-toggle{width:40px;min-width:40px;padding:6px}.header-actions #menu-toggle span{display:none}.section-hero::after{background:none}.hero-scene{mask-image:linear-gradient(180deg,#000 0 94%,transparent 100%)}}

/* Impostazioni di lettura e scacchiera esplorabile. */
.toolbar-setting-group{display:flex;align-items:center;gap:6px}.toolbar-setting-group>label{font-size:.75rem;color:var(--muted);font-weight:400;white-space:nowrap}
.board-explore-controls{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.board-explore-controls button{min-height:38px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;background:var(--theme-surface);color:var(--theme-strong-copy);font-size:.78rem;font-weight:650}.board-explore-controls #board-explore{border-color:#f2b84b88;color:var(--theme-heading)}.board-explore-controls #board-explore[aria-pressed="true"]{background:var(--gold);color:var(--theme-primary-ink)}.board-focus,.board-explore-status{display:block;text-align:center;font-size:.75rem;line-height:1.45;margin-top:7px}.board-focus{color:var(--theme-heading);font-weight:700}.board-explore-status{color:var(--muted)}.exploration-active .board-focus{display:none}
#dynamic-board{transition:box-shadow .2s,border-color .2s}#dynamic-board[data-highlight-kind="file"],#dynamic-board[data-highlight-kind="rank"],#dynamic-board[data-highlight-kind="diagonal"],#dynamic-board[data-highlight-kind="center"]{border-color:#ffd95f;box-shadow:0 0 0 3px #ffe45c50,0 18px 55px #0007}.sq.hot:before{inset:2px;border-width:3px;border-color:#ffe85e;background:#fff06a70;box-shadow:inset 0 0 18px #fff59a99,0 0 10px #ffe24f77}.sq.hot:after{padding:2px 3px;border-radius:3px;background:#fff2a8;color:#302100!important;font-weight:900;text-shadow:none}.sq.move-hot:before{border-color:#72f0ff;background:#2ed9f087;box-shadow:inset 0 0 19px #b8faffcc,0 0 12px #51e7ff99}.sq.glossary-hot:before{border-color:#8cff9f;background:#5eef7880;box-shadow:inset 0 0 18px #baffc5aa,0 0 12px #68f37f88}
.board.is-exploring{cursor:pointer;border-color:#6edff0;box-shadow:0 0 0 3px #61d7e84d,0 18px 55px #0007}.board.is-exploring .sq{cursor:pointer}.board.is-exploring .sq:focus-visible{outline:4px solid #49e7ff;outline-offset:-4px;z-index:8}.board.is-exploring .sq.explore-selected:before{content:'';position:absolute;inset:3px;border:4px solid #4af2ff;background:#4adff05c;border-radius:5px;z-index:1}.board.is-exploring .sq.explore-target:before{content:'';position:absolute;z-index:5;left:50%;top:50%;width:24%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:#fff36d;border:2px solid #5b4b00;box-shadow:0 0 0 5px #fff36d5c,0 0 15px #fff36d}.board.is-exploring .sq.explore-capture:before{width:72%;background:transparent;border:5px solid #ff5f65;box-shadow:inset 0 0 13px #ff5f6570,0 0 12px #ff5f65}.board.is-exploring .sq.explore-from{box-shadow:inset 0 0 0 5px #51e7ff}.board.is-exploring .sq.explore-to{box-shadow:inset 0 0 0 5px #72ef98}.board.is-exploring .sq.explore-to:before{content:'';position:absolute;inset:5px;border:2px solid #72ef98;background:#72ef9842;z-index:1}
@media(max-width:850px){.board-explore-controls{grid-template-columns:1fr 1fr}.board-explore-controls #board-explore{grid-column:1/-1}.board-explore-controls button{min-height:34px;padding:4px 6px;font-size:.7rem}.board-focus,.board-explore-status{font-size:.68rem;text-align:left}.board-wrap.exploration-active{max-height:none;align-items:flex-start}.board-wrap.exploration-active .board{width:min(54vw,300px)}}
@media(max-width:560px){.toolbar-setting-group:first-child{width:100%;justify-content:flex-end}.board-explore-controls{gap:4px}.board-explore-controls button{font-size:.66rem}.board-wrap.exploration-active{flex-direction:column;max-height:none}.board-wrap.exploration-active .board{width:min(92vw,420px)}.board-wrap.exploration-active .board-tools{width:100%}}

.step{display:flow-root}

/* SEO learning hub: readable long-form content, semantic tables and interactive study. */
.reading-progress-track{position:absolute;inset:auto 0 0;height:3px;z-index:70;overflow:hidden;background:transparent;pointer-events:none}.reading-progress-track i{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--gold),var(--cyan));transition:transform .08s linear}
.home-seo-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.5fr);gap:clamp(24px,5vw,72px);align-items:center;padding-top:clamp(44px,7vw,82px);padding-bottom:clamp(34px,6vw,68px)}.home-seo-intro h2{max-width:700px;margin:.25em 0}.home-seo-intro p{max-width:760px;color:var(--theme-copy);line-height:1.75}.home-proof{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--theme-surface);box-shadow:0 12px 32px var(--theme-shadow)}.home-proof strong{color:var(--gold);font-size:clamp(1.5rem,4vw,2.5rem);line-height:1}.home-proof span{align-self:center;color:var(--theme-copy);font-weight:700}.home-guides,.home-faq{padding-top:clamp(34px,6vw,70px);padding-bottom:clamp(34px,6vw,70px)}
.long-guide{max-width:1000px}.guide-trust-row{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:24px;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:var(--theme-surface-soft);color:var(--muted);font-size:.82rem;font-weight:650}.guide-index{margin:0 0 clamp(42px,7vw,76px);padding:clamp(18px,4vw,32px);border:1px solid var(--line);border-radius:18px;background:var(--theme-surface);box-shadow:0 12px 34px var(--theme-shadow)}.guide-index h2{margin-top:0}.guide-index ol{columns:2;column-gap:42px;margin:0;padding-left:1.4rem}.guide-index li{break-inside:avoid;margin:.55em 0;color:var(--gold)}.guide-index a{color:var(--theme-strong-copy);text-decoration-thickness:1px;text-underline-offset:3px}.guide-index a:hover{color:var(--theme-heading)}
.snippet-answer{margin:0 0 clamp(34px,6vw,64px);padding:clamp(20px,4vw,34px);border:1px solid #f2b84b66;border-left:5px solid var(--gold);border-radius:16px;background:linear-gradient(135deg,var(--theme-surface-strong),var(--theme-surface));box-shadow:0 12px 34px var(--theme-shadow)}.snippet-answer h2{max-width:860px;margin:.25em 0 .5em;font-size:clamp(1.35rem,3vw,2rem);line-height:1.2}.snippet-answer p{max-width:860px;margin:.5em 0;color:var(--theme-strong-copy);font-size:clamp(1rem,2vw,1.08rem);line-height:1.72}.snippet-answer ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px 24px;max-width:900px;margin:18px 0 0;padding-left:1.25rem;color:var(--theme-copy);line-height:1.55}.snippet-answer li::marker{color:var(--gold)}
.category-directory{padding-top:clamp(36px,6vw,68px)}.category-directory-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}.category-directory-card .card-open{padding-top:20px}.category-directory-card .card-open h2{margin:.7em 0 .4em;font-size:1.5rem}.category-directory-modules{margin-top:18px;padding:16px 20px 20px;border-top:1px solid var(--line);background:var(--theme-surface-soft)}.category-directory-modules h3{margin:0 0 10px;font-size:.9rem;color:var(--theme-heading)}.category-directory-modules ul{margin:0;padding-left:1.1rem}.category-directory-modules li+li{margin-top:7px}.category-directory-modules a{color:var(--theme-strong-copy);font-size:.88rem;line-height:1.4}.category-directory-modules a:hover{color:var(--theme-heading)}
.module-heading h2 a{color:inherit}.module-heading h2 a:hover{color:var(--theme-heading)}.module-heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:14px}.module-heading-actions .secondary{display:inline-flex}.module-page{padding-top:clamp(36px,6vw,68px)}.module-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 clamp(40px,7vw,72px)}.module-facts>div{padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--theme-surface)}.module-facts dt{color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.module-facts dd{margin:6px 0 0;color:var(--theme-strong-copy);font-weight:800;line-height:1.35}.module-overview{max-width:850px;margin:0 0 clamp(42px,7vw,72px)}.module-overview h2{font-size:clamp(1.55rem,3vw,2.25rem)}.module-overview p{color:var(--theme-copy);font-size:1.03rem;line-height:1.75}.module-related{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 12px;padding-top:24px;border-top:1px solid var(--line)}.module-related a{display:inline-flex}
.guide-start{margin-bottom:clamp(54px,9vw,100px)}.guide-start>p{max-width:760px;color:var(--theme-copy);line-height:1.75}.guide-course-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-top:26px}.guide-course-card .icon{display:grid;width:46px;height:46px;place-items:center;margin-bottom:14px;border-radius:12px}.guide-course-card h3{margin:.2em 0}.guide-course-card p{color:var(--theme-copy)}
.guide-chapter{scroll-margin-top:150px;margin:0 auto clamp(54px,9vw,96px)}.guide-chapter h2{max-width:820px;font-size:clamp(1.65rem,4vw,2.45rem);line-height:1.15}.guide-chapter p,.guide-chapter li{color:var(--theme-copy);font-size:clamp(1rem,2vw,1.08rem);line-height:1.82}.guide-chapter p{max-width:820px}.guide-chapter ul{max-width:820px;padding-left:1.4rem}.guide-chapter li+li{margin-top:.45em}
.semantic-table-wrap{max-width:100%;margin:28px 0;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--theme-surface);box-shadow:0 10px 26px var(--theme-shadow)}.semantic-table-wrap table{width:100%;min-width:650px;border-collapse:collapse}.semantic-table-wrap caption{padding:15px 18px;color:var(--theme-strong-copy);font-weight:800;text-align:left}.semantic-table-wrap th,.semantic-table-wrap td{padding:12px 15px;border-top:1px solid var(--line);color:var(--theme-copy);text-align:left;vertical-align:top}.semantic-table-wrap thead th{background:var(--theme-surface-strong);color:var(--theme-strong-copy);font-size:.84rem}.semantic-table-wrap tbody th{color:var(--theme-heading);white-space:nowrap}
.pillar-puzzle{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(300px,500px);gap:clamp(24px,6vw,70px);align-items:center;margin:0 auto clamp(64px,10vw,112px);padding:clamp(22px,5vw,48px);border:1px solid var(--line);border-radius:24px;background:var(--theme-surface-soft);box-shadow:0 18px 55px var(--theme-shadow)}.pillar-puzzle h2{font-size:clamp(1.6rem,4vw,2.4rem)}.pillar-puzzle p{color:var(--theme-copy);line-height:1.7}.pillar-board{width:min(100%,500px);aspect-ratio:1}.pillar-board .sq{cursor:pointer}.pillar-board .sq:focus-visible{outline:4px solid var(--cyan);outline-offset:-4px;z-index:4}.pillar-board .sq.puzzle-selected{box-shadow:inset 0 0 0 5px var(--gold)}.puzzle-status{min-height:2.8em;padding:10px 12px;border-left:4px solid var(--cyan);background:var(--theme-surface)}.puzzle-status.is-correct{border-color:var(--green);background:var(--theme-success)}.puzzle-status.is-wrong{border-color:#df5d62}
.guide-faq{margin:clamp(60px,9vw,104px) 0}.guide-faq>h2{font-size:clamp(1.65rem,4vw,2.45rem)}.guide-faq details{border-top:1px solid var(--line);padding:0}.guide-faq details:last-child{border-bottom:1px solid var(--line)}.guide-faq summary{padding:18px 4px;color:var(--theme-strong-copy);font-weight:800;line-height:1.4;cursor:pointer}.guide-faq details p{max-width:820px;margin:0 0 20px;color:var(--theme-copy);line-height:1.75}.guide-cta{margin:70px 0 20px;padding:clamp(24px,6vw,54px);border-radius:22px;background:linear-gradient(135deg,var(--theme-surface-strong),var(--theme-surface));box-shadow:0 16px 42px var(--theme-shadow)}.guide-cta p{max-width:720px;color:var(--theme-copy);line-height:1.7}.guide-cta-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.blog-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.blog-card .card-open{height:100%}.blog-card .eyebrow{display:block;margin-bottom:12px}.blog-card h3{font-size:clamp(1.12rem,2.3vw,1.38rem);line-height:1.25}.blog-card p{color:var(--theme-copy);line-height:1.62}.blog-article{padding-top:clamp(36px,7vw,72px)}.related-guide-links,.related-learning{margin-top:50px;padding:clamp(20px,4vw,34px);border:1px solid var(--line);border-radius:18px;background:var(--theme-surface-soft)}.related-guide-links ul{padding-left:1.2rem}.related-guide-links li{margin:.8em 0}.related-guide-links .primary{display:inline-flex;margin-top:16px}.related-learning h2{margin-top:0;font-size:1.35rem}.related-learning>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.related-learning a{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--theme-surface);color:var(--theme-strong-copy);font-weight:700}.related-learning a:hover{color:var(--theme-heading);background:var(--theme-option-hover)}
@media(max-width:760px){.home-seo-intro,.pillar-puzzle{grid-template-columns:1fr}.guide-index ol{columns:1}.pillar-puzzle-copy{order:2}.pillar-board{margin:auto}.guide-trust-row{display:grid}.semantic-table-wrap{margin-inline:-12px}.home-proof{grid-template-columns:auto 1fr}.related-learning>div{grid-template-columns:1fr}.snippet-answer ul{grid-template-columns:1fr}.module-related a{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.reading-progress-track i{transition:none}}

/* Biblioteca di 1.000 domande: hub, risposte didattiche e collegamenti alle lezioni. */
.home-questions,.question-directory,.question-category-page,.question-subcategory-page,.question-answer-page{padding-top:clamp(36px,6vw,72px);padding-bottom:clamp(38px,7vw,82px)}
.question-library-stats{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin:0 0 clamp(48px,8vw,86px)}.question-library-stats>div{display:grid;gap:4px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--theme-surface);box-shadow:0 10px 28px var(--theme-shadow)}.question-library-stats strong{color:var(--gold);font-size:clamp(1.6rem,4vw,2.6rem);line-height:1}.question-library-stats span{color:var(--theme-copy);font-size:.82rem;font-weight:750;text-transform:uppercase;letter-spacing:.055em}
.question-category-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.question-category-card .icon{display:grid;width:48px;height:48px;place-items:center;margin-bottom:13px;border-radius:14px}.question-category-card h3{font-size:1.35rem}.question-category-card p,.question-subcategory-card p,.question-card p{color:var(--theme-copy);line-height:1.62}.question-subcategory-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.question-subcategory-card h2{margin:.45em 0;font-size:1.45rem}.question-subcategory-card .card-open:hover h2{color:var(--theme-heading)}
.question-list-group{margin:0 0 clamp(52px,8vw,88px)}.question-card-grid{grid-template-columns:repeat(auto-fit,minmax(285px,1fr))}.question-card .card-open{display:flex;flex-direction:column;height:100%}.question-card h3{font-size:1.08rem;line-height:1.35}.question-card p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:4;-webkit-box-orient:vertical}.question-card small{display:block;margin-top:auto;padding-top:15px;color:var(--muted);font-weight:700}.question-card-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--cyan);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.question-card-meta span:last-child{color:var(--muted)}
.question-page-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px;padding-top:25px;border-top:1px solid var(--line)}.question-page-actions a{display:inline-flex}
.question-answer-page{max-width:1180px}.question-answer-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:24px;color:var(--muted);font-size:.8rem;font-weight:700}.question-answer-meta span+span::before{content:'•';margin-right:16px;color:var(--gold)}.question-learning-layout{display:grid;grid-template-columns:minmax(300px,440px) minmax(0,1fr);gap:clamp(28px,6vw,78px);align-items:start}.question-board-panel{position:sticky;top:148px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--theme-surface-soft);box-shadow:0 18px 48px var(--theme-shadow)}.question-board{width:100%;aspect-ratio:1}.question-board .sq{cursor:pointer}.question-board .sq:focus-visible{outline:4px solid var(--cyan);outline-offset:-4px;z-index:5}.question-board .sq.puzzle-selected{box-shadow:inset 0 0 0 5px var(--gold)}.question-board-tools{padding:16px}.question-board-tools>strong{display:block;color:var(--theme-heading);line-height:1.4}.question-board-tools p{min-height:3em;margin:.6em 0;color:var(--theme-copy);font-size:.84rem;line-height:1.5}.question-board-tools>div{display:flex;gap:8px}.question-board-tools button{flex:1}
.question-answer-copy>section{scroll-margin-top:150px;margin-bottom:clamp(42px,7vw,74px)}.question-answer-copy h2{font-size:clamp(1.45rem,3vw,2.1rem);line-height:1.2}.question-answer-copy p,.question-answer-copy li{color:var(--theme-copy);font-size:clamp(1rem,1.8vw,1.07rem);line-height:1.78}.question-answer-copy ol{display:grid;gap:12px;padding:0;list-style:none;counter-reset:question-method}.question-answer-copy ol li{display:grid;gap:7px;padding:17px 19px;border-left:4px solid var(--gold);border-radius:8px;background:var(--theme-surface-soft)}.question-answer-copy ol strong{color:var(--theme-heading)}.question-exercise{padding:clamp(20px,4vw,32px);border:1px solid var(--line);border-radius:17px;background:var(--theme-surface-strong)}.question-exercise details{margin-top:18px;border-top:1px solid var(--line)}.question-exercise summary{padding:16px 0;color:var(--theme-strong-copy);font-weight:800;cursor:pointer}.question-exercise details p{margin-bottom:0}
.question-related-lessons,.question-related{margin-top:clamp(54px,9vw,96px)}.question-related-lessons{padding:clamp(22px,5vw,40px);border:1px solid var(--line);border-radius:20px;background:var(--theme-surface-soft)}.question-related-lessons h2,.question-related>h2{font-size:clamp(1.45rem,3vw,2.1rem)}.question-related-lessons ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:24px 0 0;padding:0;list-style:none}.question-related-lessons a{display:grid;height:100%;gap:8px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--theme-surface);color:var(--theme-strong-copy)}.question-related-lessons a:hover{background:var(--theme-option-hover);color:var(--theme-heading)}.question-related-lessons a span{color:var(--theme-copy);font-size:.82rem;line-height:1.45}
.lesson-questions{margin:clamp(52px,8vw,88px) 0;padding:clamp(20px,4vw,34px);border:1px solid #f2b84b55;border-radius:18px;background:var(--theme-surface-soft)}.lesson-questions>h2{font-size:clamp(1.4rem,3vw,2rem)}.lesson-questions>p{color:var(--theme-copy);line-height:1.7}.lesson-questions h3{margin:24px 0 10px;color:var(--theme-heading);font-size:1rem}.lesson-questions ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.lesson-questions li a{display:flex;justify-content:space-between;gap:18px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--theme-surface);color:var(--theme-strong-copy);font-weight:650;line-height:1.4}.lesson-questions li a:hover{background:var(--theme-option-hover);color:var(--theme-heading)}.lesson-questions li span{flex:0 0 auto;color:var(--muted);font-size:.7rem;text-transform:uppercase}.lesson-questions>.secondary{display:inline-flex;margin-top:20px}
@media(max-width:900px){.question-library-stats{grid-template-columns:1fr 1fr}.question-learning-layout{grid-template-columns:1fr}.question-board-panel{position:static;width:min(100%,560px);margin:auto}.question-answer-copy{max-width:760px;margin:auto}.question-related-lessons ul{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.question-library-stats,.question-related-lessons ul{grid-template-columns:1fr}.question-subcategory-grid,.question-card-grid{grid-template-columns:1fr}.question-answer-meta{display:grid;gap:5px}.question-answer-meta span+span::before{content:none}.lesson-questions li a{display:grid}.lesson-questions li span{justify-self:start}.question-page-actions a{width:100%;justify-content:center}.question-board-tools>div{display:grid;grid-template-columns:1fr 1fr}}
