/* Solo Curriculum — 9-level path adapted from Radiorunner's Curriculum for the Solo Artist.
   Loaded after academy-premium.css; reuses the app's navy+gold language. */

#academyCurriculumView{display:block}
#academyCurriculumView[hidden]{display:none}

/* the stock academy hero is hidden while Academy 2.0 is active */
#academyPremiumHero[hidden]{display:none}

/* the stock tab bar is a 3-column grid; widen it for the 4th tab */
#modules .academyPremiumTabs{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){#modules .academyPremiumTabs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){#modules .academyPremiumTabs{grid-template-columns:1fr}}

/* ---------- overview hero ---------- */
.curioHero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;padding:30px;border:1px solid #40536a;border-radius:20px;background:radial-gradient(circle at 85% 15%,rgba(218,170,83,.16),transparent 30%),radial-gradient(circle at 8% 95%,rgba(64,112,173,.15),transparent 34%),linear-gradient(135deg,#16273a,#09141f 72%)}
.curioHero h2{margin:8px 0 10px;font:44px/1.02 Georgia,serif;letter-spacing:-.02em}
.curioHero h2 em{font-style:normal;color:var(--gold,#e2b65e)}
.curioHero p{max-width:640px;margin:0;color:#aebccb;font-size:13px;line-height:1.6}
.curioHeroActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.curioHeroFacts{position:relative;z-index:1;display:grid;gap:9px;align-content:center;padding:16px;border:1px solid #40556b;border-radius:15px;background:rgba(6,14,22,.78);backdrop-filter:blur(12px)}
.curioHeroFacts>div{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center}
.curioHeroFacts i{display:grid;place-items:center;width:42px;height:42px;border:1px solid #5b4b31;border-radius:11px;background:#10190f00;color:#efc36e;font-style:normal;font-size:17px}
.curioHeroFacts b{display:block;font-size:12px}
.curioHeroFacts span{display:block;font-size:9px;color:#8fa0b1;margin-top:2px}

/* ---------- habits strip ---------- */
.curioHabits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.curioHabit{padding:14px;border:1px solid #2c4053;border-radius:13px;background:linear-gradient(145deg,#13202e,#0c1620)}
.curioHabit b{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.14em;color:#ecc36e}
.curioHabit b i{font-style:normal;font-size:15px}
.curioHabit p{margin:8px 0 0;font-size:10px;line-height:1.55;color:#9dabb9}

/* ---------- how-to-travel rules ---------- */
.curioRules{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.curioRule{padding:13px 14px;border:1px solid #26394d;border-radius:12px;background:#0a141e}
.curioRule b{display:block;font-size:9.5px;letter-spacing:.08em;color:#e6bc69;margin-bottom:7px}
.curioRule p{margin:0;font-size:9.5px;line-height:1.55;color:#93a2b0}

/* ---------- level rail ---------- */
.curioLevels{display:grid;gap:10px;margin-top:14px}
.curioLevelCard{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr) 170px;gap:16px;align-items:center;width:100%;padding:16px 18px;border:1px solid #2c4053;border-radius:15px;background:linear-gradient(145deg,#121f2c,#0b1520);color:inherit;text-align:left;cursor:pointer;transition:.2s}
.curioLevelCard:hover{transform:translateY(-2px);border-color:#6d5a3a;box-shadow:0 14px 34px rgba(0,0,0,.24)}
.curioLevelCard.locked{cursor:default;opacity:.82}
.curioLevelCard.locked:hover{transform:none;border-color:#2c4053;box-shadow:none}
.curioLevelNo{position:relative;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--gold,#e2b65e) var(--p,0%),#28384a 0)}
.curioLevelNo:before{content:"";position:absolute;inset:5px;border-radius:50%;background:#0b1722}
.curioLevelNo span{position:relative;font:26px Georgia,serif;color:#f0c772}
.curioLevelCopy small{display:block;font-size:8px;letter-spacing:.16em;color:#8b9cad}
.curioLevelCopy b{display:block;margin:4px 0 5px;font:18px Georgia,serif}
.curioLevelCopy em{display:block;font-style:normal;font-size:10px;line-height:1.5;color:#94a3b2}
.curioLevelSide{display:grid;gap:6px;justify-items:end;text-align:right}
.curioLevelSide b{font-size:10px;color:#e6bc69}
.curioLevelSide span{font-size:8px;letter-spacing:.1em;color:#7f91a2}
.curioLevelSide .curioBadge{padding:5px 9px;border-radius:999px;border:1px solid #3e6f50;color:#68d18d;font-size:8px;letter-spacing:.1em}
.curioLevelSide .curioBadge.soon{border-color:#41556b;color:#8ba0b5}
.curioLevelSide .curioBadge.start{border-color:#8a6f3f;color:#f0c66e}

/* credit footer */
.curioCredit{margin-top:16px;padding:13px 16px;border:1px dashed #37506b00;border:1px solid #26394d;border-radius:12px;font-size:9px;line-height:1.6;color:#7f91a2}
.curioCredit a{color:#cfa759;text-decoration:none}
.curioCredit a:hover{text-decoration:underline}

/* ---------- level detail ---------- */
.curioLevelHead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end;padding:22px 24px;border:1px solid #40536a;border-radius:18px;background:radial-gradient(circle at 90% 10%,rgba(218,170,83,.14),transparent 32%),linear-gradient(135deg,#15263a,#09141f 75%)}
.curioLevelHead h2{margin:6px 0 8px;font:34px Georgia,serif}
.curioLevelHead p{margin:0;max-width:660px;color:#aebccb;font-size:12px;line-height:1.6}
.curioLevelHeadSide{display:grid;gap:8px;justify-items:end}
.curioLevelHeadSide .curioLevelScore{text-align:right}
.curioLevelHeadSide .curioLevelScore b{display:block;font:22px Georgia,serif;color:#efc56f}
.curioLevelHeadSide .curioLevelScore span{font-size:8px;letter-spacing:.12em;color:#8293a4}

.curioShell{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;margin-top:14px;align-items:start}
.curioRail{display:grid;gap:7px;position:sticky;top:12px}
.curioStepBtn{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;width:100%;padding:11px 12px;border:1px solid #263a4e;border-radius:11px;background:#0a141e;color:#abb9c5;text-align:left;cursor:pointer;transition:.18s}
.curioStepBtn:hover{border-color:#3a5066;color:#fff;transform:translateX(3px)}
.curioStepBtn.active{background:#152433;border-color:#6d5a3a;color:#fff}
.curioStepBtn.done{border-color:#31533e}
.curioStepBtn i{display:grid;place-items:center;width:27px;height:27px;border:1px solid #3a4e63;border-radius:50%;font-style:normal;font-size:10px;color:#efc36e}
.curioStepBtn.done i{border-color:#3e6f50;color:#68d18d}
.curioStepBtn b{display:block;font-size:10px}
.curioStepBtn small{display:block;margin-top:3px;font-size:7.5px;letter-spacing:.08em;color:#718397}
.curioStepBtn .curioStepMin{font-size:8px;color:#7f91a2}

/* step player */
.curioPlayer{border:1px solid #3a4f65;border-radius:18px;background:#0c1722;overflow:hidden}
.curioPlayerTop{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:22px 24px 16px;border-bottom:1px solid #223245;background:linear-gradient(180deg,#12202e,#0c1722)}
.curioPlayerTop h3{margin:7px 0 8px;font:29px Georgia,serif}
.curioPlayerTop .curioLead{margin:0;max-width:640px;color:#a5b3c1;font-size:12px;line-height:1.6}
.curioMeta{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.curioMeta span{padding:5px 8px;border:1px solid #3a4e63;border-radius:999px;background:rgba(8,17,25,.72);font-size:8px;color:#b8c6d2}
.curioBody{padding:20px 24px;display:grid;gap:16px}

.curioBlock{border:1px solid #26394d;border-radius:13px;background:#0a151f;padding:15px 16px}
.curioBlock>b{display:block;font-size:9px;letter-spacing:.16em;color:#ecc36e;margin-bottom:9px}
.curioBlock p{margin:0;font-size:11px;line-height:1.62;color:#b9c5d0}
.curioBlock p+p{margin-top:8px}
.curioBlock ol,.curioBlock ul{margin:0;padding-left:19px;display:grid;gap:7px}
.curioBlock li{font-size:11px;line-height:1.55;color:#b9c5d0}
.curioBlock li b{color:#e8eef4;font-size:11px}
.curioBlock li::marker{color:#cfa759}

.curioTwoCol{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.curioBlock.avoidBlock{border-color:#5a3a3a;background:linear-gradient(145deg,#1c1113,#0d1620)}
.curioBlock.avoidBlock>b{color:#ef8d86}

/* resource card */
.curioResource{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px 16px;border:1px solid #675638;border-radius:13px;background:radial-gradient(circle at 95% 0,rgba(225,178,88,.1),transparent 34%),linear-gradient(135deg,#181d22,#0a151f)}
.curioResource i{display:grid;place-items:center;width:42px;height:42px;border:1px solid #5b4b31;border-radius:11px;color:#efc36e;font-style:normal;font-size:17px}
.curioResource b{display:block;font-size:12px}
.curioResource small{display:block;margin-top:3px;font-size:9px;color:#94a3b2}
.curioResource .curioFree{margin-left:7px;padding:2px 6px;border:1px solid #3e6f50;border-radius:999px;color:#68d18d;font-size:7.5px;letter-spacing:.1em}
.curioResource a.gold{white-space:nowrap}

/* visual lesson boards */
.curioBoards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.curioBoard{position:relative;display:flex;flex-direction:column;padding:0;border:1px solid #34485c;border-radius:13px;overflow:hidden;background:#0a141e;color:inherit;text-align:left;cursor:zoom-in;transition:.2s}
.curioBoard:hover{transform:translateY(-2px);border-color:#6d5a3a;box-shadow:0 14px 30px rgba(0,0,0,.28)}
.curioBoard img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;background:#e7ddce}
.curioBoardCopy{display:block;padding:11px 13px 13px}
.curioBoardCopy small{display:block;font-size:8px;letter-spacing:.16em;color:#ecc36e}
.curioBoardCopy b{display:block;margin:5px 0 4px;font:14px Georgia,serif}
.curioBoardCopy em{display:block;font-style:normal;font-size:9px;line-height:1.5;color:#93a2b0}
.curioBoardZoom{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:rgba(6,13,20,.78);border:1px solid #40556b;color:#e8bc67;font-size:11px}

/* embeds */
.curioEmbed{position:relative;border:1px solid #26394d;border-radius:13px;overflow:hidden;background:#000}
.curioEmbed iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.curioEmbedNote{padding:9px 13px;border-top:1px solid #223245;background:#0a141e;font-size:8.5px;color:#7f91a2}
.curioEmbedGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.curioEmbedGrid .curioEmbed iframe{aspect-ratio:16/9}

/* alternative-material links */
.curioAltLink{color:#cfa759;text-decoration:none;white-space:nowrap}
.curioAltLink:hover{text-decoration:underline}

/* challenge block */
.curioChallenge{position:relative;overflow:hidden;border:1px solid #675638;border-radius:13px;background:radial-gradient(circle at 96% 0,rgba(225,178,88,.13),transparent 38%),linear-gradient(135deg,#191a13,#0a151f);padding:16px}
.curioChallenge:after{content:"⚑";position:absolute;right:-6px;top:-22px;font:76px Georgia,serif;color:rgba(232,187,97,.06)}
.curioChallenge>span{display:block;font-size:8.5px;letter-spacing:.16em;color:#ecc36e}
.curioChallenge h4{margin:8px 0 7px;font:20px Georgia,serif}
.curioChallenge p{margin:0;font-size:11px;line-height:1.6;color:#b9c5d0}
.curioChallengeLinks{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.curioChallengeLinks a{padding:6px 10px;border:1px solid #5b4b31;border-radius:999px;color:#e8bc67;font-size:9px;text-decoration:none;transition:.18s}
.curioChallengeLinks a:hover{background:#20180d;border-color:#8a6f3f}

/* homework */
.curioHomework{border:1px solid #34485c;border-radius:13px;background:linear-gradient(180deg,#101c29,#0a141e);padding:16px}
.curioHomework>b{display:block;font-size:9px;letter-spacing:.16em;color:#ecc36e;margin-bottom:10px}
.curioTaskRow{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;padding:9px 0;border-bottom:1px solid #1d2f42}
.curioTaskRow:last-of-type{border-bottom:0}
.curioTaskRow i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#213448;color:#efc36e;font-style:normal;font-size:9px;margin-top:1px}
.curioTaskRow b{display:block;font-size:11px;margin-bottom:3px}
.curioTaskRow span{display:block;font-size:10px;line-height:1.5;color:#93a2b0}

.curioCheck{border:1px solid #3e5b48;border-radius:13px;background:linear-gradient(145deg,#10231b,#0a141e);padding:15px 16px}
.curioCheck>b{display:block;font-size:9px;letter-spacing:.16em;color:#68d18d;margin-bottom:9px}
.curioCheck li{color:#aecbb9}

/* actions */
.curioActions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;padding:16px 24px 22px;border-top:1px solid #223245;background:#0b1520}
.curioActions .curioDoneNote{font-size:9px;color:#68d18d}

/* mentor bridge */
.curioMentorBridge{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:13px 16px;border:1px solid #2f4357;border-radius:13px;background:#09141e}
.curioMentorBridge i{font-style:normal;font-size:19px;color:#efc36e}
.curioMentorBridge b{display:block;font-size:11px}
.curioMentorBridge span{display:block;font-size:9px;color:#8b9cad;margin-top:2px}

@media(max-width:1180px){
  .curioHero{grid-template-columns:1fr}
  .curioShell{grid-template-columns:1fr}
  .curioRail{position:static;grid-template-columns:1fr 1fr}
  .curioEmbedGrid{grid-template-columns:1fr}
  .curioBoards{grid-template-columns:1fr}
  .curioHabits{grid-template-columns:1fr}
  .curioRules{grid-template-columns:1fr 1fr}
  .curioTwoCol{grid-template-columns:1fr}
  .curioLevelCard{grid-template-columns:64px minmax(0,1fr)}
  .curioLevelSide{justify-items:start;text-align:left}
}
@media(max-width:720px){
  .curioHero{padding:20px}
  .curioHero h2{font-size:33px}
  .curioRail{grid-template-columns:1fr}
  .curioRules{grid-template-columns:1fr}
  .curioPlayerTop,.curioBody,.curioActions{padding-left:16px;padding-right:16px}
}
