/* ============ TRAINING — SOVEREIGN MIND LEARNING HUB ============ */
/* Loaded after main.css — reuses AION's tokens (--bg,--panel,--edge,--text,--muted,--teal,--green,--blue,--red,--disp,--sans,--mono). */
:root{
  --gold:#D4A24C;
  --gold-dim:#3A2E14;
  --ai:#B07CF0;
  --panel-alt:#101A2B;
  --panel-raised:#152036;
  --radius:8px;
  --radius-sm:4px;
}

.training-app{max-width:900px;margin:0 auto;padding:120px 20px 64px;font-weight:400;}
.training-app.hub{max-width:760px;}

.tr-top{margin-bottom:18px;}
.tr-back{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:2px;color:var(--muted);}
.tr-back:hover{color:var(--teal);}

.header{margin-bottom:22px;}
.brand-mark{font-family:var(--mono);font-size:11px;letter-spacing:.24em;color:var(--gold);text-transform:uppercase;}
.brand-title{font-family:var(--disp);font-size:26px;font-weight:600;letter-spacing:-.01em;margin-top:4px;color:var(--text);}
.brand-sub{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.06em;margin-top:6px;}
.hub .brand-title{font-size:34px;}
.hub .brand-sub{font-family:var(--sans);font-size:14px;letter-spacing:0;max-width:520px;line-height:1.55;margin-top:10px;}

/* ---------- progress ---------- */
.progress-wrap{background:var(--panel);border:1px solid var(--edge);border-radius:var(--radius);padding:16px 18px;margin:18px 0 20px;}
.progress-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;}
.progress-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.progress-count{font-family:var(--disp);font-size:20px;font-weight:600;color:var(--text);}
.progress-count .pct{color:var(--gold);}
.bar-track{height:8px;background:var(--panel-alt);border-radius:4px;overflow:hidden;}
.bar-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--green));border-radius:4px;transition:width .35s ease;width:0;}

/* ---------- filters ---------- */
.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px;}
.filter-btn{background:var(--panel-alt);border:1px solid var(--edge);color:var(--muted);font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;padding:7px 13px;border-radius:999px;cursor:pointer;transition:all .15s ease;}
.filter-btn:hover{border-color:var(--muted);color:var(--text);}
.filter-btn.active{background:var(--gold);border-color:var(--gold);color:#1A1408;font-weight:600;}

/* ---------- category color chips (replaces inline style="") ---------- */
.dot-trade{background:var(--blue);}
.dot-code{background:var(--green);}
.dot-ai{background:var(--ai);}
.dot-legal{background:var(--red);}
.dot-mkt{background:var(--gold);}
.accent-green{background:var(--green);}
.accent-blue{background:var(--blue);}
.icon-gold{background:var(--gold-dim);color:var(--gold);}
.icon-blue{background:rgba(85,164,214,.14);color:var(--blue);}

/* ---------- categories ---------- */
.cat{margin-bottom:22px;}
.cat-head{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.cat-dot{width:10px;height:10px;border-radius:3px;}
.cat-name{font-family:var(--disp);font-size:15px;font-weight:600;color:var(--text);}
.cat-meta{font-family:var(--mono);font-size:11px;color:var(--muted);margin-left:auto;}

/* ---------- tasks ---------- */
.task{display:flex;align-items:flex-start;gap:12px;background:var(--panel);border:1px solid var(--edge);border-radius:var(--radius);padding:13px 15px;margin-bottom:8px;cursor:pointer;transition:border-color .15s ease,background .15s ease;}
.task:hover{border-color:var(--muted);}
.task.done{opacity:.5;}
.task.done .task-text{text-decoration:line-through;color:var(--muted);}
.checkbox{flex-shrink:0;width:20px;height:20px;border:2px solid var(--edge);border-radius:5px;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;}
.task.done .checkbox,.vid.done .checkbox{background:var(--green);border-color:var(--green);}
.checkbox svg{width:12px;height:12px;stroke:var(--bg);stroke-width:3.5;fill:none;opacity:0;transition:opacity .15s ease;}
.task.done .checkbox svg,.vid.done .checkbox svg{opacity:1;}
.task-text{font-size:13.5px;line-height:1.45;color:var(--text);}

/* ---------- videos ---------- */
.vid{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--edge);border-radius:var(--radius);padding:12px 14px;margin-bottom:8px;transition:border-color .15s ease;}
.vid:hover{border-color:var(--muted);}
.vid.done{opacity:.5;}
.vid.done .vid-title{text-decoration:line-through;color:var(--muted);}
.vid .checkbox{cursor:pointer;}
.vid-body{flex:1;min-width:0;}
.vid-title{font-size:13.5px;line-height:1.35;color:var(--text);}
.vid-meta{font-family:var(--mono);font-size:10.5px;color:var(--muted);margin-top:3px;}
.year-badge{display:inline-block;font-family:var(--mono);font-size:9.5px;padding:1px 6px;border-radius:999px;background:var(--gold-dim);color:var(--gold);margin-left:6px;letter-spacing:.03em;}
.year-badge.evergreen{background:var(--panel-raised);color:var(--muted);}
.play-btn{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--panel-alt);border:1px solid var(--edge);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .15s ease;}
.play-btn:hover{background:var(--red);border-color:var(--red);}
.play-btn svg{width:14px;height:14px;fill:var(--text);margin-left:2px;}
.play-btn:hover svg{fill:#fff;}

/* ---------- hub cards ---------- */
.cards{display:grid;gap:14px;}
.card{display:block;text-decoration:none;background:var(--panel);border:1px solid var(--edge);border-radius:var(--radius);padding:22px 24px;transition:border-color .18s ease,transform .18s ease,background .18s ease;position:relative;overflow:hidden;}
.card:hover{border-color:var(--gold);transform:translateY(-2px);background:var(--panel-alt);}
.card-accent{position:absolute;left:0;top:0;bottom:0;width:3px;}
.card-top{display:flex;align-items:center;gap:12px;margin-bottom:8px;}
.card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.card-icon svg{width:20px;height:20px;}
.card-title{font-family:var(--disp);font-size:19px;font-weight:600;color:var(--text);}
.card-count{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:2px;letter-spacing:.04em;}
.card-desc{font-size:13.5px;color:var(--muted);line-height:1.5;margin-top:4px;}
.card-arrow{position:absolute;right:22px;top:50%;transform:translateY(-50%);color:var(--muted);transition:color .18s ease,transform .18s ease;}
.card:hover .card-arrow{color:var(--gold);transform:translateY(-50%) translateX(3px);}
.card-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;}

.footer-note{text-align:center;color:var(--muted);font-size:11px;font-family:var(--mono);margin-top:30px;letter-spacing:.04em;line-height:1.7;}
.reset-btn{background:transparent;border:1px solid var(--edge);color:var(--muted);font-family:var(--mono);font-size:11px;padding:6px 12px;border-radius:var(--radius-sm);cursor:pointer;margin-top:16px;}
.reset-btn:hover{color:var(--red);border-color:var(--red);}

@media(max-width:600px){
  .training-app{padding-top:100px;}
  .brand-title{font-size:22px;}
  .hub .brand-title{font-size:27px;}
  .cat-meta{display:none;}
  .card-arrow{display:none;}
}
