
:root{
  --canvas:#f4f2ed;
  --canvas-2:#ebe8e1;
  --surface:#ffffff;
  --surface-soft:#f8f7f3;
  --ink:#11263f;
  --ink-2:#29435f;
  --muted:#6f7f8e;
  --line:#dfe3e5;
  --line-strong:#ccd4d8;
  --accent:#1d6b7a;
  --accent-2:#2d8796;
  --accent-soft:#e6f0f1;
  --bronze:#a87843;
  --bronze-soft:#f3eadf;
  --good:#2c7a5b;
  --good-soft:#e8f3ee;
  --warn:#a56a21;
  --warn-soft:#fff3df;
  --danger:#ad4f54;
  --danger-soft:#fbeaec;
  --nav:#10243a;
  --nav-2:#16314d;
  --shadow:0 14px 34px rgba(22,37,52,.08);
  --shadow-soft:0 7px 18px rgba(22,37,52,.055);
  --radius:22px;
}
*{box-sizing:border-box}
html{background:var(--canvas);scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:linear-gradient(180deg,#f7f5f0 0%,var(--canvas) 46%,#efede7 100%);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
#app{display:grid;grid-template-columns:262px minmax(0,1fr);min-height:100vh;width:100%}
.sidebar{position:sticky;top:0;height:100vh;overflow:auto;padding:18px 14px;background:linear-gradient(180deg,var(--nav) 0%,#0d2034 100%);color:#f7fbfd;border-inline-end:1px solid rgba(255,255,255,.08);z-index:80}
.sidebar::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.045),transparent 32%),radial-gradient(circle at 35% 0%,rgba(85,172,188,.16),transparent 30%)}
.sidebar>*{position:relative;z-index:1}
.brand{display:flex;align-items:center;gap:12px;padding:7px 8px 18px}
.brand-badge{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#f8f3e9,#d8c6ad);color:var(--nav);font-size:25px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(255,255,255,.65)}
.brand h1{margin:0;font-size:17px;letter-spacing:.02em}.brand p{margin:4px 0 0;color:#a9bdcb;font-size:10.5px;line-height:1.4}
.nav-section{margin:14px 8px 5px;color:#7f9cb0;font-size:9px;text-transform:uppercase;letter-spacing:.16em;font-weight:800}
.nav-item,.nav-sub,.tree-toggle{display:flex;align-items:center;gap:10px;padding:10px 11px;margin:3px 0;border-radius:12px;border:1px solid transparent;color:#dce9f0;transition:.16s ease;position:relative}
.nav-item:hover,.nav-sub:hover,.tree-toggle:hover{background:rgba(255,255,255,.055);color:white}
.nav-item.active,.nav-sub.active{background:linear-gradient(90deg,rgba(97,190,199,.20),rgba(255,255,255,.05));border-color:rgba(134,205,211,.20);color:white}
.nav-item.active::before,.nav-sub.active::before{content:"";position:absolute;inset-inline-start:0;top:10px;bottom:10px;width:3px;border-radius:10px;background:#77c9cf}
.nav-icon{width:21px;flex:0 0 21px;text-align:center;font-size:15px}.nav-item .text,.nav-sub .text{font-size:12.5px;font-weight:650;letter-spacing:.005em}
.tree-toggle{justify-content:space-between;cursor:pointer;font-size:12px;color:#bbced9;background:rgba(255,255,255,.025)}
.tree-children{display:grid;gap:1px;margin-inline-start:10px}.tree-children.collapsed{display:none}.nav-sub{padding:8px 10px;color:#b7cad5}
.sidebar-bottom{margin-top:18px;padding:14px 8px 2px;border-top:1px solid rgba(255,255,255,.09)}
.sidebar-user{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:center}.sidebar-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e9decf;color:var(--nav);font-size:11px;font-weight:900}.sidebar-user strong{font-size:11.5px;display:block}.sidebar-user small{display:block;color:#87a5b8;font-size:9.5px;margin-top:2px}.market-summary{margin-top:11px;font-size:8.5px;line-height:1.6;color:#718da0;word-spacing:2px}
.shell{min-width:0;padding:24px 30px 34px;overflow-x:hidden}
.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.title h2{margin:0;font-size:clamp(26px,3vw,38px);letter-spacing:-.025em;font-weight:770}.title p{margin:7px 0 0;color:var(--muted);font-size:13px;max-width:760px;line-height:1.55}.top-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nav-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);background:var(--surface);border-radius:12px;cursor:pointer;box-shadow:var(--shadow-soft);font-size:19px}
.lang-control,.space-control{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10.5px;font-weight:700}.lang-control select,.space-control select,select,input,textarea{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:9px 11px;border-radius:11px;outline:none}.lang-control select:focus,.space-control select:focus,select:focus,input:focus,textarea:focus{border-color:#9ab9bf;box-shadow:0 0 0 3px rgba(29,107,122,.09)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:750;font-size:12px;box-shadow:var(--shadow-soft);transition:.16s ease}.btn:hover{transform:translateY(-1px);border-color:#c3cdd1}.btn.primary{background:var(--nav);color:white;border-color:var(--nav)}.btn.secondary{background:var(--accent);color:white;border-color:var(--accent)}.btn.ghost{background:transparent;box-shadow:none}.btn.small{padding:8px 10px;font-size:10.5px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.page-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:15px 17px;border:1px solid #d7dfdf;border-radius:18px;background:linear-gradient(110deg,#eef4f2 0%,#f8f4ed 70%,#f2ece3 100%);box-shadow:var(--shadow-soft)}.page-banner h3{margin:0 0 4px;font-size:13px}.page-banner p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.45}.progress-cluster{display:flex;gap:10px;align-items:center}.compact-progress{width:60px!important;height:60px!important}.compact-progress .inner{width:45px!important;height:45px!important}.compact-progress strong{font-size:11px!important}
.page-root{min-width:0;min-height:340px}.page-root.rendered{animation:fadeUp .22s ease-out}@keyframes fadeUp{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:none}}.loading-card{display:grid;place-items:center;min-height:300px;border:1px dashed var(--line-strong);border-radius:20px;background:rgba(255,255,255,.42);color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:15px}.card{grid-column:span 12;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-soft)}.card h3,.card h4{margin:0 0 9px}.card h3{font-size:18px;letter-spacing:-.012em}.card h4{font-size:13px}.muted{color:var(--muted);line-height:1.55}
.breadcrumb{display:flex;gap:8px;flex-wrap:wrap;color:#778695;font-size:10.5px;margin:0 0 12px}.breadcrumb span::after{content:"/";margin-inline-start:8px;color:#b4bec4}.breadcrumb span:last-child::after{content:""}
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:22px;align-items:stretch;padding:28px}.hero h3{font-size:clamp(32px,4vw,54px)!important;line-height:1.04;letter-spacing:-.045em!important;max-width:800px}.hero p{max-width:680px;font-size:14px}.hero-visual{min-height:260px;padding:18px;border-radius:18px;border:1px solid #d6dedf;background:linear-gradient(145deg,#eff4f2 0%,#f7f2e9 100%);display:grid;place-items:center;overflow:hidden;position:relative}.hero-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 24%,rgba(17,38,63,.035) 25%,transparent 26%,transparent 49%,rgba(17,38,63,.035) 50%,transparent 51%,transparent 74%,rgba(17,38,63,.035) 75%,transparent 76%),linear-gradient(transparent 24%,rgba(17,38,63,.035) 25%,transparent 26%,transparent 49%,rgba(17,38,63,.035) 50%,transparent 51%,transparent 74%,rgba(17,38,63,.035) 75%,transparent 76%);pointer-events:none}.hero-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:relative;z-index:1}.stat-box{background:rgba(255,255,255,.76);backdrop-filter:blur(3px);border:1px solid rgba(170,181,184,.65);border-radius:14px;padding:14px}.stat-box strong{display:block;font-size:12px}.stat-box .muted{font-size:10px;margin-top:4px}.icon-xl{font-size:25px;margin-bottom:9px}
.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.four-col{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.module-card{min-width:0;min-height:172px;display:flex;flex-direction:column;justify-content:space-between;padding:17px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(180deg,#fff,#faf9f6);transition:.16s ease}.module-card:hover{transform:translateY(-2px);border-color:#bfc9cb;box-shadow:var(--shadow-soft)}.module-card h4{font-size:14px}.module-card p{font-size:11px}.module-card.locked-card{opacity:.68;background:#f3f2ee}.module-card .module-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--bronze);font-weight:900}
.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:var(--surface-soft);color:#536675;font-size:9.5px;font-weight:750;border:1px solid var(--line)}.chip.good{background:var(--good-soft);border-color:#cbe4d9;color:var(--good)}.chip.warn{background:var(--warn-soft);border-color:#eed9b9;color:var(--warn)}
.list-card{display:grid;gap:10px}.open-card,.line-card,.lesson-item,.topic-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;padding:14px}.open-card .head,.line-card .head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.lesson-item .head{display:flex;justify-content:space-between;gap:10px}.lesson-item,.topic-card{font-size:12px}
.progressbar{height:7px;background:#e7e9e7;border-radius:999px;overflow:hidden}.progressbar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#77aab0)}
.circle-row{display:flex;gap:14px;flex-wrap:wrap}.circle-progress{--value:0;width:98px;height:98px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--value)*1%),#e6e9e7 0)}.circle-progress .inner{width:76px;height:76px;border-radius:50%;background:var(--surface);display:grid;place-items:center;align-content:center;border:1px solid #e2e5e4;text-align:center}.circle-progress strong{font-size:17px}.circle-progress small{font-size:8.5px;color:var(--muted);max-width:60px;line-height:1.2}
.toolbar,.review-toolbar,.voice-panel{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.field{display:grid;gap:7px}.field label{font-size:10px;color:var(--muted);font-weight:750}.field input,.field select,.field textarea{width:100%}
.msg{padding:12px 13px;border-radius:12px;border:1px solid var(--line);background:var(--surface-soft);font-size:11px;line-height:1.5}.msg.good{border-color:#cce2d7;background:var(--good-soft);color:#245d49}.msg.warn{border-color:#eed9b9;background:var(--warn-soft);color:#80531d}.msg.danger{border-color:#efc9cc;background:var(--danger-soft);color:#813b40}
.choice-list{display:grid;gap:10px;margin:12px 0}.choice{padding:13px;border-radius:13px;border:1px solid var(--line);background:var(--surface-soft);cursor:pointer;font-size:11px}.choice.correct{border-color:#9acfb9;background:var(--good-soft)}.choice.wrong{border-color:#e2a8ad;background:var(--danger-soft)}
.move-box{padding:15px;background:#f3f1ec;border:1px solid var(--line);border-radius:15px}.move-big{font-size:38px;font-weight:850;color:var(--bronze)}
.lesson-panel{display:grid;grid-template-columns:380px minmax(0,1fr);gap:20px;align-items:start}.lesson-stage{display:grid;grid-template-columns:minmax(310px,410px) minmax(0,1fr);gap:22px;align-items:start;max-width:1220px;margin:0 auto}.lesson-stage>*{min-width:0}.lesson-flow{display:grid;gap:12px;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;padding-inline-end:3px}.stage-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:var(--bronze-soft);border:1px solid #ead7c0;font-size:9.5px;color:#75522f;font-weight:800}.stage-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:15px;padding:14px}.stage-card.locked{opacity:.57}.stage-card h4{margin:0 0 7px}.voice-indicator{padding:6px 9px;border-radius:999px;background:var(--good-soft);border:1px solid #cbe4d9;font-size:9px;color:var(--good)}.voice-indicator.warn{background:var(--warn-soft);border-color:#eed9b9;color:var(--warn)}
.chessboard{container-type:inline-size;width:min(100%,590px);max-width:100%;aspect-ratio:1;display:grid;grid-template-columns:repeat(8,1fr);border:6px solid #183b5b;border-radius:20px;overflow:hidden;box-shadow:0 14px 32px rgba(17,38,63,.13);direction:ltr;background:#183b5b;touch-action:manipulation}.sq{position:relative;display:grid;place-items:center;font-size:clamp(28px,10cqw,55px);line-height:1;user-select:none;cursor:pointer}.sq.light{background:#efd9af}.sq.dark{background:#aa8961}.sq.selected{box-shadow:inset 0 0 0 4px #e1b65c}.sq.good{box-shadow:inset 0 0 0 4px #4fbf9a}.sq.bad{box-shadow:inset 0 0 0 4px #e06c74}.sq.last{box-shadow:inset 0 0 0 4px #58afbb}.piece-w{color:#fff;-webkit-text-stroke:1.1px #173b5d;text-shadow:0 2px 4px rgba(0,0,0,.18)}.piece-b{color:#111;-webkit-text-stroke:.8px rgba(255,255,255,.42)}.coord{position:absolute;font-size:clamp(8px,2.4cqw,11px);font-weight:850;opacity:.78;line-height:1}.coord.file{right:4px;bottom:3px}.coord.rank{left:4px;top:3px}.sq.light .coord{color:#6d553a}.sq.dark .coord{color:#fff3df}
.mind-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px}.piece-pools{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pool{background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;padding:12px}.pieces{display:flex;gap:7px;flex-wrap:wrap;font-size:28px}.score-list{display:grid;gap:8px}
.tree-panel{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.outline{background:var(--surface-soft);border:1px solid var(--line);border-radius:16px;padding:13px;position:sticky;top:14px}.outline a{display:block;padding:9px 10px;border-radius:10px;margin:3px 0;color:#415a70;font-size:11px}.outline a:hover{background:#ecefeb}
.reference-box{background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;overflow:hidden}.reference-box>summary{cursor:pointer;padding:12px 14px;font-weight:800;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px}.reference-box>summary::-webkit-details-marker{display:none}.reference-box>summary::after{content:'＋';color:var(--accent);font-size:16px}.reference-box[open]>summary::after{content:'−'}.reference-content{padding:0 13px 13px}.reference-content textarea{width:100%;resize:vertical}.reference-content iframe{display:block;max-width:100%}
.coach-launcher{position:fixed;inset-inline-end:20px;bottom:20px;width:52px;height:52px;border-radius:50%;border:1px solid #b6c5ca;background:var(--nav);color:white;font-size:22px;cursor:pointer;box-shadow:0 12px 24px rgba(17,38,63,.18);z-index:70}.coach{position:fixed;inset-inline-end:20px;bottom:82px;width:min(360px,calc(100vw - 30px));background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 42px rgba(17,38,63,.18);z-index:75}.coach-head{padding:12px 14px;border-bottom:1px solid var(--line);display:flex;gap:10px;align-items:center}.coach-body{padding:13px 14px}.coach textarea{width:100%;min-height:76px;resize:vertical}.coach-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.coach-close{margin-inline-start:auto;width:28px;height:28px;border:0;border-radius:9px;background:#edf0ef;color:var(--ink);font-size:18px;cursor:pointer}.coach-avatar{width:38px!important;height:38px!important;font-size:18px!important}.voice-badge{font-size:9px;color:var(--muted);margin-top:2px}
[hidden]{display:none!important}.nav-overlay{display:none}
footer{padding:22px 2px 0;color:#89959e;font-size:9px;text-align:center}

/* Platform V15 components */
.eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:var(--bronze)}
.arch-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-3{grid-column:span 3}
.kpi{padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft)}.kpi small{display:block;color:var(--muted);font-size:9.5px;margin-bottom:6px}.kpi strong{font-size:24px;letter-spacing:-.03em}.kpi .delta{font-size:9px;margin-top:5px;color:var(--good)}
.domain-card{position:relative;overflow:hidden}.domain-card::after{content:"";position:absolute;width:130px;height:130px;border:1px solid rgba(17,38,63,.06);border-radius:50%;right:-42px;top:-48px}.domain-number{font-size:9px;color:var(--bronze);font-weight:900;letter-spacing:.13em}.domain-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:18px;font-weight:850;margin:10px 0 16px}.domain-meta{display:flex;justify-content:space-between;gap:10px;align-items:end;margin-top:16px}.domain-meta strong{font-size:12px}.domain-meta small{font-size:9px;color:var(--muted)}
.daily-track{display:grid;gap:9px}.track-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:#fbfaf7}.track-index{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--nav);color:white;font-size:10px;font-weight:900}.track-item strong{font-size:11.5px}.track-item p{margin:3px 0 0;font-size:9.5px;color:var(--muted)}.track-time{font-size:9px;color:var(--accent);font-weight:850}
.insight-list{display:grid;gap:9px}.insight{padding:12px;border-inline-start:3px solid var(--accent);background:#f8faf8;border-radius:0 12px 12px 0}.insight.warn{border-color:var(--warn);background:#fff9ef}.insight strong{display:block;font-size:10.5px}.insight span{display:block;margin-top:4px;font-size:9.5px;color:var(--muted);line-height:1.45}
.metric-row{display:grid;grid-template-columns:130px minmax(0,1fr) 50px;gap:10px;align-items:center;margin:10px 0}.metric-row label{font-size:10px;color:#455c6f}.metric-row strong{text-align:right;font-size:10px}.metric-bar{height:8px;background:#e9ecea;border-radius:999px;overflow:hidden}.metric-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#72aab1);border-radius:999px}
.activity-bars{height:120px;display:flex;align-items:end;gap:8px;padding-top:12px}.activity-col{flex:1;display:grid;gap:5px;justify-items:center}.activity-bar{width:100%;max-width:30px;background:linear-gradient(180deg,#6da7af,var(--accent));border-radius:7px 7px 3px 3px;min-height:5px}.activity-col small{font-size:8px;color:var(--muted)}
.avatar-stack{display:flex}.avatar-stack span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e8dfd2;border:2px solid white;margin-inline-start:-6px;font-size:8px;font-weight:900}.avatar-stack span:first-child{margin-inline-start:0}
.subscription-summary{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:14px;border-radius:14px;background:linear-gradient(120deg,#122b43,#1e5361);color:white}.subscription-summary small{color:#bcd3db;font-size:9px}.subscription-summary strong{font-size:16px}.subscription-summary .chip{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);color:white}
.plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.plan-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff;position:relative}.plan-card.featured{border-color:#7eabb1;box-shadow:0 0 0 2px rgba(29,107,122,.08)}.plan-card h4{font-size:14px}.plan-price{font-size:26px;font-weight:850;letter-spacing:-.04em;margin:11px 0 4px}.plan-price small{font-size:9px;color:var(--muted);font-weight:600}.plan-list{display:grid;gap:7px;margin:13px 0;font-size:9.5px;color:#4f6474}.plan-list span::before{content:"✓";margin-inline-end:7px;color:var(--good);font-weight:900}
.builder-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:18px}.selector-row{display:flex;gap:8px;flex-wrap:wrap}.selector-chip{position:relative}.selector-chip input{position:absolute;opacity:0;pointer-events:none}.selector-chip label{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;font-size:10px;font-weight:750}.selector-chip input:checked+label{border-color:#80adb3;background:var(--accent-soft);color:#185b67}.quote-card{padding:20px;border-radius:18px;background:var(--nav);color:white;min-height:100%}.quote-card small{color:#b6cad7}.quote-total{font-size:42px;font-weight:850;letter-spacing:-.05em;margin:12px 0}.quote-lines{display:grid;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.13)}.quote-line{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#dce8ee}
.grade-switch{display:flex;gap:7px;flex-wrap:wrap}.grade-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:800;cursor:pointer}.grade-btn.active{background:var(--nav);color:white;border-color:var(--nav)}.subject-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.subject-card{padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff}.subject-card .subject-top{display:flex;justify-content:space-between;gap:10px}.subject-card strong{font-size:12px}.subject-card p{font-size:9.5px;color:var(--muted);min-height:30px}.level-badge{font-size:8.5px;padding:5px 7px;border-radius:999px;background:var(--bronze-soft);color:#7c5831;font-weight:850;height:max-content}
.knowledge-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.knowledge-node{padding:17px;border:1px solid var(--line);border-radius:16px;background:#fff;position:relative;overflow:hidden}.knowledge-node .node-icon{font-size:26px;margin-bottom:12px}.knowledge-node p{font-size:10px;color:var(--muted)}
.body-map{height:320px;position:relative;border-radius:16px;background:linear-gradient(180deg,#f5f2eb,#ece9e1);overflow:hidden;border:1px solid var(--line)}.body-silhouette{position:absolute;left:50%;top:22px;transform:translateX(-50%);width:118px;height:270px}.body-head{position:absolute;left:41px;top:0;width:36px;height:36px;border-radius:50%;background:#d8d2c7}.body-torso{position:absolute;left:25px;top:40px;width:68px;height:108px;border-radius:35px 35px 20px 20px;background:#d8d2c7}.body-leg{position:absolute;top:140px;width:28px;height:128px;border-radius:18px;background:#d8d2c7}.body-leg.l{left:28px}.body-leg.r{right:28px}.body-arm{position:absolute;top:48px;width:24px;height:120px;border-radius:16px;background:#d8d2c7}.body-arm.l{left:5px;transform:rotate(7deg)}.body-arm.r{right:5px;transform:rotate(-7deg)}.organ-dot{position:absolute;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--nav);color:white;font-size:9px;font-weight:900;box-shadow:0 5px 14px rgba(17,38,63,.18)}.organ-dot.heart{left:52%;top:86px}.organ-dot.liver{left:58%;top:123px;background:var(--bronze)}.organ-dot.lungs{left:38%;top:83px;background:var(--accent)}.organ-dot.brain{left:50%;top:28px;background:#6c7897}.organ-dot.stomach{left:42%;top:137px;background:#7c6b89}.organ-labels{position:absolute;right:12px;top:14px;display:grid;gap:7px}.organ-labels span{font-size:8.5px;padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.82);border:1px solid var(--line)}
.alert-table{width:100%;border-collapse:collapse;font-size:10px}.alert-table th{text-align:left;color:var(--muted);font-size:8.5px;text-transform:uppercase;letter-spacing:.08em;padding:9px 8px;border-bottom:1px solid var(--line)}.alert-table td{padding:11px 8px;border-bottom:1px solid #edf0ef;vertical-align:middle}.status{display:inline-flex;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:850}.status.good{background:var(--good-soft);color:var(--good)}.status.warn{background:var(--warn-soft);color:var(--warn)}.status.danger{background:var(--danger-soft);color:var(--danger)}
.role-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.role-card{padding:11px;border-radius:12px;border:1px solid var(--line);background:#fff}.role-card strong{font-size:10px}.role-card small{display:block;margin-top:3px;color:var(--muted);font-size:8.5px}

@media(max-width:1180px){
  #app{grid-template-columns:86px minmax(0,1fr)}.sidebar{padding:14px 8px}.sidebar .brand-copy,.sidebar .text,.sidebar .nav-section,.sidebar .tree-toggle span:last-child,.sidebar .sidebar-user>div:not(.sidebar-avatar),.sidebar .market-summary{display:none}.brand{justify-content:center;padding-inline:0}.nav-item,.nav-sub,.tree-toggle{justify-content:center;padding:10px 8px}.tree-children{margin-inline-start:0}.sidebar-bottom{padding-inline:0}.sidebar-user{display:block}.sidebar-avatar{margin:auto}.shell{padding:21px}.hero{grid-template-columns:1fr}.module-grid,.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tree-panel,.lesson-panel,.mind-grid,.builder-grid{grid-template-columns:1fr}.lesson-flow{position:relative;top:auto;max-height:none;overflow:visible}.outline{position:relative;top:auto}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arch-grid .span-8,.arch-grid .span-7,.arch-grid .span-6,.arch-grid .span-5,.arch-grid .span-4,.arch-grid .span-3{grid-column:span 6}
}
@media(max-width:820px){
  #app{display:block}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:min(84vw,320px);height:100dvh;transform:translateX(-105%);transition:transform .2s ease;box-shadow:0 20px 45px rgba(0,0,0,.26)}body.rtl .sidebar{transform:translateX(105%)}body.nav-open .sidebar{transform:translateX(0)}.sidebar .brand-copy,.sidebar .text,.sidebar .nav-section,.sidebar .tree-toggle span:last-child,.sidebar .sidebar-user>div:not(.sidebar-avatar),.sidebar .market-summary{display:block}.brand{justify-content:flex-start}.nav-item,.nav-sub,.tree-toggle{justify-content:flex-start}.tree-children{margin-inline-start:10px}.sidebar-user{display:grid}.sidebar-avatar{margin:0}.nav-overlay{display:block;position:fixed;inset:0;background:rgba(10,23,35,.42);z-index:70;opacity:0;pointer-events:none;transition:.2s}body.nav-open .nav-overlay{opacity:1;pointer-events:auto}.nav-toggle{display:grid;place-items:center}.shell{padding:15px 14px 28px}.topbar{display:grid;grid-template-columns:auto 1fr;align-items:start}.topbar .title{grid-column:2}.top-actions{grid-column:1/-1;justify-content:flex-start}.page-banner{padding:12px 13px}.page-banner .progress-cluster{display:none}.hero{padding:20px}.hero h3{font-size:36px!important}.two-col,.three-col,.four-col,.module-grid,.plan-grid,.subject-grid,.knowledge-map{grid-template-columns:1fr}.arch-grid{grid-template-columns:1fr}.arch-grid .span-8,.arch-grid .span-7,.arch-grid .span-6,.arch-grid .span-5,.arch-grid .span-4,.arch-grid .span-3{grid-column:auto}.lesson-stage{display:flex;flex-direction:column;gap:14px}.lesson-stage>.lesson-flow{order:2;width:100%}.lesson-stage>:not(.lesson-flow){order:1;width:100%}.chessboard{width:min(100%,560px);margin-inline:auto;border-width:5px;border-radius:18px}.mind-grid{display:flex;flex-direction:column}.mind-grid>div:last-child{order:-1}.piece-pools{grid-template-columns:1fr 1fr}.tree-panel{grid-template-columns:1fr}.outline{display:none}.metric-row{grid-template-columns:100px minmax(0,1fr) 40px}.role-strip{grid-template-columns:1fr}.builder-grid{grid-template-columns:1fr}.coach-launcher{inset-inline-end:14px;bottom:14px}.coach{inset-inline-end:14px;bottom:76px}.reference-content iframe{height:460px!important}
}
@media(max-width:520px){
  .shell{padding:12px 10px 25px}.topbar{margin-bottom:12px}.title h2{font-size:25px}.title p{font-size:11px}.top-actions{gap:7px}.lang-control span,.space-control span{display:none}.page-banner{margin-bottom:12px}.page-banner h3{font-size:11.5px}.page-banner p{font-size:9.5px}.card{padding:15px;border-radius:17px}.hero{padding:17px}.hero h3{font-size:31px!important}.hero-visual{min-height:220px}.hero-grid{grid-template-columns:1fr 1fr}.stat-box{padding:11px}.chessboard{border-width:4px;border-radius:15px}.sq{font-size:clamp(28px,11.6cqw,50px)}.sq.selected{box-shadow:inset 0 0 0 3px #e1b65c}.sq.good{box-shadow:inset 0 0 0 3px #4fbf9a}.sq.bad{box-shadow:inset 0 0 0 3px #e06c74}.sq.last{box-shadow:inset 0 0 0 3px #58afbb}.coord{font-size:clamp(8px,2.7cqw,10px)}.circle-progress{width:88px;height:88px}.circle-progress .inner{width:68px;height:68px}.plan-grid{grid-template-columns:1fr}.subject-grid{grid-template-columns:1fr}.piece-pools{grid-template-columns:1fr}.quote-total{font-size:36px}.alert-table{min-width:620px}.table-scroll{overflow:auto}.activity-bars{height:100px}
}

/* V15.1 Active Learning */
.active-node,.subject-link,.track-item{transition:.16s ease}.active-node:hover,.subject-link:hover,.track-item:hover{transform:translateY(-2px);border-color:#b8c8cb;box-shadow:var(--shadow-soft)}
.subject-link{display:block;position:relative;padding-bottom:58px}.subject-start{position:absolute;left:15px;right:15px;bottom:14px}.knowledge-node.active-node{display:block}
.answer-grid{display:grid;grid-template-columns:1fr;gap:8px;margin:12px 0}.answer-btn{width:100%;text-align:left;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;font-size:11px;font-weight:750;transition:.15s}.answer-btn:hover{border-color:#9fb8bd;background:#f7fbfa}.answer-btn:disabled{cursor:default;opacity:.8}.correct-answer{background:var(--good-soft)!important;border-color:#9ccfbc!important;color:var(--good)!important}.wrong-answer{background:var(--warn-soft)!important;border-color:#e3c29b!important;color:var(--warn)!important}.quiz-card{padding:17px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#fbfcfb,#f6f3ed);min-height:220px}.result-panel{text-align:center;padding:16px}.result-panel h3{font-size:34px!important;margin:7px 0}.large-progress{height:12px}.info-stack{display:grid;gap:10px}.anatomy-map .organ-dot{cursor:pointer;transition:.16s}.anatomy-map .organ-dot:hover,.anatomy-map .organ-dot.selected-organ{transform:scale(1.13);box-shadow:0 0 0 5px rgba(29,107,122,.12),0 7px 17px rgba(17,38,63,.22)}
.flow-chain{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.flow-step{min-width:120px;text-align:center;padding:12px;border-radius:13px;background:#fff;border:1px solid var(--line);font-size:11px}.flow-step strong{display:block;margin:2px 0}.flow-step small{display:block;color:var(--muted);font-size:9px}.flow-arrow{font-size:20px;color:var(--accent);font-weight:900}.vertical-flow{flex-direction:column}.selected-chain{background:var(--accent-soft)!important;border-color:#7cafb5!important;color:#175b67!important}
.solar-lab{min-height:330px;padding:22px;border-radius:18px;background:radial-gradient(circle at center,#213c57 0%,#11263f 45%,#0b1929 100%);display:grid;place-items:center;color:white;overflow:hidden;position:relative}.sun-core{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:#ffd166;color:#805400;font-size:34px;box-shadow:0 0 45px rgba(255,209,102,.42);position:absolute;left:50%;top:34px;transform:translateX(-50%)}.planet-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;width:100%;margin-top:95px}.planet-btn{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:white;border-radius:12px;padding:9px 5px;cursor:pointer;display:grid;gap:4px;place-items:center;transition:.15s}.planet-btn span{font-size:18px}.planet-btn small{font-size:8px;color:#c7d9e3}.planet-btn:hover,.planet-btn.active{background:rgba(112,202,208,.18);border-color:#79c6cc;transform:translateY(-1px)}.experiment-btn{width:100%;text-align:left;cursor:pointer;transition:.15s}.experiment-btn.active{border-color:#7cafb5;background:var(--accent-soft)}

@media(max-width:820px){.planet-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.solar-lab{min-height:430px}.flow-chain{align-items:stretch}.flow-arrow{align-self:center}.subject-start{position:static;margin-top:12px;width:100%}.subject-link{padding-bottom:15px}}

/* ========================================================================== 
   BBJ ACADEMY V16 — IMMERSIVE LEARNING
   One clear workspace + recursive left navigation + dark educational UI
   ========================================================================== */
:root{
  --v16-bg:#061425;--v16-bg2:#081a2e;--v16-panel:#0b2037;--v16-panel2:#0d2743;
  --v16-line:#1c4367;--v16-line2:#2a5f8c;--v16-text:#f4f8ff;--v16-muted:#9fb6cf;
  --v16-blue:#1ea7ff;--v16-blue2:#3b7cff;--v16-cyan:#42d6ff;--v16-green:#36d88c;
  --v16-amber:#ffb347;--v16-red:#ff4f6d;--v16-purple:#8d6bff;
  --v16-shadow:0 20px 48px rgba(0,0,0,.25);--v16-radius:20px;
}
html,body{background:radial-gradient(circle at 70% 0%,#0c2c4b 0%,var(--v16-bg) 34%,#04101e 100%);color:var(--v16-text)}
body{font-family:Inter,"Segoe UI",Arial,sans-serif}
#app{grid-template-columns:274px minmax(0,1fr);background:transparent}
.sidebar{background:linear-gradient(180deg,#07192c 0%,#061423 100%);border-inline-end:1px solid #153452;padding:16px 12px;box-shadow:14px 0 42px rgba(0,0,0,.12)}
.brand{padding:7px 8px 14px;border-bottom:1px solid rgba(121,176,221,.13);margin-bottom:10px}.brand-badge{background:linear-gradient(145deg,#1ea7ff,#545cff);color:#fff;border-radius:13px;box-shadow:0 0 24px rgba(30,167,255,.22)}.brand h1{font-size:18px}.brand p{font-size:10px;color:#8dabca;line-height:1.45}
.learner-card{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;margin:10px 5px 14px;padding:10px 11px;border:1px solid #173957;border-radius:14px;background:rgba(16,44,72,.5)}.learner-card strong{display:block;font-size:12px}.learner-card small{display:block;color:#82a6c6;font-size:9.5px;margin-top:3px}.sidebar-avatar{background:linear-gradient(145deg,#f8d8aa,#e59e62);color:#10243a;border:2px solid rgba(255,255,255,.45)}
.nav-tree{display:grid;gap:4px}.nav-leaf,.nav-branch-btn{width:100%;min-height:43px;display:flex;align-items:center;gap:10px;border:1px solid transparent;border-radius:11px;color:#d8e7f7;background:transparent;padding:9px 10px;text-align:left;cursor:pointer;transition:.15s ease}.nav-leaf:hover,.nav-branch-btn:hover{background:#0d2947;border-color:#1b466d;color:white}.nav-leaf.active{background:linear-gradient(90deg,#0b5bb1,#103765);border-color:#1f8eff;color:#fff;box-shadow:inset 3px 0 0 #4fd9ff,0 0 18px rgba(28,146,255,.12)}.nav-glyph{width:24px;min-width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.045);font-size:11px;font-weight:900;color:#9bd8ff}.nav-branch-title{display:flex;align-items:center;gap:10px;min-width:0}.nav-branch-btn{justify-content:space-between;font-size:12px;font-weight:700}.nav-chevron{font-size:20px;color:#6ea9d7;transition:.16s}.nav-branch.open>.nav-branch-btn .nav-chevron{transform:rotate(90deg)}.nav-branch-children{display:none;margin:2px 0 4px 12px;padding-left:7px;border-left:1px solid #173b5b}.nav-branch.open>.nav-branch-children{display:grid;gap:2px}.nav-leaf{font-size:11.5px;font-weight:600}.nav-leaf.level-2{font-size:10.8px;min-height:38px}.nav-leaf.level-3{font-size:10.2px;min-height:34px;color:#afc7dc}.nav-branch.level-1>.nav-branch-btn{min-height:39px;font-size:11.2px}.nav-branch.level-2>.nav-branch-btn{min-height:36px;font-size:10.6px;color:#b9d0e5}
.sidebar-bottom{margin-top:18px;padding:14px 7px 4px;border-top:1px solid #173651}.sidebar-lang{display:grid;gap:6px;font-size:9px;color:#7fa2bf;text-transform:uppercase;letter-spacing:.1em}.sidebar-lang select{width:100%;background:#0b223a;color:white;border-color:#1d4a70;font-size:11px}.version-note{margin-top:10px;color:#567c9b;font-size:8.5px;text-align:center}
.shell{padding:0;min-height:100vh;background:radial-gradient(circle at 75% 0%,rgba(15,65,108,.46),transparent 34%)}
.minimal-topbar{height:70px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(87,139,180,.16);background:rgba(5,18,32,.72);backdrop-filter:blur(10px);position:sticky;top:0;z-index:55}.page-identity{min-width:0}.page-kicker{display:block;color:#6197c0;font-size:9px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.page-identity h2{font-size:18px;margin:3px 0 0;color:#f5f9ff;letter-spacing:-.01em}.minimal-actions{display:flex;align-items:center;gap:9px}.icon-btn,.profile-pill{border:1px solid #214a6e;background:#0a2139;color:#eaf5ff;border-radius:12px;min-height:38px;padding:0 12px;cursor:pointer}.icon-btn{width:40px;padding:0}.profile-pill{font-size:11px;font-weight:700}.nav-toggle{background:#0a2139;color:white;border-color:#214a6e;box-shadow:none}
.page-root{padding:24px 28px 38px;min-height:calc(100vh - 70px)}footer{display:none}.loading-card{background:#0a2036;border-color:#25527a;color:#94b3cf}.page-root.rendered{animation:fadeUp .22s ease}
.btn{background:#0c2945;color:#f4f9ff;border-color:#24567f;box-shadow:none;border-radius:12px}.btn:hover{border-color:#39a7e8;background:#10365a}.btn.primary{background:linear-gradient(135deg,#0878d9,#1562d8);border-color:#2aa6ff;color:#fff;box-shadow:0 10px 28px rgba(0,105,215,.22)}.btn.secondary{background:#0d6b82;border-color:#2ca8c6}.btn.ghost{color:#c9def1;border-color:#214967;background:#091d31}.btn.small{font-size:10.5px}
.card,.focus-stage,.module-stage,.lesson-stage{background:linear-gradient(180deg,rgba(11,32,55,.96),rgba(7,25,43,.98));border:1px solid #1d4568;border-radius:var(--v16-radius);box-shadow:var(--v16-shadow);color:var(--v16-text)}.card{padding:20px}.muted,.card p,.insight span{color:var(--v16-muted)}.eyebrow{color:#4cbcff!important}.breadcrumb{color:#76a8cf}.breadcrumb a{color:#9bc9ef}.progressbar{background:#102e4b}.progressbar span{background:linear-gradient(90deg,#1ea7ff,#35d8ff)}.chip{background:#0b3150;color:#9fdcff;border-color:#1f5c87}.chip.good{background:#0c3b34;color:#80edbe}.stat-box,.insight,.track-item,.subject-card,.knowledge-node,.quiz-card,.flow-chain,.kpi,.result-panel{background:#0a2138!important;border-color:#1d476b!important;color:#eef7ff!important}.track-item:hover,.subject-card:hover,.knowledge-node:hover{border-color:#2a8bd2!important;background:#0d2d4c!important}.flow-step{background:#0c2945;border-color:#215277;color:#eaf6ff}.flow-step small{color:#8cb0cf}.msg{background:#0b223a;color:#c8def1;border-color:#1c466a}.msg.good{background:#0b3c32;color:#89edbd}.msg.warn{background:#4b3311;color:#ffd38a}.answer-btn{background:#0b2946!important;border-color:#215077!important;color:#f1f8ff!important}.answer-btn:hover{border-color:#34a6ed!important}.grade-btn{background:#0a2844!important;border-color:#24567d!important;color:#d7eafb!important}.grade-btn.active{background:#0c65ba!important;color:white!important;border-color:#2ca9ff!important}
.coach-launcher{background:linear-gradient(145deg,#1d8cf0,#565bff);box-shadow:0 10px 30px rgba(10,116,220,.35)}.coach{background:#081b2e;border-color:#24557f;color:white}.coach textarea{background:#061523;color:#eaf4ff;border-color:#214b70}.coach-head{border-color:#1e4362}.coach-head small{color:#87a8c5}

/* Home: intentionally one clear object only */
.home-focus{min-height:calc(100vh - 145px);display:grid;place-items:center}.home-command{width:min(940px,100%);padding:34px;border:1px solid #23537d;border-radius:28px;background:radial-gradient(circle at 70% 15%,rgba(36,125,209,.22),transparent 38%),linear-gradient(145deg,#0b2641,#07182a);box-shadow:0 28px 70px rgba(0,0,0,.28)}.home-command .home-label{color:#48bbff;font-size:10px;text-transform:uppercase;letter-spacing:.17em;font-weight:900}.home-command h3{font-size:clamp(30px,5vw,58px);line-height:1.02;letter-spacing:-.045em;margin:12px 0 13px;max-width:780px}.home-command p{font-size:14px;color:#a8c0d8;line-height:1.6;max-width:720px}.home-primary-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:28px;padding:12px;background:#071a2d;border:1px solid #183f61;border-radius:16px}.home-primary-action select{background:#0b2946;color:white;border-color:#235d89;min-height:48px}.home-primary-action .btn{min-width:190px}.home-progress{display:flex;align-items:center;gap:12px;margin-top:18px;color:#82a8c8;font-size:10.5px}.home-progress .bar{height:7px;flex:1;background:#0a2945;border-radius:99px;overflow:hidden}.home-progress .bar span{display:block;height:100%;width:62%;background:linear-gradient(90deg,#1ca2ff,#37dcff);border-radius:99px}

/* Simple single-stage landing pages */
.module-stage{padding:22px;min-height:560px}.stage-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.stage-head h3{font-size:24px;margin:4px 0 0}.stage-head p{margin:6px 0 0;color:#8eabc5;font-size:12px}.stage-menu{display:grid;gap:9px}.stage-menu a,.stage-menu button{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #1c476c;background:#0a223a;border-radius:14px;color:white;text-align:left;cursor:pointer}.stage-menu a:hover,.stage-menu button:hover{background:#0d3152;border-color:#2d92d7}.stage-menu .stage-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#103b62,#0a2948);font-weight:900;color:#65c8ff}.stage-menu strong{display:block;font-size:13px}.stage-menu small{display:block;margin-top:4px;color:#81a4c1;font-size:10px}.stage-arrow{color:#48bdff;font-size:20px}

/* ========================================================================== 
   IMMERSIVE ANATOMY
   ========================================================================== */
.anatomy-page{display:grid;grid-template-columns:minmax(470px,1.12fr) minmax(330px,.88fr);gap:16px;min-height:calc(100vh - 128px)}
.anatomy-viewer,.anatomy-info{border:1px solid #1e4c73;border-radius:22px;background:#071c31;box-shadow:var(--v16-shadow);overflow:hidden}.anatomy-viewer{position:relative;min-height:730px;background:radial-gradient(circle at 50% 28%,#0e466f 0%,#061a2e 55%,#041220 100%)}.anatomy-canvas{position:absolute;inset:0;overflow:hidden;cursor:grab}.anatomy-canvas:active{cursor:grabbing}.anatomy-image-wrap{position:absolute;left:50%;top:50%;width:min(66%,520px);height:94%;transform:translate(-50%,-48%) scale(var(--anatomy-scale,1));transform-origin:center center;transition:transform .2s ease}.anatomy-image{width:100%;height:100%;object-fit:contain;filter:saturate(1.06) contrast(1.02);user-select:none;pointer-events:none}.anatomy-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.flow-path{fill:none;stroke-width:3;stroke-linecap:round;opacity:0}.flow-path.red{stroke:#ff405a;filter:drop-shadow(0 0 5px #ff405a)}.flow-path.blue{stroke:#38a9ff;filter:drop-shadow(0 0 5px #38a9ff)}.flow-path.yellow{stroke:#ffcf45;filter:drop-shadow(0 0 5px #ffcf45)}.flow-path.cyan{stroke:#58e9ff;filter:drop-shadow(0 0 5px #58e9ff)}.anatomy-viewer[data-mode="heart"] .flow-heart,.anatomy-viewer[data-mode="lungs"] .flow-lungs,.anatomy-viewer[data-mode="brain"] .flow-brain,.anatomy-viewer[data-mode="eyes"] .flow-eyes,.anatomy-viewer[data-mode="liver"] .flow-liver,.anatomy-viewer[data-mode="stomach"] .flow-stomach{opacity:1;stroke-dasharray:8 11;animation:dashFlow 1.2s linear infinite}.anatomy-viewer[data-mode="heart"] .pulse-heart,.anatomy-viewer[data-mode="lungs"] .pulse-lungs,.anatomy-viewer[data-mode="brain"] .pulse-brain,.anatomy-viewer[data-mode="eyes"] .pulse-eyes,.anatomy-viewer[data-mode="liver"] .pulse-liver,.anatomy-viewer[data-mode="stomach"] .pulse-stomach{opacity:1;animation:organPulse 1.15s ease-in-out infinite}@keyframes dashFlow{to{stroke-dashoffset:-38}}@keyframes organPulse{0%,100%{r:15;opacity:.18}50%{r:26;opacity:.52}}
.anatomy-hotspot{position:absolute;width:28px;height:28px;border-radius:50%;border:3px solid #dff6ff;background:#178dff;box-shadow:0 0 0 7px rgba(32,157,255,.17),0 0 20px rgba(45,178,255,.85);cursor:pointer;z-index:7;transform:translate(-50%,-50%);transition:.15s}.anatomy-hotspot:hover,.anatomy-hotspot.active{transform:translate(-50%,-50%) scale(1.18);background:#ff4565;box-shadow:0 0 0 8px rgba(255,69,101,.16),0 0 24px rgba(255,69,101,.85)}.anatomy-hotspot[data-organ="brain"]{left:51.5%;top:10.5%}.anatomy-hotspot[data-organ="eyes"]{left:51.5%;top:18%}.anatomy-hotspot[data-organ="lungs"]{left:42%;top:43%}.anatomy-hotspot[data-organ="heart"]{left:52.2%;top:49%}.anatomy-hotspot[data-organ="liver"]{left:43.5%;top:61.5%}.anatomy-hotspot[data-organ="stomach"]{left:55%;top:66%}.anatomy-hotspot[data-organ="intestines"]{left:52.5%;top:78%}
.viewer-tools{position:absolute;left:14px;top:14px;display:grid;gap:7px;z-index:12}.viewer-tool{width:43px;height:43px;border:1px solid #2d628f;border-radius:12px;background:rgba(8,34,58,.88);color:#eaf7ff;font-size:22px;cursor:pointer;box-shadow:0 7px 18px rgba(0,0,0,.2)}.viewer-tool:hover{border-color:#4bc4ff}.viewer-tip{position:absolute;left:16px;bottom:16px;z-index:10;padding:10px 12px;border:1px solid #2d668f;border-radius:12px;background:rgba(5,25,43,.88);color:#b8d7ef;font-size:10px;backdrop-filter:blur(8px)}
.anatomy-info{padding:18px;display:flex;flex-direction:column;min-height:730px}.organ-head{display:grid;grid-template-columns:86px 1fr;gap:14px;align-items:center;padding-bottom:14px;border-bottom:1px solid #173f60}.organ-thumb{width:86px;height:86px;border-radius:18px;overflow:hidden;border:1px solid #2a628d;background:#0b2945;display:grid;place-items:center}.organ-thumb img{width:115%;height:115%;object-fit:cover;object-position:center 28%;transform:translateY(-4px)}.organ-head h3{font-size:26px;margin:0}.organ-head p{margin:4px 0 0;color:#61bfff;font-size:12px}.organ-tabs{display:flex;gap:7px;margin:14px 0 10px}.organ-tab{flex:1;border:1px solid #215074;background:#0a2843;color:#b9d3e8;border-radius:10px;padding:9px 8px;cursor:pointer;font-size:10px;font-weight:800}.organ-tab.active{background:linear-gradient(135deg,#0f75d1,#174fd0);color:white;border-color:#24a7ff}.organ-description{padding:14px;border-radius:14px;background:#0a2239;border:1px solid #173f60;min-height:112px}.organ-description h4{margin:0 0 7px;font-size:13px}.organ-description p{margin:0;color:#a7c0d6;font-size:11px;line-height:1.6}.organ-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.voice-toggle{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:9px 11px;border-radius:11px;background:#081d31;border:1px solid #183e5e;color:#9fc1dc;font-size:10px}.voice-toggle input{accent-color:#1ca5ff}.organ-process{margin-top:14px}.organ-process h4{font-size:13px;margin:0 0 9px}.process-steps{display:grid;gap:7px}.process-step{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;padding:9px;border-radius:11px;background:#092039;border:1px solid #173f61}.process-step .step-num{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#0d5fae;color:#fff;font-size:10px;font-weight:900}.process-step strong{display:block;font-size:10.5px}.process-step small{display:block;color:#789fbe;font-size:9px;margin-top:2px}.organ-strip{display:flex;gap:8px;overflow:auto;padding:11px 2px 2px;margin-top:auto}.organ-choice{min-width:75px;width:75px;border:1px solid #1b4568;background:#092138;border-radius:12px;color:#d9eaff;padding:7px 5px;cursor:pointer;text-align:center}.organ-choice.active,.organ-choice:hover{border-color:#2aa9ff;background:#0d3151;box-shadow:0 0 18px rgba(25,147,239,.16)}.organ-choice img{width:55px;height:55px;border-radius:9px;object-fit:cover;object-position:center 28%}.organ-choice span{display:block;margin-top:5px;font-size:8.5px}.animation-indicator{display:flex;align-items:center;gap:7px;color:#79d6ff;font-size:9px;margin-top:8px}.animation-indicator i{width:7px;height:7px;border-radius:50%;background:#36e0ff;box-shadow:0 0 12px #36e0ff;animation:blink 1s ease infinite}@keyframes blink{50%{opacity:.25}}

@media(max-width:1150px){#app{grid-template-columns:238px minmax(0,1fr)}.anatomy-page{grid-template-columns:1fr}.anatomy-viewer{min-height:650px}.anatomy-info{min-height:auto}.anatomy-image-wrap{width:min(62%,480px)}.organ-strip{margin-top:16px}}
@media(max-width:820px){#app{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;width:286px;transform:translateX(-103%);transition:.2s;z-index:100}.rtl .sidebar{left:auto;right:0;transform:translateX(103%)}body.nav-open .sidebar{transform:none}.nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.58);z-index:90}body.nav-open .nav-overlay{display:block}.nav-toggle{display:grid;place-items:center}.minimal-topbar{padding:0 14px;height:62px}.page-root{padding:13px}.page-identity h2{font-size:15px}.page-kicker{display:none}.profile-pill{display:none}.home-command{padding:23px}.home-primary-action{grid-template-columns:1fr}.home-primary-action .btn{width:100%;min-width:0}.anatomy-viewer{min-height:610px}.anatomy-image-wrap{width:min(84%,490px);height:92%}.anatomy-info{padding:13px}.organ-head{grid-template-columns:68px 1fr}.organ-thumb{width:68px;height:68px}.organ-head h3{font-size:21px}.organ-actions{grid-template-columns:1fr}.voice-toggle{grid-column:auto}.viewer-tools{left:8px;top:8px}.viewer-tool{width:39px;height:39px}.anatomy-hotspot{width:23px;height:23px}.stage-menu a,.stage-menu button{grid-template-columns:42px 1fr auto}}
@media(max-width:520px){.anatomy-viewer{min-height:520px}.anatomy-image-wrap{width:94%;height:92%}.anatomy-hotspot[data-organ="brain"]{top:12%}.anatomy-hotspot[data-organ="heart"]{top:49%}.organ-tabs{overflow:auto}.organ-tab{min-width:92px}.organ-strip{padding-bottom:8px}.home-command h3{font-size:36px}}
.anatomy-image-wrap{transform:translate(calc(-50% + var(--pan-x,0px)),calc(-48% + var(--pan-y,0px))) scale(var(--anatomy-scale,1))}
.vision-object{position:absolute;left:9%;top:16%;z-index:6;font-size:42px;opacity:0;transform:translateY(8px) scale(.9);transition:.2s;filter:drop-shadow(0 0 14px rgba(255,191,54,.55));pointer-events:none}.anatomy-viewer[data-mode="eyes"] .vision-object{opacity:1;transform:none;animation:visionObject 1.8s ease-in-out infinite}@keyframes visionObject{50%{transform:translateY(-5px) scale(1.04)}}

/* V16.2 — Arabic-first child coach. Scoped to the new coach module. */
.bbj-coach-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:20px;padding:26px;border-radius:24px;border:1px solid #23557f;background:radial-gradient(circle at 12% 0%,rgba(36,164,255,.22),transparent 30%),radial-gradient(circle at 90% 10%,rgba(116,88,255,.18),transparent 34%),linear-gradient(145deg,#0b2947,#081a2e 66%);box-shadow:0 22px 50px rgba(0,0,0,.22);margin-bottom:18px;color:#f4f9ff}.bbj-coach-hero:after{content:'♞';position:absolute;inset-inline-end:34px;bottom:-45px;font-size:180px;line-height:1;color:rgba(255,255,255,.035);transform:rotate(-8deg);pointer-events:none}.bbj-coach-kicker{display:inline-flex;padding:7px 11px;border-radius:999px;background:#0d4773;border:1px solid #2f80b8;color:#8ed8ff;font-size:10px;font-weight:900;letter-spacing:.1em}.bbj-coach-hero h3{font-size:clamp(26px,3vw,42px);margin:13px 0 8px}.bbj-coach-hero p{max-width:720px;color:#afd0e8;line-height:1.7;font-size:13px}.bbj-goal{display:grid;gap:3px;margin:16px 0;padding:12px 14px;border-inline-start:3px solid #34b9ff;background:rgba(4,18,32,.35);border-radius:10px}.bbj-goal strong{font-size:10px;color:#6fd5ff;text-transform:uppercase}.bbj-goal span{font-size:12px;color:#d8eafa}.bbj-coach-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.bbj-teacher-card{align-self:center;position:relative;z-index:1;padding:18px;border-radius:20px;background:linear-gradient(180deg,rgba(14,47,76,.95),rgba(8,30,51,.95));border:1px solid #2a638e;text-align:center;box-shadow:0 18px 30px rgba(0,0,0,.17)}.bbj-teacher-avatar{position:relative;width:108px;height:108px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#55c9ff,#4160ff 68%,#7e57ff);box-shadow:0 0 0 7px rgba(95,181,255,.08),0 16px 34px rgba(31,119,219,.28)}.bbj-teacher-avatar:before{content:'';position:absolute;width:78px;height:78px;border-radius:50%;background:linear-gradient(160deg,#f4d4b8,#d89c79);box-shadow:inset 0 -12px 18px rgba(120,64,40,.15)}.bbj-teacher-avatar:after{content:'';position:absolute;top:24px;width:58px;height:27px;border-radius:50% 50% 40% 40%;background:#16273a;box-shadow:0 10px 0 -6px #16273a}.bbj-teacher-avatar span{position:relative;z-index:3;margin-top:37px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#0d3558;color:#aee5ff;font-weight:1000;font-size:20px;border:2px solid rgba(255,255,255,.6)}.bbj-teacher-avatar i{position:absolute;z-index:2;bottom:23px;width:42px;height:18px;border-bottom:3px solid #5d352a;border-radius:0 0 50% 50%}.bbj-teacher-card strong{display:block;font-size:14px}.bbj-teacher-card small{display:block;color:#8cb7d6;font-size:10px;margin-top:4px}.bbj-speech-status{margin-top:14px;display:flex;gap:8px;align-items:flex-start;text-align:start;padding:10px 11px;border-radius:12px;background:#071a2c;border:1px solid #1e4c71;color:#a9cae2;font-size:10px;line-height:1.5}.pulse-dot{flex:0 0 auto;width:8px;height:8px;margin-top:3px;border-radius:50%;background:#4ee6a3;box-shadow:0 0 12px #4ee6a3;animation:bbjPulse 1.4s ease infinite}@keyframes bbjPulse{50%{opacity:.35;transform:scale(.82)}}
.bbj-coach-grid{display:grid;grid-template-columns:minmax(460px,1.15fr) minmax(320px,.85fr);gap:18px;align-items:start}.bbj-board-card{padding:18px}.bbj-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.bbj-board-head h3{margin:7px 0 0;font-size:21px}.bbj-turn{padding:8px 12px;border-radius:999px;background:#0f5d9b;border:1px solid #35a9ef;color:#fff;font-size:10px;font-weight:900}.bbj-turn.coach{background:#522c8f;border-color:#8e68d7}.bbj-turn.done{background:#146a4d;border-color:#35c08d}.bbj-board-tools{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.bbj-coach-board-lock{filter:saturate(.82);opacity:.85}.bbj-dialogue-panel{position:sticky;top:14px;min-height:610px;display:flex;flex-direction:column;border-radius:22px;border:1px solid #23557f;background:linear-gradient(180deg,#0b2743,#071b2f);box-shadow:0 18px 42px rgba(0,0,0,.2);overflow:hidden}.bbj-dialogue-head{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;padding:14px 15px;border-bottom:1px solid #1d496e;background:rgba(15,50,82,.6)}.bbj-dialogue-head strong{font-size:12px;color:#fff}.bbj-dialogue-head small{display:block;color:#82abc9;font-size:9px;margin-top:3px}.bbj-mini-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#25a9f4,#6754e9);font-size:18px;font-weight:1000;color:white}.bbj-dialogue{height:310px;overflow:auto;padding:15px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}.bbj-bubble{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;max-width:94%;animation:bbjBubbleIn .22s ease}.bbj-bubble>div{padding:10px 11px;border-radius:4px 14px 14px 14px;background:#0d3457;border:1px solid #245b86;color:#dceefa;font-size:11px;line-height:1.62}.bbj-bubble.child{align-self:flex-end;grid-template-columns:minmax(0,1fr) 28px}.bbj-bubble.child>div{grid-column:1;grid-row:1;border-radius:14px 4px 14px 14px;background:#173c31;border-color:#28745a}.bbj-bubble.child .bbj-bubble-icon{grid-column:2}.bbj-bubble-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#135b91;color:#fff;font-size:11px;font-weight:900}@keyframes bbjBubbleIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.bbj-idea-box{padding:12px 14px;border-top:1px solid #1d496e;background:#081f35}.bbj-idea-box>strong{display:block;margin-bottom:8px;font-size:10.5px;color:#8dd9ff}.bbj-choice-btn{width:100%;text-align:start;color:#dceefa!important;background:#0b2a47!important;border-color:#245476!important}.bbj-choice-btn:hover{background:#103b61!important;border-color:#39a8e9!important}.bbj-live-feedback{margin:0 14px 14px;padding:10px 11px;border-radius:12px;background:#071928;border:1px solid #173d5d;color:#86a9c4;font-size:9.5px;line-height:1.5}.bbj-metrics-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(260px,1.4fr);gap:10px;margin-top:14px}.bbj-kid-metric{display:grid;grid-template-columns:40px 1fr;gap:8px;align-items:center;padding:11px;border-radius:15px;background:#0a2138;border:1px solid #1d476b}.bbj-kid-metric>span{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:#0d3151;font-size:19px}.bbj-kid-metric strong{display:block;font-size:17px;color:#f4f9ff}.bbj-kid-metric small{display:block;font-size:8.5px;color:#779eba;margin-top:1px}.bbj-progress-track{position:relative;align-self:stretch;min-height:62px;border-radius:15px;overflow:hidden;background:#091d31;border:1px solid #1d476b}.bbj-progress-track span{position:absolute;inset-block:0;inset-inline-start:0;background:linear-gradient(90deg,#1579ca,#2fd3e5);transition:width .45s ease}.bbj-progress-track b{position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-shadow:0 1px 4px #000;font-size:16px}.bbj-board-card .chessboard{margin-inline:auto;box-shadow:0 20px 40px rgba(0,0,0,.27),0 0 0 1px rgba(255,255,255,.03)}
@media(max-width:980px){.bbj-coach-hero{grid-template-columns:1fr}.bbj-teacher-card{display:grid;grid-template-columns:auto 1fr;gap:12px;text-align:start;align-items:center}.bbj-teacher-avatar{width:76px;height:76px;margin:0}.bbj-teacher-avatar:before{width:56px;height:56px}.bbj-teacher-avatar:after{top:18px;width:43px;height:20px}.bbj-teacher-avatar span{margin-top:29px;width:32px;height:32px;font-size:15px}.bbj-teacher-avatar i{bottom:17px;width:31px}.bbj-speech-status{grid-column:1/-1;margin-top:0}.bbj-coach-grid{grid-template-columns:1fr}.bbj-dialogue-panel{position:relative;top:auto;min-height:0}.bbj-metrics-row{grid-template-columns:repeat(3,1fr)}.bbj-progress-track{grid-column:1/-1;min-height:48px}}
@media(max-width:620px){.bbj-coach-hero{padding:18px}.bbj-coach-hero h3{font-size:27px}.bbj-teacher-card{grid-template-columns:62px 1fr}.bbj-teacher-avatar{width:62px;height:62px}.bbj-teacher-avatar:before{width:47px;height:47px}.bbj-teacher-avatar:after{top:14px;width:37px;height:18px}.bbj-teacher-avatar span{margin-top:22px;width:28px;height:28px}.bbj-teacher-avatar i{bottom:13px}.bbj-metrics-row{grid-template-columns:1fr 1fr}.bbj-kid-metric:nth-child(3){grid-column:1/-1}.bbj-dialogue{height:270px}.bbj-board-tools .btn{flex:1 1 45%}.bbj-coach-actions .btn{width:100%;justify-content:center}}

/* V16.3 — Premium Kids focused Arabic chess coach. Scoped to coach page only. */
body[data-page="italian-coach"]{background:#f5f1e8;color:#18324a}
body[data-page="italian-coach"] #app{display:block;min-height:100vh;background:radial-gradient(circle at 85% 0,#eef5f1 0,transparent 32%),linear-gradient(180deg,#f8f5ee,#f1eee6)}
body[data-page="italian-coach"] .sidebar,body[data-page="italian-coach"] .topbar,body[data-page="italian-coach"] footer,body[data-page="italian-coach"] .coach-launcher{display:none!important}
body[data-page="italian-coach"] .shell{padding:0;overflow:visible}body[data-page="italian-coach"] .page-root{padding:0!important;min-height:100vh}
.coach-focus-shell{width:min(1500px,calc(100% - 36px));margin:0 auto;padding:16px 0 22px;direction:rtl}
.coach-focus-top{height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;border-bottom:1px solid #d8ded8}.coach-back{justify-self:end;color:#49677b;font-size:12px;font-weight:800}.coach-back:hover{color:#173e58}.coach-brand{text-align:center}.coach-brand span{display:block;font-size:9px;letter-spacing:.2em;color:#7d8f96;font-weight:900}.coach-brand strong{display:block;margin-top:3px;font-size:16px;color:#18364c}.coach-child{justify-self:start;display:flex;align-items:center;gap:9px}.coach-child>span{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#dca85c;color:#fff;font-weight:900;box-shadow:0 6px 14px rgba(138,95,36,.16)}.coach-child strong,.coach-child small{display:block}.coach-child strong{font-size:12px}.coach-child small{font-size:9px;color:#829099;margin-top:2px}
.coach-lesson-bar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,420px) auto;align-items:center;gap:22px;padding:13px 18px;margin:14px 0;border:1px solid #dce1dc;border-radius:18px;background:rgba(255,255,255,.76);box-shadow:0 10px 28px rgba(38,55,63,.055)}.coach-lesson-bar small{display:block;color:#71848c;font-size:9px}.coach-lesson-bar strong{display:block;margin-top:3px;font-size:13px}.coach-progress{display:flex;align-items:center;gap:10px;direction:ltr}.coach-progress>span{height:8px;flex:1;border-radius:99px;background:#e5e8e2;overflow:hidden}.coach-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f8f85,#d3a052);transition:width .35s ease}.coach-progress b{font-size:10px;color:#58717b}.coach-step{padding:7px 11px;border-radius:999px;background:#edf3ef;color:#46756d;font-size:10px;font-weight:900}
.coach-workspace{display:grid;grid-template-columns:minmax(480px,640px) minmax(420px,1fr);direction:ltr;gap:18px;align-items:stretch}.coach-board-zone,.coach-teacher-zone{direction:rtl;border:1px solid #d9dfda;border-radius:24px;background:rgba(255,255,255,.9);box-shadow:0 18px 46px rgba(34,50,60,.075)}.coach-board-zone{padding:16px;display:flex;flex-direction:column}.coach-board-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.coach-board-caption small,.coach-board-caption strong{display:block}.coach-board-caption small{font-size:9px;color:#87939a}.coach-board-caption strong{font-size:11px;margin-top:2px}.coach-turn{padding:8px 12px;border-radius:999px;background:#e9f3ef;color:#34766b;border:1px solid #cfe1da;font-size:10px;font-weight:900;white-space:nowrap}.coach-turn.my-turn{background:#f7ecdc;color:#93662d;border-color:#ead7b9}.coach-board-frame{flex:1;min-height:0;display:grid;place-items:center;padding:2px}.coach-stable-board{width:min(100%,590px)!important;max-width:590px!important;aspect-ratio:1!important;flex:none!important;border:5px solid #27485a!important;border-radius:18px!important;box-shadow:0 18px 34px rgba(31,50,60,.14)!important}.coach-stable-board .sq.light{background:#eee1c3}.coach-stable-board .sq.dark{background:#93a98f}.coach-stable-board .sq.last{box-shadow:inset 0 0 0 4px rgba(217,164,79,.92)}.coach-stable-board .sq.selected{box-shadow:inset 0 0 0 4px #2d7f75}.coach-board-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.coach-action{min-height:39px;border:1px solid #d7ddd7;border-radius:12px;background:#f8f7f2;color:#365568;font-size:10px;font-weight:850;cursor:pointer}.coach-action:hover{background:#eef4f0;border-color:#bfd2c9}
.coach-teacher-zone{padding:16px;display:grid;grid-template-rows:auto minmax(210px,1fr) auto auto auto auto;min-height:0}.coach-teacher-head{display:grid;grid-template-columns:58px 1fr 42px;gap:11px;align-items:center;padding-bottom:12px;border-bottom:1px solid #e3e6e1}.coach-premium-avatar{width:58px;height:58px;border-radius:19px;display:grid;place-items:center;background:linear-gradient(145deg,#2f7069,#5b9187);color:white;font-size:23px;font-weight:900;box-shadow:0 9px 20px rgba(50,111,103,.18)}.coach-teacher-head small,.coach-teacher-head strong,.coach-teacher-head span{display:block}.coach-teacher-head small{font-size:8px;letter-spacing:.13em;color:#a37a43;font-weight:900}.coach-teacher-head strong{font-size:15px;margin:3px 0}.coach-teacher-head span{font-size:9px;color:#7c8d94}.coach-sound{width:42px;height:42px;border-radius:14px;border:1px solid #d6ddd8;background:#f5f7f3;cursor:pointer;font-size:17px}.coach-conversation{min-height:0;overflow:auto;padding:13px 2px 9px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin}.coach-bubble{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:start;animation:coachIn .18s ease}.coach-bubble>span{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#e8f1ed;color:#2f7069;font-weight:900}.coach-bubble>div{padding:10px 12px;border-radius:5px 15px 15px 15px;background:#f4f6f2;border:1px solid #dfe5df;color:#294758;font-size:12px;line-height:1.75}.coach-bubble.child{align-self:flex-start}.coach-bubble.child>span{background:#f5ead9;color:#996c31}.coach-bubble.child>div{background:#fffaf1;border-color:#eadcc6}@keyframes coachIn{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}
.coach-choice-area{padding:11px;border-radius:16px;background:#f7f5ef;border:1px solid #e2e1d8}.coach-choice-area>small{display:block;margin-bottom:8px;color:#687d86;font-size:9px;font-weight:850}.coach-choice-area>div{display:grid;gap:7px}.coach-choice{width:100%;padding:10px 12px;border:1px solid #d8ddd7;border-radius:12px;background:white;color:#284859;text-align:right;font-size:11px;font-weight:750;cursor:pointer;transition:.14s}.coach-choice:hover{transform:translateX(-2px);border-color:#8db5aa;background:#f4f9f6}.coach-choice.correct{background:#e9f4ef;border-color:#8fc5b5;color:#286b5f}.coach-choice.wrong{background:#fbefea;border-color:#dfb5a7;color:#985848}.coach-primary-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.coach-start,.coach-listen{min-height:44px;border-radius:13px;font-weight:900;cursor:pointer}.coach-start{border:1px solid #285e59;background:linear-gradient(135deg,#2f7069,#3d8279);color:white;box-shadow:0 9px 20px rgba(47,112,105,.17)}.coach-listen{padding:0 15px;border:1px solid #d7ddd8;background:#fff;color:#3e6170}.coach-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}.coach-mini-stats>div{display:grid;grid-template-columns:auto auto 1fr;gap:6px;align-items:center;padding:8px;border-radius:12px;background:#faf9f5;border:1px solid #e3e3dc}.coach-mini-stats b{font-size:13px}.coach-mini-stats small{font-size:8px;color:#87949a}.coach-status{margin-top:8px;padding:7px 9px;border-radius:10px;background:#f2f4f0;color:#74868d;font-size:8.5px;text-align:center}
@media(max-width:1100px){.coach-workspace{grid-template-columns:minmax(420px,1fr) minmax(360px,.85fr)}.coach-stable-board{max-width:520px!important}.coach-focus-shell{width:calc(100% - 24px)}}
@media(max-width:850px){.coach-focus-top{grid-template-columns:auto 1fr auto}.coach-brand span{display:none}.coach-lesson-bar{grid-template-columns:1fr auto}.coach-progress{grid-column:1/-1;grid-row:2}.coach-workspace{grid-template-columns:1fr}.coach-stable-board{width:min(92vw,560px)!important}.coach-teacher-zone{min-height:520px}.coach-conversation{max-height:260px}.coach-board-zone{order:1}.coach-teacher-zone{order:2}}
@media(max-width:560px){.coach-focus-shell{width:calc(100% - 16px);padding-top:7px}.coach-focus-top{height:54px}.coach-back{font-size:0}.coach-back:after{content:'←';font-size:18px}.coach-child small{display:none}.coach-lesson-bar{padding:10px 12px;margin:8px 0}.coach-workspace{gap:10px}.coach-board-zone,.coach-teacher-zone{border-radius:18px;padding:10px}.coach-board-caption strong{font-size:9px}.coach-stable-board{border-width:4px!important;border-radius:14px!important}.coach-mini-stats small{display:none}.coach-teacher-head{grid-template-columns:48px 1fr 38px}.coach-premium-avatar{width:48px;height:48px;border-radius:15px}.coach-sound{width:38px;height:38px}.coach-bubble>div{font-size:11px}}

/* V16.4 — Arabic-first coach: one-screen workspace, no floating coach, premium kids */
body[data-page="italian-coach"]{overflow:hidden!important;background:linear-gradient(135deg,#f5f1e8 0%,#eef4f1 55%,#f8f4eb 100%)!important}
body[data-page="italian-coach"] .sidebar,body[data-page="italian-coach"] .topbar,body[data-page="italian-coach"] footer,body[data-page="italian-coach"] .coach-launcher,body[data-page="italian-coach"] .coach{display:none!important}
body[data-page="italian-coach"] #app{height:100dvh!important;overflow:hidden!important}
body[data-page="italian-coach"] .shell{padding:0!important;max-width:none!important;height:100%!important;overflow:hidden!important}
.coach-focus-shell{width:min(1540px,calc(100% - 26px))!important;height:100dvh!important;margin:0 auto!important;padding:0!important;display:grid!important;grid-template-rows:54px 58px minmax(0,1fr)!important;gap:8px!important;overflow:hidden!important}
.coach-focus-top{height:54px!important;border-bottom:1px solid #d7ddd7!important}.coach-lesson-bar{margin:0!important;padding:8px 14px!important;border-radius:16px!important;min-height:58px!important;box-shadow:none!important}.coach-workspace{min-height:0!important;height:100%!important;grid-template-columns:minmax(520px,1.08fr) minmax(430px,.92fr)!important;gap:12px!important;overflow:hidden!important}.coach-board-zone,.coach-teacher-zone{min-height:0!important;height:100%!important;border-radius:20px!important;box-shadow:0 12px 28px rgba(44,58,62,.08)!important}.coach-board-zone{padding:10px 12px!important}.coach-board-caption{margin-bottom:6px!important}.coach-board-frame{min-height:0!important;overflow:hidden!important}.coach-stable-board{width:min(100%,calc(100dvh - 210px),610px)!important;max-width:610px!important;aspect-ratio:1!important;margin:auto!important;border:4px solid #274a56!important;border-radius:17px!important;box-shadow:0 12px 26px rgba(34,54,61,.15)!important}.coach-stable-board .sq.light{background:#efe0bc!important}.coach-stable-board .sq.dark{background:#8ea38d!important}.coach-stable-board .piece-w,.coach-stable-board .piece-b{filter:drop-shadow(0 1px 0 rgba(255,255,255,.25))}.coach-board-actions{grid-template-columns:repeat(4,1fr)!important;gap:6px!important;margin-top:7px!important}.coach-action{min-height:36px!important;border-radius:11px!important;background:#fbfaf6!important}.coach-engine-btn{background:#eff5f2!important;border-color:#b7d1c8!important;color:#245f57!important}
.coach-teacher-zone{padding:10px 12px!important;display:grid!important;grid-template-rows:58px minmax(92px,auto) auto auto 44px 44px 24px!important;gap:8px!important;overflow:hidden!important}.coach-teacher-head{grid-template-columns:48px 1fr 38px!important;padding-bottom:8px!important}.coach-premium-avatar{width:48px!important;height:48px!important;border-radius:15px!important;font-size:20px!important}.coach-sound{width:38px!important;height:38px!important;border-radius:12px!important}.coach-current-message{padding:11px 13px;border-radius:15px;background:linear-gradient(135deg,#eef6f2,#f7f3e9);border:1px solid #d7e1db;overflow:auto;min-height:92px}.coach-current-message small{display:block;font-size:9px;color:#8c7348;font-weight:900;margin-bottom:4px}.coach-current-message p{margin:0;color:#1f4250;font-size:13px;line-height:1.75;font-weight:760}.coach-choice-area{padding:9px!important;border-radius:14px!important;background:#f7f4ec!important}.coach-choice-area>small{margin-bottom:6px!important}.coach-choice-area>div{grid-template-columns:1fr!important;gap:5px!important}.coach-choice{padding:8px 10px!important;min-height:36px!important;font-size:11px!important;border-radius:10px!important}.coach-primary-row{margin:0!important}.coach-start,.coach-listen{min-height:42px!important}.coach-mini-stats{margin:0!important}.coach-mini-stats>div{padding:6px 7px!important}.coach-status{margin:0!important;padding:4px 7px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coach-engine-panel{position:absolute;inset:76px 12px auto 12px;z-index:10;padding:12px;border-radius:16px;background:#fffdf8;border:1px solid #d7ded9;box-shadow:0 16px 34px rgba(31,49,55,.16)}.coach-teacher-zone{position:relative}.coach-engine-panel>small{display:block;color:#6b827e;font-size:9px;font-weight:900;margin-bottom:8px}.engine-result{display:grid;gap:4px;padding:9px;border-radius:12px;background:#edf6f2}.engine-result b{font-size:10px}.engine-result strong{font-size:18px;color:#245f57;direction:ltr;text-align:right}.engine-result small{font-size:8px;color:#71827f}.engine-lines{display:grid;gap:5px;margin:8px 0}.engine-lines span{padding:6px 8px;border-radius:9px;background:#f6f4ee;font-size:9px;direction:ltr;text-align:left}.engine-play,.coach-engine-panel>button,.engine-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 10px;border-radius:10px;border:1px solid #b9cec7;background:#eff6f3;color:#285f57;font-weight:850;font-size:10px;cursor:pointer;text-decoration:none}.engine-fallback{font-size:10px;line-height:1.6;margin-bottom:8px}
@media(max-width:1050px){body[data-page="italian-coach"]{overflow:auto!important}body[data-page="italian-coach"] #app{height:auto!important;overflow:visible!important}.coach-focus-shell{height:auto!important;min-height:100dvh!important;overflow:visible!important}.coach-workspace{grid-template-columns:1fr!important;overflow:visible!important}.coach-stable-board{width:min(92vw,560px)!important}.coach-teacher-zone{height:auto!important;min-height:520px!important}.coach-focus-shell{grid-template-rows:54px auto auto!important}}

/* V16.6 — reusable French-first interactive opening coach */
.bbj-coach-v166{display:grid;gap:12px;max-width:1500px;margin:0 auto}.coach-nav-v166{display:flex;justify-content:space-between;align-items:center;gap:12px}.coach-crumbs-v166,.coach-quick-v166{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.coach-crumbs-v166 a,.coach-quick-v166 a{color:#2b6073;text-decoration:none;font-size:12px;font-weight:800}.coach-quick-v166 a{padding:8px 11px;border:1px solid #d7dfdf;background:#fff;border-radius:11px}.coach-title-v166{display:flex;justify-content:space-between;gap:18px;align-items:end;padding:16px 18px;background:linear-gradient(135deg,#fff 0%,#f5f0e6 100%);border:1px solid #dde2df;border-radius:20px}.coach-title-v166 h1{margin:4px 0 4px;font-size:24px;color:#17394b}.coach-title-v166 p{margin:0;color:#687b84;font-size:12px}.coach-kicker-v166{font-size:9px;letter-spacing:.14em;color:#9a7845;font-weight:900}.coach-selectors-v166{display:flex;gap:8px}.coach-selectors-v166 label{display:grid;gap:4px;font-size:9px;font-weight:900;color:#75848a}.coach-selectors-v166 select{min-width:180px;padding:9px 10px;border:1px solid #d6dfde;border-radius:10px;background:#fff;color:#24495a;font-weight:750}.coach-progress-v166{padding:9px 14px;background:#fff;border:1px solid #e0e5e2;border-radius:14px}.coach-progress-v166>div:first-child{display:flex;justify-content:space-between;font-size:10px;color:#60747c}.coach-progress-track-v166{height:7px;background:#e8ece9;border-radius:999px;overflow:hidden;margin-top:6px}.coach-progress-track-v166 i{display:block;width:0;height:100%;background:linear-gradient(90deg,#2e7b70,#d2a24e);transition:width .25s ease}.coach-grid-v166{display:grid;grid-template-columns:minmax(520px,1.06fr) minmax(430px,.94fr);gap:12px;min-height:0}.coach-board-card-v166,.coach-panel-v166{background:#fff;border:1px solid #dce3e0;border-radius:20px;box-shadow:0 12px 32px rgba(36,55,64,.07)}.coach-board-card-v166{padding:12px;display:flex;flex-direction:column}.coach-board-top-v166{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.coach-board-top-v166 small,.coach-board-top-v166 strong{display:block}.coach-board-top-v166 small{font-size:9px;color:#8a979b}.coach-board-top-v166 strong{font-size:13px;color:#244555;margin-top:2px}.turn-v166{padding:7px 10px;border-radius:999px;background:#eaf4ef;color:#2d6c62;font-size:10px;font-weight:900}.coach-board-wrap-v166{display:grid;place-items:center;min-height:0;flex:1}.coach-board-v166{width:min(100%,calc(100vh - 285px),620px)!important;max-width:620px!important;aspect-ratio:1!important;border:4px solid #284c5c!important;border-radius:17px!important;overflow:hidden;box-shadow:0 14px 28px rgba(35,56,65,.13)!important}.coach-board-v166 .sq.light{background:#f0dfb7}.coach-board-v166 .sq.dark{background:#9aa988}.coach-board-tools-v166{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}.coach-board-tools-v166 button{min-height:36px;border:1px solid #d8e0de;border-radius:10px;background:#faf9f4;color:#305668;font-size:10px;font-weight:850;cursor:pointer}.coach-panel-v166{padding:12px;display:grid;grid-template-rows:auto auto auto auto auto auto;gap:8px;align-content:start}.coach-prof-v166{display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;padding-bottom:8px;border-bottom:1px solid #e2e7e4}.coach-avatar-v166{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#2f766c,#5f978d);color:#fff;font-size:20px;font-weight:900}.coach-prof-v166 small,.coach-prof-v166 strong,.coach-prof-v166 span{display:block}.coach-prof-v166 small{font-size:8px;letter-spacing:.13em;color:#a37b43;font-weight:900}.coach-prof-v166 strong{font-size:15px;color:#1d3e4e}.coach-prof-v166 span{font-size:9px;color:#71848c}.listen-v166{border:1px solid #d6dfdd;border-radius:10px;background:#f7f8f4;padding:9px 10px;font-size:10px;font-weight:800;cursor:pointer}.coach-message-v166{padding:13px 14px;border:1px solid #d9e4df;border-radius:15px;background:linear-gradient(135deg,#edf6f2,#faf7ef);min-height:105px}.coach-message-v166 small{display:block;font-size:9px;color:#947445;font-weight:900;margin-bottom:5px}.coach-message-v166 p{margin:0;font-size:13px;line-height:1.65;color:#244754;font-weight:720}.coach-choices-v166{padding:10px;border-radius:14px;background:#f8f6ef;border:1px solid #e4e2d9}.coach-choices-v166>small{display:block;font-size:9px;color:#7b8789;font-weight:850;margin-bottom:6px}.coach-choices-v166>div{display:grid;gap:5px}.choice-v166{padding:9px 11px;text-align:left;border:1px solid #d9e0de;border-radius:10px;background:#fff;color:#294e5e;font-size:11px;font-weight:750;cursor:pointer}.choice-v166:hover{border-color:#76a79d;background:#f2f8f5}.coach-main-actions-v166{display:grid}.primary-v166{min-height:42px;border:0;border-radius:12px;background:#2f7c71;color:#fff;font-weight:900;cursor:pointer}.coach-stats-v166{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.coach-stats-v166 div{padding:8px;border:1px solid #e0e5e2;border-radius:11px;background:#fbfaf6;text-align:center}.coach-stats-v166 strong,.coach-stats-v166 span{display:block}.coach-stats-v166 strong{font-size:15px;color:#234b5b}.coach-stats-v166 span{font-size:8px;color:#8a969a;margin-top:2px}.coach-complete-v166{padding:12px;border-radius:15px;background:#edf6f2;border:1px solid #cfe0d9}.coach-complete-v166 h3{margin:0 0 3px;color:#245e56;font-size:15px}.coach-complete-v166 p{margin:0 0 8px;font-size:10px;color:#667b7c}.coach-complete-v166>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.coach-complete-v166 button,.coach-complete-v166 a{min-height:36px;border:1px solid #bfd3cc;border-radius:10px;background:#fff;color:#2d655d;font-size:10px;font-weight:850;text-decoration:none;display:flex;align-items:center;justify-content:center;cursor:pointer}.opening-lab-v166{background:linear-gradient(135deg,#f7fbf9,#fffaf0)!important}.opening-lab-head-v166{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}.opening-lab-head-v166 span{font-size:9px;letter-spacing:.12em;font-weight:900;color:#9a7845}.opening-lab-head-v166 h3{margin:4px 0;font-size:20px}.opening-lab-head-v166 p{margin:0;color:#6e8086;font-size:11px}.opening-lab-head-v166>a{padding:10px 13px;border-radius:11px;background:#2f7c71;color:white;text-decoration:none;font-size:11px;font-weight:900}.opening-live-grid-v166{display:grid;grid-template-columns:1fr 1fr;gap:12px}.opening-live-grid-v166>div{padding:12px;border:1px solid #e1e6e3;border-radius:14px;background:rgba(255,255,255,.8)}.opening-live-grid-v166 h4{margin:0 0 7px}.opening-line-v166{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;margin-top:5px;border:1px solid #e2e6e4;border-radius:10px;background:#fff;text-decoration:none;color:#264b5a}.opening-line-v166 span strong,.opening-line-v166 span small{display:block}.opening-line-v166 span strong{font-size:11px}.opening-line-v166 span small{font-size:8px;color:#879397;margin-top:2px}.opening-line-v166 b{font-size:9px;color:#2f7c71;white-space:nowrap}.open-card.is-live{border-color:#b7d2ca!important;box-shadow:0 8px 18px rgba(46,124,113,.08)}
@media(max-width:1100px){.coach-grid-v166{grid-template-columns:1fr}.coach-board-v166{width:min(92vw,590px)!important}.coach-title-v166{align-items:start;flex-direction:column}.coach-selectors-v166{width:100%}.coach-selectors-v166 label{flex:1}.coach-selectors-v166 select{width:100%;min-width:0}}
@media(max-width:700px){.coach-nav-v166,.opening-lab-head-v166{align-items:flex-start;flex-direction:column}.coach-selectors-v166{flex-direction:column}.coach-board-tools-v166{grid-template-columns:1fr 1fr}.coach-prof-v166{grid-template-columns:42px 1fr}.listen-v166{grid-column:1/-1}.opening-live-grid-v166{grid-template-columns:1fr}.coach-complete-v166>div{grid-template-columns:1fr}.coach-title-v166 h1{font-size:20px}}

/* V16.7 — DigiAcademy Learning Engine additions */
.learning-cycle-v167{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px 10px;border:1px solid #dfe5e2;border-radius:14px;background:#fff}.learning-cycle-v167 span{padding:7px 8px;border-radius:9px;background:#f4f4ef;color:#7b898d;text-align:center;font-size:9px;font-weight:900;transition:.2s}.learning-cycle-v167 span.active{background:#dff1eb;color:#24675e;box-shadow:inset 0 0 0 1px #a8cec2}.voice-controls-v167{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.voice-controls-v167 button{border:1px solid #d6dfdd;border-radius:9px;background:#f7f8f4;padding:7px 9px;font-size:9px;font-weight:850;cursor:pointer}.voice-controls-v167 span{font-size:9px;color:#6e8087;font-weight:800}.spoken-done-v167{color:#4d857d}.spoken-current-v167{background:linear-gradient(transparent 64%,#ffe49a 64%)}.focus-roadmap-v167{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.focus-roadmap-v167>div{padding:11px;border:1px solid #dfe4e1;border-radius:12px;background:#faf9f4}.focus-roadmap-v167>div.active{border-color:#96c8bb;background:#edf7f3}.focus-roadmap-v167 strong,.focus-roadmap-v167 span{display:block}.focus-roadmap-v167 strong{font-size:10px;color:#234f5c}.focus-roadmap-v167 span{font-size:8px;color:#809095;margin-top:3px}.line-progress-v167{display:inline-flex;min-width:48px;justify-content:center;padding:4px 7px;border-radius:999px;background:#e8f3ef;color:#2c6d62;font-size:8px;font-weight:900}
@media(max-width:700px){.learning-cycle-v167{grid-template-columns:1fr 1fr}.focus-roadmap-v167{grid-template-columns:1fr 1fr}}

/* V16.7.2 — Chessboard stabilization + move history */
.chessboard{
  width:min(100%,620px)!important;
  max-width:620px!important;
  aspect-ratio:1 / 1!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;
  grid-template-rows:repeat(8,minmax(0,1fr))!important;
  flex:none!important;
  contain:layout paint;
}
.chessboard .sq{min-width:0!important;min-height:0!important;overflow:hidden!important}
.chessboard .chess-piece{font-family:"Segoe UI Symbol","Arial Unicode MS","Noto Sans Symbols 2",sans-serif;font-weight:400;display:block;line-height:1;transform:translateY(-1%)}
.chessboard .piece-w{color:#fff!important;-webkit-text-stroke:1.15px #25343b!important;text-shadow:0 1px 0 #25343b,0 2px 4px rgba(0,0,0,.32)!important;filter:none!important}
.chessboard .piece-b{color:#17191b!important;-webkit-text-stroke:.65px rgba(255,255,255,.32)!important;text-shadow:0 1px 2px rgba(255,255,255,.14)!important;filter:none!important}
.coach-board-v166{width:min(100%,620px)!important;max-width:620px!important;min-width:0!important;aspect-ratio:1 / 1!important;height:auto!important}
.coach-board-wrap-v166{width:100%;min-width:0!important;display:grid;place-items:center}
.coach-board-stage-v172{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:12px;align-items:start;min-width:0}
.move-history-v172{height:min(620px,calc(100vh - 285px));min-height:420px;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:8px;padding:10px;border:1px solid #d9e1df;border-radius:14px;background:#f8faf8;overflow:hidden}
.move-history-head-v172{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;padding-bottom:8px;border-bottom:1px solid #e2e7e4}.move-history-head-v172 small,.move-history-head-v172 strong{display:block}.move-history-head-v172 small{font-size:7px;letter-spacing:.12em;color:#917344;font-weight:900}.move-history-head-v172 strong{font-size:11px;color:#274b59;margin-top:2px}.move-history-head-v172>span{font-size:8px;font-weight:900;color:#2f756b;background:#e3f1ed;border-radius:999px;padding:5px 7px;white-space:nowrap}
.move-list-v172{overflow:auto;display:grid;align-content:start;gap:5px;padding-right:2px;scrollbar-width:thin}.move-row-v172{display:grid;grid-template-columns:24px 1fr 1fr;gap:5px;align-items:stretch}.move-row-v172>em{font-style:normal;font-size:9px;color:#88959a;font-weight:900;display:grid;place-items:center}
.move-chip-v172{min-width:0;padding:6px 5px;border:1px solid #d9e1df;border-radius:8px;background:#fff;color:#284c59;text-align:left;cursor:pointer}.move-chip-v172 span,.move-chip-v172 b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.move-chip-v172 span{font-size:6.5px;color:#8a979b;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.move-chip-v172 b{font-size:9px;margin-top:2px}.move-chip-v172:hover:not(:disabled){border-color:#79a89d;background:#f0f7f4}.move-chip-v172.active{border-color:#2f7c71;background:#dff1eb;box-shadow:inset 0 0 0 1px #2f7c71}.move-chip-v172.locked{opacity:.35;cursor:not-allowed;background:#f2f3f1}
.move-nav-v172{display:grid;grid-template-columns:1fr 1fr;gap:6px}.move-nav-v172 button,.back-live-v172{min-height:34px;border:1px solid #cad8d4;border-radius:9px;background:#fff;color:#2d625b;font-size:8.5px;font-weight:900;cursor:pointer}.move-nav-v172 button:disabled{opacity:.38;cursor:not-allowed}.back-live-v172{background:#2f7c71;color:#fff;border-color:#2f7c71}
@media(max-width:1320px){.coach-board-stage-v172{grid-template-columns:minmax(0,1fr) 205px}.move-history-v172{height:min(560px,calc(100vh - 285px));min-height:380px}}
@media(max-width:1100px){.coach-board-stage-v172{grid-template-columns:minmax(0,1fr) 230px}.coach-board-v166{width:min(100%,590px)!important}.move-history-v172{height:min(590px,65vh)}}
@media(max-width:760px){.coach-board-stage-v172{grid-template-columns:1fr}.move-history-v172{height:auto;min-height:0;max-height:310px}.move-list-v172{max-height:190px}.coach-board-v166{width:min(94vw,590px)!important}}

/* ========================================================================== 
   BBJ ACADEMY V16.7.3 — OPENINGS NAVIGATION EXPERIENCE
   Keeps global left navigation + top shell. Only the central learning page evolves.
   ========================================================================== */
body[data-page="openings"]{background:#eef4f9}
body[data-page="openings"] .shell{padding:16px 18px 28px;background:#eef4f9}
body[data-page="openings"] .minimal-topbar{position:sticky;top:0;z-index:35;background:rgba(246,249,252,.94);backdrop-filter:blur(12px);border:1px solid #dce7f0;border-radius:16px;padding:8px 12px;margin-bottom:12px;box-shadow:0 8px 24px rgba(18,52,83,.06)}
body[data-page="openings"] .page-identity h2{font-size:15px;margin:0;color:#0e2b4c}body[data-page="openings"] .page-kicker{font-size:8px;color:#56718d}
.oa-page{max-width:1540px;margin:0 auto;color:#10294b}.oa-hero{min-height:196px;border-radius:20px;padding:28px 34px;display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:center;gap:24px;position:relative;overflow:hidden;color:white;background:radial-gradient(circle at 78% 22%,rgba(218,160,82,.42),transparent 21%),linear-gradient(112deg,#092646 0%,#0f3f68 48%,#082038 100%);box-shadow:0 16px 38px rgba(14,44,72,.18)}.oa-hero:after{content:"";position:absolute;inset:auto 0 0;height:52%;background:linear-gradient(0deg,rgba(3,14,26,.52),transparent);pointer-events:none}.oa-hero>div{position:relative;z-index:2}.oa-eyebrow{font-size:9px;letter-spacing:.15em;font-weight:900;color:#84d4ff}.oa-hero h1{font-size:38px;letter-spacing:-.035em;margin:5px 0 7px}.oa-hero p{margin:0 0 19px;color:#d8e7f5;font-size:13px}.oa-global{width:min(460px,100%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 14px;border-radius:13px;background:rgba(6,30,52,.68);border:1px solid rgba(255,255,255,.16)}.oa-global span,.oa-global b{font-size:10px}.oa-global .oa-progress{background:rgba(255,255,255,.2)}.oa-hero-pieces{height:150px;display:flex;align-items:end;justify-content:center;gap:8px;filter:drop-shadow(0 16px 14px rgba(0,0,0,.32))}.oa-hero-pieces span{font-size:102px;line-height:.82;color:#f4d9b2;text-shadow:0 0 1px #fff}.oa-hero-pieces span:nth-child(1){font-size:70px;color:#111827}.oa-hero-pieces span:nth-child(3){font-size:118px;color:#bd7a36}.oa-hero-pieces span:nth-child(4){font-size:62px}
.oa-body{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:16px;margin-top:15px;align-items:start}.oa-center{min-width:0;display:grid;gap:14px}.oa-filter-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;background:white;border:1px solid #dce7f0;border-radius:14px;padding:9px;box-shadow:0 6px 18px rgba(14,44,72,.04)}.oa-filter-row button{border:0;background:#f0f5f9;color:#38536d;border-radius:999px;padding:8px 13px;font-size:10px;font-weight:800;cursor:pointer}.oa-filter-row button.active{background:#1476e8;color:white}.oa-filter-row label{margin-left:auto;display:flex;align-items:center;gap:6px;border:1px solid #d8e3ec;border-radius:10px;padding:0 10px;background:#fff;color:#64809a}.oa-filter-row input{border:0;outline:0;background:transparent;min-width:180px;padding:8px 0;font-size:10px}.oa-opening-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.oa-opening-card{display:block;min-width:0;background:#fff;border:1px solid #d8e4ed;border-radius:14px;overflow:hidden;color:#10294b;text-decoration:none;box-shadow:0 8px 22px rgba(18,52,83,.055);transition:.17s}.oa-opening-card:hover{transform:translateY(-3px);border-color:#a8c7e6;box-shadow:0 14px 30px rgba(18,52,83,.1)}.oa-photo{height:100px;position:relative;display:flex;align-items:end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 35%,#e6c69b 0,transparent 24%),linear-gradient(145deg,#243b50,#0d1d2b)}.oa-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(4,14,24,.55))}.oa-photo>span{position:relative;z-index:1;font-size:55px;letter-spacing:-15px;filter:drop-shadow(0 9px 8px rgba(0,0,0,.35));transform:translateY(5px)}.oa-photo>b{position:absolute;z-index:2;left:9px;top:8px;font-size:8px;padding:4px 7px;border-radius:999px;color:white;background:rgba(5,25,43,.7);font-weight:800}.oa-photo-italian{background:linear-gradient(145deg,#cbb492,#19293a)}.oa-photo-sicilian{background:linear-gradient(145deg,#5a331f,#101b29)}.oa-photo-ruy{background:linear-gradient(145deg,#d6c8b7,#273a4a)}.oa-photo-french{background:linear-gradient(145deg,#5c6673,#101b28)}.oa-card-body{padding:11px}.oa-card-head{display:flex;justify-content:space-between;gap:8px}.oa-card-head h3{margin:0;font-size:13px}.oa-card-head p{margin:2px 0 0;color:#507292;font-size:9.5px}.oa-bookmark{font-size:16px;color:#64809a}.oa-card-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:10px;font-size:8.5px;color:#698097}.oa-card-meta strong{color:#315978}.oa-progress{height:7px;border-radius:999px;background:#e7eef4;overflow:hidden}.oa-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#116dea,#20bdd1);transition:width .25s}.oa-card-body>.oa-progress{margin-top:5px}.oa-card-action{margin-top:10px;padding:8px 9px;text-align:center;border-radius:8px;background:#eaf3fc;color:#1764b7;font-size:9px;font-weight:900}.oa-opening-card:hover .oa-card-action{background:#1575e8;color:white}
.oa-rail{display:grid;gap:12px;position:sticky;top:88px}.oa-rail-card{background:#fff;border:1px solid #d9e5ee;border-radius:15px;padding:15px;box-shadow:0 8px 22px rgba(18,52,83,.05)}.oa-rail-card h3{font-size:13px;margin:0}.oa-rail-title{display:flex;justify-content:space-between;gap:8px;align-items:center}.oa-rail-title a,.oa-rail-title span{font-size:8px;color:#1673dd;text-decoration:none}.oa-journey-top{display:grid;grid-template-columns:76px 1fr;gap:12px;align-items:center;margin:13px 0}.oa-ring{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#10a49f calc(var(--p)*1%),#e5edf3 0);position:relative}.oa-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:#fff}.oa-ring span{position:relative;z-index:1;font-weight:900;color:#164d7e}.oa-journey-top b{display:block;font-size:12px}.oa-journey-top small{display:block;margin-top:4px;color:#6c8194;font-size:8.5px;line-height:1.45}.oa-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.oa-mini-stats span{padding:9px 5px;text-align:center;border-radius:10px;background:#f4f8fb;color:#567087;font-size:7.5px}.oa-mini-stats b{display:block;font-size:13px;color:#0f4e83;margin-bottom:2px}.oa-primary-wide{display:block;margin-top:12px;padding:11px;border-radius:10px;background:#1476e8;color:#fff;text-decoration:none;text-align:center;font-size:9px;font-weight:900}.oa-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:11px}.oa-tools a{text-decoration:none;color:#294d68;text-align:center;font-size:7.5px}.oa-tools i{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;margin:0 auto 5px;background:#eaf8f6;font-style:normal;font-size:18px}.oa-tools a:nth-child(2) i{background:#fff1e8}.oa-tools a:nth-child(3) i{background:#f1ecff}.oa-tools a:nth-child(4) i{background:#ffeaf2}.oa-rec{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:8px;align-items:center;margin-top:10px;padding:8px;border:1px solid #e2eaf0;border-radius:11px;text-decoration:none;color:#163654}.oa-rec-board{width:54px;height:48px;border-radius:8px;background:linear-gradient(45deg,#996c3f 50%,#ebd6a9 50%);color:#fff;display:grid;place-items:center;line-height:.8;text-align:center;font-size:16px}.oa-rec b,.oa-rec small,.oa-rec em{display:block}.oa-rec b{font-size:9px}.oa-rec small{font-size:7.5px;color:#698097;margin-top:2px}.oa-rec em{font-size:7px;color:#8a9baa;font-style:normal;margin-top:4px}.oa-rec strong{font-size:7.5px;color:white;background:#1675e5;border-radius:7px;padding:7px}.oa-bottom-info{display:grid;grid-template-columns:1.5fr 1fr;gap:12px}.oa-bottom-info article{background:#fff;border:1px solid #dbe6ee;border-radius:14px;padding:14px}.oa-bottom-info h3{font-size:11px;margin:0 0 9px}.oa-bottom-info article:first-child>div{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.oa-bottom-info span{text-align:center;font-size:18px}.oa-bottom-info span b{display:block;margin-top:5px;font-size:7.5px;color:#55728b}.oa-bottom-info p{font-size:8.5px;color:#627b91}.oa-family-back{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #dbe6ee;border-radius:12px;padding:10px 13px}.oa-family-back a{text-decoration:none;color:#176abb;font-size:9px;font-weight:900}.oa-family-back span{font-size:8px;color:#6c8294}.oa-section-block{background:#fff;border:1px solid #dbe6ee;border-radius:16px;padding:13px}.oa-section-block.pinned{background:linear-gradient(180deg,#f5faff,#fff)}.oa-section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.oa-section-title>div{display:flex;align-items:center;gap:9px}.oa-section-title>div>span{font-size:20px}.oa-section-title h2{font-size:14px;margin:0}.oa-section-title p,.oa-section-title small{font-size:8px;margin:2px 0 0;color:#6d8295}.oa-variant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.oa-variant-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid #e0e8ef;border-radius:12px;background:#fff}.oa-variant-card.is-pinned{border-color:#b8d6f3}.oa-pin-btn{position:absolute;right:7px;top:6px;border:0;background:#eff6fd;width:25px;height:25px;border-radius:8px;cursor:pointer}.oa-variant-icon{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#f2e1c8,#17283a);font-size:25px;color:#fff}.oa-variant-copy{min-width:0}.oa-variant-copy small{font-size:7.5px;color:#6c8295}.oa-variant-copy h3{margin:2px 0 0;font-size:10.5px;padding-right:25px}.oa-variant-copy .oa-card-meta{margin-top:6px}.oa-variant-copy .oa-progress{margin-top:4px}.oa-variant-action{align-self:end;text-decoration:none;background:#1476e8;color:white;border-radius:8px;padding:7px 9px;font-size:8px;font-weight:900;white-space:nowrap}.oa-variant-action.disabled{pointer-events:none;background:#edf2f6;color:#8193a3}.oa-empty{grid-column:1/-1;padding:25px;text-align:center;color:#70869a;font-size:9px;border:1px dashed #ccdbe7;border-radius:12px;background:#f8fbfd}
@media(max-width:1280px){.oa-body{grid-template-columns:minmax(0,1fr) 300px}.oa-opening-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.oa-hero{grid-template-columns:1fr 250px}.oa-hero-pieces span{font-size:78px}.oa-hero-pieces span:nth-child(3){font-size:95px}}
@media(max-width:1050px){.oa-body{grid-template-columns:1fr}.oa-rail{position:static;grid-template-columns:repeat(3,1fr)}.oa-opening-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.oa-variant-grid{grid-template-columns:1fr 1fr}.oa-rail-card{min-width:0}}
@media(max-width:820px){body[data-page="openings"] .shell{padding:10px}.oa-hero{grid-template-columns:1fr;min-height:auto;padding:20px}.oa-hero-pieces{display:none}.oa-hero h1{font-size:28px}.oa-opening-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.oa-rail{grid-template-columns:1fr}.oa-filter-row label{margin-left:0;flex:1}.oa-filter-row input{min-width:0;width:100%}.oa-bottom-info{grid-template-columns:1fr}.oa-variant-grid{grid-template-columns:1fr}}
@media(max-width:520px){.oa-opening-grid{grid-template-columns:1fr}.oa-global{grid-template-columns:1fr auto}.oa-global .oa-progress{grid-column:1/-1}.oa-bottom-info article:first-child>div{grid-template-columns:1fr 1fr}.oa-variant-card{grid-template-columns:42px 1fr}.oa-variant-action{grid-column:1/-1;text-align:center}.oa-photo{height:120px}}

/* =========================================================
   V16.7.4 — BBJ Academy Design System
   Reference: approved blue educational/chess dashboard
   Global shell fixed; center content evolves by module.
   ========================================================= */
:root{
  --academy-bg:#f3f7fb;
  --academy-panel:#ffffff;
  --academy-blue:#1277e9;
  --academy-blue-2:#0c63c7;
  --academy-navy:#06223c;
  --academy-navy-2:#0b3458;
  --academy-text:#102743;
  --academy-muted:#66809b;
  --academy-line:#dce7f1;
  --academy-soft:#eef5fb;
  --academy-cyan:#22b9d6;
  --academy-green:#1ab995;
  --academy-orange:#ff9b35;
  --academy-purple:#7555df;
  --academy-pink:#ef4f82;
  --academy-shadow:0 10px 26px rgba(31,68,103,.09);
}
html,body{background:var(--academy-bg)!important;color:var(--academy-text)!important}
body{background:linear-gradient(180deg,#f7fbff 0%,#eef4f9 100%)!important}
#app{grid-template-columns:220px minmax(0,1fr)!important;min-height:100vh!important}
.sidebar{position:fixed!important;inset:0 auto 0 0!important;width:220px!important;height:100dvh!important;padding:14px 10px 18px!important;background:linear-gradient(180deg,#062640 0%,#031b30 100%)!important;border:0!important;box-shadow:10px 0 30px rgba(3,25,45,.08)!important;overflow-y:auto!important}
.sidebar:after{background:radial-gradient(circle at 10% 0%,rgba(28,135,235,.14),transparent 32%)!important}
.brand{padding:8px 8px 16px!important;gap:10px!important;border-bottom:1px solid rgba(255,255,255,.09)!important;margin-bottom:10px!important}
.brand-mark{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(145deg,#2a8cff,#0759c4);font-size:20px;color:#fff;box-shadow:0 8px 18px rgba(13,111,225,.28)}
.brand h1{font-size:16px!important;color:#fff!important}.brand p{font-size:9px!important;color:#91abc1!important;margin-top:2px!important;white-space:nowrap}
.nav-tree{display:grid;gap:3px}.nav-leaf,.nav-branch-btn{min-height:42px!important;border-radius:10px!important;border:0!important;color:#e5eef5!important;background:transparent!important;padding:9px 10px!important;font-size:11px!important;font-weight:750!important;box-shadow:none!important}
.nav-leaf{display:flex;align-items:center;gap:10px}.nav-branch-btn{width:100%;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.nav-branch-title{display:flex;align-items:center;gap:10px}.nav-glyph{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.06);font-size:11px;font-weight:900;color:#cfe1ef}.nav-leaf:hover,.nav-branch-btn:hover{background:rgba(255,255,255,.06)!important}.nav-leaf.active,.nav-branch.open>.nav-branch-btn{background:linear-gradient(90deg,#1586f2,#0f6fd9)!important;color:#fff!important;box-shadow:0 6px 16px rgba(0,105,216,.24)!important}.nav-leaf.active .nav-glyph,.nav-branch.open>.nav-branch-btn .nav-glyph{background:rgba(255,255,255,.18)!important;color:#fff!important}.nav-chevron{font-size:16px;transition:.2s}.nav-branch.open>.nav-branch-btn .nav-chevron{transform:rotate(90deg)}
.nav-branch-children{display:none;padding:4px 0 4px 12px;border-left:1px solid rgba(255,255,255,.11);margin-left:21px}.nav-branch.open>.nav-branch-children{display:grid;gap:2px}.nav-leaf.level-1{min-height:36px!important;padding:7px 8px!important;color:#c9d8e4!important;font-size:10px!important}.nav-leaf.level-1 .nav-glyph{width:22px;height:22px;background:rgba(255,255,255,.04)}.nav-leaf.level-1.active{background:rgba(26,126,231,.35)!important;box-shadow:none!important;color:#fff!important}
.sidebar-utility{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.09);display:grid;gap:3px}.nav-utility{display:flex;align-items:center;gap:10px;color:#c9d8e4;padding:8px 10px;border-radius:9px;font-size:10px;font-weight:700}.nav-utility:hover{background:rgba(255,255,255,.06);color:#fff}.nav-utility>span:first-child{width:22px;text-align:center}
.shell{margin-left:220px!important;padding:0!important;min-width:0!important;overflow-x:hidden!important}
.academy-topbar{position:sticky;top:0;z-index:65;height:66px;display:grid;grid-template-columns:minmax(280px,480px) auto 1fr;align-items:center;gap:16px;padding:0 22px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--academy-line);box-shadow:0 2px 12px rgba(35,65,94,.035)}
.academy-search{height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--academy-line);border-radius:10px;background:#f9fbfd}.academy-search span{font-size:19px;color:#7a94ad}.academy-search input{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;width:100%;font-size:11px;color:var(--academy-text)}.academy-search input::placeholder{color:#8ca1b4}
.academy-mode-switch{display:flex;align-items:center;gap:6px}.mode-chip{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 11px;border:0;border-radius:9px;background:#f1f6fb;color:#234b72;font-size:10px;font-weight:800;white-space:nowrap}.mode-chip.active{background:#eaf4ff;color:#0d68ca}.academy-top-actions{margin-left:auto;display:flex;align-items:center;gap:8px;justify-content:flex-end}.top-icon{position:relative;width:36px;height:36px;border:0;border-radius:9px;background:#f4f7fa;cursor:pointer}.top-icon i{position:absolute;right:-2px;top:-4px;min-width:15px;height:15px;padding:0 3px;border-radius:99px;background:#ec3f51;color:#fff;font:700 8px/15px Arial;font-style:normal}.profile-top{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:3px 4px;cursor:pointer}.profile-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#f2bd76,#f7d49d);color:#173149;font-size:10px;font-weight:900}.profile-top strong,.profile-top small{display:block;text-align:left}.profile-top strong{font-size:10px}.profile-top small{font-size:8px;color:#7690a7;margin-top:2px}.profile-top b{font-size:12px;color:#71899c}
.page-root{padding:12px 16px 24px!important;min-height:calc(100vh - 66px)!important;background:var(--academy-bg)!important}.page-root.rendered{animation:academyFade .22s ease}@keyframes academyFade{from{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:none}}
.academy-dashboard{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;align-items:start}.academy-main-column{min-width:0;display:grid;gap:14px}.academy-right-rail{display:grid;gap:14px;position:sticky;top:80px}
.academy-hero{min-height:200px;border-radius:17px;padding:26px 30px;display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:center;gap:18px;overflow:hidden;position:relative;color:#fff;background:radial-gradient(circle at 77% 18%,rgba(226,159,71,.42),transparent 25%),linear-gradient(110deg,#082a4c 0%,#0f4e7c 58%,#08233d 100%);box-shadow:var(--academy-shadow)}.academy-hero:after{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(0deg,rgba(2,13,24,.45),transparent);pointer-events:none}.academy-hero>div{position:relative;z-index:2}.academy-eyebrow{font-size:8px;letter-spacing:.16em;color:#7fd1ff;font-weight:900}.academy-hero h1{margin:6px 0 7px;font-size:34px;line-height:1.05;letter-spacing:-.035em;color:#fff}.academy-hero p{margin:0 0 18px;max-width:620px;color:#d9e8f5;font-size:12px;line-height:1.5}.academy-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.academy-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:9px;font-size:10px;font-weight:850;border:1px solid transparent}.academy-btn.primary{background:linear-gradient(90deg,#1684f4,#0f70df);color:#fff;box-shadow:0 8px 18px rgba(8,104,217,.22)}.academy-btn.soft{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff}.academy-btn.wide{width:100%;margin-top:12px}.hero-chess-scene{height:148px;display:flex;align-items:end;justify-content:center;gap:5px;filter:drop-shadow(0 15px 12px rgba(0,0,0,.28))}.hero-chess-scene span{font-size:88px;line-height:.82;color:#f2d3aa;text-shadow:0 0 1px #fff}.hero-chess-scene span:nth-child(1){font-size:60px;color:#10181f}.hero-chess-scene span:nth-child(2){font-size:74px;color:#f7ebd8}.hero-chess-scene span:nth-child(3){font-size:104px;color:#b97530}.hero-chess-scene span:nth-child(4){font-size:62px;color:#171c22}
.academy-progress-block{width:min(460px,100%);display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 13px;border-radius:11px;background:rgba(4,31,54,.62);border:1px solid rgba(255,255,255,.14)}.academy-progress-block span,.academy-progress-block b{font-size:9px}.academy-progress{height:7px;border-radius:99px;background:#dfe9f2;overflow:hidden}.academy-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1aa6ff,#1bc2d5)}
.academy-section{background:#fff;border:1px solid var(--academy-line);border-radius:15px;padding:14px;box-shadow:0 5px 16px rgba(40,72,101,.04)}.academy-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.academy-section-head>div>span{display:block;font-size:7px;letter-spacing:.14em;font-weight:900;color:#6f94b5}.academy-section-head h2{margin:3px 0 0;font-size:17px;letter-spacing:-.02em;color:#102943}.academy-section-head>a{font-size:9px;color:#0e72dc;font-weight:800}.section-badge{padding:6px 9px;border-radius:99px;background:#eef6ff;color:#176dca;font-size:8px;font-weight:850}
.academy-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.academy-module-card{min-height:132px;border-radius:13px;padding:15px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;box-shadow:0 8px 20px rgba(42,72,100,.08)}.academy-module-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.2),transparent 30%)}.academy-module-card i{position:absolute;top:14px;left:14px;font-size:28px;font-style:normal}.academy-module-card strong,.academy-module-card small,.academy-module-card b{position:relative;z-index:2}.academy-module-card strong{font-size:13px}.academy-module-card small{font-size:9px;opacity:.85;margin-top:3px}.academy-module-card b{position:absolute;right:10px;top:10px;font-size:7px;padding:4px 6px;border-radius:99px;background:rgba(255,255,255,.18)}.academy-module-card.chess{background:linear-gradient(145deg,#6e4fd5,#8b5ae8)}.academy-module-card.robot{background:linear-gradient(145deg,#20a86e,#37c48c)}.academy-module-card.knowledge{background:linear-gradient(145deg,#e98c19,#ffad39)}.academy-module-card.school{background:linear-gradient(145deg,#ef4656,#ff6472)}
.resume-card{display:grid;grid-template-columns:92px 1fr auto;gap:13px;align-items:center;padding:10px;border:1px solid var(--academy-line);border-radius:12px;background:#fbfdff}.resume-board,.mini-board{display:grid;place-items:center;text-align:center;background:linear-gradient(145deg,#a77642,#392313);color:#fff;border-radius:9px;letter-spacing:4px}.resume-board{height:74px;font-size:22px;line-height:1.45}.resume-copy small{font-size:8px;color:#7790a7}.resume-copy h3{margin:2px 0 3px;font-size:13px}.resume-copy p{margin:0 0 7px;font-size:9px;color:#74889a}.resume-copy>span{display:block;margin-top:5px;font-size:8px;color:#6f8396}
.rail-card{background:#fff;border:1px solid var(--academy-line);border-radius:15px;padding:14px;box-shadow:0 5px 16px rgba(40,72,101,.04)}.rail-card h3{margin:0 0 11px;font-size:13px}.rail-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.rail-title a{font-size:8px;color:#0f73de;font-weight:800}.rail-progress{display:flex;align-items:center;gap:12px}.academy-ring{--p:42;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#18a894 calc(var(--p)*1%),#e7edf2 0);position:relative}.academy-ring:after{content:"";position:absolute;width:57px;height:57px;border-radius:50%;background:#fff}.academy-ring span{position:relative;z-index:2;font-size:15px;font-weight:900;color:#145e99}.rail-progress b,.rail-progress small{display:block}.rail-progress b{font-size:11px}.rail-progress small{font-size:8px;line-height:1.45;color:#738aa0;margin-top:4px}.rail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.rail-stats span{padding:8px 4px;border-radius:9px;background:#f5f9fc;text-align:center;font-size:7px;color:#728ba1}.rail-stats b{display:block;font-size:13px;color:#11345a;margin-bottom:2px}.rail-recommendation{display:grid;grid-template-columns:54px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid #edf2f6}.rail-recommendation:first-of-type{border-top:0}.mini-board{height:48px;font-size:13px}.rail-recommendation b,.rail-recommendation small{display:block}.rail-recommendation b{font-size:9px}.rail-recommendation small{font-size:7px;color:#758da2;margin-top:3px}.rail-recommendation em{font-size:16px;color:#0f77df;font-style:normal}.quick-rail>div{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.quick-rail a{min-width:0;height:68px;border-radius:10px;background:#f5f9fc;display:grid;place-items:center;text-align:center;font-size:18px}.quick-rail a:nth-child(1){background:#e8f8f4}.quick-rail a:nth-child(2){background:#fff3e8}.quick-rail a:nth-child(3){background:#f0edff}.quick-rail a:nth-child(4){background:#ffeaf2}.quick-rail a span{display:block;font-size:7px;color:#34516c;margin-top:-8px}.rail-tip{padding:10px;border-radius:10px;background:#f4f9fd}.rail-tip b,.rail-tip small{display:block}.rail-tip b{font-size:9px}.rail-tip small{font-size:8px;line-height:1.45;color:#73899c;margin-top:4px}
.chess-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.chess-path-card{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:11px;padding:12px;border:1px solid var(--academy-line);border-radius:12px;background:#fbfdff;transition:.15s}.chess-path-card:hover{transform:translateY(-1px);border-color:#bcd5eb;box-shadow:var(--academy-shadow)}.path-icon{width:46px;height:46px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#e9f4ff,#d8ecff);font-size:22px;color:#0f6fd3}.chess-path-card h3{margin:0 0 3px;font-size:11px}.chess-path-card p{margin:0 0 7px;font-size:8px;color:#758ba0}.chess-path-card small{font-size:7px;color:#7290aa}.chess-path-card>b{font-size:16px;color:#1577d8}
.lesson-design-grid{display:grid;gap:8px}.lesson-design-card{display:grid;grid-template-columns:48px 1fr 34px;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--academy-line);border-radius:12px;background:#fbfdff}.lesson-number{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#eaf4ff;color:#0b6fd5;font-size:11px;font-weight:900}.lesson-content small{font-size:7px;color:#6e8fac;font-weight:850}.lesson-content h3{margin:2px 0 3px;font-size:11px}.lesson-content p{margin:0 0 7px;font-size:8px;color:#73899d}.lesson-content>span{display:block;margin-top:4px;font-size:7px;color:#6b8398}.lesson-arrow{width:32px;height:32px;border:0;border-radius:9px;background:#eaf4ff;color:#0e70d5;font-weight:900;cursor:pointer}
/* Openings page: integrate v16.7.3 content into the new global shell */
.oa-page{max-width:none!important;margin:0!important}.oa-hero{min-height:200px!important;border-radius:17px!important;box-shadow:var(--academy-shadow)!important}.oa-body{grid-template-columns:minmax(0,1fr) 330px!important;gap:14px!important;margin-top:12px!important}.oa-center{min-width:0}.oa-rail{gap:14px!important;position:sticky!important;top:80px!important}.oa-rail-card{border-color:var(--academy-line)!important;border-radius:15px!important;box-shadow:0 5px 16px rgba(40,72,101,.04)!important}.oa-filter-row{background:#fff;border:1px solid var(--academy-line);border-radius:12px;padding:8px!important}.oa-opening-grid{gap:10px!important}.oa-opening-card{border-color:var(--academy-line)!important;border-radius:12px!important;box-shadow:none!important}.oa-opening-card:hover{transform:translateY(-2px);box-shadow:var(--academy-shadow)!important}.oa-card-action{background:#eaf4ff!important;color:#0c6ed4!important;border-radius:8px!important}.oa-opening-card:hover .oa-card-action{background:#147ce8!important;color:#fff!important}.oa-section-block{border-color:var(--academy-line)!important;border-radius:14px!important;background:#fff!important}.oa-section-block.pinned{background:#f5faff!important;border-color:#cfe2f3!important}.oa-variant-card{border-color:var(--academy-line)!important;border-radius:12px!important;background:#fbfdff!important}
.coach-launcher{position:fixed!important;right:18px!important;bottom:18px!important;width:48px!important;height:48px!important;border-radius:50%!important;background:linear-gradient(145deg,#2f8cff,#5266e9)!important;color:#fff!important;border:2px solid rgba(255,255,255,.9)!important;box-shadow:0 10px 24px rgba(31,91,199,.25)!important;z-index:100!important}.coach{z-index:110!important}
.nav-toggle{display:none!important}
@media(max-width:1250px){.academy-topbar{grid-template-columns:minmax(260px,1fr) auto}.academy-mode-switch{display:none}.academy-dashboard{grid-template-columns:minmax(0,1fr) 290px}.oa-body{grid-template-columns:minmax(0,1fr) 290px!important}.academy-hero{grid-template-columns:minmax(0,1fr) 270px}.academy-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){#app{grid-template-columns:1fr!important}.sidebar{transform:translateX(-100%);transition:.22s;z-index:120!important}.nav-open .sidebar{transform:none}.shell{margin-left:0!important}.nav-toggle{display:grid!important;place-items:center;width:36px!important;height:36px!important;border:0!important;background:#eef5fb!important;box-shadow:none!important}.nav-overlay{display:none;position:fixed;inset:0;background:rgba(2,17,30,.45);z-index:110}.nav-open .nav-overlay{display:block}.academy-topbar{grid-template-columns:auto minmax(180px,1fr) auto;padding:0 12px}.academy-dashboard{grid-template-columns:1fr}.academy-right-rail,.oa-rail{position:static!important;grid-template-columns:repeat(2,minmax(0,1fr))}.oa-body{grid-template-columns:1fr!important}.academy-right-rail .rail-card:first-child{grid-column:1/-1}.hero-chess-scene{display:none}.academy-hero{grid-template-columns:1fr}.chess-path-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.academy-topbar{height:58px}.academy-search{height:36px}.academy-search input{font-size:9px}.academy-top-actions .top-icon{display:none}.profile-top span:nth-child(2),.profile-top b{display:none}.profile-avatar{width:32px;height:32px}.page-root{padding:8px!important}.academy-hero,.oa-hero{padding:20px!important;min-height:175px!important}.academy-hero h1,.oa-hero h1{font-size:26px!important}.academy-module-grid,.chess-path-grid{grid-template-columns:1fr 1fr}.academy-right-rail,.oa-rail{grid-template-columns:1fr}.resume-card{grid-template-columns:70px 1fr}.resume-card>.academy-btn{grid-column:1/-1}.oa-opening-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.quick-rail>div{grid-template-columns:repeat(4,1fr)}}
@media(max-width:460px){.academy-module-grid,.chess-path-grid,.oa-opening-grid{grid-template-columns:1fr!important}.academy-search span{display:none}.academy-topbar{grid-template-columns:auto 1fr auto}.academy-hero-actions{display:grid}.academy-btn{width:100%}.lesson-design-card{grid-template-columns:40px 1fr}.lesson-arrow{display:none}}

/* === V16.7.5 EXACT DESIGN SYSTEM === */
:root{--navy:#082942;--navy2:#0b3554;--blue:#1685ef;--blue2:#0875e4;--page:#f4f9fd;--card:#fff;--line:#dfeaf3;--text:#102b4e;--muted:#6f88a1;--shadow:0 8px 24px rgba(28,73,115,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--page)!important;color:var(--text)!important;font-family:Inter,Segoe UI,Arial,sans-serif!important}a{text-decoration:none;color:inherit}
#app{min-height:100vh}.global-topbar{position:fixed;left:0;right:0;top:0;height:70px;background:#fff;border-bottom:1px solid #dce8f2;display:grid;grid-template-columns:220px minmax(280px,420px) 1fr auto;align-items:center;gap:16px;padding:0 22px 0 18px;z-index:300;box-shadow:0 2px 10px rgba(18,55,89,.04)}
.top-brand{display:flex;gap:11px;align-items:center}.top-logo{width:43px;height:43px;border-radius:10px;background:linear-gradient(145deg,#0e8ff8,#4f57ed);display:grid;place-items:center;color:#fff;font-size:22px}.top-brand strong,.top-brand small{display:block}.top-brand strong{font-size:18px}.top-brand small{font-size:9px;color:#5f7c96;margin-top:3px}.top-search{height:39px;border:1px solid #d8e5ef;border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 12px;background:#fbfdff}.top-search input{width:100%;border:0;outline:0;background:transparent;font-size:11px;color:#23425f}.top-modes{display:flex;gap:8px;justify-content:flex-end}.mode-pill{border:0;border-radius:9px;background:#eef6fd;padding:9px 12px;color:#174b78;font-size:10px;font-weight:800}.mode-pill.active{background:#e7f2ff;color:#086ed2}.top-user{display:flex;align-items:center;gap:9px}.top-round{position:relative;width:36px;height:36px;border:0;border-radius:10px;background:#f5f9fc}.top-round i{position:absolute;right:-2px;top:-4px;background:#f04455;color:white;font-style:normal;font-size:7px;border-radius:99px;padding:2px 4px}.avatar{width:38px;height:38px;border-radius:50%;background:#f4c486;display:grid;place-items:center;font-weight:900}.user-copy strong,.user-copy small{display:block}.user-copy strong{font-size:10px}.user-copy small{font-size:8px;color:#67819a;margin-top:2px}
.sidebar{position:fixed!important;top:70px!important;bottom:0!important;left:0!important;width:220px!important;background:linear-gradient(180deg,#082b46,#06243a)!important;padding:14px 10px 18px!important;overflow:auto!important;z-index:250!important;border:0!important}.sidebar .brand{display:none!important}.nav-tree{display:grid;gap:5px}.nav-leaf,.nav-branch-btn{min-height:42px!important;border-radius:10px!important;padding:0 11px!important;color:#f7fbff!important;display:flex!important;align-items:center!important;gap:10px!important;font-size:11px!important;font-weight:760!important;background:transparent!important;border:0!important;width:100%!important}.nav-leaf.active,.nav-branch.open>.nav-branch-btn{background:linear-gradient(90deg,#0b82ef,#257fe3)!important;box-shadow:inset 3px 0 #46d2ff}.nav-leaf:hover,.nav-branch-btn:hover{background:rgba(255,255,255,.08)!important}.nav-glyph{width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.07);display:grid;place-items:center}.nav-branch-title{display:flex;align-items:center;gap:10px;flex:1}.nav-chevron{font-size:18px;transform:rotate(0deg);transition:.2s}.nav-branch.open .nav-chevron{transform:rotate(90deg)}.nav-branch-children{display:none;padding:5px 0 4px 28px;border-left:1px solid rgba(130,194,246,.22);margin-left:14px}.nav-branch.open .nav-branch-children{display:grid;gap:4px}.nav-leaf.level-1{min-height:35px!important;font-size:10px!important}.sidebar-utility{margin-top:18px;padding-top:13px;border-top:1px solid rgba(255,255,255,.08);display:grid;gap:3px}.nav-utility{min-height:34px;padding:0 10px;color:#dfefff!important;display:flex;align-items:center;gap:10px;font-size:10px}
.shell{margin-left:220px!important;padding-top:70px!important;min-height:100vh!important;background:var(--page)!important}.page-root{padding:10px 14px 24px!important;max-width:1500px;margin:0 auto}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:14px;align-items:start}.main-flow{display:grid;gap:13px}.hero-banner{min-height:205px;border-radius:14px;padding:29px 34px;background:radial-gradient(circle at 76% 45%,rgba(184,129,70,.4),transparent 22%),linear-gradient(105deg,#0b2e4c 0%,#123d5e 55%,#0d2d46 100%);color:#fff;position:relative;overflow:hidden;box-shadow:var(--shadow)}.hero-copy{position:relative;z-index:3;max-width:590px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:900;color:#76c4ff}.hero-banner h1{font-size:34px;line-height:1.04;margin:8px 0 10px;letter-spacing:-1.2px}.hero-banner p{margin:0;max-width:540px;color:#d6e8f6;font-size:12px;line-height:1.6}.hero-buttons{display:flex;gap:9px;margin-top:18px}.cta{min-height:38px;padding:0 15px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:850}.cta.primary{background:linear-gradient(90deg,#0877e7,#0d91f4);color:#fff;box-shadow:0 8px 18px rgba(9,126,232,.2)}.cta.light{background:#fff;color:#155b98}.cta.wide{display:flex;width:100%;margin-top:12px}.hero-pieces{position:absolute;right:18px;bottom:-9px;display:flex;align-items:flex-end;gap:4px;color:#fff;text-shadow:0 8px 18px rgba(0,0,0,.5)}.hero-pieces span:nth-child(1){font-size:96px;color:#0b0b0b}.hero-pieces span:nth-child(2){font-size:122px;color:#c58c45}.hero-pieces span:nth-child(3){font-size:78px;color:#fff2dd}.hero-pieces span:nth-child(4){font-size:68px;color:#111}
.content-card,.rail-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 5px 18px rgba(33,77,112,.04)}.section-title,.rail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}.section-title small{display:block;color:#6291bb;font-size:8px;font-weight:900;letter-spacing:1px}.section-title h2,.rail-card h3{margin:3px 0 0;font-size:15px}.section-title>a,.rail-heading>a{font-size:8px;color:#0878e5;font-weight:800}.module-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.module-tile{min-height:120px;border-radius:12px;padding:14px;color:#fff;position:relative;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 7px 18px rgba(35,80,120,.1);overflow:hidden}.module-tile:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 8%,rgba(255,255,255,.22),transparent 30%)}.module-icon{position:absolute;top:14px;left:14px;font-size:28px}.module-tile b,.module-tile small,.module-tile em{position:relative}.module-tile b{font-size:12px}.module-tile small{font-size:8px;opacity:.88;margin-top:4px}.module-tile em{position:absolute;right:10px;top:10px;font-style:normal;font-size:8px;font-weight:900;background:rgba(255,255,255,.2);padding:4px 6px;border-radius:99px}.module-tile.purple{background:linear-gradient(145deg,#7545dc,#8c5dec)}.module-tile.green{background:linear-gradient(145deg,#24a26e,#37c58d)}.module-tile.orange{background:linear-gradient(145deg,#f0901e,#ffad38)}.module-tile.coral{background:linear-gradient(145deg,#ee4757,#ff6877)}
.resume-wide{display:grid;grid-template-columns:88px 1fr auto;gap:13px;align-items:center}.resume-thumb,.rec-board{background:linear-gradient(145deg,#a06e39,#2c1c13);color:#fff;border-radius:9px;display:grid;place-items:center;text-align:center;letter-spacing:3px}.resume-thumb{height:74px;font-size:18px}.resume-info small{font-size:8px;color:#7c93a9}.resume-info h3{margin:2px 0;font-size:12px}.resume-info p{margin:0 0 7px;font-size:9px;color:#71889d}.progress-line{height:6px;border-radius:99px;background:#e4edf4;overflow:hidden}.progress-line i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0c8ee8,#22c4d6)}.resume-info>span{font-size:8px;color:#67819a}.micro-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.micro-cards a{min-height:86px;border:1px solid #e0ebf3;border-radius:11px;padding:11px;background:#fbfdff}.micro-cards span{font-size:20px}.micro-cards b,.micro-cards small{display:block}.micro-cards b{font-size:10px;margin-top:5px}.micro-cards small{font-size:8px;color:#748ca1;margin-top:3px}
.right-rail{display:grid;gap:13px;position:sticky;top:80px}.rail-heading h3{margin:0}.journey{display:flex;align-items:center;gap:14px}.ring{--p:42;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#18a48f calc(var(--p)*1%),#e5edf2 0);position:relative}.ring:after{content:"";position:absolute;width:58px;height:58px;border-radius:50%;background:#fff}.ring span{position:relative;z-index:2;font-weight:900;color:#155c94;font-size:15px}.journey b,.journey small{display:block}.journey b{font-size:11px}.journey small{font-size:8px;line-height:1.4;color:#728aa1;margin-top:5px}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.stat-row span{background:#f4f8fb;border-radius:9px;text-align:center;padding:8px 4px;font-size:7px;color:#71889d}.stat-row b{display:block;font-size:13px;color:#14395d}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.quick-grid a{height:72px;border-radius:10px;background:#e9f8f4;display:grid;place-items:center;text-align:center}.quick-grid a:nth-child(2){background:#fff1e5}.quick-grid a:nth-child(3){background:#f0ecff}.quick-grid a:nth-child(4){background:#ffeaf1}.quick-grid i{font-style:normal;font-size:21px}.quick-grid span{font-size:7px;color:#274c6f}.recommend{display:grid;grid-template-columns:54px 1fr auto;gap:8px;align-items:center;padding:9px 0;border-top:1px solid #edf2f5}.recommend:first-of-type{border-top:0}.rec-board{height:48px;font-size:12px}.recommend b,.recommend small,.recommend em{display:block}.recommend b{font-size:9px}.recommend small,.recommend em{font-size:7px;color:#71899e;margin-top:2px}.recommend em{font-style:normal}.recommend strong{font-size:8px;color:#0878e5;background:#eaf4ff;padding:6px 8px;border-radius:8px}
/* adapt existing openings/basics/chess pages into exact system */
.academy-dashboard,.oa-body{display:grid!important;grid-template-columns:minmax(0,1fr) 355px!important;gap:14px!important}.academy-main-column,.oa-center{display:grid!important;gap:13px!important}.academy-hero,.oa-hero{border-radius:14px!important;background:linear-gradient(105deg,#0b2e4c,#123d5e 55%,#0d2d46)!important;color:white!important;box-shadow:var(--shadow)!important}.academy-section,.oa-section-block,.oa-rail-card{background:white!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:0 5px 18px rgba(33,77,112,.04)!important}.academy-right-rail,.oa-rail{display:grid!important;gap:13px!important;position:sticky!important;top:80px!important}.oa-opening-card,.lesson-design-card,.chess-path-card,.oa-variant-card{background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;box-shadow:0 5px 14px rgba(33,77,112,.035)!important}.oa-progress,.academy-progress{height:6px!important;background:#e4edf4!important;border-radius:99px!important;overflow:hidden!important}.oa-progress i,.academy-progress i{height:100%!important;background:linear-gradient(90deg,#0b8eea,#25c5d1)!important;display:block!important}.oa-card-action,.academy-btn.primary{background:linear-gradient(90deg,#0877e7,#0d91f4)!important;color:#fff!important;border-radius:8px!important}.oa-filter-row{background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important}.oa-filter-row button.active{background:#0e82ec!important;color:#fff!important}.academy-ring,.oa-ring{background:conic-gradient(#16a38f calc(var(--p)*1%),#e5edf2 0)!important}
.nav-toggle{display:none}.coach-launcher{position:fixed;right:18px;bottom:18px;width:48px;height:48px;border-radius:50%;border:2px solid #fff;background:linear-gradient(145deg,#2e8df7,#5862ef);color:#fff;z-index:400;box-shadow:0 10px 22px rgba(38,84,180,.25)}
@media(max-width:1220px){.global-topbar{grid-template-columns:220px minmax(260px,1fr) auto}.top-modes{display:none}.dashboard-layout,.academy-dashboard,.oa-body{grid-template-columns:minmax(0,1fr) 300px!important}.module-tiles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:930px){.global-topbar{grid-template-columns:auto 1fr auto;padding:0 10px}.top-brand{display:none}.sidebar{transform:translateX(-100%);transition:.2s}.nav-open .sidebar{transform:none}.shell{margin-left:0!important}.nav-toggle{display:grid;position:fixed;top:18px;left:12px;z-index:350;width:36px;height:36px;place-items:center;border:0;border-radius:9px;background:#eef6fc}.top-search{margin-left:46px}.dashboard-layout,.academy-dashboard,.oa-body{grid-template-columns:1fr!important}.right-rail,.academy-right-rail,.oa-rail{position:static!important;grid-template-columns:repeat(2,1fr)!important}.right-rail .rail-card:first-child,.academy-right-rail>*:first-child,.oa-rail>*:first-child{grid-column:1/-1}.nav-open .nav-overlay{display:block;position:fixed;inset:70px 0 0;background:rgba(1,17,29,.5);z-index:240}}
@media(max-width:640px){.page-root{padding:8px!important}.top-user .user-copy,.top-user>b,.top-round{display:none}.hero-banner{padding:22px;min-height:190px}.hero-banner h1{font-size:27px}.hero-pieces{opacity:.32}.module-tiles,.micro-cards{grid-template-columns:1fr 1fr}.resume-wide{grid-template-columns:70px 1fr}.resume-wide>.cta{grid-column:1/-1}.right-rail,.academy-right-rail,.oa-rail{grid-template-columns:1fr!important}.quick-grid{grid-template-columns:repeat(4,1fr)}}

/* =========================================================
   BBJ Academy V16.7.6 — Stable exact dashboard
   The top bar + left navigation are fixed; only center changes.
   ========================================================= */
:root{--bbj-blue:#0b80ec;--bbj-navy:#062b46;--bbj-bg:#f4f8fb;--bbj-text:#0b2f52;--bbj-muted:#64819a;--bbj-card:#fff;--bbj-line:#dfeaf2}
html,body{background:var(--bbj-bg)!important;color:var(--bbj-text)!important}
.global-topbar{height:70px!important;background:#fff!important;border-bottom:1px solid #e3ecf3!important;box-shadow:0 1px 7px rgba(28,65,98,.05)!important;display:grid!important;grid-template-columns:220px minmax(290px,1fr) auto auto!important;align-items:center!important;gap:16px!important;padding:0 18px!important;position:fixed!important;inset:0 0 auto 0!important;z-index:500!important}
.top-brand{display:flex!important;align-items:center!important;gap:10px!important;color:#082f53!important}.top-logo{width:42px!important;height:42px!important;border-radius:10px!important;background:linear-gradient(145deg,#228ef5,#3d63ef)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:23px!important}.top-brand strong{display:block!important;font-size:16px!important}.top-brand small{display:block!important;font-size:8px!important;color:#6e8aa0!important;margin-top:2px!important}.top-search{height:40px!important;max-width:520px!important;border:1px solid #d8e6ef!important;border-radius:10px!important;background:#fbfdff!important;display:flex!important;align-items:center!important;gap:8px!important;padding:0 12px!important}.top-search input{border:0!important;background:transparent!important;outline:0!important;width:100%!important;font-size:10px!important;color:#204b6e!important}.top-modes{display:flex!important;gap:8px!important;align-items:center!important}.mode-pill{border:0!important;background:#eef6fd!important;border-radius:9px!important;min-height:36px!important;padding:0 11px!important;color:#0b528e!important;font-size:9px!important;font-weight:850!important;display:flex!important;align-items:center!important}.mode-pill.active{color:#0876df!important;background:#e9f4ff!important}.top-user{display:flex!important;align-items:center!important;gap:8px!important}.top-round{width:35px!important;height:35px!important;border:0!important;border-radius:9px!important;background:#f2f7fb!important;position:relative!important}.top-round i{position:absolute!important;right:-2px!important;top:-5px!important;width:14px!important;height:14px!important;border-radius:50%!important;background:#ef4555!important;color:#fff!important;font-size:7px!important;display:grid!important;place-items:center!important;font-style:normal!important}.avatar{width:38px!important;height:38px!important;border-radius:50%!important;background:#f3b45e!important;color:#163c59!important;display:grid!important;place-items:center!important;font-weight:900!important}.user-copy strong,.user-copy small{display:block!important}.user-copy strong{font-size:9px!important}.user-copy small{font-size:7px!important;color:#6d889d!important}
.sidebar{top:70px!important;width:220px!important;background:linear-gradient(180deg,#062e4c,#05263e)!important}.shell{padding-top:70px!important;margin-left:220px!important}.page-root{max-width:1540px!important;width:100%!important;padding:12px 14px 26px!important;background:var(--bbj-bg)!important}
.page-loading{min-height:calc(100vh - 110px);display:grid;place-items:center;align-content:center;gap:10px;color:#7890a3}.page-loading span{width:34px;height:34px;border:4px solid #d8e8f3;border-top-color:#1288ef;border-radius:50%;animation:bbjSpin .8s linear infinite}@keyframes bbjSpin{to{transform:rotate(360deg)}}
.dashboard-layout{grid-template-columns:minmax(0,1fr) 330px!important;gap:14px!important}.right-rail{top:82px!important}.hero-banner{min-height:205px!important;background:radial-gradient(circle at 72% 45%,rgba(206,150,86,.5),transparent 20%),linear-gradient(105deg,#0a2d49,#123e60 54%,#0a2d48)!important}.home-hero .hero-copy{max-width:640px!important}.home-progress-chip{margin-top:14px;width:min(400px,100%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.18);background:rgba(5,37,61,.34);padding:10px 12px;border-radius:10px}.home-progress-chip span,.home-progress-chip b{font-size:8px}.home-progress-chip .progress-line{background:rgba(255,255,255,.18)}.tile-progress{height:5px;border-radius:99px;background:rgba(255,255,255,.22);overflow:hidden;margin-top:10px;position:relative}.tile-progress i{display:block;height:100%;background:white;border-radius:inherit}.module-tile{min-height:132px!important}.micro-cards a{min-height:94px!important}.rail-card{padding:15px!important}.right-rail .rail-card:first-child{min-height:250px}.recommend strong{white-space:nowrap!important}
.fallback-copy{font-size:11px;line-height:1.7;color:#5e7b92}.render-error{margin:20px}.render-error button{border:0;border-radius:8px;padding:9px 14px;background:#0b80ec;color:#fff;font-weight:800}
@media(max-width:1220px){.global-topbar{grid-template-columns:220px minmax(250px,1fr) auto!important}.top-modes{display:none!important}.dashboard-layout{grid-template-columns:minmax(0,1fr) 290px!important}}
@media(max-width:930px){.global-topbar{grid-template-columns:auto 1fr auto!important}.top-brand{display:none!important}.shell{margin-left:0!important}.dashboard-layout{grid-template-columns:1fr!important}.right-rail{position:static!important;grid-template-columns:repeat(2,1fr)!important}.right-rail .rail-card:first-child{grid-column:1/-1}.sidebar{transform:translateX(-100%)}.nav-open .sidebar{transform:none}.nav-toggle{display:grid!important}}
@media(max-width:640px){.global-topbar{height:58px!important}.shell{padding-top:58px!important}.sidebar{top:58px!important}.page-root{padding:8px!important}.right-rail{grid-template-columns:1fr!important}.module-tiles{grid-template-columns:1fr 1fr!important}.hero-banner h1{font-size:28px!important}}

/* ========================================================================== */
/* BBJ ACADEMY V16.7.7 — DEEP UI RESET / MATCH THE APPROVED MOCKUP             */
/* ========================================================================== */
:root{
  --bbj-top:76px;
  --bbj-side:232px;
  --bbj-bg:#f4f8fc;
  --bbj-navy:#062b46;
  --bbj-navy-2:#073654;
  --bbj-blue:#1386ee;
  --bbj-blue-2:#0c72df;
  --bbj-text:#0d2d4c;
  --bbj-muted:#6e89a1;
  --bbj-line:#dce8f2;
  --bbj-card:#ffffff;
}
html,body{background:var(--bbj-bg)!important;color:var(--bbj-text)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important}
body{overflow-x:hidden!important}
#app{display:block!important;grid-template-columns:none!important;width:100%!important;min-height:100vh!important;background:var(--bbj-bg)!important}
.global-topbar{position:fixed!important;z-index:1000!important;inset:0 0 auto 0!important;height:var(--bbj-top)!important;display:grid!important;grid-template-columns:245px minmax(320px,520px) 1fr auto!important;align-items:center!important;gap:18px!important;padding:0 24px!important;background:#fff!important;border-bottom:1px solid var(--bbj-line)!important;box-shadow:0 3px 14px rgba(17,62,99,.05)!important}
.top-brand{gap:12px!important}.top-logo{width:44px!important;height:44px!important;border-radius:12px!important;background:linear-gradient(145deg,#1c92f5,#3760f0)!important;font-size:23px!important;box-shadow:0 8px 18px rgba(29,123,230,.2)!important}.top-brand strong{font-size:21px!important;letter-spacing:-.4px!important;color:#102f50!important}.top-brand small{font-size:10px!important;color:#6d89a1!important;margin-top:2px!important}.top-search{height:44px!important;max-width:none!important;border:1px solid #d4e3ee!important;border-radius:11px!important;background:#fbfdff!important;padding:0 14px!important;box-shadow:inset 0 1px 1px rgba(12,49,78,.02)!important}.top-search input{font-size:13px!important;color:#294b68!important}.top-search span{font-size:18px!important;color:#6e879a!important}.top-modes{justify-self:end!important;display:flex!important;gap:9px!important}.mode-pill{min-height:39px!important;padding:0 14px!important;border-radius:10px!important;background:#eef6fd!important;font-size:12px!important;font-weight:800!important;color:#0b4e84!important}.mode-pill.active{background:#e7f3ff!important;color:#087be7!important}.top-user{gap:9px!important}.top-round{width:38px!important;height:38px!important;border-radius:10px!important;font-size:17px!important}.avatar{width:42px!important;height:42px!important;font-size:15px!important}.user-copy strong{font-size:12px!important}.user-copy small{font-size:9px!important}
.sidebar{position:fixed!important;z-index:900!important;left:0!important;top:var(--bbj-top)!important;bottom:0!important;width:var(--bbj-side)!important;height:auto!important;overflow-y:auto!important;padding:14px 12px 22px!important;background:linear-gradient(180deg,#062e4c 0%,#05243b 100%)!important;color:#fff!important;border-right:1px solid rgba(255,255,255,.06)!important;transform:none!important}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:99px}.nav-tree{display:grid!important;gap:4px!important}.nav-leaf,.nav-branch-btn{min-height:46px!important;border-radius:12px!important;padding:0 13px!important;color:#f2f8fc!important;font-size:13px!important;font-weight:760!important}.nav-leaf{display:flex!important;align-items:center!important;gap:11px!important}.nav-branch-btn{width:100%!important;border:0!important;background:transparent!important;display:flex!important;align-items:center!important;justify-content:space-between!important;cursor:pointer!important}.nav-branch-title{display:flex!important;align-items:center!important;gap:11px!important}.nav-leaf:hover,.nav-branch-btn:hover{background:rgba(255,255,255,.065)!important}.nav-leaf.active,.nav-branch.open>.nav-branch-btn{background:linear-gradient(90deg,#0b76de,#1593f4)!important;color:#fff!important;box-shadow:0 8px 18px rgba(0,91,180,.18)!important}.nav-glyph{width:30px!important;height:30px!important;border-radius:9px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.07)!important;font-size:14px!important;flex:0 0 30px!important}.nav-leaf.active .nav-glyph,.nav-branch.open>.nav-branch-btn .nav-glyph{background:rgba(255,255,255,.18)!important}.nav-branch-children{display:none!important;margin:5px 0 8px 17px!important;padding-left:11px!important;border-left:1px solid rgba(255,255,255,.11)!important}.nav-branch.open>.nav-branch-children{display:grid!important;gap:2px!important}.nav-branch-children .nav-leaf{min-height:42px!important;font-size:12px!important;padding-left:10px!important}.nav-chevron{font-size:19px!important;transform:rotate(0);transition:.2s}.nav-branch.open>.nav-branch-btn .nav-chevron{transform:rotate(90deg)}.sidebar-utility{display:grid!important;gap:2px!important;margin-top:18px!important;padding-top:14px!important;border-top:1px solid rgba(255,255,255,.08)!important}.nav-utility{min-height:42px!important;display:flex!important;align-items:center!important;gap:12px!important;padding:0 12px!important;border-radius:10px!important;font-size:12px!important;color:#dbe9f2!important}.nav-utility:hover{background:rgba(255,255,255,.06)!important}.nav-overlay{display:none!important}
.shell{display:block!important;position:relative!important;margin-left:var(--bbj-side)!important;padding:var(--bbj-top) 0 0!important;min-height:100vh!important;background:var(--bbj-bg)!important;overflow:visible!important}.page-root{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:14px 18px 30px!important;min-height:calc(100vh - var(--bbj-top))!important;background:var(--bbj-bg)!important;visibility:visible!important;opacity:1!important}.page-root>*{visibility:visible!important}.bbj-visible-center{display:grid!important}.page-loading{min-height:400px!important}.coach-launcher{z-index:1200!important}
.dashboard-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 350px!important;gap:16px!important;align-items:start!important;max-width:1510px!important;margin:0 auto!important}.main-flow{display:grid!important;gap:14px!important;min-width:0!important}.right-rail{display:grid!important;gap:14px!important;position:sticky!important;top:calc(var(--bbj-top) + 14px)!important;align-self:start!important}.content-card,.rail-card{background:#fff!important;border:1px solid var(--bbj-line)!important;border-radius:15px!important;box-shadow:0 7px 24px rgba(24,68,103,.055)!important}.content-card{padding:17px!important}.rail-card{padding:17px!important}.section-title,.rail-heading{margin-bottom:14px!important}.section-title h2,.rail-card h3{font-size:18px!important;font-weight:820!important;letter-spacing:-.25px!important;color:#0d2d4c!important}.section-title small{font-size:9px!important;letter-spacing:1.4px!important;color:#5687b1!important}.section-title>a,.rail-heading>a{font-size:11px!important;color:#087be7!important}
.hero-banner{min-height:245px!important;border-radius:16px!important;padding:34px 38px!important;background:radial-gradient(circle at 78% 43%,rgba(211,147,76,.48),transparent 23%),linear-gradient(108deg,#082942 0%,#0e3b5e 58%,#08283f 100%)!important;box-shadow:0 14px 34px rgba(12,48,77,.14)!important}.premium-home-hero{display:flex!important;align-items:center!important;justify-content:space-between!important}.hero-copy{max-width:650px!important}.eyebrow{font-size:10px!important;letter-spacing:2.2px!important;color:#87ccff!important}.hero-banner h1{font-size:42px!important;line-height:1.04!important;letter-spacing:-1.6px!important;margin:8px 0 12px!important}.hero-banner p{font-size:14px!important;line-height:1.6!important;color:#d7e9f7!important}.home-progress-chip{width:min(430px,100%)!important;grid-template-columns:auto 1fr auto!important;gap:12px!important;padding:11px 13px!important;margin-top:16px!important}.home-progress-chip span,.home-progress-chip b{font-size:10px!important}.progress-line{height:7px!important;border-radius:99px!important;background:#e5eef5!important;overflow:hidden!important}.progress-line i{display:block!important;height:100%!important;border-radius:inherit!important;background:linear-gradient(90deg,#0b8ff0,#27c3ce)!important}.hero-buttons{margin-top:18px!important}.cta{min-height:42px!important;padding:0 16px!important;border-radius:10px!important;font-size:12px!important}.hero-chess-art{position:absolute!important;right:25px!important;bottom:-3px!important;width:38%!important;height:92%!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;gap:5px!important;pointer-events:none!important;filter:drop-shadow(0 16px 16px rgba(0,0,0,.24))}.hero-chess-art .piece{line-height:.8!important}.hero-chess-art .dark{font-size:92px!important;color:#11191f!important}.hero-chess-art .gold{font-size:145px!important;color:#c1813c!important}.hero-chess-art .white{font-size:104px!important;color:#fff2db!important}.hero-chess-art .small{font-size:62px!important}
.module-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}.module-tile{min-height:145px!important;border-radius:14px!important;padding:16px!important}.module-icon{font-size:31px!important}.module-tile b{font-size:14px!important}.module-tile small{font-size:10px!important}.module-tile em{font-size:9px!important}.tile-progress{height:6px!important}.home-two-up{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(270px,.75fr)!important;gap:14px!important}.resume-wide{display:grid!important;grid-template-columns:88px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important}.resume-thumb{width:88px!important;height:78px!important;border-radius:12px!important;background:linear-gradient(145deg,#173f60,#0b253d)!important;color:#fff!important;display:grid!important;place-items:center!important}.chess-mini-board{grid-template-columns:1fr 1fr!important;grid-template-rows:1fr 1fr!important;font-size:25px!important}.resume-info h3{font-size:17px!important;margin:2px 0 3px!important}.resume-info p,.resume-info small,.resume-info span{font-size:10px!important;color:#6d879d!important}.goal-row{display:grid!important;grid-template-columns:58px 1fr!important;gap:12px!important;align-items:center!important}.goal-icon{width:52px!important;height:52px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#efeaff!important;color:#6141d7!important;font-size:25px!important}.goal-row b,.goal-row small{display:block!important}.goal-row b{font-size:12px!important}.goal-row small{font-size:9px!important;color:#6f879a!important;margin:4px 0 10px!important}.recommend-grid-main{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important}.recommend-main-card{min-height:96px!important;border:1px solid #e1ebf2!important;border-radius:12px!important;padding:11px!important;display:grid!important;grid-template-columns:56px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;background:#fff!important}.rec-visual{width:56px!important;height:56px!important;border-radius:10px!important;display:grid!important;place-items:center!important;color:#fff!important;font-size:22px!important}.rec-visual.navy{background:#0a3656!important}.rec-visual.violet{background:#7457df!important}.rec-visual.green{background:#20a879!important}.recommend-main-card small,.recommend-main-card b,.recommend-main-card span{display:block!important}.recommend-main-card small{font-size:8px!important;color:#6e90ad!important}.recommend-main-card b{font-size:11px!important;margin:3px 0!important}.recommend-main-card span{font-size:9px!important;color:#70879a!important}.recommend-main-card strong{font-size:9px!important;color:#0a7de8!important;white-space:nowrap!important}
.journey{gap:16px!important}.ring{width:92px!important;height:92px!important}.ring:after{width:69px!important;height:69px!important}.ring span{font-size:18px!important}.journey b{font-size:13px!important}.journey small{font-size:9px!important}.stat-row{gap:8px!important}.stat-row span{padding:10px 4px!important;font-size:8px!important}.stat-row b{font-size:16px!important}.quick-grid{gap:8px!important}.quick-grid a{height:82px!important;border-radius:12px!important}.quick-grid i{font-size:24px!important}.quick-grid span{font-size:8px!important}.recommend{grid-template-columns:58px 1fr auto!important;gap:9px!important}.rec-board{width:58px!important;height:52px!important;border-radius:8px!important;background:linear-gradient(145deg,#153f60,#0b273f)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:18px!important}.recommend b{font-size:10px!important}.recommend small,.recommend em{font-size:8px!important}.recommend strong{font-size:9px!important}
/* Make older page systems visible inside the same shell */
.academy-dashboard,.oa-body{max-width:1510px!important;margin:0 auto!important}.academy-main-column,.oa-center{min-width:0!important}.academy-right-rail,.oa-rail{top:calc(var(--bbj-top) + 14px)!important}.academy-hero,.oa-hero{min-height:220px!important}.academy-section,.oa-section-block,.oa-rail-card{border-radius:15px!important}.oa-opening-card,.oa-variant-card,.lesson-design-card,.chess-path-card{border-radius:13px!important}
@media(max-width:1240px){.global-topbar{grid-template-columns:225px minmax(280px,1fr) auto!important}.top-modes{display:none!important}.dashboard-layout{grid-template-columns:minmax(0,1fr) 310px!important}.module-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.recommend-grid-main{grid-template-columns:1fr!important}.home-two-up{grid-template-columns:1fr!important}}
@media(max-width:960px){:root{--bbj-side:0px}.global-topbar{grid-template-columns:auto 1fr auto!important;height:66px!important;padding:0 12px!important}.top-brand{display:none!important}.top-search{margin-left:44px!important}.sidebar{width:246px!important;top:66px!important;transform:translateX(-103%)!important}.nav-open .sidebar{transform:none!important}.shell{margin-left:0!important;padding-top:66px!important}.nav-toggle{display:grid!important;position:fixed!important;top:15px!important;left:12px!important;z-index:1300!important;width:36px!important;height:36px!important;place-items:center!important;border:0!important;border-radius:9px!important;background:#eef6fc!important}.nav-open .nav-overlay{display:block!important;position:fixed!important;inset:66px 0 0!important;background:rgba(2,17,30,.5)!important;z-index:850!important}.dashboard-layout{grid-template-columns:1fr!important}.right-rail{position:static!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.right-rail .rail-card:first-child{grid-column:1/-1!important}.hero-chess-art{opacity:.3!important}.hero-copy{max-width:100%!important}}
@media(max-width:640px){.page-root{padding:8px!important}.top-user .user-copy,.top-user>b,.top-round{display:none!important}.hero-banner{padding:23px!important;min-height:220px!important}.hero-banner h1{font-size:31px!important}.hero-banner p{font-size:12px!important}.hero-chess-art{display:none!important}.module-tiles{grid-template-columns:1fr 1fr!important}.home-two-up{grid-template-columns:1fr!important}.resume-wide{grid-template-columns:72px 1fr!important}.resume-wide>.cta{grid-column:1/-1!important}.recommend-grid-main{grid-template-columns:1fr!important}.right-rail{grid-template-columns:1fr!important}.quick-grid{grid-template-columns:repeat(4,1fr)!important}}

/* ======================================================================
   V16.7.8 — UI CLOSER TO APPROVED BBJ ACADEMY MOCKUP
   ====================================================================== */
:root{--bbj-blue:#0d7df0;--bbj-navy:#072d4b;--bbj-bg:#f4f9fd;--bbj-card:#fff;--bbj-border:#dce9f3;--bbj-text:#072b4c;--bbj-muted:#6a86a0}
body.bbj-v1677{background:linear-gradient(180deg,#f7fbff 0,#eef6fb 100%)!important;color:var(--bbj-text)!important;font-family:"Segoe UI Variable","Segoe UI",Inter,Arial,sans-serif!important;text-rendering:optimizeLegibility!important;-webkit-font-smoothing:antialiased!important}
.global-topbar{background:#fff!important;border-bottom:1px solid #dbe8f2!important;box-shadow:0 2px 12px rgba(12,61,96,.04)!important}
.top-brand strong{font-size:21px!important;letter-spacing:-.45px!important;color:#0b2d4d!important}.top-brand small{color:#65839c!important}.top-logo{background:linear-gradient(135deg,#1b8cff,#3e5bf4)!important;border-radius:13px!important;color:#fff!important;box-shadow:0 8px 18px rgba(28,122,235,.22)!important}.top-search{background:#f8fbfd!important;border:1px solid #d6e5f0!important;border-radius:11px!important}.mode-pill{background:#eef7ff!important;color:#064a7d!important;border-radius:10px!important;font-weight:750!important}.top-round{background:#f1f7fb!important}.avatar{background:#f5b351!important;color:#0a3a60!important}
.sidebar{background:linear-gradient(180deg,#062f4d 0%,#062b47 65%,#05283f 100%)!important}.nav-leaf,.nav-branch-btn,.nav-utility{font-weight:650!important;letter-spacing:-.1px!important}.nav-leaf.active,.nav-branch.open>.nav-branch-btn{background:linear-gradient(90deg,#128af3,#0d75d9)!important;box-shadow:0 7px 18px rgba(0,112,218,.22)!important}.nav-glyph{border-radius:9px!important;background:rgba(255,255,255,.08)!important}
.page-root{background:transparent!important;padding:14px 16px 26px!important}.dashboard-layout{max-width:1500px!important;margin:0 auto!important;grid-template-columns:minmax(0,1fr) 355px!important;gap:14px!important}.main-flow{gap:12px!important}.right-rail{gap:12px!important}.rail-card,.content-card,.v178-section{border:1px solid var(--bbj-border)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 20px rgba(24,72,108,.055)!important}.rail-card{padding:17px!important}.rail-card h3,.content-card h2,.v178-section h2{font-weight:800!important;letter-spacing:-.45px!important;color:#092c4b!important}
.v178-hero{min-height:226px!important;border-radius:13px!important;padding:30px 33px!important;overflow:hidden!important;background:linear-gradient(100deg,#063252 0%,#0c4773 62%,#0b3150 100%)!important;position:relative!important;box-shadow:0 12px 25px rgba(7,48,78,.16)!important}.v178-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 70%,rgba(224,153,72,.30),transparent 28%),linear-gradient(90deg,transparent 50%,rgba(255,255,255,.035));pointer-events:none}.v178-hero .hero-copy{position:relative;z-index:2;max-width:600px!important}.v178-hero h1{font-size:35px!important;line-height:1.08!important;margin:0 0 8px!important;color:#fff!important;letter-spacing:-1.25px!important}.v178-hero p{font-size:15px!important;color:#e3f0f8!important;margin:0 0 15px!important}.v178-progress-box{display:grid!important;grid-template-columns:35px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;width:min(390px,100%)!important;padding:10px 12px!important;border:1px solid rgba(210,236,255,.28)!important;background:rgba(5,44,72,.48)!important;border-radius:10px!important;color:#fff!important}.v178-progress-box small{font-size:10px!important;display:block!important;margin-bottom:6px!important}.v178-progress-box b{font-size:11px!important}.progress-icon{font-size:26px!important;color:#fff!important}.v178-hero-cta{display:inline-flex!important;margin-top:14px!important;background:#fff!important;color:#082f50!important;font-weight:800!important;border-radius:9px!important}.v178-hero-photo{position:absolute!important;right:3%!important;bottom:-17px!important;width:48%!important;height:108%!important;z-index:1!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;gap:5px!important;filter:drop-shadow(0 10px 10px rgba(0,0,0,.25))}.v178-hero-photo:before{content:"";position:absolute;inset:15% 2% 4%;background:radial-gradient(ellipse at 50% 70%,rgba(216,149,67,.28),transparent 42%);filter:blur(10px)}.v178-hero-photo .piece{position:relative!important;line-height:.72!important}.v178-hero-photo .p-a{font-size:84px!important;color:#121c25!important}.v178-hero-photo .p-b{font-size:105px!important;color:#080f16!important}.v178-hero-photo .p-c{font-size:162px!important;color:#c88842!important}.v178-hero-photo .p-d{font-size:104px!important;color:#fff0d6!important}.v178-hero-photo .p-e{font-size:70px!important;color:#0a151e!important}.v178-quote{position:absolute!important;top:31px!important;right:20px!important;color:#fff!important;font-style:italic!important;font-size:12px!important;line-height:1.35!important;text-align:center!important;z-index:3!important}.v178-quote small{display:block!important;margin-top:7px!important;font-size:9px!important;font-style:normal!important}
.v178-section.flush{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.v178-title-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:8px!important}.v178-title-row h2{font-size:18px!important;margin:0!important}.v178-title-row a{font-size:10px!important;color:#087ce7!important;font-weight:750!important}.v178-title-row small{font-size:8px!important;color:#5d8cad!important;font-weight:800!important;letter-spacing:1.6px!important}
.v178-module-tiles{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr)) 42px!important;gap:10px!important}.v178-module-tiles .module-tile{aspect-ratio:1.13/1!important;min-height:0!important;border-radius:11px!important;padding:14px!important;position:relative!important;overflow:hidden!important;box-shadow:0 8px 16px rgba(27,70,103,.08)!important}.module-tile.purple{background:linear-gradient(145deg,#8b53e9,#6f3ed2)!important}.module-tile.green{background:linear-gradient(145deg,#38c68e,#1faa76)!important}.module-tile.orange{background:linear-gradient(145deg,#ffad35,#f58b19)!important}.module-tile.coral{background:linear-gradient(145deg,#ff6676,#ef3e55)!important}.module-tile.blue{background:linear-gradient(145deg,#4cb5f5,#1689dc)!important}.v178-module-tiles .module-icon{font-size:36px!important;color:#fff!important}.v178-module-tiles .module-text{position:absolute!important;left:14px!important;right:14px!important;bottom:30px!important}.v178-module-tiles .module-tile b{font-size:14px!important;color:#fff!important}.v178-module-tiles .module-tile small{font-size:9px!important;color:rgba(255,255,255,.94)!important}.v178-module-tiles .tile-progress{position:absolute!important;left:14px!important;right:14px!important;bottom:13px!important;background:rgba(255,255,255,.28)!important;height:7px!important}.v178-module-tiles .tile-progress i{background:#fff!important}.v178-module-tiles .module-tile em{position:absolute!important;right:12px!important;top:10px!important;color:#fff!important;background:rgba(255,255,255,.20)!important;padding:3px 6px!important;border-radius:99px!important;font-size:8px!important}.module-more{display:grid!important;place-items:center!important;border-radius:10px!important;background:#edf5fb!important;color:#087ae7!important;font-size:31px!important;font-weight:300!important}
.resume-grid-v178{display:grid!important;grid-template-columns:1.4fr 1fr 1fr!important;gap:10px!important}.resume-course{min-width:0!important;border:1px solid #dbe7ef!important;border-radius:10px!important;background:#fff!important;padding:9px!important;display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;position:relative!important}.resume-course.featured{grid-template-columns:105px minmax(0,1fr) auto!important}.resume-course button,.popular-card button{border:0!important;border-radius:8px!important;background:#e8f3fd!important;color:#066fd4!important;font-weight:750!important;font-size:9px!important;padding:9px 13px!important}.resume-course.featured button,.popular-card button.primary{background:#087ff0!important;color:#fff!important}.resume-copy-v178 h3{font-size:11px!important;margin:0 0 3px!important}.resume-copy-v178 p{font-size:9px!important;color:#67849d!important;margin:0 0 7px!important}.resume-copy-v178 span{font-size:8px!important;color:#4b789b!important}
.bbj-chess-photo{height:76px!important;border-radius:7px!important;overflow:hidden!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;gap:0!important;background:linear-gradient(155deg,#cba26e 0%,#6c421e 47%,#1a3041 48%,#0b253a 100%)!important;position:relative!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important}.bbj-chess-photo:after{content:"";position:absolute;inset:auto 0 0;height:33%;background:linear-gradient(90deg,rgba(255,236,208,.25),rgba(34,21,12,.2));transform:perspective(60px) rotateX(35deg);transform-origin:bottom}.bbj-chess-photo span{position:relative!important;z-index:1!important;line-height:.8!important;filter:drop-shadow(0 4px 4px rgba(0,0,0,.25))}.bbj-chess-photo .p1{font-size:44px!important;color:#10161b!important}.bbj-chess-photo .p2{font-size:51px!important;color:#fff1dc!important}.bbj-chess-photo .p3{font-size:58px!important;color:#c78034!important}.bbj-chess-photo .p4{font-size:42px!important;color:#f8e2c5!important}.bbj-chess-photo.sicilian{background:linear-gradient(155deg,#a66a32,#e0b173 50%,#0b2438 51%,#173d58)!important}.bbj-chess-photo.ruy{background:linear-gradient(155deg,#d9b98d,#7f542a 48%,#173650 49%,#0b2235)!important}.bbj-chess-photo.french{background:linear-gradient(155deg,#2d4050,#07151f 50%,#d8b989 51%,#8a5b2e)!important}.bbj-chess-photo.tactics{background:linear-gradient(155deg,#d7b176,#75461e 48%,#0b314e 49%,#081f32)!important}.bbj-chess-photo.finales{background:linear-gradient(155deg,#bf8e58,#6d3f1e 48%,#183d58 49%,#092539)!important}
.v178-bottom-boxes{gap:10px!important}.why-card,.goal-card{padding:14px!important}.why-card h2,.goal-card h2{font-size:13px!important;margin:0 0 12px!important}.why-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important}.why-grid span{min-height:72px!important;border-radius:9px!important;background:#f7f8ff!important;display:grid!important;place-items:center!important;text-align:center!important;padding:8px!important}.why-grid i{font-size:23px!important;color:#087ff0!important;font-style:normal!important}.why-grid b{font-size:8px!important;line-height:1.35!important;font-weight:600!important;color:#325a79!important}.goal-card .goal-row{grid-template-columns:62px 1fr!important}.goal-card .goal-icon{width:58px!important;height:58px!important}.goal-card a{display:block!important;margin-top:8px!important;background:#e8f3fd!important;color:#086fd5!important;text-align:center!important;padding:7px!important;border-radius:7px!important;font-size:9px!important;font-weight:700!important}
.popular-openings{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:8px!important}.popular-card{border:1px solid #dbe7ef!important;border-radius:9px!important;overflow:hidden!important;background:#fff!important}.popular-card .bbj-chess-photo{height:56px!important;border-radius:0!important}.popular-card>div:last-child{padding:8px!important;position:relative!important}.popular-card h3{font-size:10px!important;margin:0!important}.popular-card p{font-size:9px!important;color:#376b94!important;margin:2px 0!important}.popular-card small{font-size:8px!important;color:#6e899f!important}.popular-card .progress-line{margin-top:7px!important;height:5px!important;width:72%!important}.popular-card span{position:absolute!important;right:8px!important;bottom:39px!important;font-size:8px!important;color:#557999!important}.popular-card button{width:100%!important;margin-top:8px!important;padding:7px!important}
.v178-right-rail{position:sticky!important;top:84px!important;align-self:start!important}.v178-right-rail .rail-card h3{font-size:17px!important}.journey .ring{width:88px!important;height:88px!important}.journey b{font-size:12px!important}.journey small{font-size:9px!important;line-height:1.5!important}.stat-row span{background:#f5f9fc!important;border-radius:8px!important}.stat-row b{color:#07395f!important}.quick-grid a:nth-child(1){background:#e6f8f5!important}.quick-grid a:nth-child(2){background:#fff1e6!important}.quick-grid a:nth-child(3){background:#f0eafd!important}.quick-grid a:nth-child(4){background:#ffe9f2!important}.recommend{border-top:1px solid #edf2f6!important;padding:9px 0!important}.recommend:first-of-type{border-top:0!important}.quote-card-v178{min-height:150px!important;position:relative!important;overflow:hidden!important;background:linear-gradient(125deg,#fff 0%,#fff 53%,#f6e6d2 100%)!important}.quote-card-v178 blockquote{margin:0!important;font-size:10px!important;font-style:italic!important;line-height:1.6!important;color:#153f61!important}.quote-card-v178>small{font-size:8px!important;color:#577996!important}.quote-card-v178>div{position:absolute!important;right:8px!important;bottom:-15px!important;display:flex!important;align-items:flex-end!important}.quote-card-v178>div span:nth-child(1){font-size:64px!important;color:#111b22!important}.quote-card-v178>div span:nth-child(2){font-size:52px!important;color:#fff0d8!important}.quote-card-v178>div span:nth-child(3){font-size:80px!important;color:#b77834!important}
.v178-activity-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.v178-activity-card{display:grid!important;grid-template-columns:54px minmax(0,1fr) 20px!important;gap:10px!important;align-items:center!important;padding:11px!important;border:1px solid #dce8f1!important;border-radius:10px!important;background:#fff!important}.v178-activity-card .activity-icon{width:48px!important;height:48px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:#eaf4fd!important;color:#0a7bdc!important;font-size:22px!important}.v178-activity-card h3{font-size:11px!important;margin:0 0 3px!important}.v178-activity-card p{font-size:8px!important;margin:0 0 7px!important;color:#6f879d!important}.v178-activity-card small{font-size:8px!important;color:#6e879a!important}.v178-activity-card>b{color:#0b80eb!important}
.v178-lesson-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.v178-lesson-card{display:grid!important;grid-template-columns:50px minmax(0,1fr) 18px!important;gap:10px!important;align-items:center!important;border:1px solid #dce8f1!important;border-radius:10px!important;padding:12px!important;background:#fff!important}.v178-lesson-card .lesson-number{width:44px!important;height:44px!important;border-radius:10px!important;background:#eaf4fd!important;color:#087de6!important;display:grid!important;place-items:center!important;font-weight:800!important}.v178-lesson-card h3{font-size:11px!important;margin:1px 0 3px!important}.v178-lesson-card p{font-size:8px!important;color:#70879c!important;margin:0 0 7px!important}.v178-lesson-card small,.v178-lesson-card span{font-size:8px!important;color:#5f819d!important}
@media(max-width:1320px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 310px!important}.v178-module-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}.v178-module-tiles .module-tile:nth-child(5){display:none!important}.popular-openings{grid-template-columns:repeat(4,minmax(0,1fr))!important}.popular-card:nth-child(n+5){display:none!important}}
@media(max-width:980px){.dashboard-layout{grid-template-columns:1fr!important}.v178-right-rail{position:static!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.v178-module-tiles{grid-template-columns:repeat(3,minmax(0,1fr))!important}.resume-grid-v178{grid-template-columns:1fr!important}.popular-openings{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v178-hero-photo{opacity:.35!important}}
@media(max-width:640px){.v178-module-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.popular-openings{grid-template-columns:repeat(2,minmax(0,1fr))!important}.why-grid{grid-template-columns:repeat(2,1fr)!important}.v178-activity-grid,.v178-lesson-grid{grid-template-columns:1fr!important}.v178-hero-photo{display:none!important}.v178-right-rail{grid-template-columns:1fr!important}}

/* ========================================================================== */
/* BBJ ACADEMY V16.7.9 — VISUAL PRECISION / APPROVED MOCKUP                  */
/* ========================================================================== */
:root{
  --v179-bg:#eef6fb;
  --v179-gap:#e7f2f9;
  --v179-card:#ffffff;
  --v179-line:#d8e7f1;
  --v179-line-soft:#eaf2f7;
  --v179-text:#0b2d4f;
  --v179-muted:#607f9b;
  --v179-blue:#087ff0;
  --v179-blue2:#0c6ed8;
  --v179-navy:#052b48;
  --v179-radius:13px;
  --v179-shadow:0 6px 18px rgba(18,62,96,.055);
}
html,body{background:var(--v179-bg)!important;color:var(--v179-text)!important;font-family:"Segoe UI Variable Text","Segoe UI",Arial,sans-serif!important;font-weight:400!important;text-rendering:optimizeLegibility!important;-webkit-font-smoothing:antialiased!important}
.global-topbar{height:68px!important;padding:0 24px!important;grid-template-columns:245px minmax(360px,520px) 1fr auto!important;gap:18px!important;border-bottom:1px solid #dbe8f1!important;box-shadow:0 2px 10px rgba(18,54,84,.035)!important}
.top-brand{display:flex!important;align-items:center!important;gap:12px!important}.top-logo{width:44px!important;height:44px!important;border-radius:12px!important;background:linear-gradient(145deg,#2e8df5,#2965e8)!important;display:grid!important;place-items:center!important}.top-logo svg{width:25px!important;height:25px!important;fill:none!important;stroke:#fff!important;stroke-width:1.65!important;stroke-linejoin:round!important}.top-brand strong{font-size:20px!important;font-weight:760!important;letter-spacing:-.35px!important}.top-brand small{font-size:10px!important;font-weight:400!important;color:#67859e!important}.top-search{height:42px!important;border-radius:10px!important;border:1px solid #d3e3ee!important;background:#fbfdff!important}.top-search input{font-size:12px!important;font-weight:400!important}.mode-pill{height:38px!important;min-height:38px!important;border-radius:9px!important;font-size:11px!important;font-weight:700!important;padding:0 13px!important}.top-round{width:37px!important;height:37px!important;border-radius:9px!important}.avatar{width:40px!important;height:40px!important;font-size:14px!important}.user-copy strong{font-size:11px!important;font-weight:700!important}.user-copy small{font-size:8px!important}
.sidebar{top:68px!important;width:222px!important;padding:12px 10px 18px!important;background:linear-gradient(180deg,#062e4d 0%,#05253f 100%)!important;box-shadow:7px 0 20px rgba(7,39,64,.08)!important}.shell{margin-left:222px!important;padding-top:68px!important;background:var(--v179-bg)!important}.page-root{padding:10px 14px 24px!important;background:var(--v179-bg)!important;max-width:none!important}.nav-tree{gap:3px!important}.nav-leaf,.nav-branch-btn{min-height:43px!important;border-radius:10px!important;padding:8px 10px!important;font-size:11.5px!important;font-weight:600!important;letter-spacing:0!important}.nav-glyph{width:29px!important;height:29px!important;border-radius:8px!important;background:rgba(255,255,255,.065)!important;color:#d8ebf8!important}.nav-svg{width:17px!important;height:17px!important;display:block!important}.nav-leaf.active,.nav-branch.open>.nav-branch-btn{background:linear-gradient(90deg,#0f84f4,#118eea)!important;box-shadow:0 7px 16px rgba(0,105,215,.18)!important}.nav-branch-children{margin-left:18px!important;padding-left:9px!important;border-left:1px solid rgba(255,255,255,.12)!important}.nav-leaf.level-1{min-height:37px!important;font-size:10.5px!important;padding:5px 8px!important}.nav-leaf.level-1 .nav-glyph{width:25px!important;height:25px!important;border-radius:7px!important}.nav-leaf.level-1.active{background:#0f76da!important}.sidebar-utility{margin-top:18px!important;padding-top:12px!important}.nav-utility{min-height:39px!important;font-size:10.5px!important;font-weight:550!important;padding:6px 9px!important}.nav-utility .nav-glyph{width:26px!important;height:26px!important;flex:0 0 26px!important}
.dashboard-layout{grid-template-columns:minmax(0,1fr) 350px!important;gap:14px!important;align-items:start!important}.main-flow{gap:12px!important}.v178-right-rail{top:80px!important;gap:12px!important}.hero-banner,.content-card,.rail-card,.v178-section,.academy-section{border-radius:12px!important;border:1px solid var(--v179-line)!important;box-shadow:var(--v179-shadow)!important}.hero-banner{min-height:224px!important;padding:27px 31px!important;background:linear-gradient(105deg,#072d4b 0%,#0d4a76 54%,#092e4b 100%)!important;overflow:hidden!important}.hero-banner h1{font-size:35px!important;line-height:1.05!important;font-weight:720!important;letter-spacing:-1.1px!important;margin:4px 0 8px!important}.hero-banner p{font-size:13px!important;font-weight:400!important;line-height:1.45!important;color:#e1edf6!important}.v178-hero-photo{position:absolute!important;right:0!important;top:0!important;width:50%!important;height:100%!important;background:url('../assets/chess-hero-v179.webp') center/cover no-repeat!important;opacity:1!important;mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 100%)!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 100%)!important}.v178-hero-photo .piece{display:none!important}.v178-quote{position:absolute!important;right:26px!important;top:24px!important;z-index:3!important;color:#fff!important;font-size:11px!important;font-style:italic!important;line-height:1.55!important;text-shadow:0 1px 2px rgba(0,0,0,.3)!important}.v178-quote small{display:block!important;font-size:9px!important;font-style:normal!important;margin-top:6px!important}.v178-progress-box{position:relative!important;z-index:4!important;width:min(390px,100%)!important;border-radius:10px!important;padding:10px 12px!important;background:rgba(4,36,59,.64)!important;border:1px solid rgba(255,255,255,.16)!important}.v178-progress-box small{font-size:9px!important}.v178-progress-box b{font-size:9px!important}.v178-hero-cta{position:relative!important;z-index:4!important;margin-top:12px!important;min-height:38px!important;border-radius:9px!important;font-size:10px!important;padding:0 14px!important}
.v178-section,.content-card{padding:12px!important;background:#fff!important}.v178-section.flush{padding:10px 12px 12px!important}.v178-title-row{margin-bottom:9px!important}.v178-title-row h2,.content-card h2,.rail-card h3{font-weight:700!important;letter-spacing:-.35px!important;color:#0c2d4d!important}.v178-title-row h2{font-size:17px!important}.v178-title-row a,.rail-heading a{font-size:9px!important;font-weight:650!important;color:#087be7!important}
.v178-module-tiles{grid-template-columns:repeat(5,minmax(0,1fr)) 36px!important;gap:10px!important}.v178-module-tiles .module-tile{min-height:138px!important;border-radius:11px!important;padding:15px 13px!important;box-shadow:none!important}.v178-module-tiles .module-icon{font-size:32px!important}.v178-module-tiles .module-tile b{font-size:13px!important;font-weight:700!important}.v178-module-tiles .module-tile small{font-size:9px!important;font-weight:400!important}.v178-module-tiles .tile-progress{left:13px!important;right:13px!important;bottom:12px!important;height:6px!important}.module-more{border-radius:10px!important;border:1px solid #e3eef6!important}
.resume-grid-v178{gap:10px!important}.resume-course{border-radius:10px!important;padding:8px!important;background:#fff!important;box-shadow:none!important}.resume-course.featured{grid-template-columns:96px minmax(0,1fr) auto!important}.bbj-chess-photo{height:70px!important}.resume-copy-v178 h3{font-size:10.5px!important;font-weight:700!important}.resume-copy-v178 p{font-size:8.7px!important;line-height:1.35!important}.resume-course button,.popular-card button{font-size:8.5px!important;font-weight:650!important;border-radius:7px!important}
.home-two-up{grid-template-columns:1.18fr .82fr!important;gap:10px!important}.why-card,.goal-card{min-height:120px!important}.why-grid span{min-height:70px!important;border:1px solid #edf2f7!important;border-radius:9px!important}.why-grid b{font-size:8px!important;font-weight:500!important}.popular-openings{gap:8px!important}.popular-card{border-radius:8px!important;box-shadow:none!important}.popular-card h3{font-weight:700!important}.popular-card p,.popular-card small{font-weight:400!important}
.rail-card{padding:14px!important;background:#fff!important}.rail-card h3{font-size:16px!important}.journey-card{min-height:260px!important}.journey{gap:13px!important}.journey .ring{width:92px!important;height:92px!important}.journey b{font-size:12px!important;font-weight:700!important}.stat-row{gap:6px!important}.stat-row span{padding:10px 5px!important;background:#f5f9fc!important;border:1px solid #eef3f7!important}.stat-row b{font-size:16px!important;font-weight:750!important}.quick-grid{gap:8px!important}.quick-grid a{min-height:94px!important;border-radius:10px!important}.quick-grid i{font-size:25px!important}.quick-grid span{font-size:8.5px!important;line-height:1.35!important}.recommend{gap:8px!important}.recommend b{font-size:9px!important}.recommend small,.recommend em{font-size:7.7px!important}.quote-card-v178{min-height:158px!important;background:#fff url('../assets/chess-quote-v179.webp') right bottom/52% auto no-repeat!important}.quote-card-v178>div{display:none!important}.quote-card-v178 blockquote{font-size:10px!important;max-width:56%!important}
.v178-activity-grid,.v178-lesson-grid{gap:9px!important}.v178-activity-card,.v178-lesson-card{border-radius:9px!important;box-shadow:none!important}.v178-activity-card h3,.v178-lesson-card h3{font-weight:700!important}.v178-activity-card p,.v178-lesson-card p{font-weight:400!important;line-height:1.4!important}.oa-page,.oa-body,.oa-center{background:transparent!important}.oa-hero,.oa-section-block,.oa-rail-card{border-radius:12px!important;box-shadow:var(--v179-shadow)!important}.oa-body{gap:14px!important}.oa-center{gap:12px!important}.oa-opening-card,.oa-variant-card{border-radius:10px!important;box-shadow:none!important;border-color:var(--v179-line)!important}
@media(max-width:1360px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 320px!important}.v178-module-tiles{grid-template-columns:repeat(4,minmax(0,1fr)) 36px!important}.v178-module-tiles .module-tile:nth-child(5){display:none!important}}
@media(max-width:1020px){.global-topbar{grid-template-columns:210px minmax(260px,1fr) auto!important}.top-modes{display:none!important}.sidebar{width:210px!important}.shell{margin-left:210px!important}.dashboard-layout{grid-template-columns:1fr!important}.v178-right-rail{position:static!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.v178-hero-photo{width:48%!important}}
@media(max-width:760px){.sidebar{transform:translateX(-100%)!important}.nav-open .sidebar{transform:none!important}.shell{margin-left:0!important}.global-topbar{grid-template-columns:auto 1fr auto!important}.top-brand>span:last-child,.user-copy{display:none!important}.dashboard-layout{grid-template-columns:1fr!important}.v178-right-rail{grid-template-columns:1fr!important}.v178-module-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.module-more{display:none!important}.hero-banner{padding:22px!important}.v178-hero-photo{opacity:.28!important;width:100%!important}.hero-banner h1{font-size:29px!important}}

/* =========================================================
   V16.8.0 — RADICAL DASHBOARD ALIGNMENT
   Goal: visually match the approved BBJ Academy mockup.
   ========================================================= */
body.bbj-v1677{--v1680-bg:#edf6fd;--v1680-panel:#fff;--v1680-line:#dbeaf5;--v1680-navy:#052f4f;--v1680-blue:#0b86f6;--v1680-text:#0b2a4a;--v1680-muted:#6a86a3;--v1680-shadow:0 10px 28px rgba(30,80,120,.07);background:var(--v1680-bg)!important;font-family:Inter,"Segoe UI",Arial,sans-serif!important;color:var(--v1680-text)!important}
body.bbj-v1677 #app{display:block!important;min-height:100vh!important;background:var(--v1680-bg)!important}
body.bbj-v1677 .global-topbar{position:fixed!important;inset:0 0 auto 0!important;height:74px!important;display:grid!important;grid-template-columns:250px minmax(300px,1fr) auto auto!important;gap:20px!important;align-items:center!important;padding:0 24px!important;background:#fff!important;border-bottom:1px solid #d9e8f2!important;box-shadow:0 4px 16px rgba(32,74,108,.04)!important;z-index:500!important}
body.bbj-v1677 .top-brand{gap:13px!important}.top-logo{width:48px!important;height:48px!important;border-radius:13px!important;background:linear-gradient(145deg,#2f8df7,#196ce7)!important;box-shadow:0 10px 18px rgba(31,119,226,.16)!important}.top-logo svg{width:27px!important;height:27px!important;stroke:#fff!important}.top-brand strong{font-size:21px!important;font-weight:800!important;letter-spacing:-.5px!important;color:#092c4b!important}.top-brand small{font-size:10px!important;color:#6d8aa4!important;margin-top:3px!important}
body.bbj-v1677 .top-search{height:46px!important;border:1px solid #cfe2ef!important;border-radius:11px!important;background:#fbfdff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important}.top-search span{color:#6b8ca8!important}.top-search input{font-size:12px!important;color:#173d60!important}
body.bbj-v1677 .top-modes{gap:9px!important}.mode-pill{height:40px!important;border:0!important;border-radius:10px!important;background:#edf6fd!important;color:#0a4a7d!important;font-size:11px!important;font-weight:750!important;padding:0 14px!important}.mode-pill:hover,.mode-pill.active{background:#e2f2ff!important;color:#0875d8!important}.top-round{width:40px!important;height:40px!important;border-radius:10px!important;background:#f1f7fb!important;border:0!important}.avatar{width:44px!important;height:44px!important;background:#f0b34f!important;color:#12385b!important;font-weight:850!important}.user-copy strong{font-size:11px!important;color:#0a2f50!important}.user-copy small{font-size:8px!important;color:#7390aa!important}

body.bbj-v1677 .sidebar{position:fixed!important;left:0!important;top:74px!important;bottom:0!important;width:224px!important;height:auto!important;padding:12px 10px 20px!important;background:linear-gradient(180deg,#062e4e 0%,#052842 100%)!important;border-right:1px solid rgba(255,255,255,.07)!important;box-shadow:8px 0 22px rgba(7,42,69,.09)!important;z-index:300!important;overflow:auto!important}.sidebar::after{display:none!important}.nav-tree{display:flex!important;flex-direction:column!important;gap:3px!important}.nav-leaf,.nav-branch-btn{min-height:45px!important;border-radius:10px!important;padding:8px 10px!important;font-size:11px!important;font-weight:650!important;color:#eef8ff!important}.nav-glyph{width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:8px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.07)!important;color:#d7ecfb!important}.nav-svg{width:17px!important;height:17px!important}.nav-leaf:hover,.nav-branch-btn:hover{background:rgba(255,255,255,.07)!important}.nav-leaf.active,.nav-branch.open>.nav-branch-btn{background:linear-gradient(90deg,#1189f5,#179bf1)!important;box-shadow:0 8px 18px rgba(0,118,226,.24)!important;color:#fff!important}.nav-leaf.active .nav-glyph,.nav-branch.open>.nav-branch-btn .nav-glyph{background:rgba(255,255,255,.17)!important}.nav-branch-children{margin:2px 0 4px 20px!important;padding-left:9px!important;border-left:1px solid rgba(255,255,255,.12)!important}.nav-leaf.level-1{min-height:36px!important;font-size:10px!important;padding:5px 7px!important}.nav-leaf.level-1 .nav-glyph{width:25px!important;height:25px!important;flex-basis:25px!important}.sidebar-utility{margin-top:16px!important;padding-top:14px!important;border-top:1px solid rgba(255,255,255,.09)!important}.nav-utility{min-height:38px!important;border-radius:9px!important;padding:6px 8px!important;font-size:10px!important;color:#e7f5ff!important}

body.bbj-v1677 .shell{margin-left:224px!important;padding-top:74px!important;min-height:100vh!important;background:var(--v1680-bg)!important}.page-root{padding:10px 14px 26px!important;background:var(--v1680-bg)!important;max-width:none!important}
.v1680-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 356px;gap:14px;align-items:start;max-width:1540px;margin:0 auto}.v1680-main{display:flex;flex-direction:column;gap:12px;min-width:0}.v1680-rail{display:flex;flex-direction:column;gap:12px;position:sticky;top:86px}
.v1680-panel,.v1680-rail-card{background:#fff;border:1px solid var(--v1680-line);border-radius:12px;box-shadow:var(--v1680-shadow)}.v1680-panel{padding:10px 12px 12px}.v1680-panel-head,.v1680-rail-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.v1680-panel-head{margin-bottom:8px}.v1680-panel h2,.v1680-panel-head h2{margin:0;color:#0a2e50;font-size:17px;line-height:1.15;font-weight:800;letter-spacing:-.35px}.v1680-panel-head a,.v1680-rail-head a{color:#0780ef;font-size:9px;font-weight:750}
.v1680-hero{position:relative;min-height:224px;border-radius:12px;overflow:hidden;background:linear-gradient(105deg,#072f4f 0%,#0a4f7e 55%,#0a385d 100%);box-shadow:0 10px 26px rgba(15,60,95,.11)}.v1680-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,37,62,.98) 0%,rgba(3,44,72,.94) 38%,rgba(6,48,78,.35) 64%,rgba(6,48,78,.08) 100%);pointer-events:none}.v1680-hero-copy{position:relative;z-index:3;width:57%;padding:26px 30px 22px}.v1680-hero h1{margin:0 0 7px;font-size:36px;line-height:1.02;color:#fff;font-weight:780;letter-spacing:-1.2px}.v1680-hero p{margin:0 0 14px;color:#e5f1fa;font-size:13px;line-height:1.4}.v1680-hero-progress{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;width:min(390px,100%);padding:10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:rgba(4,34,56,.58);color:#fff}.v1680-mini-icon{font-size:20px}.v1680-hero-progress small{display:block;font-size:9px;margin-bottom:5px;color:#fff}.v1680-hero-progress b{font-size:9px}.v1680-hero-visual{position:absolute;z-index:1;right:0;top:0;width:58%;height:100%;background:url('../assets/chess-hero-v1680.webp') center 50%/cover no-repeat}.v1680-hero-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07304f 0%,rgba(7,48,79,.22) 26%,transparent 48%)}.v1680-hero-quote{position:absolute;right:24px;top:28px;color:#fff;font-size:11px;font-style:italic;line-height:1.5;text-align:left;text-shadow:0 1px 2px rgba(0,0,0,.3)}.v1680-hero-quote small{display:block;margin-top:6px;font-size:9px;font-style:normal}.v1680-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:38px;margin-top:12px;padding:0 15px;border-radius:9px;font-size:10px;font-weight:800}.v1680-btn.secondary{background:#fff;color:#0b3152}.v1680-btn.primary{background:linear-gradient(90deg,#0b7ff1,#0f94f4);color:#fff}.v1680-btn.wide{width:100%;min-height:42px;margin-top:11px}
.v1680-progress{height:6px;border-radius:999px;background:#dfebf3;overflow:hidden}.v1680-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#09a8df,#21cad2)}
.v1680-modules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) 36px;gap:10px}.v1680-module{position:relative;min-height:138px;padding:14px 13px;border-radius:11px;color:#fff;overflow:hidden}.v1680-module.purple{background:linear-gradient(145deg,#7c45e9,#8f50e8)}.v1680-module.green{background:linear-gradient(145deg,#28bb79,#40c894)}.v1680-module.orange{background:linear-gradient(145deg,#ff9e28,#ffb038)}.v1680-module.coral{background:linear-gradient(145deg,#fa5064,#ff6675)}.v1680-module.blue{background:linear-gradient(145deg,#2ca6e8,#3eb0ea)}.v1680-module-icon{font-size:30px;display:block;margin-bottom:16px}.v1680-module-copy b{display:block;font-size:13px;line-height:1.1;font-weight:800}.v1680-module-copy small{display:block;margin-top:4px;font-size:9px;color:rgba(255,255,255,.9);line-height:1.3}.v1680-module-progress{position:absolute;left:13px;right:13px;bottom:12px;height:6px;border-radius:999px;background:rgba(255,255,255,.25);overflow:hidden}.v1680-module-progress i{display:block;height:100%;background:rgba(255,255,255,.82);border-radius:inherit}.v1680-module em{position:absolute;right:12px;top:10px;font-size:8px;font-style:normal;font-weight:800;background:rgba(255,255,255,.2);padding:3px 6px;border-radius:999px}.v1680-more{display:grid;place-items:center;border:1px solid #e0edf6;border-radius:11px;background:#f7fbfe;color:#067be7;font-size:28px}
.v1680-resume-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:10px}.v1680-resume{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px;border:1px solid #dfeaf2;border-radius:10px;background:#fff;min-height:94px}.v1680-resume:not(:first-child){grid-template-columns:78px minmax(0,1fr)}.v1680-resume:not(:first-child) .v1680-small-btn{grid-column:1/-1;justify-self:start}.v1680-thumb{height:72px;border-radius:7px;display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:7px;background:linear-gradient(145deg,#a76628 0%,#122f4b 46%,#0b2945 100%);overflow:hidden;color:#f3d29b}.v1680-thumb.board{background:linear-gradient(135deg,#b27431,#e6a251 48%,#072b49 49%,#0c3556)}.v1680-thumb.final{background:linear-gradient(135deg,#0b2d4c,#123c5e 55%,#b27330 56%)}.v1680-thumb span{font-size:24px;text-shadow:0 1px 4px rgba(0,0,0,.35)}.v1680-thumb.mini{width:56px;height:56px;flex:0 0 56px}.v1680-thumb.mini span{font-size:15px}.v1680-resume-copy b{display:block;font-size:10px;color:#0b2d4d}.v1680-resume-copy small{display:block;margin:3px 0 7px;font-size:8.5px;color:#6c88a2;line-height:1.35}.v1680-resume-copy em{display:block;margin-top:4px;font-size:8px;color:#537694;font-style:normal}.v1680-small-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:7px;background:#0c83f3;color:#fff;font-size:8px;font-weight:800}.v1680-small-btn.light{background:#e9f4ff;color:#0877de}
.v1680-two-cols{display:grid;grid-template-columns:1.15fr .85fr;gap:10px}.v1680-why h2,.v1680-goal h2{font-size:15px;margin:0 0 8px}.v1680-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v1680-why-grid span{min-height:70px;border-radius:9px;background:linear-gradient(180deg,#fff,#fbfdff);border:1px solid #edf3f7;display:grid;place-items:center;text-align:center;padding:7px}.v1680-why-grid i{font-style:normal;font-size:23px;color:#176fe5}.v1680-why-grid b{font-size:8px;line-height:1.3;font-weight:500;color:#194b78}.v1680-goal-row{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center}.v1680-goal-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#f0eaff;color:#573ad6;font-size:28px}.v1680-goal-row b{font-size:9px;line-height:1.35}.v1680-goal-row small{float:right;font-size:8px;color:#4c7090;margin-top:4px}.v1680-goal-row a{display:block;clear:both;margin-top:7px;text-align:center;padding:6px;background:#e8f3ff;border-radius:6px;color:#0875d8;font-size:8px;font-weight:700}
.v1680-popular-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.v1680-opening-card{border:1px solid #e0ebf2;border-radius:8px;overflow:hidden;background:#fff}.v1680-opening-card .v1680-thumb{height:54px;border-radius:0}.v1680-opening-copy{padding:7px}.v1680-opening-copy b{display:block;font-size:9px}.v1680-opening-copy small,.v1680-opening-copy span{display:block;font-size:7.5px;color:#6684a0;margin-top:2px}.v1680-opening-copy .v1680-progress{margin-top:6px;height:5px}.v1680-opening-copy em{display:block;text-align:right;font-size:7px;font-style:normal;color:#527391;margin-top:2px}.v1680-opening-copy strong{display:block;margin-top:5px;padding:6px 4px;border-radius:5px;background:#0c82ef;color:#fff;text-align:center;font-size:7.5px}
.v1680-rail-card{padding:14px}.v1680-rail-card h3{margin:0;color:#0a2d4d;font-size:16px;font-weight:800;letter-spacing:-.25px}.v1680-journey-main{display:flex;align-items:center;gap:13px;margin-top:10px}.v1680-ring{--p:18;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#16a48f calc(var(--p)*1%),#e3edf3 0);position:relative}.v1680-ring::after{content:"";position:absolute;width:68px;height:68px;border-radius:50%;background:#fff}.v1680-ring span{position:relative;z-index:1;font-size:17px;font-weight:800;color:#0b4b7e}.v1680-journey-main b{display:block;font-size:12px}.v1680-journey-main small{display:block;margin-top:6px;font-size:8px;line-height:1.45;color:#6987a2}.v1680-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px}.v1680-stats span{padding:10px 4px;background:#f5f9fc;border-radius:8px;text-align:center;color:#65839f;font-size:7.5px}.v1680-stats b{display:block;color:#0a416d;font-size:16px;margin-bottom:3px}.v1680-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.v1680-tools a{min-height:96px;border-radius:10px;display:grid;place-items:center;text-align:center;padding:8px}.v1680-tools a:nth-child(1){background:#e9fbf7}.v1680-tools a:nth-child(2){background:#fff2e8}.v1680-tools a:nth-child(3){background:#f1ecff}.v1680-tools a:nth-child(4){background:#fff0f5}.v1680-tools i{font-size:25px;font-style:normal}.v1680-tools span{font-size:8px;line-height:1.35;color:#1d4b73}.v1680-rec{display:grid;grid-template-columns:56px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #edf2f6}.v1680-rec:last-child{border-bottom:0}.v1680-rec span b{display:block;font-size:9px}.v1680-rec span small{display:block;font-size:7.5px;color:#69869f;margin-top:3px}.v1680-rec span em{display:block;font-size:7px;color:#5f80a0;font-style:normal;margin-top:4px}.v1680-rec>strong{padding:7px 9px;border-radius:7px;background:#e7f3ff;color:#0675dc;font-size:7.5px}.v1680-quote-card{min-height:160px;background:#fff url('../assets/chess-quote-v179.webp') right bottom/55% auto no-repeat!important}.v1680-quote-card blockquote{margin:12px 0 9px;max-width:58%;font-size:10px;line-height:1.5;font-style:italic;color:#153d62}.v1680-quote-card>small{font-size:8px;color:#466d8d}

@media(max-width:1380px){.v1680-dashboard{grid-template-columns:minmax(0,1fr) 320px}.v1680-modules{grid-template-columns:repeat(4,minmax(0,1fr)) 36px}.v1680-module:nth-child(5){display:none}.v1680-popular-grid{grid-template-columns:repeat(5,1fr)}.v1680-opening-card:nth-child(6){display:none}}
@media(max-width:1100px){body.bbj-v1677 .global-topbar{grid-template-columns:220px 1fr auto!important}.top-modes{display:none!important}.v1680-dashboard{grid-template-columns:1fr}.v1680-rail{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.v1680-quote-card{display:none}.v1680-popular-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){body.bbj-v1677 .global-topbar{grid-template-columns:auto 1fr auto!important;padding:0 10px!important}.top-brand>span:last-child,.user-copy{display:none!important}body.bbj-v1677 .sidebar{transform:translateX(-100%)}body.nav-open.bbj-v1677 .sidebar{transform:none}.shell{margin-left:0!important}.v1680-dashboard{display:block}.v1680-main{gap:10px}.v1680-rail{grid-template-columns:1fr;margin-top:10px}.v1680-hero{min-height:260px}.v1680-hero-copy{width:100%;padding:23px 20px}.v1680-hero h1{font-size:29px}.v1680-hero-visual{width:100%;opacity:.26}.v1680-modules{grid-template-columns:repeat(2,1fr)}.v1680-more{display:none}.v1680-resume-grid{grid-template-columns:1fr}.v1680-two-cols{grid-template-columns:1fr}.v1680-popular-grid{grid-template-columns:repeat(2,1fr)}}

/* =========================================================
   V16.8.1 — COMPACT NAV + RIGHT RAIL
   Goal: materially tighter layout and clearer navigation while
   preserving the same SVG icon language across the academy.
   ========================================================= */
body.bbj-v1677{
  --v1681-gap:10px;
  --v1681-radius:10px;
  --v1681-line:#dbe8f2;
  --v1681-rail:286px;
  --v1681-nav:198px;
  --v1681-top:62px;
}
body.bbj-v1677 .global-topbar{
  height:var(--v1681-top)!important;
  grid-template-columns:230px minmax(300px,1fr) auto auto!important;
  gap:12px!important;
  padding:0 18px!important;
}
body.bbj-v1677 .top-logo{width:39px!important;height:39px!important;border-radius:10px!important}
body.bbj-v1677 .top-logo svg{width:22px!important;height:22px!important}
body.bbj-v1677 .top-brand{gap:10px!important}
body.bbj-v1677 .top-brand strong{font-size:18px!important;letter-spacing:-.35px!important}
body.bbj-v1677 .top-brand small{font-size:8.5px!important;margin-top:1px!important}
body.bbj-v1677 .top-search{height:38px!important;border-radius:9px!important}
body.bbj-v1677 .top-search input{font-size:10.8px!important}
body.bbj-v1677 .mode-pill{height:34px!important;padding:0 11px!important;font-size:9.7px!important;border-radius:8px!important}
body.bbj-v1677 .top-round{width:34px!important;height:34px!important;border-radius:8px!important;font-size:14px!important}
body.bbj-v1677 .avatar{width:36px!important;height:36px!important;font-size:12px!important}
body.bbj-v1677 .user-copy strong{font-size:10px!important}
body.bbj-v1677 .user-copy small{font-size:7px!important}

body.bbj-v1677 .sidebar{
  top:var(--v1681-top)!important;
  width:var(--v1681-nav)!important;
  padding:9px 8px 14px!important;
  background:linear-gradient(180deg,#042844 0%,#032239 100%)!important;
}
body.bbj-v1677 .shell{
  margin-left:var(--v1681-nav)!important;
  padding-top:var(--v1681-top)!important;
}
body.bbj-v1677 .nav-tree{gap:2px!important}
body.bbj-v1677 .nav-leaf,
body.bbj-v1677 .nav-branch-btn{
  min-height:38px!important;
  padding:6px 8px!important;
  border-radius:9px!important;
  font-size:10.2px!important;
  font-weight:680!important;
  gap:8px!important;
}
body.bbj-v1677 .nav-glyph{
  width:27px!important;height:27px!important;flex:0 0 27px!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.075)!important;
  color:#dff2ff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
body.bbj-v1677 .nav-svg{width:15px!important;height:15px!important;stroke-width:1.9!important}
body.bbj-v1677 .nav-leaf.active,
body.bbj-v1677 .nav-branch.open>.nav-branch-btn{
  background:linear-gradient(90deg,#0d88f4 0%,#1199ee 100%)!important;
  box-shadow:0 6px 14px rgba(6,115,220,.22)!important;
}
body.bbj-v1677 .nav-branch-children{
  margin:1px 0 3px 17px!important;
  padding-left:7px!important;
}
body.bbj-v1677 .nav-leaf.level-1{
  min-height:31px!important;
  padding:4px 6px!important;
  font-size:9.2px!important;
  border-radius:8px!important;
}
body.bbj-v1677 .nav-leaf.level-1 .nav-glyph{
  width:22px!important;height:22px!important;flex-basis:22px!important;border-radius:6px!important;
}
body.bbj-v1677 .nav-leaf.level-1 .nav-svg{width:13px!important;height:13px!important}
body.bbj-v1677 .sidebar-utility{margin-top:11px!important;padding-top:9px!important;gap:1px!important}
body.bbj-v1677 .nav-utility{min-height:32px!important;padding:4px 7px!important;font-size:9.2px!important;gap:7px!important}
body.bbj-v1677 .nav-utility .nav-glyph{width:23px!important;height:23px!important;flex:0 0 23px!important}

/* Distinct but consistent icon chips: same SVG family, easier visual scanning */
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(1) .nav-glyph{background:rgba(55,166,255,.18)!important;color:#8fd4ff!important}
body.bbj-v1677 .nav-tree>.nav-branch:nth-child(2)>.nav-branch-btn .nav-glyph{background:rgba(123,91,255,.19)!important;color:#c9bdff!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(3) .nav-glyph{background:rgba(39,197,151,.17)!important;color:#84ebc8!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(4) .nav-glyph{background:rgba(255,184,55,.18)!important;color:#ffd27c!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(5) .nav-glyph{background:rgba(255,94,116,.17)!important;color:#ffb0bd!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(6) .nav-glyph{background:rgba(65,182,240,.18)!important;color:#9bddff!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(7) .nav-glyph{background:rgba(85,209,115,.17)!important;color:#a8f0b8!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(8) .nav-glyph{background:rgba(126,98,241,.18)!important;color:#c8bcff!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(9) .nav-glyph{background:rgba(255,160,43,.18)!important;color:#ffd094!important}
body.bbj-v1677 .nav-tree>.nav-leaf:nth-child(10) .nav-glyph{background:rgba(34,201,218,.17)!important;color:#91eff4!important}

body.bbj-v1677 .page-root{padding:8px 10px 18px!important}
.v1680-dashboard{
  grid-template-columns:minmax(0,1fr) var(--v1681-rail)!important;
  gap:var(--v1681-gap)!important;
  max-width:1600px!important;
}
.v1680-main,.v1680-rail{gap:var(--v1681-gap)!important}
.v1680-rail{top:calc(var(--v1681-top) + 10px)!important}
.v1680-panel,.v1680-rail-card{
  border-radius:var(--v1681-radius)!important;
  border-color:var(--v1681-line)!important;
  box-shadow:0 5px 16px rgba(26,70,107,.055)!important;
}
.v1680-panel{padding:9px 10px 10px!important}
.v1680-panel-head{margin-bottom:7px!important}
.v1680-panel h2,.v1680-panel-head h2{font-size:15px!important;letter-spacing:-.25px!important}

.v1680-hero{min-height:190px!important;border-radius:10px!important}
.v1680-hero-copy{width:59%!important;padding:20px 24px 18px!important}
.v1680-hero h1{font-size:31px!important;line-height:1.01!important;letter-spacing:-1px!important;margin-bottom:6px!important}
.v1680-hero p{font-size:11px!important;margin-bottom:11px!important}
.v1680-hero-progress{width:min(350px,100%)!important;padding:8px 10px!important;gap:8px!important}
.v1680-hero-visual{width:55%!important}
.v1680-hero-quote{right:18px!important;top:20px!important;font-size:9.5px!important}
.v1680-btn{min-height:34px!important;margin-top:9px!important;padding:0 13px!important;font-size:9px!important;border-radius:8px!important}

.v1680-modules{gap:8px!important;grid-template-columns:repeat(5,minmax(0,1fr)) 30px!important}
.v1680-module{min-height:116px!important;padding:11px 10px!important;border-radius:9px!important}
.v1680-module-icon{font-size:24px!important;margin-bottom:10px!important}
.v1680-module-copy b{font-size:11px!important}.v1680-module-copy small{font-size:7.8px!important}
.v1680-module-progress{left:10px!important;right:10px!important;bottom:9px!important;height:5px!important}
.v1680-module em{right:8px!important;top:8px!important;font-size:7px!important}
.v1680-more{border-radius:9px!important;font-size:22px!important}

.v1680-resume-grid{gap:8px!important}
.v1680-resume{min-height:78px!important;padding:6px!important;grid-template-columns:76px minmax(0,1fr) auto!important;gap:8px!important;border-radius:9px!important}
.v1680-resume:not(:first-child){grid-template-columns:64px minmax(0,1fr)!important}
.v1680-thumb{height:60px!important;padding:5px!important;border-radius:6px!important}
.v1680-thumb span{font-size:20px!important}
.v1680-resume-copy b{font-size:9px!important}.v1680-resume-copy small{font-size:7.4px!important;margin:2px 0 5px!important}.v1680-resume-copy em{font-size:7px!important}
.v1680-small-btn{padding:6px 9px!important;font-size:7.2px!important;border-radius:6px!important}

.v1680-two-cols{gap:8px!important}.v1680-why h2,.v1680-goal h2{font-size:13px!important}.v1680-why-grid{gap:6px!important}.v1680-why-grid span{min-height:58px!important;padding:5px!important}.v1680-why-grid i{font-size:19px!important}.v1680-why-grid b{font-size:7px!important}.v1680-goal-row{grid-template-columns:48px 1fr!important;gap:9px!important}.v1680-goal-icon{width:44px!important;height:44px!important;font-size:22px!important}.v1680-goal-row b{font-size:8px!important}

.v1680-popular-grid{gap:6px!important}.v1680-opening-card .v1680-thumb{height:46px!important}.v1680-opening-copy{padding:5px!important}.v1680-opening-copy b{font-size:8px!important}.v1680-opening-copy small,.v1680-opening-copy span{font-size:6.8px!important}.v1680-opening-copy strong{font-size:6.8px!important;padding:5px 3px!important}

/* Right rail: narrower, denser, clearer visual hierarchy */
.v1680-rail-card{padding:11px!important}
.v1680-rail-card h3{font-size:14px!important;letter-spacing:-.2px!important}
.v1680-rail-head a{font-size:8px!important}
.v1680-journey-main{gap:9px!important;margin-top:7px!important}
.v1680-ring{width:76px!important;height:76px!important}
.v1680-ring::after{width:57px!important;height:57px!important}.v1680-ring span{font-size:14px!important}
.v1680-journey-main b{font-size:10px!important}.v1680-journey-main small{font-size:7px!important;margin-top:4px!important}
.v1680-stats{gap:5px!important;margin-top:8px!important}.v1680-stats span{padding:7px 3px!important;font-size:6.6px!important}.v1680-stats b{font-size:13px!important}
.v1680-btn.wide{min-height:36px!important;margin-top:8px!important;font-size:8.4px!important}
.v1680-tools{grid-template-columns:repeat(2,1fr)!important;gap:6px!important;margin-top:8px!important}
.v1680-tools a{min-height:68px!important;padding:5px!important;border-radius:8px!important}.v1680-tools i{font-size:20px!important}.v1680-tools span{font-size:7.2px!important}
.v1680-rec{grid-template-columns:44px 1fr auto!important;gap:6px!important;padding:6px 0!important}.v1680-thumb.mini{width:44px!important;height:44px!important;flex-basis:44px!important}.v1680-thumb.mini span{font-size:12px!important}.v1680-rec span b{font-size:8px!important}.v1680-rec span small{font-size:6.5px!important}.v1680-rec span em{font-size:6.2px!important}.v1680-rec>strong{padding:5px 6px!important;font-size:6.6px!important}
.v1680-quote-card{min-height:116px!important}.v1680-quote-card blockquote{font-size:8.5px!important;margin:8px 0 6px!important}.v1680-quote-card>small{font-size:7px!important}

@media(max-width:1380px){
  body.bbj-v1677{--v1681-nav:188px;--v1681-rail:264px}
  body.bbj-v1677 .global-topbar{grid-template-columns:215px minmax(260px,1fr) auto auto!important}
  .v1680-module:nth-child(5){display:block!important}
}
@media(max-width:1120px){
  body.bbj-v1677 .top-modes{display:none!important}
  .v1680-dashboard{grid-template-columns:1fr!important}
  .v1680-rail{position:static!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .v1680-quote-card{display:none!important}
}


/* =========================================================
   V16.8.2 — UNIFIED CHESS THEME + USER-LINKED PROGRESS
   ========================================================= */
:root{--bbj-ink:#081e33;--bbj-navy:#0b3555;--bbj-blue:#1687ef;--bbj-gap:#eaf4fb;--bbj-line:#d7e4ed;--bbj-white:#fff}
/* all CTAs: only navy or white */
.oa-card-action,.oa-variant-action,.btn-black,.resume-course button,.tile-cta{background:var(--bbj-navy)!important;color:#fff!important;border:1px solid var(--bbj-navy)!important;box-shadow:none!important}
.oa-card-action:hover,.oa-variant-action:hover,.btn-black:hover,.tile-cta:hover{background:#061a2d!important}
.oa-variant-action.preview{background:#fff!important;color:var(--bbj-navy)!important}

/* dashboard becomes square/visual tiles with evolution at bottom */
.chess-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.chess-dashboard-tile{display:block;text-decoration:none;color:var(--bbj-ink);background:#fff;border:1px solid var(--bbj-line);border-radius:16px;overflow:hidden;box-shadow:0 8px 18px rgba(18,48,74,.05);transition:.18s}
.chess-dashboard-tile:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(18,48,74,.10)}
.tile-visual{height:98px;background:linear-gradient(145deg,#314b5f,#0a1e2f);position:relative;display:grid;place-items:center;overflow:hidden}
.tile-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 55% 30%,rgba(255,220,160,.42),transparent 28%)}
.tile-visual strong{position:relative;z-index:1;font-size:34px;letter-spacing:6px;color:#f7efe2;text-shadow:0 8px 16px rgba(0,0,0,.35)}
.tile-tag,.variant-style{position:absolute;left:10px;top:9px;z-index:2;border-radius:999px;background:#263f51;color:#fff;font-size:8px;font-weight:900;padding:5px 8px}
.tile-copy{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:12px 12px 7px;align-items:center}.tile-icon{width:36px;height:36px;border-radius:10px;background:#eaf4ff;color:#0f6fcb;display:grid;place-items:center;font-size:19px}.tile-copy h3{margin:0;font-size:13px}.tile-copy p{margin:3px 0 0;font-size:9px;color:#6c8092}.tile-progress{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:0 12px 9px}.tile-progress b{font-size:9px;color:#315978}.tile-cta{display:block;margin:0 12px 12px;padding:8px;border-radius:8px;text-align:center;font-size:9px;font-weight:900}

/* opening family cards + family variants keep exact same visual language */
.oa-opening-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.oa-opening-card{border-radius:15px}.oa-photo{height:112px}.oa-card-body{padding:12px}.oa-card-action{border-radius:8px}
.oa-variant-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.oa-variant-card.oa-variant-tile{display:block;padding:0;overflow:hidden;border-radius:15px;background:#fff;border:1px solid var(--bbj-line)}
.variant-visual{height:104px;position:relative;display:grid;place-items:end center;background:linear-gradient(145deg,#c2b59d,#132638);overflow:hidden}.variant-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 30%,rgba(255,223,164,.52),transparent 27%)}.variant-pieces{position:relative;z-index:1;font-size:39px;letter-spacing:6px;color:#08264d;padding-bottom:9px;text-shadow:0 6px 12px rgba(0,0,0,.18)}.variant-visual .oa-pin-btn{z-index:3;right:8px;top:8px}.variant-body{padding:12px}.variant-body h3{margin:3px 0 0;font-size:13px}.variant-body>p{margin:4px 0 7px;color:#637b90;font-size:9px}.variant-body .oa-card-meta{margin-top:6px}.variant-body .oa-variant-action{display:block;margin-top:10px;text-align:center;text-decoration:none;padding:8px;border-radius:8px}.oa-variant-card.preview-open .variant-body:after{content:"Parcours en préparation pédagogique : objectifs, coups-clés, exercices et quiz seront ajoutés dans le même moteur.";display:block;margin-top:9px;padding:9px;border-radius:9px;background:#f3f8fc;color:#526f87;font-size:8.5px;line-height:1.45}
.oa-section-block{background:#fff}.oa-section-block.pinned{background:#fff}.oa-family-back{margin-bottom:1px}.oa-hero{background:linear-gradient(90deg,#0a3555,#123f61)!important}.oa-hero-pieces{opacity:.9}

/* right rail refined */
.oa-rail-card,.rail-card{border-radius:16px!important;border:1px solid var(--bbj-line)!important;box-shadow:0 8px 20px rgba(17,50,79,.045)!important}.oa-tools{grid-template-columns:repeat(2,1fr)!important}.oa-tools a{padding:9px 4px;border-radius:11px;background:#f7fafc}.oa-tools i{width:40px;height:40px}.recommend,.oa-rec{border-radius:11px!important}

/* functional profile / auth panel */
.profile-trigger{border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:2px 4px;cursor:pointer;color:var(--bbj-ink)}.profile-trigger .avatar{display:grid;place-items:center}.profile-panel{position:fixed;right:16px;top:72px;z-index:120;width:330px;background:#fff;border:1px solid var(--bbj-line);border-radius:18px;box-shadow:0 24px 60px rgba(5,28,48,.22);padding:16px}.profile-panel[hidden]{display:none}.profile-panel-head{display:flex;justify-content:space-between;align-items:flex-start}.profile-panel-head small{font-size:8px;letter-spacing:.14em;color:#5681a3;font-weight:900}.profile-panel-head h3{margin:3px 0 0;font-size:20px}.profile-panel-head button{width:30px;height:30px;border:0;border-radius:9px;background:#eef5fa;cursor:pointer}.profile-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}.profile-summary span{background:#f3f8fb;border-radius:10px;padding:9px;text-align:center;font-size:8px;color:#60798e}.profile-summary b{display:block;font-size:14px;color:#0e4c7c}.profile-panel label{display:grid;gap:5px;font-size:9px;font-weight:800}.profile-panel input{width:100%;box-sizing:border-box;border:1px solid #d8e5ee;border-radius:9px;padding:9px;font:inherit}.profile-save,.profile-auth button{width:100%;border:1px solid var(--bbj-navy);background:var(--bbj-navy);color:#fff;border-radius:9px;padding:9px;font-weight:900;margin-top:8px;cursor:pointer}.profile-auth{margin-top:15px;padding-top:13px;border-top:1px solid #e4edf3}.profile-auth small{font-size:8px;font-weight:900;color:#53758f}.profile-auth input{margin-top:7px}.profile-auth p{font-size:8px;color:#607b91;margin:7px 0 0}.profile-auth #profileLogout{background:#fff;color:var(--bbj-navy)}

@media(max-width:1200px){.chess-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.oa-variant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.chess-tile-grid,.oa-variant-grid{grid-template-columns:1fr}.profile-panel{left:10px;right:10px;width:auto;top:68px}}

/* V16.8.3 learning + chess pro */
.school-shell,.prep-page{display:grid;gap:14px}.school-hero,.school-fr-hero,.prep-hero{background:linear-gradient(135deg,#0c3555,#12537b);color:white;border-radius:16px;padding:24px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.school-hero h1,.school-fr-hero h1,.prep-hero h1{margin:5px 0;font-size:28px}.school-hero p,.school-fr-hero p,.prep-hero p{margin:0;color:#d9ebf8}.school-grade{display:flex;gap:8px}.grade-btn,.school-action{border:0;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}.grade-btn.active,.school-action.primary{background:#148df2;color:white}.school-subject-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.school-subject-card{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;border:1px solid #dce8f1;border-radius:14px;padding:14px;color:#12324d;text-decoration:none;background:#fff}.school-subject-card.featured{box-shadow:0 8px 24px rgba(12,91,150,.09);border-color:#97cdf5}.school-subject-icon{width:48px;height:48px;border-radius:12px;background:#eef6fd;display:grid;place-items:center;font-weight:900}.school-subject-card b,.school-subject-card small,.school-subject-card em{display:block}.school-subject-card small{color:#6e879d;margin-top:4px}.school-subject-card em{font-style:normal;color:#0c82e7;font-size:11px;margin-top:6px}.school-fr-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px}.school-fr-layout main,.school-fr-layout aside{display:grid;gap:14px;align-content:start}.fr-score{text-align:right}.fr-score>*{display:block}.fr-score strong{font-size:24px}.fr-theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fr-theme-card{border:1px solid #dce8f1;background:white;border-radius:13px;padding:13px;text-align:left;cursor:pointer;position:relative}.fr-theme-card.active{border-color:#168cec;box-shadow:0 0 0 2px rgba(22,140,236,.12)}.fr-theme-card>span{font-size:22px}.fr-theme-card b,.fr-theme-card small{display:block}.fr-theme-card b{margin:7px 0 4px}.fr-theme-card small{color:#7890a4;min-height:36px}.fr-theme-card em{position:absolute;right:12px;bottom:11px;font-style:normal;font-size:10px}.teacher-zone{min-height:250px}.teacher-card{display:grid;grid-template-columns:64px 1fr;gap:14px;background:#eef7ff;border-radius:14px;padding:15px}.teacher-avatar{width:56px;height:56px;border-radius:50%;background:#0d79d5;color:white;display:grid;place-items:center;font-size:11px;font-weight:900}.teacher-card h3{margin:2px 0}.teacher-card p{margin:7px 0 12px;line-height:1.55}.school-practice{margin-top:12px}.school-answer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.school-answer-grid button,.exam-body button{padding:10px;border-radius:9px;border:1px solid #d8e5ef;background:white;cursor:pointer}.school-feedback{margin-top:10px;padding:10px;border-radius:9px;background:#f2f6f9}.school-feedback.good{background:#e7f8ef;color:#167049}.school-feedback.warn{background:#fff4df;color:#8d5b00}.teacher-plan{padding-left:20px;line-height:2}.exam-modal{position:fixed;inset:0;background:rgba(5,25,42,.55);z-index:800;display:grid;place-items:center}.exam-dialog{width:min(520px,92vw);background:white;border-radius:16px;padding:22px;position:relative}.exam-x{position:absolute;right:12px;top:10px;border:0;background:none;font-size:24px}.exam-body{display:grid;gap:9px}.chess-dashboard-compact .compact-hero{min-height:170px}.chess-pro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.chess-pro-card{border:1px solid #dae7f0;border-radius:13px;overflow:hidden;background:white;text-decoration:none;color:#12314c}.chess-pro-art{height:82px;background:linear-gradient(145deg,#183e59,#0b273b);display:flex;justify-content:space-between;align-items:center;padding:12px;color:#fff}.chess-pro-art span{background:rgba(255,255,255,.12);border-radius:99px;padding:4px 7px;font-size:9px}.chess-pro-art b{font-size:36px}.chess-pro-art.classic{background:linear-gradient(145deg,#68472c,#1b2c3c)}.chess-pro-art.prep{background:linear-gradient(145deg,#4057a6,#14243e)}.chess-pro-copy{padding:11px;position:relative}.chess-pro-copy h3{margin:0;font-size:12px}.chess-pro-copy p{font-size:9px;color:#6f879b;min-height:28px}.chess-pro-copy em{font-style:normal;font-size:9px}.highlight-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.highlight-choices a{padding:13px;border-radius:11px;background:#f3f8fc;color:#123a5d;text-decoration:none;font-weight:800}.exercise-hub{display:grid;grid-template-columns:245px minmax(0,1fr);gap:14px}.exercise-categories{background:#0b304c;border-radius:15px;padding:14px;color:white;display:grid;gap:7px;align-content:start}.exercise-categories h2{margin:2px 0 8px}.exercise-categories button{display:grid;grid-template-columns:32px 1fr;gap:8px;border:0;border-radius:10px;padding:10px;text-align:left;background:rgba(255,255,255,.07);color:white;cursor:pointer}.exercise-categories button.active{background:#168dee}.exercise-categories button span{font-size:20px;grid-row:1/3}.exercise-categories button b,.exercise-categories button small{display:block}.exercise-categories button small{opacity:.7}.exercise-main{display:grid;grid-template-columns:minmax(340px,1fr) 280px;gap:14px}.exercise-list{display:grid;gap:7px;align-content:start}.exercise-line{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:10px;border:1px solid #dce8f1;border-radius:10px;background:white;text-align:left}.exercise-line.active{border-color:#168dee;background:#eef7ff}.exercise-line span{width:28px;height:28px;border-radius:8px;background:#e7f2fb;display:grid;place-items:center}.exercise-line small{color:#7790a6}.exercise-score{font-size:10px;color:#6f879b}.classics-layout main{display:grid;gap:14px}.classic-filters{display:flex;gap:10px}.classic-filters label{display:grid;gap:4px;font-size:10px}.classic-filters select{padding:8px;border:1px solid #d8e5ef;border-radius:9px}.classic-viewer{display:grid;grid-template-columns:minmax(420px,1fr) 340px;gap:18px}.classic-comment{background:#eef7ff;border-radius:11px;padding:13px;min-height:90px}.classic-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.classic-nav button,.classic-game-list button{border:0;border-radius:9px;padding:9px;background:#0d7fdc;color:white}.classic-game-list{display:grid;gap:7px;margin-top:10px}.prep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.prep-card{border:1px solid #dce8f1;border-radius:14px;padding:16px;background:white;text-align:left;cursor:pointer}.prep-card>span{font-size:26px}.prep-card h3{margin:8px 0 4px}.prep-card p{color:#70889c;min-height:52px}.prep-card b{color:#0d82e8}.prep-work{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pgn-drop{display:grid;place-items:center;min-height:130px;border:2px dashed #a6cce8;border-radius:13px;background:#f5fbff;cursor:pointer}.pgn-drop input{margin-top:9px}.opponent-report{background:#eef7ff;border-radius:13px;padding:14px}.prep-empty{text-align:center;padding:20px}.prep-empty>span{font-size:36px}@media(max-width:980px){.school-fr-layout,.exercise-hub,.classic-viewer,.prep-work{grid-template-columns:1fr}.fr-theme-grid,.chess-pro-grid,.prep-grid{grid-template-columns:repeat(2,1fr)}.exercise-main{grid-template-columns:1fr}.school-subject-grid{grid-template-columns:1fr}}

/* V16.8.4 — memory lab, fundamentals mastery and richer exercises */
.memory-page{display:grid;gap:10px}.memory-toolbar-card{background:#fff;border:1px solid #d7e6f0;border-radius:14px;padding:14px 16px;display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:16px;align-items:end;box-shadow:0 5px 16px rgba(12,52,82,.045)}.memory-toolbar-card h2{margin:3px 0 5px;font-size:20px;color:#0c2f50}.memory-toolbar-card p{margin:0;color:#658096;font-size:11px;max-width:720px}.memory-config{display:flex;gap:7px;align-items:end;flex-wrap:wrap;justify-content:flex-end}.memory-config label{display:grid;gap:3px;font-size:8px;font-weight:800;color:#5f7890;text-transform:uppercase;letter-spacing:.08em}.memory-config select{height:34px;border:1px solid #d3e3ee;border-radius:8px;padding:0 25px 0 8px;background:#f9fcfe;color:#103552;font-weight:700;font-size:10px}.memory-config .btn{height:34px;padding:0 12px;font-size:9px}.memory-stage{display:grid;grid-template-columns:150px minmax(440px,720px) 150px;gap:10px;justify-content:center;align-items:start;background:#0b304c;border-radius:16px;padding:12px}.memory-center{background:#f5f9fc;border-radius:13px;padding:10px;display:grid;gap:8px}.memory-stage-head{display:flex;justify-content:space-between;align-items:center;padding:0 2px}.memory-stage-head>div{display:grid;gap:2px}.memory-stage-head span{font-size:8px;font-weight:900;letter-spacing:.13em;color:#0b83e8}.memory-stage-head b{font-size:11px;color:#153a58}.memory-timer{min-width:58px;height:34px;border-radius:9px;background:#0a3859;color:#fff;display:grid;place-items:center;font-weight:900}.memory-center .chessboard{width:min(100%,620px)!important;margin:auto}.memory-side{background:#123e5e;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;color:#fff;min-height:300px}.memory-side>span{font-size:8px;font-weight:900;letter-spacing:.12em;display:block;margin-bottom:8px}.memory-side>small{display:block;margin-top:10px;color:#a9c8dd;font-size:7.5px;line-height:1.4}.memory-tray{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.memory-piece{border:1px solid rgba(255,255,255,.12);background:#092e49;color:#fff;border-radius:9px;min-height:54px;display:grid;grid-template-columns:1fr auto;align-items:center;padding:5px 7px;cursor:pointer}.memory-side.white .memory-piece{background:#f9fcff;color:#0b2e4a;border-color:#d7e6f0}.memory-piece span{font-size:28px;line-height:1}.memory-piece b{font-size:9px;opacity:.75}.memory-piece.active{outline:2px solid #16a1ff;outline-offset:1px}.memory-side.black .memory-piece span{color:#05080b;text-shadow:0 1px 0 #d7e5ef}.memory-side.white .memory-piece span{color:#fff;text-shadow:-1px -1px 0 #22384a,1px -1px 0 #22384a,-1px 1px 0 #22384a,1px 1px 0 #22384a}.memory-actions{display:flex;gap:7px;justify-content:center;flex-wrap:wrap}.memory-actions .btn{min-height:34px;font-size:9px}.memory-message{padding:9px 11px;border-radius:9px;background:#eaf3f9;color:#315773;font-size:9px}.memory-message.good{background:#e2f7eb;color:#11673d}.memory-message.warn{background:#fff3d8;color:#845700}.memory-message.bad{background:#ffe8e8;color:#8e2c2c}.memory-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.memory-stats div{background:#fff;border:1px solid #dce9f2;border-radius:11px;padding:10px;text-align:center}.memory-stats b{display:block;font-size:16px;color:#0b7fdc}.memory-stats span{font-size:8px;color:#6b8498}

.basics-master-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.basics-master-card{display:grid;grid-template-columns:34px 42px minmax(0,1fr);gap:8px;align-items:center;padding:9px;border:1px solid #dce8f1;background:#fff;border-radius:10px;text-align:left;cursor:pointer;color:#12324c;position:relative}.basics-master-card.active{border-color:#138ae9;background:#f3f9fe;box-shadow:0 0 0 2px rgba(19,138,233,.08)}.basics-master-card .lesson-number{width:32px;height:32px;border-radius:8px;background:#eaf4fc;color:#0d7cda;display:grid;place-items:center;font-weight:900;font-size:9px}.basics-card-symbol{font-size:26px;text-align:center}.basics-master-card>span:last-child{min-width:0}.basics-master-card small,.basics-master-card b,.basics-master-card em{display:block}.basics-master-card small{font-size:7px;color:#6d879b}.basics-master-card b{font-size:10px;margin:2px 0}.basics-master-card em{font-size:7.6px;font-style:normal;color:#718a9e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.basics-master-card i{display:block;height:5px;background:#e5eef5;border-radius:99px;margin-top:5px;overflow:hidden}.basics-master-card i u{display:block;height:100%;background:linear-gradient(90deg,#0e87e8,#26c6cf)}.basics-master-card strong{font-size:7px;color:#52748d;position:absolute;right:8px;bottom:7px}.basics-detail-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.basics-detail-head>div:first-child{display:flex;gap:12px}.basics-symbol{width:54px;height:54px;border-radius:12px;background:#0d3655;color:#fff;display:grid;place-items:center;font-size:28px}.basics-detail-head h2{margin:2px 0 3px}.basics-detail-head p{margin:0;color:#6a8397;font-size:9px}.basics-mode{display:flex;border:1px solid #d8e6ef;border-radius:9px;padding:3px;background:#f4f8fb}.basics-mode button{border:0;background:transparent;padding:7px 10px;border-radius:6px;font-weight:800;font-size:8px;color:#56758e}.basics-mode button.active{background:#0e83e5;color:white}.basics-learn{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.basics-learn>div{padding:12px;border:1px solid #e0eaf1;border-radius:10px;background:#fbfdff}.basics-learn span{width:24px;height:24px;border-radius:7px;background:#e9f4fc;color:#0d82e8;display:grid;place-items:center;font-weight:900}.basics-learn b{display:block;margin:7px 0 4px;font-size:10px}.basics-learn p{font-size:8.5px;line-height:1.5;color:#607d93;margin:0}.basics-practice{display:grid;grid-template-columns:.8fr 1.2fr;gap:10px;margin-top:12px}.practice-board-placeholder{min-height:150px;border-radius:12px;background:linear-gradient(145deg,#0b304d,#164e73);color:#fff;display:grid;place-items:center;text-align:center;padding:14px}.practice-board-placeholder span{font-size:45px}.practice-board-placeholder b{font-size:13px}.practice-board-placeholder p{font-size:8px;color:#c8deed}.practice-steps{padding:12px;border:1px solid #dde9f1;border-radius:12px}.practice-steps ol{font-size:9px;color:#56748b;line-height:1.8;padding-left:20px}.basics-progress-row{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-top:11px;padding-top:9px;border-top:1px solid #e7eef4;font-size:8px}.basics-rail-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.basics-rail-stats span{background:#f3f8fb;border-radius:9px;padding:9px;text-align:center;font-size:7.5px;color:#658095}.basics-rail-stats b{display:block;font-size:15px;color:#0b76ca}

.exercise-hub-v4 .exercise-categories{position:sticky;top:78px;max-height:calc(100vh - 92px);overflow:auto}.exercise-hub-v4 .exercise-categories button{grid-template-columns:30px 1fr;min-height:54px}.exercise-hub-v4 .exercise-categories button b{font-size:10px}.exercise-hub-v4 .exercise-categories button small{font-size:8px}.exercise-stage .section-title{align-items:flex-start}.side-choice{display:flex;gap:5px;align-items:center;background:#f2f7fb;padding:4px;border-radius:9px}.side-choice span{font-size:8px;color:#67839a;padding:0 4px}.side-choice button{border:0;background:transparent;border-radius:6px;padding:6px 8px;font-weight:800;font-size:8px;color:#57758c}.side-choice button.active{background:#0f84e6;color:#fff}.mate-step{display:inline-block;margin-top:4px;background:#fff2ce;color:#7b5700;padding:4px 8px;border-radius:999px;font-size:8px}.exercise-note{margin-top:9px;padding:10px;border-radius:9px;background:#f3f8fb;border:1px solid #e0eaf1}.exercise-note b{font-size:9px}.exercise-note p{font-size:8px;color:#657f93;line-height:1.45;margin:4px 0 0}

@media(max-width:1180px){.memory-stage{grid-template-columns:120px minmax(400px,1fr) 120px}.basics-master-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.memory-toolbar-card{grid-template-columns:1fr}.memory-config{justify-content:flex-start}.memory-stage{grid-template-columns:1fr}.memory-side{min-height:auto}.memory-tray{grid-template-columns:repeat(6,1fr)}.memory-side.black{order:1}.memory-center{order:2}.memory-side.white{order:3}.basics-master-grid,.basics-learn,.basics-practice{grid-template-columns:1fr}}

/* ===== V16.8.5 · Math 5e Tunisia Learning Tree ===== */
.math5-shell{display:grid;gap:12px}.math5-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px;align-items:stretch;padding:20px 22px;border-radius:18px;background:linear-gradient(120deg,#0b3557,#0d5e92);color:#fff;box-shadow:0 14px 34px rgba(18,65,98,.12)}.math5-hero h1{margin:5px 0 7px;font-size:clamp(24px,2.7vw,38px);line-height:1.05}.math5-hero p{margin:0;max-width:780px;color:#d6ebfb;font-size:12px;line-height:1.55}.math5-stats{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px;margin-top:15px}.math5-stats span{padding:9px 11px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(4,33,55,.28)}.math5-stats b,.math5-stats small{display:block}.math5-stats b{font-size:18px}.math5-stats small{font-size:8px;color:#c5e3f6}.math-exam-cta{border:1px solid rgba(255,255,255,.25);border-radius:15px;background:linear-gradient(145deg,#fff,#e7f4ff);color:#0c4269;display:grid;place-items:center;align-content:center;gap:3px;cursor:pointer;box-shadow:0 10px 24px rgba(4,34,55,.18)}.math-exam-cta span{font-size:9px;font-weight:900;letter-spacing:.11em}.math-exam-cta b{font-size:28px}.math-exam-cta small{font-size:9px;color:#67869b}.math5-map{display:grid;grid-template-columns:270px minmax(0,1fr) 235px;gap:12px;align-items:start}.math-tree-panel,.math-workspace,.math-right-rail>section{border:1px solid #d9e8f3;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(30,74,105,.05)}.math-tree-panel{overflow:hidden;position:sticky;top:74px;max-height:calc(100dvh - 88px);display:flex;flex-direction:column}.math-tree-title{padding:15px 15px 10px;background:#f8fbfe;border-bottom:1px solid #e4eef5}.math-tree-title small,.math-topic-hero .eyebrow,.math-right-rail small{font-size:8px;font-weight:900;letter-spacing:.13em;color:#4d86ad}.math-tree-title h2{margin:4px 0 2px;font-size:17px}.math-tree-title p{margin:0;font-size:9px;color:#7b91a2}.math-tree-panel>#mathTree{overflow:auto;padding:8px;scrollbar-width:thin}.math-tree-group{border-radius:11px;overflow:hidden;margin-bottom:6px}.math-tree-head{width:100%;border:0;background:#f5f9fc;border-radius:10px;padding:8px;display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;text-align:left;color:#153b58;cursor:pointer}.math-tree-group.open .math-tree-head{background:color-mix(in srgb,var(--accent) 10%,#fff);box-shadow:inset 3px 0 var(--accent)}.math-tree-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#e9f2f8;color:var(--accent);font-weight:1000}.math-tree-head b,.math-tree-head small{display:block}.math-tree-head b{font-size:11px}.math-tree-head small{font-size:8px;color:#7890a2;margin-top:2px}.math-tree-head em{font-style:normal;font-size:9px;font-weight:900}.math-tree-items{display:none;padding:5px 2px 2px 14px}.math-tree-group.open .math-tree-items{display:grid;gap:3px}.math-tree-item{border:0;background:transparent;padding:7px 7px;border-radius:8px;display:grid;grid-template-columns:1fr 46px 28px;gap:6px;align-items:center;text-align:left;color:#35566d;cursor:pointer;font-size:9px}.math-tree-item:hover,.math-tree-item.active{background:#edf6fd;color:#056fbe;font-weight:800}.math-tree-item i{height:4px;background:#e4edf3;border-radius:99px;overflow:hidden}.math-tree-item i b{display:block;height:100%;background:linear-gradient(90deg,#168dee,#25c7d9)}.math-tree-item small{font-size:8px;text-align:right}.math-workspace{min-height:560px;overflow:hidden}.math-topic-hero{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:16px 18px;background:linear-gradient(135deg,#f7fbff,#eef7fd);border-bottom:1px solid #dceaf4}.math-topic-hero h2{margin:4px 0;font-size:22px}.math-topic-hero p{margin:0;color:#68849a;font-size:10px}.math-topic-metrics{display:grid;grid-template-columns:repeat(3,92px);gap:6px}.math-topic-metrics span{padding:8px;border-radius:10px;background:#fff;border:1px solid #dceaf3;text-align:center}.math-topic-metrics b,.math-topic-metrics small{display:block}.math-topic-metrics b{font-size:14px;color:#0e5e95}.math-topic-metrics small{font-size:7px;color:#7b93a5}.math-mode-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dfeaf2;border-bottom:1px solid #d9e7f0}.math-mode-tabs button{border:0;background:#f8fbfd;padding:10px 7px;color:#4d6a80;font-size:9px;font-weight:900;cursor:pointer}.math-mode-tabs button.active{background:#147fd3;color:#fff}.math-stage{padding:18px;display:grid;gap:12px}.math-teacher-box{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:15px;border-radius:14px;background:linear-gradient(135deg,#eaf6ff,#f7fbff);border:1px solid #cfe6f6}.math-prof{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#0f7fd7;color:#fff;font-size:10px;font-weight:1000}.math-teacher-box small,.math-example>span,.math-question>small{font-size:8px;font-weight:900;color:#4b89b6;letter-spacing:.12em}.math-teacher-box h3,.math-example h3,.math-question h3{margin:3px 0 7px}.math-teacher-box p,.math-example p{margin:0 0 12px;font-size:13px;line-height:1.7;color:#27475d}.math-tip{display:grid;grid-template-columns:100px 1fr;gap:10px;padding:12px;border-radius:12px;background:#fff9e9;border:1px solid #f4dfaa;color:#725b22;font-size:10px}.math-example{padding:20px;border-radius:15px;background:linear-gradient(145deg,#fff,#f7fbff);border:1px solid #d9e8f3}.math-example p{font-size:16px;font-weight:760}.math-question{padding:18px;border-radius:14px;background:#f8fbfe;border:1px solid #dceaf4}.math-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.math-answers button{padding:12px;border-radius:10px;border:1px solid #cfe0ec;background:#fff;color:#173b55;font-weight:800;cursor:pointer}.math-answers button:hover{border-color:#1789e5;background:#edf7ff}.math-feedback{margin-top:10px;padding:11px;border-radius:10px;background:#eef4f8;font-size:10px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.math-feedback.good{background:#e7f8ef;color:#14724a}.math-feedback.warn{background:#fff3dd;color:#8a5c05}.math-feedback button{border:0;background:#fff;border-radius:8px;padding:7px;cursor:pointer}.math-test-clock{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:11px;background:#0d3555;color:#fff}.math-test-clock span{font-weight:1000;font-size:18px;color:#6ee6ff}.math-right-rail{display:grid;gap:10px;position:sticky;top:74px}.math-right-rail>section{padding:13px}.math-right-rail h3{margin:3px 0 7px;font-size:14px}.math-right-rail p,.math-right-rail li{font-size:9px;line-height:1.6;color:#6e8495}.math-right-rail ol{padding-left:18px}.math-ring{--p:0;width:92px;height:92px;margin:10px auto 0;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#18b3ac calc(var(--p)*1%),#e4edf2 0);position:relative}.math-ring:after{content:'';position:absolute;inset:10px;border-radius:50%;background:#fff}.math-ring b{position:relative;z-index:1;color:#0c5b8f}.math-exam-dialog{width:min(760px,94vw)}.math-exam-top{display:flex;justify-content:space-between;align-items:start}.math-exam-top h2{margin:3px 0}.math-exam-top>b{padding:9px 11px;border-radius:9px;background:#0d3555;color:#6ee6ff}.math-exam-progress{height:7px;border-radius:99px;background:#e7eef3;overflow:hidden}.math-exam-progress i{display:block;height:100%;background:#1dbfc7}.math-correction-list{display:grid;gap:6px;max-height:320px;overflow:auto}.math-correction-list article{display:grid;grid-template-columns:160px 1fr 36px;gap:8px;align-items:center;padding:8px;border-radius:9px;background:#f4f8fb}.math-correction-list span{font-size:9px;color:#667f92}.math-correction-list button{border:0;border-radius:8px;background:#fff;padding:7px;cursor:pointer}
@media(max-width:1180px){.math5-map{grid-template-columns:235px minmax(0,1fr)}.math-right-rail{grid-column:1/-1;grid-template-columns:repeat(3,1fr);position:static}.math-topic-metrics{grid-template-columns:repeat(3,80px)}}
@media(max-width:850px){.math5-hero{grid-template-columns:1fr}.math-exam-cta{min-height:100px}.math5-map{grid-template-columns:1fr}.math-tree-panel{position:static;max-height:none}.math-tree-panel>#mathTree{max-height:360px}.math-right-rail{grid-template-columns:1fr}.math5-stats{grid-template-columns:repeat(2,1fr)}.math-topic-hero{grid-template-columns:1fr}.math-topic-metrics{grid-template-columns:repeat(3,1fr)}.math-mode-tabs{grid-template-columns:repeat(2,1fr)}.math-answers{grid-template-columns:1fr}}

/* V16.8.6 — Math 5e bilingual learning polish */
.math-lang-switch{display:inline-flex;gap:5px;padding:4px;border:1px solid rgba(255,255,255,.22);background:rgba(4,36,60,.28);border-radius:11px;margin-bottom:8px}.math-lang-switch button{border:0;border-radius:8px;padding:6px 11px;background:transparent;color:#d7efff;font-weight:900;cursor:pointer}.math-lang-switch button.active{background:#fff;color:#0b5f98;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.math-speech-track{display:flex;gap:5px;overflow-x:auto;scrollbar-width:thin;max-width:100%;padding:8px 2px 2px;margin-top:8px;min-height:36px}.math-speech-track:empty{display:none}.math-speech-track span{flex:0 0 auto;padding:5px 8px;border:1px solid #d6e5ef;border-radius:8px;background:#fff;color:#456477;font-size:11px;transition:.14s ease}.math-speech-track span.active{background:#147fd3;color:#fff;border-color:#147fd3;transform:translateY(-2px) scale(1.05);box-shadow:0 6px 14px rgba(20,127,211,.22)}
.math-flow-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e3edf4;padding-top:11px}.math-flow-nav span{font-size:10px;font-weight:850;color:#16895e}.math-flow-nav button{border:0;border-radius:10px;padding:9px 14px;background:#0e78c7;color:#fff;font-weight:900;cursor:pointer;box-shadow:0 6px 14px rgba(14,120,199,.14)}
.math-ar{font-family:Tahoma,Arial,sans-serif}.math-ar .math-tree-head,.math-ar .math-tree-item{text-align:right}.math-ar .math-tree-items{padding:5px 14px 2px 2px}.math-ar .math-right-rail ol{padding-right:18px;padding-left:0}.math-ar .math-feedback{grid-template-columns:auto 1fr}.math-ar .math-feedback .math-speech-track{grid-column:1/-1}.math-ar .math-teacher-box{grid-template-columns:1fr 58px}.math-ar .math-prof{grid-column:2;grid-row:1}.math-ar .math-teacher-box>div:last-child{grid-column:1;grid-row:1}.math-ar .math-tip{grid-template-columns:1fr 100px}.math-ar .math-tip b{grid-column:2}.math-ar .math-flow-nav{direction:rtl}
@media(max-width:850px){.math-speech-track{padding-bottom:6px}.math-flow-nav{align-items:stretch;flex-direction:column}.math-flow-nav button{width:100%}.math-ar .math-teacher-box{grid-template-columns:1fr}.math-ar .math-prof,.math-ar .math-teacher-box>div:last-child{grid-column:auto;grid-row:auto}}

/* V16.8.7 — Mind Mapping compact desktop closure */
@media (min-width: 821px){
  body[data-page="mind"] .page-main{padding-top:8px!important;padding-bottom:8px!important}
  body[data-page="mind"] .memory-page{gap:7px;max-width:1380px;margin:0 auto}
  body[data-page="mind"] .memory-toolbar-card{padding:9px 12px;border-radius:12px;gap:10px;grid-template-columns:minmax(280px,1fr) auto}
  body[data-page="mind"] .memory-toolbar-card h2{font-size:17px;margin:1px 0 2px}
  body[data-page="mind"] .memory-toolbar-card p{font-size:9px;line-height:1.25;max-width:620px}
  body[data-page="mind"] .memory-config{gap:5px}
  body[data-page="mind"] .memory-config select{height:29px;font-size:9px;border-radius:7px}
  body[data-page="mind"] .memory-config .btn{height:29px;min-height:29px;font-size:8px}
  body[data-page="mind"] .memory-stage{grid-template-columns:128px minmax(420px,520px) 128px;gap:8px;padding:8px;border-radius:14px;align-items:stretch}
  body[data-page="mind"] .memory-center{padding:7px;gap:5px;border-radius:11px}
  body[data-page="mind"] .memory-center .chessboard{width:min(100%,455px)!important;max-width:455px!important}
  body[data-page="mind"] .memory-side{min-height:0;padding:8px;border-radius:10px;display:flex;flex-direction:column}
  body[data-page="mind"] .memory-side>span{font-size:7px;margin-bottom:6px}
  body[data-page="mind"] .memory-side>small{font-size:7px;margin-top:auto;padding-top:5px}
  body[data-page="mind"] .memory-tray{grid-template-columns:1fr;gap:4px}
  body[data-page="mind"] .memory-piece{min-height:43px;padding:3px 6px;border-radius:8px}
  body[data-page="mind"] .memory-piece span{font-size:24px}
  body[data-page="mind"] .memory-stage-head span{font-size:7px}
  body[data-page="mind"] .memory-stage-head b{font-size:9px}
  body[data-page="mind"] .memory-timer{min-width:92px;height:38px;border-radius:9px;display:flex;flex-direction:column;justify-content:center;align-items:center;line-height:1.05}
  body[data-page="mind"] .memory-timer small{font-size:6px;letter-spacing:.08em;opacity:.72}
  body[data-page="mind"] .memory-timer b{font-size:15px;color:#fff}
  body[data-page="mind"] .memory-actions{gap:5px}
  body[data-page="mind"] .memory-actions .btn{min-height:30px;padding:6px 10px;font-size:8px}
  body[data-page="mind"] .memory-message{padding:6px 8px;font-size:8px;min-height:28px}
  body[data-page="mind"] .memory-stats{gap:6px}
  body[data-page="mind"] .memory-stats div{padding:6px;border-radius:9px}
  body[data-page="mind"] .memory-stats b{font-size:13px}
  body[data-page="mind"] .memory-stats span{font-size:7px}
}
@media (min-width: 821px) and (max-height: 820px){
  body[data-page="mind"] .memory-toolbar-card p{display:none}
  body[data-page="mind"] .memory-center .chessboard{width:min(100%,400px)!important;max-width:400px!important}
  body[data-page="mind"] .memory-piece{min-height:37px}
  body[data-page="mind"] .memory-piece span{font-size:21px}
  body[data-page="mind"] .memory-stats{display:none}
}

/* V16.8.8 — Homepage exact target composition */
body[data-page="home"]{background:#eef7fc!important;color:#092c4f}
body[data-page="home"] .page-root{padding:10px 12px 12px!important;background:#eef7fc!important}
body[data-page="home"] .shell{background:#eef7fc!important}
body[data-page="home"] .global-topbar{height:72px!important;padding:8px 18px!important;gap:16px!important;background:#fff!important;border-bottom:1px solid #dcebf5!important}
body[data-page="home"] .top-brand{min-width:218px!important}
body[data-page="home"] .top-logo{width:54px!important;height:54px!important;border-radius:14px!important;background:linear-gradient(145deg,#2e8dff,#3757ec)!important;box-shadow:0 8px 18px rgba(44,111,230,.22)!important}
body[data-page="home"] .top-logo svg{width:32px!important;height:32px!important}
body[data-page="home"] .top-brand strong{font-size:22px!important;letter-spacing:-.02em!important;color:#12385d!important}
body[data-page="home"] .top-brand small{font-size:10px!important;color:#7190aa!important;margin-top:2px!important}
body[data-page="home"] .top-search{height:44px!important;max-width:540px!important;border-radius:10px!important;background:#fff!important;border:1px solid #cfe1ef!important}
body[data-page="home"] .top-search input{font-size:13px!important;color:#45627b!important}
body[data-page="home"] .mode-pill{height:38px!important;border-radius:10px!important;background:#edf6fd!important;color:#0877d2!important;font-size:11px!important;padding:0 14px!important}
body[data-page="home"] .top-round{width:39px!important;height:39px!important;border-radius:10px!important;background:#f3f8fc!important}
body[data-page="home"] .profile-trigger{padding:4px 5px!important;gap:8px!important}.home88{display:grid;grid-template-columns:minmax(0,1fr) 354px;gap:14px;max-width:1320px;margin:0 auto}.home88-main{display:grid;gap:13px;min-width:0}.home88-rail{display:grid;gap:13px;align-content:start}.home88-hero{min-height:274px;border-radius:16px;overflow:hidden;display:grid;grid-template-columns:57% 43%;background:linear-gradient(125deg,#0a4c79,#0b2e4e);box-shadow:0 5px 15px rgba(23,74,111,.12)}.home88-hero-copy{padding:28px 34px;color:#fff;position:relative;z-index:2}.home88-eyebrow{display:block;color:#4bd6ff;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:8px}.home88-hero h1{margin:0;font-size:35px;line-height:1.06;letter-spacing:-.025em;color:#fff}.home88-hero p{margin:9px 0 18px;font-size:16px;color:#d6edfb}.home88-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:19px}.home88-benefits span{display:flex;align-items:center;gap:9px;font-size:10px;line-height:1.25;color:#eef9ff}.home88-benefits i{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.13);font-style:normal;font-size:19px}.home88-benefits span:nth-child(1) i{background:#0b8f79}.home88-benefits span:nth-child(2) i{background:#694bd3}.home88-benefits span:nth-child(3) i{background:#b54f5c}.home88-benefits span:nth-child(4) i{background:#c78c1a}.home88-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 18px;border-radius:10px;background:#fff;color:#0a4771;font-size:12px;font-weight:900;text-decoration:none;box-shadow:0 7px 16px rgba(0,0,0,.12)}.home88-hero-image{background-size:cover;background-position:center;min-height:274px}.home88-panel,.home88-card{background:#fff;border:1px solid #d9e8f3;border-radius:14px;box-shadow:0 3px 10px rgba(42,86,117,.07)}.home88-modules-panel{padding:12px}.home88-head h2,.home88-card-head h3{margin:0;color:#133a61;font-size:19px;line-height:1.1}.home88-head p{margin:3px 0 11px;color:#66839c;font-size:11px}.home88-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home88-module{min-height:150px;border-radius:12px;overflow:hidden;color:#fff;text-decoration:none;position:relative;box-shadow:0 4px 12px rgba(32,85,119,.11)}.home88-module-photo{height:77px;background-size:cover;background-position:center;position:relative}.home88-module-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 38%,rgba(4,31,54,.22))}.home88-module-photo span{position:absolute;right:12px;top:16px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.22);font-size:26px;z-index:2}.home88-module-body{padding:9px 12px 11px;position:relative}.home88-module h3{margin:0;font-size:16px;color:#fff}.home88-module p{margin:1px 0 9px;font-size:10px;color:rgba(255,255,255,.94)}.home88-module em{position:absolute;right:12px;bottom:9px;font-size:10px;font-style:normal;font-weight:900}.home88-module .home88-bar{margin-right:35px}.home88-module.purple{background:linear-gradient(135deg,#7b36ec,#7237d9)}.home88-module.blue{background:linear-gradient(135deg,#2499f4,#258be5)}.home88-module.green{background:linear-gradient(135deg,#12ad9a,#28ba8a)}.home88-module.red{background:linear-gradient(135deg,#ff534f,#f24e5a)}.home88-module.pink{background:linear-gradient(135deg,#f15575,#ee6e8e)}.home88-module.violet{background:linear-gradient(135deg,#6554df,#7055d8)}.home88-module.emerald{background:linear-gradient(135deg,#08a778,#0ab46c)}.home88-module.orange{background:linear-gradient(135deg,#f3a018,#f6b12a)}.home88-module.teal{background:linear-gradient(135deg,#06a6ad,#1ab9b2)}.home88-bar{height:7px;border-radius:99px;background:rgba(255,255,255,.26);overflow:hidden}.home88-bar i{display:block;height:100%;border-radius:99px;background:#fff}.home88-bottom-strip{display:grid;grid-template-columns:1.25fr 1fr;border:1px solid #d9e8f3;border-radius:13px;background:#fff;overflow:hidden}.home88-tip,.home88-time{min-height:62px;padding:10px 14px;display:flex;align-items:center;gap:11px}.home88-tip{border-right:1px solid #dce9f2}.home88-tip>i,.home88-time>i{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#fff2cc;font-style:normal;font-size:20px}.home88-tip b,.home88-time b{display:block;font-size:13px;color:#11385f}.home88-tip span{display:block;color:#66839b;font-size:10px;font-style:italic;margin-top:2px}.home88-time small{display:block;color:#305e7d;font-size:9px}.home88-time strong{margin-left:auto;color:#16b987;font-size:10px}.home88-time a{margin-left:auto;color:#168ae5;font-weight:800;font-size:10px;text-decoration:none}.home88-card{padding:15px}.home88-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.home88-card-head a{color:#1687dd;font-size:9px;font-weight:800;text-decoration:none}.home88-journey-main{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:14px}.home88-ring{--p:42;width:104px;height:104px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#16ae92 calc(var(--p)*1%),#e4eef3 0);position:relative}.home88-ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff}.home88-ring b{position:relative;font-size:22px;color:#0b4b79}.home88-journey-main strong{display:block;color:#143c61;font-size:15px}.home88-journey-main p{margin:4px 0 0;color:#64839d;font-size:10px;line-height:1.45}.home88-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:12px 0}.home88-stat-grid span{padding:10px 5px;border-radius:9px;background:#f3f8fc;text-align:center}.home88-stat-grid b,.home88-stat-grid small{display:block}.home88-stat-grid b{font-size:18px;color:#103f69}.home88-stat-grid small{font-size:7.5px;color:#718da3;margin-top:2px}.home88-wide{width:100%;height:45px;border:0;border-radius:10px;background:#0b8df1;color:#fff;font-weight:900;font-size:12px;cursor:pointer}.home88-challenge{display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center;padding:9px 0;border-bottom:1px solid #e5eef4}.home88-challenge:last-child{border-bottom:0}.home88-challenge>i{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:#fff4da;font-style:normal;font-size:23px}.home88-challenge:nth-child(3)>i{background:#f3eefe}.home88-challenge:nth-child(4)>i{background:#fff1dd}.home88-challenge b{display:block;color:#153b5e;font-size:11px}.home88-challenge p{margin:2px 0 6px;color:#6b879d;font-size:9px}.home88-challenge .home88-bar{background:#e4edf3}.home88-challenge .home88-bar i{background:#19a9e6}.home88-challenge em{font-style:normal;color:#5b7891;font-size:9px;font-weight:800}.home88-activity{display:grid;grid-template-columns:48px 1fr 24px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #e5eef4;text-decoration:none}.home88-activity:last-child{border-bottom:0}.home88-activity>span{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:23px}.home88-activity>span.math{background:linear-gradient(135deg,#168cf1,#5457ff)}.home88-activity>span.fr{background:linear-gradient(135deg,#ff5f54,#ef5165)}.home88-activity>span.chess{background:linear-gradient(135deg,#14181d,#31363f)}.home88-activity b{display:block;color:#173c5f;font-size:11px}.home88-activity small{display:block;color:#6e879b;font-size:8.5px;margin-top:2px}.home88-activity>i{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#15be8d;color:#fff;font-size:10px}@media(max-width:1200px){.home88{grid-template-columns:1fr}.home88-rail{grid-template-columns:repeat(3,1fr)}.home88-hero{grid-template-columns:1fr 40%}.home88-module-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.home88-hero{grid-template-columns:1fr}.home88-hero-image{min-height:180px}.home88-benefits{grid-template-columns:repeat(2,1fr)}.home88-module-grid{grid-template-columns:repeat(2,1fr)}.home88-rail{grid-template-columns:1fr}.home88-bottom-strip{grid-template-columns:1fr}.home88-tip{border-right:0;border-bottom:1px solid #dce9f2}}@media(max-width:600px){.home88-module-grid{grid-template-columns:1fr}.home88-hero-copy{padding:22px}.home88-hero h1{font-size:28px}.home88-benefits{grid-template-columns:1fr 1fr}.home88-stat-grid{grid-template-columns:repeat(2,1fr)}}

/* =========================================================
   BBJ Academy V16.8.9 — Home compact + corrected hero
   Goal: show all learning domains on one desktop screen.
   ========================================================= */
body[data-page="home"] .page-root{padding:8px 10px 10px!important}
body[data-page="home"] .home88{grid-template-columns:minmax(0,1fr) 320px!important;gap:10px!important;max-width:1460px!important}
body[data-page="home"] .home88-main,
body[data-page="home"] .home88-rail{gap:10px!important}

/* Hero: shorter and no stretching. Image is a clean crop without duplicate text. */
body[data-page="home"] .home88-hero{min-height:198px!important;height:198px!important;grid-template-columns:55% 45%!important;border-radius:14px!important}
body[data-page="home"] .home88-hero-copy{padding:18px 24px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
body[data-page="home"] .home88-eyebrow{font-size:9px!important;margin-bottom:5px!important}
body[data-page="home"] .home88-hero h1{font-size:30px!important;line-height:1.02!important;max-width:520px!important}
body[data-page="home"] .home88-hero p{font-size:13px!important;margin:7px 0 11px!important}
body[data-page="home"] .home88-benefits{gap:7px!important;margin-bottom:11px!important}
body[data-page="home"] .home88-benefits span{font-size:8px!important;gap:6px!important}
body[data-page="home"] .home88-benefits i{width:30px!important;height:30px!important;border-radius:8px!important;font-size:15px!important}
body[data-page="home"] .home88-primary{padding:9px 14px!important;font-size:10px!important;border-radius:8px!important}
body[data-page="home"] .home88-hero-image{min-height:198px!important;height:198px!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important}

/* Module panel: 3 x 3 visible at once. */
body[data-page="home"] .home88-modules-panel{padding:10px!important}
body[data-page="home"] .home88-head h2{font-size:16px!important}
body[data-page="home"] .home88-head p{font-size:9px!important;margin:2px 0 7px!important}
body[data-page="home"] .home88-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
body[data-page="home"] .home88-module{min-height:100px!important;height:100px!important;border-radius:10px!important;display:grid!important;grid-template-rows:48px 52px!important}
body[data-page="home"] .home88-module-photo{height:48px!important;background-size:cover!important;background-position:center!important}
body[data-page="home"] .home88-module-photo span{right:8px!important;top:8px!important;width:28px!important;height:28px!important;font-size:20px!important}
body[data-page="home"] .home88-module-body{padding:6px 9px 7px!important}
body[data-page="home"] .home88-module h3{font-size:12.5px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body[data-page="home"] .home88-module p{font-size:8px!important;line-height:1.1!important;margin:2px 0 5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body[data-page="home"] .home88-module .home88-bar{height:5px!important;margin-right:27px!important}
body[data-page="home"] .home88-module em{font-size:8px!important;right:9px!important;bottom:6px!important}

/* Right rail: reduce vertical footprint while keeping all information. */
body[data-page="home"] .home88-card{padding:11px!important;border-radius:12px!important}
body[data-page="home"] .home88-card-head{margin-bottom:8px!important}
body[data-page="home"] .home88-card-head h3{font-size:16px!important}
body[data-page="home"] .home88-journey-main{grid-template-columns:82px 1fr!important;gap:9px!important}
body[data-page="home"] .home88-ring{width:76px!important;height:76px!important}
body[data-page="home"] .home88-ring:before{inset:9px!important}
body[data-page="home"] .home88-ring b{font-size:17px!important}
body[data-page="home"] .home88-journey-main strong{font-size:12px!important}
body[data-page="home"] .home88-journey-main p{font-size:8px!important;line-height:1.25!important}
body[data-page="home"] .home88-stat-grid{gap:5px!important;margin:8px 0!important}
body[data-page="home"] .home88-stat-grid span{padding:6px 3px!important;border-radius:7px!important}
body[data-page="home"] .home88-stat-grid b{font-size:14px!important}
body[data-page="home"] .home88-stat-grid small{font-size:6.5px!important}
body[data-page="home"] .home88-wide{height:34px!important;font-size:9px!important;border-radius:8px!important}
body[data-page="home"] .home88-challenge{grid-template-columns:38px 1fr auto!important;gap:7px!important;padding:6px 0!important}
body[data-page="home"] .home88-challenge>i{width:36px!important;height:36px!important;font-size:18px!important}
body[data-page="home"] .home88-challenge b{font-size:9px!important}
body[data-page="home"] .home88-challenge p{font-size:7.5px!important;margin:1px 0 4px!important}
body[data-page="home"] .home88-challenge em{font-size:7.5px!important}
body[data-page="home"] .home88-activity{grid-template-columns:38px 1fr 20px!important;gap:7px!important;padding:5px 0!important}
body[data-page="home"] .home88-activity>span{width:36px!important;height:36px!important;font-size:18px!important}
body[data-page="home"] .home88-activity b{font-size:9px!important}
body[data-page="home"] .home88-activity small{font-size:7px!important}

/* Bottom strip stays visible on common laptop resolutions. */
body[data-page="home"] .home88-bottom-strip{border-radius:10px!important}
body[data-page="home"] .home88-tip,
body[data-page="home"] .home88-time{min-height:46px!important;padding:7px 10px!important;gap:8px!important}
body[data-page="home"] .home88-tip>i,
body[data-page="home"] .home88-time>i{width:30px!important;height:30px!important;font-size:15px!important}
body[data-page="home"] .home88-tip b,
body[data-page="home"] .home88-time b{font-size:10px!important}
body[data-page="home"] .home88-tip span,
body[data-page="home"] .home88-time small,
body[data-page="home"] .home88-time strong,
body[data-page="home"] .home88-time a{font-size:7.5px!important}

@media(max-width:1180px){
  body[data-page="home"] .home88{grid-template-columns:1fr!important}
  body[data-page="home"] .home88-rail{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:760px){
  body[data-page="home"] .home88-hero{height:auto!important;grid-template-columns:1fr!important}
  body[data-page="home"] .home88-hero-image{height:150px!important;min-height:150px!important}
  body[data-page="home"] .home88-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-page="home"] .home88-rail{grid-template-columns:1fr!important}
}

/* V16.8.10 — Mind Mapping final closure: one-screen layout + full piece banks */
body[data-page="mind"] .page-main{padding:6px 8px 8px!important;overflow:hidden}
body[data-page="mind"] .memory-page.memory-final{max-width:1360px;margin:0 auto;display:grid;gap:6px;height:calc(100dvh - 88px);min-height:620px}
body[data-page="mind"] .memory-toolbar-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:7px 10px!important;border-radius:12px!important;min-height:48px}
body[data-page="mind"] .memory-title{min-width:220px}
body[data-page="mind"] .memory-toolbar-card h2{font-size:16px!important;line-height:1.05;margin:0!important}
body[data-page="mind"] .memory-toolbar-card .eyebrow{font-size:7px!important;letter-spacing:.14em}
body[data-page="mind"] .memory-config{display:grid!important;grid-template-columns:repeat(4,minmax(92px,1fr)) auto;gap:6px!important;align-items:end}
body[data-page="mind"] .memory-config label{font-size:7px!important;font-weight:800;color:#51708f}
body[data-page="mind"] .memory-config select{height:28px!important;min-height:28px!important;padding:3px 22px 3px 7px!important;font-size:8px!important;border-radius:7px!important}
body[data-page="mind"] .memory-config .btn{height:28px!important;min-height:28px!important;padding:5px 10px!important;font-size:8px!important;border-radius:8px!important}
body[data-page="mind"] .memory-stage{display:grid!important;grid-template-columns:150px minmax(420px,520px) 150px!important;justify-content:center;gap:8px!important;padding:7px!important;border-radius:14px!important;min-height:0!important;height:100%;overflow:hidden}
body[data-page="mind"] .memory-center{padding:6px!important;gap:5px!important;border-radius:11px!important;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;align-items:center}
body[data-page="mind"] .memory-stage-head{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px}
body[data-page="mind"] .memory-stage-head span{font-size:7px!important;letter-spacing:.12em}
body[data-page="mind"] .memory-stage-head b{font-size:9px!important}
body[data-page="mind"] .memory-timer{min-width:90px!important;height:36px!important;border-radius:9px!important;display:flex!important;flex-direction:column;justify-content:center;align-items:center;line-height:1!important;box-shadow:0 5px 14px rgba(0,0,0,.12)}
body[data-page="mind"] .memory-timer small{font-size:6px!important;letter-spacing:.08em}
body[data-page="mind"] .memory-timer b{font-size:15px!important}
body[data-page="mind"] #memoryBoard.chessboard{width:min(100%,calc(100dvh - 245px),500px)!important;max-width:500px!important;min-width:340px!important;margin:auto!important;border-width:4px!important;border-radius:12px!important;box-shadow:0 8px 24px rgba(6,37,62,.13)}
body[data-page="mind"] #memoryBoard .chess-piece{font-size:clamp(28px,5.1vh,48px)!important}
body[data-page="mind"] .memory-side{padding:7px!important;border-radius:11px!important;min-height:0!important;overflow:auto!important;display:flex!important;flex-direction:column;background:#0c3553!important;border:1px solid rgba(255,255,255,.12)!important}
body[data-page="mind"] .memory-side.white{background:#f8fbff!important;border:1px solid #d8e6f2!important}
body[data-page="mind"] .memory-side-title{font-size:8px;font-weight:900;letter-spacing:.14em;text-align:center;margin:0 0 5px;color:#fff}
body[data-page="mind"] .memory-side.white .memory-side-title{color:#123b5b}
body[data-page="mind"] .memory-tray{display:grid!important;grid-template-columns:1fr 1fr!important;gap:4px!important;align-content:start}
body[data-page="mind"] .memory-piece{min-height:58px!important;padding:3px!important;border-radius:8px!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:1fr auto!important;align-items:center!important;gap:0 3px!important;position:relative}
body[data-page="mind"] .memory-piece span{font-size:26px!important;grid-row:1/3}
body[data-page="mind"] .memory-piece b{font-size:6px!important;line-height:1.05;text-align:left}
body[data-page="mind"] .memory-piece small{font-size:7px!important;font-weight:900;text-align:left}
body[data-page="mind"] .memory-piece em{display:none!important}
body[data-page="mind"] .memory-piece.active{outline:3px solid #16a8ff!important;transform:translateY(-1px);box-shadow:0 6px 14px rgba(22,168,255,.22)}
body[data-page="mind"] .memory-actions{display:grid!important;grid-template-columns:1fr 1fr 1.2fr;gap:5px!important}
body[data-page="mind"] .memory-actions .btn{min-height:29px!important;height:29px!important;padding:5px 8px!important;font-size:8px!important;border-radius:8px!important}
body[data-page="mind"] .memory-message{padding:5px 8px!important;font-size:8px!important;line-height:1.25!important;min-height:25px!important;border-radius:8px!important}
@media (max-width:1100px){body[data-page="mind"] .memory-stage{grid-template-columns:118px minmax(360px,470px) 118px!important}body[data-page="mind"] .memory-piece{min-height:52px!important}body[data-page="mind"] .memory-piece span{font-size:23px!important}}
@media (max-width:820px){body[data-page="mind"] .page-main{overflow:auto}body[data-page="mind"] .memory-page.memory-final{height:auto;min-height:0}body[data-page="mind"] .memory-toolbar-card{grid-template-columns:1fr}body[data-page="mind"] .memory-config{grid-template-columns:repeat(2,1fr)}body[data-page="mind"] .memory-stage{grid-template-columns:1fr!important;height:auto;overflow:visible}body[data-page="mind"] .memory-side{max-height:none!important}body[data-page="mind"] .memory-tray{grid-template-columns:repeat(6,1fr)!important}body[data-page="mind"] .memory-center{order:-1}body[data-page="mind"] #memoryBoard.chessboard{min-width:0!important;width:min(92vw,500px)!important}}

/* V16.8.15 — richer learning cards, periods and progress */
body[data-page="home"] .home88-module{height:128px!important;grid-template-rows:52px 76px!important;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 20px rgba(20,66,99,.15)!important;transition:transform .18s ease,box-shadow .18s ease}
body[data-page="home"] .home88-module:hover{transform:translateY(-3px);box-shadow:0 13px 26px rgba(20,66,99,.22)!important}
body[data-page="home"] .home88-module-photo{height:52px!important}.home88-module-titleline{display:flex;align-items:center;justify-content:space-between;gap:8px}.home88-module-titleline strong{font-size:12px;color:#fff}.home88-progress-meta{display:flex;justify-content:space-between;align-items:center;margin:4px 0 4px;font-size:7.5px;color:rgba(255,255,255,.86)}.home88-progress-meta b{font-size:7.5px;color:#fff}.home88-bar-strong{height:8px!important;margin-right:0!important;background:rgba(0,0,0,.16)!important;border:1px solid rgba(255,255,255,.2)}.home88-bar-strong i{background:linear-gradient(90deg,#fff,#d9fbff)!important;box-shadow:0 0 8px rgba(255,255,255,.55)}
.school-period-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 12px}.school-period-tabs button{border:1px solid #d5e5f0;background:#f7fbfe;color:#315a77;border-radius:11px;padding:10px;font-weight:900;cursor:pointer}.school-period-tabs button.active{background:#0e7fd4;color:#fff;border-color:#0e7fd4;box-shadow:0 7px 16px rgba(14,127,212,.18)}.school-period-intro{display:flex;gap:10px;align-items:baseline;padding:10px 12px;margin-bottom:10px;border-radius:11px;background:#eef7fd;border-left:4px solid #1587dd}.school-period-intro b{color:#0c5d96}.school-period-intro span{font-size:10px;color:#668299}.school-period-card{min-height:122px!important}.school-period-card small{white-space:normal!important;line-height:1.45!important}.school-card-progress{height:8px;background:#e5eef4;border-radius:99px;overflow:hidden;margin:9px 0 4px}.school-card-progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#168be5,#24c5c8)}.school-period-card em{font-size:8px!important;color:#5e7d94!important;font-style:normal!important}
.basics-learn-rich{grid-template-columns:repeat(2,1fr)!important}.basics-learn-rich>div{min-height:112px}.basics-rail-stats{grid-template-columns:repeat(3,1fr)!important}.basics-master-card{min-height:92px}.basics-master-card em{white-space:normal!important;line-height:1.25;min-height:20px}
@media(max-width:820px){.school-period-tabs{grid-template-columns:repeat(2,1fr)}.school-period-intro{display:grid}.basics-learn-rich{grid-template-columns:1fr!important}.basics-rail-stats{grid-template-columns:1fr 1fr!important}}

/* BBJ V16.8.16 — School + Math child-first UX */
.school-simple-shell,.math-simple-shell{max-width:1180px;margin:0 auto;padding:22px 24px 48px}.school-simple-head,.math-simple-head{background:#fff;border:1px solid #dce7f2;border-radius:24px;padding:26px 30px;box-shadow:0 12px 28px rgba(15,48,78,.07)}.school-simple-head h1,.math-simple-head h1{margin:4px 0 8px;color:#0e3457;font-size:clamp(28px,3vw,42px)}.school-simple-head p,.math-simple-head p{margin:0;color:#61758b;font-size:16px}.school-period-big-grid,.math-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.school-period-big,.math-period-card{width:100%;border:1px solid #d8e5f0;background:#fff;border-radius:22px;padding:22px;display:grid;grid-template-columns:56px 1fr 28px;gap:16px;align-items:center;text-align:left;cursor:pointer;box-shadow:0 10px 24px rgba(15,48,78,.06);transition:.2s}.school-period-big:hover,.math-period-card:hover,.school-subject-simple:hover,.math-module-card:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(15,48,78,.1);border-color:#9ec6ec}.school-period-big>span:first-child,.math-period-icon{width:52px;height:52px;border-radius:16px;background:#eaf5ff;color:#1775c8;font-weight:900;font-size:22px;display:grid;place-items:center}.school-period-big b,.math-period-copy b{display:block;color:#0e3457;font-size:22px;margin:2px 0 6px}.school-period-big p,.math-period-copy em{display:block;margin:0 0 12px;color:#65788d;font-style:normal;font-size:14px}.school-period-big i,.school-subject-simple i,.math-period-progress,.math-module-progress{display:block;height:9px;border-radius:999px;background:#e6eef5;overflow:hidden}.school-period-big i em,.school-subject-simple i em,.math-period-progress i,.math-module-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1e88e5,#22b8a7)}.school-period-big strong,.math-period-copy strong{display:block;margin-top:7px;color:#35536f;font-size:12px}.school-simple-toolbar,.math-period-toolbar,.math-lesson-toolbar{margin-top:22px;background:#fff;border:1px solid #dce7f2;border-radius:20px;padding:18px 22px;display:flex;align-items:center;gap:18px}.school-simple-toolbar div,.math-period-toolbar div,.math-lesson-toolbar div{flex:1}.school-simple-toolbar h2,.math-period-toolbar h2,.math-lesson-toolbar h2{margin:2px 0;color:#0e3457}.school-simple-toolbar p,.math-period-toolbar p{margin:4px 0;color:#6d7f91}.school-simple-toolbar button,.math-ghost-btn,.math-simple-back{border:0;background:#eef6fd;color:#145c98;border-radius:12px;padding:11px 14px;font-weight:800;text-decoration:none;cursor:pointer}.school-subject-simple-grid,.math-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.school-subject-simple,.math-module-card{background:#fff;border:1px solid #dce7f2;border-radius:18px;padding:18px;display:grid;grid-template-columns:48px 1fr 24px;gap:14px;align-items:center;text-decoration:none;text-align:left;cursor:pointer;color:inherit;transition:.2s}.school-subject-simple>span:first-child,.math-module-number{width:44px;height:44px;border-radius:13px;background:#eef6fd;color:#176bb3;display:grid;place-items:center;font-weight:900}.school-subject-simple b,.math-module-card b{display:block;color:#0e3457;font-size:17px;margin-bottom:9px}.school-subject-simple small,.math-module-card small{color:#668096}.math-simple-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.math-simple-intro{padding:26px 4px 6px}.math-simple-intro h2{margin:4px 0;color:#0e3457;font-size:30px}.math-simple-intro p{margin:0;color:#6b7e91}.math-period-copy small{color:#1680d1;font-weight:900;letter-spacing:.08em}.math-period-arrow{font-size:26px;color:#1680d1}.math-period-score{min-width:180px;text-align:right}.math-period-score b{font-size:26px;color:#0e3457}.math-module-card{grid-template-columns:44px 1fr 20px}.math-module-card em{display:block;color:#6b7e91;font-style:normal;font-size:13px;line-height:1.4;margin:4px 0 10px}.math-module-card strong{display:block;margin-top:6px;color:#36556f;font-size:12px}.math-period-exam-row{display:flex;justify-content:flex-end;margin-top:18px}.math-period-exam{border:0;border-radius:15px;background:#0e5f9c;color:#fff;font-weight:900;padding:14px 20px;cursor:pointer}.math-learning-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.math-learning-actions button{border:1px solid #d8e5f0;border-radius:16px;background:#fff;color:#234660;padding:16px;font-weight:900;cursor:pointer}.math-learning-actions button.active{background:#eaf5ff;border-color:#62a9e7;color:#0d67ad}.math-learning-stage{margin-top:14px}.math-learning-card{background:#fff;border:1px solid #dce7f2;border-radius:20px;padding:26px;min-height:270px;box-shadow:0 10px 24px rgba(15,48,78,.05)}.math-learning-card small{font-weight:900;color:#1680d1}.math-learning-card h3{font-size:27px;color:#0e3457;margin:8px 0 14px}.math-learning-card p{font-size:18px;line-height:1.65;color:#334e67}.math-example-inline{margin:18px 0;padding:16px 18px;border-radius:15px;background:#f7fbff;border:1px solid #dceaf6}.math-example-inline b{display:block;color:#0e5f9c;margin-bottom:6px}.math-module-progress.wide{max-width:420px}.math-answers{display:grid;gap:10px;margin-top:16px}.math-answers button{border:1px solid #cdddea;background:#fff;border-radius:13px;padding:14px 16px;text-align:left;font-weight:700;cursor:pointer}.math-answers button:hover{border-color:#4d9cdb;background:#f4faff}.math-feedback{margin-top:14px;border-radius:13px;padding:14px;background:#f3f7fa;color:#53697c;display:grid;gap:6px}.math-feedback.good{background:#eaf9f3;color:#176545}.math-feedback.warn{background:#fff5e8;color:#8a5a11}.math-feedback button{justify-self:start;border:0;background:#eaf4fd;color:#135f9c;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.math-ar .math-simple-head,.math-ar .math-period-toolbar,.math-ar .math-lesson-toolbar{text-align:right}.math-ar .math-module-card,.math-ar .math-period-card,.math-ar .math-answers button{text-align:right}@media(max-width:900px){.school-period-big-grid,.math-period-grid,.school-subject-simple-grid,.math-module-grid{grid-template-columns:1fr}.math-simple-head{grid-template-columns:1fr}.math-learning-actions{grid-template-columns:1fr}.school-simple-shell,.math-simple-shell{padding:12px}.school-period-big,.math-period-card{grid-template-columns:48px 1fr 20px}.math-period-toolbar,.math-lesson-toolbar,.school-simple-toolbar{align-items:flex-start;flex-wrap:wrap}.math-period-score{width:100%;text-align:left}}
/* V16.8.17 — Math enrichment, clean child flow */
.math-course-lead{font-size:16px;line-height:1.7;margin:8px 0 18px}.math-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.math-course-grid>div{background:#f6faff;border:1px solid #dceafb;border-radius:16px;padding:16px;display:grid;gap:6px}.math-course-grid b{font-size:13px;color:#126ac3}.math-course-grid span{line-height:1.55}.math-explain-note{color:#61758b;margin:4px 0 16px}.math-practice-stack{display:grid;gap:14px}.math-practice-one{position:relative;border:1px solid #e0e9f2;border-radius:16px;padding:18px;background:#fff}.math-practice-one h4{margin:0 0 12px;padding-left:34px;font-size:16px}.math-q-badge{position:absolute;left:16px;top:16px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eaf4ff;color:#126ac3;font-weight:800}.math-mini-head{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:12px;margin-bottom:16px}.math-mini-result{text-align:center;border-radius:18px;padding:24px;background:#f5fbff}.math-mini-result>b{font-size:34px}.math-mini-result.good{background:#effbf6}.math-mini-result.warn{background:#fff8ec}@media(max-width:780px){.math-course-grid{grid-template-columns:1fr}.math-practice-one h4{padding-left:0;padding-top:30px}}
/* V16.8.19 — feedback verification visible + score réel */
body[data-page="mind"] .memory-head-metrics{display:flex;align-items:center;gap:6px}
body[data-page="mind"] .memory-score-badge{min-width:54px;height:34px;border-radius:9px;background:#eaf3f9;color:#315773;display:grid;place-items:center;font-weight:900;font-size:12px;border:1px solid #d5e5ef}
body[data-page="mind"] .memory-score-badge.good{background:#e2f7eb;color:#11673d;border-color:#bce7cf}
body[data-page="mind"] .memory-score-badge.warn{background:#fff3d8;color:#845700;border-color:#f2d69b}
body[data-page="mind"] .memory-score-badge.bad{background:#ffe8e8;color:#8e2c2c;border-color:#f2bbbb}
body[data-page="mind"] .memory-message{font-size:10px!important;font-weight:700!important;min-height:34px!important;display:flex;align-items:center;justify-content:center;text-align:center}


/* V16.8.20 — Mind Mapping closure: visible right controls + validation feedback */
body[data-page="mind"] .memory-center{grid-template-rows:auto minmax(0,1fr) auto!important}
body[data-page="mind"] .memory-workspace{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px;align-items:stretch;min-height:0}
body[data-page="mind"] .memory-workspace #memoryBoard{align-self:center}
body[data-page="mind"] .memory-actions{display:flex!important;flex-direction:column;gap:8px!important;align-self:stretch;justify-content:center;position:sticky;right:0;top:8px}
body[data-page="mind"] .memory-actions .btn{height:auto!important;min-height:46px!important;padding:10px 8px!important;font-size:10px!important;line-height:1.15;white-space:normal}
body[data-page="mind"] .memory-message{display:block!important;text-align:left!important;max-height:112px;overflow:auto;padding:8px 10px!important}
body[data-page="mind"] .memory-result-main{text-align:center;margin-bottom:5px}
body[data-page="mind"] .memory-result-details{display:grid;gap:4px;font-size:9px;line-height:1.35}
body[data-page="mind"] .memory-detail-good{color:#147447;font-weight:900}
body[data-page="mind"] .memory-detail-bad{color:#a52323;font-weight:800}
body[data-page="mind"] .memory-detail-missing{color:#8a5a00;font-weight:800}
body[data-page="mind"] #memoryBoard .sq.good{box-shadow:inset 0 0 0 5px #22a861!important;background-image:linear-gradient(rgba(34,168,97,.20),rgba(34,168,97,.20))!important}
body[data-page="mind"] #memoryBoard .sq.bad{box-shadow:inset 0 0 0 5px #e04444!important;background-image:linear-gradient(rgba(224,68,68,.20),rgba(224,68,68,.20))!important}
body[data-page="mind"] #memoryBoard .sq.missing{box-shadow:inset 0 0 0 5px #f0a61a!important}
body[data-page="mind"] .memory-missing-ghost{position:absolute;inset:0;display:grid;place-items:center;font-size:70%;opacity:.52;filter:saturate(.8);pointer-events:none}
body[data-page="mind"] #memoryBoard .sq{position:relative}
@media (max-width:1180px){body[data-page="mind"] .memory-workspace{grid-template-columns:minmax(0,1fr) 96px}body[data-page="mind"] .memory-actions .btn{min-height:42px!important;font-size:9px!important}}
@media (max-width:900px){body[data-page="mind"] .memory-workspace{grid-template-columns:1fr}body[data-page="mind"] .memory-actions{position:static;display:grid!important;grid-template-columns:repeat(3,1fr);flex-direction:unset}body[data-page="mind"] .memory-actions .btn{min-height:40px!important}body[data-page="mind"] .memory-message{max-height:none}}
body[data-page="mind"] .memory-stage{grid-template-columns:150px minmax(540px,650px) 150px!important}
@media (max-width:1180px) and (min-width:901px){body[data-page="mind"] .memory-stage{grid-template-columns:118px minmax(500px,600px) 118px!important}}
