.opening-page{flex-direction:column;gap:1.75rem;width:100%;max-width:72rem;margin-inline:auto;display:flex}.opening-eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.66rem;font-weight:700;line-height:1.5}.opening-hero{border:1px solid var(--line);background:radial-gradient(ellipse at top right, var(--accent-soft), transparent 65%), var(--surface);border-radius:1.25rem;grid-template-columns:minmax(0,1fr) 16rem;gap:2.5rem;padding:clamp(1.5rem,4vw,3rem);display:grid}.opening-hero h1{letter-spacing:-.055em;margin-top:1rem;font-size:clamp(2rem,4vw,3.6rem);font-weight:700;line-height:1.08}.opening-hero h1 span{color:var(--accent)}.opening-intro{max-width:32rem;color:var(--ink-muted);margin-top:1.2rem;font-size:.9rem;line-height:1.8}.opening-browse-link{min-height:44px;color:var(--accent);text-underline-offset:4px;align-items:center;margin-top:.5rem;font-size:.8rem;text-decoration:underline;display:inline-flex}.opening-principles{color:var(--ink-muted);flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:1.5rem;font-size:.68rem;display:flex}.opening-principles b{color:var(--accent);font-family:var(--font-mono);margin-right:.3rem}.opening-hero-note{border-left:1px solid var(--line);flex-direction:column;justify-content:center;align-items:flex-start;padding-left:2rem;display:flex}.opening-hero-piece{filter:drop-shadow(0 8px 8px #00000040);width:4.5rem;height:4.5rem;margin-bottom:.7rem}.opening-hero-note>p,.opening-hero-note>span{color:var(--ink-muted);font-size:.75rem;line-height:1.7}.opening-hero-note>strong{margin:.25rem 0 .3rem;font-size:1rem}.opening-hero-note .btn{margin-top:1rem}.opening-library-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.opening-library-heading h2{letter-spacing:-.03em;font-size:1.3rem;font-weight:700}.opening-library-heading p{color:var(--ink-muted);margin-top:.35rem;font-size:.8rem}.opening-filter{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;flex:none;padding:4px;display:flex}.opening-filter>*{min-height:40px;color:var(--ink-muted);cursor:pointer;border-radius:.45rem;justify-content:center;align-items:center;padding:.5rem .9rem;font-size:.78rem;display:inline-flex}.opening-filter [aria-pressed=true],.opening-filter [aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:700}.opening-page button:focus-visible,.opening-page a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.opening-library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.opening-card{border:1px solid var(--line);background:var(--surface);border-radius:1rem;flex-direction:column;padding:1.35rem;display:flex}.opening-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.opening-side{color:var(--ink-muted);align-items:center;gap:.5rem;font-size:.7rem;display:inline-flex}.opening-side i{border:1px solid #7d8794;border-radius:50%;flex:none;width:.7rem;height:.7rem;display:inline-block}.opening-side i[data-color=white]{background:#f5f5f5}.opening-side i[data-color=black]{background:#252933}.opening-card-status{color:var(--ink-faint);font-size:.6rem}.opening-card h3{letter-spacing:-.025em;margin-top:1.25rem;font-size:1.25rem;font-weight:700}.opening-card-subtitle{color:var(--accent);margin-top:.25rem;font-size:.73rem}.opening-card-moves{width:fit-content;font-family:var(--font-mono);color:var(--ink-muted);background:var(--surface-2);white-space:pre-wrap;border-radius:.35rem;margin-block:1rem;padding:.4rem .6rem;font-size:.67rem}.opening-card-idea{color:var(--ink-muted);flex:1;font-size:.8rem;line-height:1.75}.opening-card-actions{gap:.5rem;margin-top:1.3rem;display:flex}.opening-card-actions>*{flex:1}.opening-page .btn{min-height:44px;font-size:.8rem}.opening-progress-note{color:var(--ink-faint);margin-top:1rem;font-size:.7rem;line-height:1.7}.opening-note{border-left:3px solid var(--accent);background:var(--surface);border-radius:0 .6rem .6rem 0;padding:1.15rem 1.4rem}.opening-note strong{font-size:.85rem}.opening-note p{color:var(--ink-muted);margin-top:.3rem;font-size:.78rem;line-height:1.7}.opening-lesson-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.opening-lesson-heading h1{letter-spacing:-.04em;margin-top:.4rem;font-size:clamp(1.7rem,3vw,2.25rem);font-weight:700;line-height:1.2}.opening-workspace{grid-template-columns:minmax(0,1.25fr) minmax(18rem,1fr);align-items:start;gap:1.5rem;display:grid}.opening-board-column{min-width:0}.opening-board-heading{justify-content:space-between;align-items:center;gap:.5rem;padding:.8rem 0;display:flex}.opening-board-heading>span:last-child{color:var(--ink-faint);font-family:var(--font-mono);font-size:.65rem}.opening-board-help{color:var(--ink-muted);margin-top:.8rem;font-size:.7rem;line-height:1.6}.opening-board-controls{gap:.65rem;margin-top:.85rem;display:flex}.opening-board-controls>*{flex:1}.opening-lesson-panel{border:1px solid var(--line);background:var(--surface);border-radius:1rem;overflow:hidden}.opening-lesson-panel .coach-card{box-shadow:none;border:0;margin:0 1rem 1rem}.opening-lesson-panel .coach-card-body{padding-bottom:.5rem}.opening-progress{appearance:none;background:var(--line);width:100%;height:3px;color:var(--accent);border:0;display:block}.opening-progress::-webkit-progress-bar{background:var(--line)}.opening-progress::-webkit-progress-value{background:var(--accent)}.opening-progress::-moz-progress-bar{background:var(--accent)}.opening-instruction{padding:1.1rem 1.35rem .1rem}.opening-instruction h2{letter-spacing:-.03em;margin-top:.6rem;margin-bottom:.8rem;font-size:1.35rem;font-weight:700}.opening-instruction>p:not(.opening-eyebrow){font-size:.87rem;line-height:1.8}.opening-opponent-note{color:var(--ink-muted);padding:0 1.35rem 1rem;font-size:.75rem;line-height:1.7}.opening-hints{padding:0 1.35rem 1.2rem}.opening-hints p{border:1px solid color-mix(in srgb, var(--accent) 25%, var(--line));background:var(--accent-soft);border-radius:.6rem;margin-bottom:.75rem;padding:.85rem;font-size:.8rem;line-height:1.7}.opening-complete-actions{flex-direction:column;gap:.65rem;padding:0 1.35rem 1.3rem;display:flex}.opening-complete-actions p{color:var(--ink-muted);font-size:.75rem;line-height:1.7}.opening-move-list{border-top:1px solid var(--line);padding:1.1rem 1.35rem}.opening-move-list>div{flex-wrap:wrap;gap:.2rem;margin-top:.6rem;display:flex}.opening-move-list button,.opening-move-list span{font-family:var(--font-mono);border-radius:.4rem;padding:.55rem .6rem;font-size:.72rem}.opening-move-list button{cursor:pointer;min-height:44px}.opening-move-list button:hover{background:var(--surface-2)}.opening-move-list button[aria-current=step]{background:var(--accent-soft);color:var(--accent)}.opening-restart{cursor:pointer;min-height:44px;color:var(--ink-muted);margin-inline:1.35rem;font-size:.75rem}.opening-line-note{color:var(--ink-faint);padding:1rem 1.35rem;font-size:.68rem;line-height:1.7}.opening-catalog{border-top:1px solid var(--line);padding-top:1.5rem}.opening-catalog-filters{grid-template-columns:minmax(0,1fr) 15rem 9rem;gap:.8rem;display:grid}.opening-catalog-filters label{color:var(--ink-muted);flex-direction:column;gap:.5rem;font-size:.72rem;display:flex}.opening-catalog-filters input,.opening-catalog-filters select{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);border-radius:.6rem;padding:.7rem;font-size:.8rem}.opening-catalog-results{border-top:1px solid var(--line);margin-top:1rem}.opening-catalog-row{border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:1rem .5rem;display:flex}.opening-eco{background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);border-radius:.4rem;flex:none;padding:.4rem .5rem;font-size:.73rem}.opening-catalog-name{flex:1;min-width:0}.opening-catalog-name h3{overflow-wrap:anywhere;font-size:.87rem;font-weight:600}.opening-catalog-name p{color:var(--ink-muted);margin-top:.35rem;font-size:.7rem}.opening-catalog-row .opening-card-actions{flex:none;margin:0}.opening-more{margin-top:1rem}.opening-progress-note a{text-underline-offset:3px;text-decoration:underline}@media (max-width:60rem){.opening-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:44rem){.opening-page{gap:1.2rem}.opening-hero{grid-template-columns:1fr;gap:1.5rem;padding:1.35rem}.opening-hero-note{border-left:0;border-top:1px solid var(--line);min-height:5rem;padding:1.1rem 0 0;position:relative}.opening-hero-piece,.opening-hero-note>span{display:none}.opening-hero-note .btn{margin-top:.65rem}.opening-principles{flex-direction:column}.opening-library-grid{grid-template-columns:1fr}.opening-workspace{grid-template-columns:1fr;gap:1rem}.opening-lesson-heading{gap:.8rem}.opening-board-heading{padding-top:0}.opening-card{padding:1.2rem}.opening-card h3{margin-top:.9rem}.opening-instruction{padding-top:1.1rem}.opening-catalog-filters{grid-template-columns:minmax(0,1fr) 7rem}.opening-catalog-filters label:first-child{grid-column:1/-1}.opening-catalog-row{grid-template-columns:auto minmax(0,1fr);gap:.65rem;display:grid}.opening-catalog-row .opening-card-actions{grid-column:2}}.opening-course-hero{grid-template-columns:minmax(0,1fr) 17rem;gap:2rem;padding:2.2rem 2.5rem;overflow:hidden}.opening-course-hero h1{margin-top:.7rem;font-size:clamp(2.3rem,4vw,3.7rem)}.opening-course-hero .opening-intro{max-width:36rem;margin-top:1rem}.opening-course-facts{color:var(--ink-muted);flex-wrap:wrap;gap:.75rem 1.4rem;margin-top:1.3rem;font-size:.73rem;display:flex}.opening-course-facts b{font-family:var(--font-mono);color:var(--ink);margin-right:.2rem;font-size:.86rem}.opening-course-art{isolation:isolate;min-height:12rem;position:relative}.opening-art-grid{border:1px solid var(--line);background:repeating-conic-gradient(color-mix(in srgb, var(--accent) 12%, var(--surface)) 0% 25%, var(--surface) 0% 50%) 50% / 4rem 4rem;border-radius:.7rem;height:10rem;position:absolute;top:.75rem;left:0;right:0;transform:rotate(-9deg);box-shadow:0 15px 24px -18px #00000080}.opening-art-knight{filter:drop-shadow(0 8px 5px #0000004d);width:9rem;height:9rem;position:absolute;top:-.6rem;left:1rem;transform:rotate(-7deg)}.opening-art-pawn{filter:drop-shadow(0 6px 4px #0000004d);width:7rem;height:7rem;position:absolute;top:1.5rem;right:-.1rem;transform:rotate(7deg)}.opening-art-caption{text-align:center;background:var(--surface);border:1px solid var(--line);color:var(--ink-muted);border-radius:.6rem;padding:.6rem .8rem;font-size:.7rem;line-height:1.6;position:absolute;bottom:-.1rem;left:0;right:0}.opening-art-caption b{color:var(--accent);font-size:.8rem}.opening-library-tabs{border-bottom:1px solid var(--line);gap:1.75rem;display:flex}.opening-library-tabs a{min-height:44px;color:var(--ink-muted);border-bottom:3px solid #0000;justify-content:center;align-items:center;gap:.6rem;margin-bottom:-1px;padding:.2rem .2rem 1rem;font-size:.88rem;font-weight:600;display:flex}.opening-library-tabs a[aria-current=page]{border-bottom-color:var(--accent);color:var(--ink)}.opening-library-tabs a span{background:var(--surface-2);color:var(--ink-faint);border-radius:.4rem;padding:.2rem .4rem;font-size:.62rem;font-weight:500}.opening-course-layout{grid-template-columns:minmax(0,1fr) 17.5rem;align-items:start;gap:1.8rem;display:grid}.opening-course-lessons{min-width:0}.opening-course-chapter+.opening-course-chapter{margin-top:1.75rem}.opening-chapter-heading{align-items:center;gap:.75rem;padding-block:.7rem 1rem;display:flex}.opening-chapter-heading>span{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 25%, var(--line));width:2rem;height:2rem;color:var(--accent);font-family:var(--font-mono);border-radius:.6rem;flex:none;place-items:center;font-size:.7rem;display:grid}.opening-chapter-heading h3{letter-spacing:-.025em;font-size:.95rem;font-weight:700}.opening-chapter-heading p{color:var(--ink-muted);margin-top:.2rem;font-size:.73rem;line-height:1.6}.opening-course-list{flex-direction:column;gap:.6rem;list-style:none;display:flex}.opening-card.opening-course-lesson{border-radius:.8rem;grid-template-columns:1.25rem 6.5rem minmax(0,1fr) 6rem;align-items:center;gap:.85rem;padding:1rem;display:grid;position:relative}.opening-lesson-number{color:var(--ink-faint);font-family:var(--font-mono);font-size:.7rem}.opening-course-lesson[data-complete=true] .opening-lesson-number{color:var(--success)}.opening-preview{aspect-ratio:1;border-radius:.4rem;grid-template-columns:repeat(8,1fr);width:100%;display:grid;overflow:hidden;box-shadow:0 5px 14px -9px #0006}.opening-preview>span{aspect-ratio:1;background:#e9dcc6;place-items:center;min-width:0;min-height:0;display:grid}.opening-preview>span.is-dark{background:#7a5636}.opening-preview-piece{width:100%;height:100%}.opening-course-lesson-copy{min-width:0}.opening-course-lesson-copy h4{letter-spacing:-.02em;margin-top:.25rem;font-size:1rem;font-weight:700}.opening-course-lesson-copy h4 a:hover{color:var(--accent)}.opening-course-lesson-copy .opening-card-subtitle{margin:0;font-size:.63rem}.opening-course-lesson-copy .opening-card-idea{margin-top:.45rem;font-size:.72rem;line-height:1.6}.opening-course-meta{color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:.45rem .75rem;margin-top:.65rem;font-size:.61rem;display:flex}.opening-course-meta .opening-side{font-size:.61rem}.opening-course-meta .opening-side i{width:.55rem;height:.55rem}.opening-course-lesson-actions{flex-direction:column;gap:.4rem;display:flex}.opening-course-lesson-actions .btn{padding-inline:.55rem;font-size:.7rem}.opening-practice-link{min-height:44px;color:var(--ink-muted);justify-content:center;align-items:center;font-size:.72rem;display:flex}.opening-practice-link:hover{color:var(--accent)}.opening-course-sidebar{border:1px solid var(--line);background:linear-gradient(150deg, var(--accent-soft), transparent 38%), var(--surface);border-radius:1rem;padding:1.2rem;position:sticky;top:5.3rem}.opening-course-coach{align-items:center;gap:.8rem;display:flex}.opening-course-avatar{flex:none;width:3.75rem;height:4.1rem}.opening-course-coach strong{font-size:.94rem;display:block}.opening-course-coach p{color:var(--ink-muted);margin-top:.25rem;font-size:.69rem}.opening-course-invitation{color:var(--ink-muted);margin-block:.9rem 1.3rem;font-size:.79rem;line-height:1.8}.opening-course-progress-label{justify-content:space-between;align-items:baseline;margin-bottom:.65rem;display:flex}.opening-course-progress-label strong{font-family:var(--font-mono);font-size:.95rem}.opening-course-progress-label span{color:var(--ink-muted);font-size:.64rem}.opening-course-sidebar .opening-progress{border-radius:3px;height:6px;overflow:hidden}.opening-course-learned{color:var(--ink-faint);margin-top:.65rem;font-size:.6rem;line-height:1.7}.opening-continue{width:100%;margin-top:1.2rem}.opening-course-next{text-align:center;color:var(--ink-muted);margin-top:.5rem;font-size:.65rem;line-height:1.7}.opening-course-method{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:1.2rem}.opening-course-method h3{margin-bottom:.8rem;font-size:.78rem;font-weight:700}.opening-course-method li{color:var(--ink-muted);align-items:flex-start;gap:.65rem;margin-top:.85rem;font-size:.68rem;line-height:1.6;display:flex}.opening-course-method li b{background:var(--surface-2);width:1.4rem;height:1.4rem;color:var(--accent);font-family:var(--font-mono);border-radius:50%;flex:none;place-items:center;font-size:.63rem;display:grid}.opening-course-method li strong{color:var(--ink);margin-bottom:.1rem;font-size:.73rem;display:block}.opening-course-outline{border-top:1px solid var(--line)}.opening-course-outline summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:48px;padding:.9rem 1.35rem;font-size:.75rem;font-weight:600;display:flex}.opening-course-outline summary:before{content:"+";color:var(--accent);margin-right:.6rem}.opening-course-outline[open] summary:before{content:"−"}.opening-course-outline summary>span{color:var(--ink-muted);margin-left:auto;font-weight:400}.opening-course-outline nav{flex-direction:column;padding:0 .7rem .7rem;display:flex}.opening-course-outline nav a{min-height:44px;color:var(--ink-muted);border-radius:.4rem;justify-content:space-between;align-items:center;padding:.65rem;font-size:.75rem;display:flex}.opening-course-outline nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft)}.opening-board-help kbd{border:1px solid var(--line);font-family:var(--font-mono);color:var(--ink);border-radius:.25rem;padding:0 .3rem;font-size:.64rem;display:inline-block}.opening-library-tabs+.opening-catalog{border-top:0;padding-top:0}@media (max-width:63.99rem){.opening-course-layout{grid-template-columns:minmax(0,1fr) 15rem;gap:1rem}.opening-card.opening-course-lesson{grid-template-columns:5rem minmax(0,1fr)}.opening-lesson-number{display:none}.opening-course-lesson-actions{flex-direction:row;grid-column:2;gap:.75rem}.opening-course-lesson-actions>*{flex:1}}@media (max-width:48rem){.opening-course-hero{grid-template-columns:minmax(0,1fr);padding:1.5rem}.opening-course-hero h1{font-size:clamp(1.8rem,5.5vw,2.4rem)}.opening-course-hero .opening-intro{font-size:.8rem;line-height:1.65}.opening-course-facts{gap:.6rem 1rem;font-size:.65rem}.opening-course-facts b{font-size:.75rem}.opening-course-art{display:none}.opening-course-layout{grid-template-columns:1fr;gap:1.5rem}.opening-course-sidebar{order:-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.65rem 1.2rem;display:grid;position:static}.opening-course-coach{grid-column:1/-1}.opening-course-invitation,.opening-course-method,.opening-course-sidebar>.opening-progress-note{display:none}.opening-course-progress-label{flex-wrap:wrap;grid-area:2/1;align-self:end;gap:.3rem;margin:0}.opening-course-sidebar .opening-progress{grid-area:3/1;align-self:start}.opening-course-sidebar .opening-course-learned{grid-area:4/1;margin:0}.opening-continue{grid-area:2/2/span 2;align-self:center;margin:0;font-size:.73rem!important}.opening-course-next{grid-area:4/2;margin:0;font-size:.6rem}.opening-library-tabs{gap:.75rem}.opening-library-tabs a{flex-wrap:wrap;flex:1;gap:.4rem;padding-bottom:.75rem;font-size:.8rem}.opening-course-lesson-copy .opening-card-idea{display:none}.opening-card.opening-course-lesson{gap:.4rem .85rem;padding:.85rem}.opening-preview-link{grid-row:1/span 2}.opening-course-lesson-copy h4{font-size:.95rem}}@media (max-width:359px){.opening-course-sidebar{gap:.65rem .75rem;padding:.9rem}.opening-card.opening-course-lesson{grid-template-columns:4rem minmax(0,1fr)}.opening-course-lesson-copy .opening-card-subtitle{font-size:.59rem}.opening-course-meta{gap:.4rem}.opening-course-meta .opening-side{display:none}.opening-course-hero{padding:1.2rem}}
