:root {--gold: #edc56c; --muted: #a7afb8; --line: #303743;}
body {background: #11151c; color: #eff1f5;}
.sidebar {background: #0c1016; border-right: 1px solid #262d38;}
.shell>header {background: #11151ce8; border-bottom: 1px solid #262d38;}
.sidebar nav :is(button,a:where([data-view])) {border-radius: 12px; margin: 3px 0; transition: background .18s,transform .18s;}
.sidebar nav :is(button,a:where([data-view])):hover {transform: translateX(3px);}
.sidebar nav :is(button,a:where([data-view])).active {background: #edc56c19; color: #f3d184; border: 1px solid #edc56c35;}
.sidebar .icon {font-size: 20px;}
main {max-width: 1400px;}
.page-title h1,.heading h1 {letter-spacing: -1.3px;}
:is(button,a:where([data-view])) {transition: transform .15s,background .15s,box-shadow .15s;}
:is(button,a:where([data-view])):active:not(:disabled) {transform: translateY(2px);}
:is(button,a:where([data-view])):focus-visible,a:focus-visible,select:focus-visible {outline: 3px solid #9ba9ff; outline-offset: 4px;}
.btn-gold {background: #edc56c; color: #171b23; border-radius: 13px; border-bottom: 4px solid #ae843a; box-shadow: 0 5px 18px #0002; font-weight: 800;}
.btn-gold:hover {background: #f7d88a; transform: translateY(-2px);}
.panel {border-radius: 20px; background: #1b222c; border-color: #303743;}
.section-head {margin-top: 32px;}
.section-head h2 {letter-spacing: -.6px;}
.experience-hero {display: grid; grid-template-columns: 1.3fr 1fr; gap: 22px; margin: 26px 0 32px;}
.launch-card {position: relative; min-height: 365px; padding: 34px; border: 1px solid #6c573a; border-radius: 26px; background: radial-gradient(ellipse at 85% 60%,#71573145,transparent 55%),#252622; overflow: hidden;}
.launch-card h2 {font-size: clamp(28px,3vw,42px); line-height: 1.13; letter-spacing: -1.5px; margin: 22px 0 16px; position: relative; z-index: 1;}
.launch-card em {color: #f4cb72; font-style: normal;}
.launch-card p {color: #bcc1bd; line-height: 1.7; margin-bottom: 24px;}
.launch-card .btn-gold {position: relative; z-index: 2;}
.hero-secondary {display: block; background: none; border: none; color: #d8c8a8; font-size: 12px; margin-top: 13px; padding: 0; position: relative; z-index: 2;}
.guardian-scene {position: absolute; right: 3px; bottom: 22px; width: 43%; max-width: 230px;}
.atlas {width: 100%; overflow: visible;}
.atlas-body {animation: atlas-float 4s ease-in-out infinite; transform-origin: 110px 220px;}
.atlas-eyes {animation: atlas-blink 6s infinite; transform-origin: 110px 99px;}
.atlas-arm {transform-origin: 61px 158px; animation: atlas-wave 6s ease-in-out infinite;}
.atlas-label {font-size: 10px; text-align: center; font-weight: 800; letter-spacing: 2px; color: #f4cb72;}
.atlas-label span {display: block; color: #afb5ab; font-weight: 400; letter-spacing: 0; margin-top: 4px;}
.guardian-spark {position: absolute; color: #f3d48b; font-size: 24px;}
.spark-one {right: 9px; top: 22px;}
.spark-two {left: 10px; top: 60px; font-size: 16px;}
.mission-card {background: #1b222c; border: 1px solid #303743; border-radius: 26px; padding: 26px;}
.mission-heading {display: flex; align-items: center; justify-content: space-between; gap: 10px;}
.mission-date {font-size: 11px; color: #aab5c3;}
.mission-card h2 {font-size: 23px; letter-spacing: -.6px; margin: 15px 0 8px;}
.mission-card>p {font-size: 12px; color: #aab5c3; line-height: 1.7;}
.quest-row {display: flex; align-items: center; gap: 12px; padding: 18px 0; border-bottom: 1px solid #303743;}
.quest-icon {width: 37px; height: 39px; border-radius: 12px; display: grid; place-items: center; background: #edc56c19; color: #edc56c; font-size: 23px; flex-shrink: 0;}
.quest-row:nth-of-type(3) .quest-icon {background: #a79cf923; color: #b7abff;}
.quest-row>div {flex: 1; min-width: 0;}
.quest-row strong {font-size: 12px; display: block;}
.quest-row small {display: block; font-size: 10px; color: #aeb9c8; line-height: 1.6;}
.quest-track {height: 5px; background: #333d49; border-radius: 8px; overflow: hidden; margin-top: 8px;}
.quest-track i {display: block; height: 100%; background: #edc56c; border-radius: 8px; transition: width .4s;}
.quest-reward {min-width: 57px; padding: 8px; background: #303b4b; border: 1px solid #465268; border-radius: 10px; color: #ecedf3; font-size: 11px;}
.quest-reward[data-claim] {background: #edc56c; color: #171b23; border-color: #edc56c;}
.quest-reward[data-claim] small {color: #3c321e;}
.quest-row.claimed .quest-icon {color: #74d8b6; background: #74d8b618;}
.quest-row.claimed .quest-track i {background: #74d8b6;}
.mission-link {font-size: 11px; color: #c3ccd9; background: transparent; border: 0; padding: 18px 0 0;}
.activity-grid {gap: 16px;}
.activity-tile {position: relative; background: #1b222c; border: 1px solid #303743; border-bottom: 4px solid #303743; border-radius: 20px; padding: 23px; transition: transform .2s,border-color .2s;}
.activity-tile:hover {transform: translateY(-5px); border-color: #5d6c84;}
.activity-icon {border-radius: 14px; background: #edc56c20; color: #edc56c;}
.activity-tile:nth-child(2) .activity-icon {background: #85baff20; color: #85baff;}
.activity-tile:nth-child(3) .activity-icon {background: #c1a2fa20; color: #c1a2fa;}
.activity-tile:nth-child(4) .activity-icon {background: #efab8e20; color: #efab8e;}
.activity-tile:nth-child(5) .activity-icon {background: #73d6b520; color: #73d6b5;}
.activity-tile:nth-child(6) .activity-icon {background: #a2adff20; color: #a2adff;}
.activity-tile strong {font-size: 17px;}
.activity-tile p {font-size: 12px; line-height: 1.7;}
.daily-challenge {background: linear-gradient(115deg,#343027,#24282d);}
.next-practice {background: linear-gradient(115deg,#243632,#24282d);}
.home-lower :is(button,a:where([data-view])) {border-radius: 12px;}
.missions-layout {display: grid; grid-template-columns: 1.3fr 1fr; gap: 24px;}
.atlas-note {text-align: center; padding: 24px; border-radius: 24px; background: radial-gradient(ellipse,#6c54322d,transparent 70%);}
.atlas-note .atlas {width: 150px;}
.atlas-note h2 {font-size: 22px;}
.atlas-note p {max-width: 290px; margin: 12px auto; color: #aeb9c8; line-height: 1.8; font-size: 13px;}
.badge-collection {display: grid; grid-template-columns: repeat(4,1fr); gap: 16px;}
.collectible {padding: 25px 14px; text-align: center; border: 1px dashed #394353; border-radius: 20px; background: #19202a;}
.collectible>span {display: grid; place-items: center; width: 60px; height: 66px; margin: 0 auto 16px; font-size: 30px; border-radius: 18px; color: #a1acbb; background: #303948;}
.collectible strong {display: block; font-size: 13px;}
.collectible p {font-size: 11px; color: #aeb9c8;}
.collectible small {font-size: 10px; color: #9da8b8;}
.collectible.earned {border: 1px solid #a78a48; background: linear-gradient(150deg,#3d3423,#1b222c);}
.collectible.earned>span {background: #e7ba55; color: #302817; box-shadow: 0 5px 0 #947035;}
.collectible.earned small {color: #f3d48b;}
.path-intro {display: flex; align-items: center; gap: 20px; padding: 22px; background: #edc56c0e; border: 1px solid #edc56c35; border-radius: 20px; margin: 24px 0;}
.path-intro>span {color: #edc56c; font-size: 30px;}
.path-intro p {flex: 1; color: #b8c2ce; font-size: 13px; line-height: 1.7;}
.path-intro strong {display: block; color: #f0e5cb;}
.path-chapter {border: 1px solid #303743; border-radius: 24px; overflow: hidden; margin: 25px 0; background: #19202a;}
.chapter-heading {display: flex; align-items: center; gap: 15px; background: #242d3a; padding: 22px;}
.chapter-heading h2 {font-size: 20px; margin: 4px 0;}
.chapter-heading>small {margin-left: auto; font-size: 11px; color: #aeb9c8;}
.chapter-number {display: grid; place-items: center; width: 45px; height: 49px; border-radius: 13px; background: #edc56c; color: #211e16; font-size: 22px; font-weight: 800; flex-shrink: 0;}
.path-chapter:nth-of-type(3n) .chapter-number {background: #93b8ec;}
.path-chapter:nth-of-type(3n+1) .chapter-number {background: #83d1b7;}
.learning-trail {display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; padding: 30px;}
.path-step {display: flex; flex-direction: column; align-items: center; text-align: center; border: 0; background: transparent; color: #edf0f5; padding: 12px 10px;}
.path-node {display: grid; place-items: center; width: 70px; height: 70px; border: 2px solid #edc56c66; border-bottom: 7px solid #a38344; border-radius: 24px; background: #32372f; color: #f0ce84; font-size: 24px; font-weight: 800; margin-bottom: 17px; transform: rotate(-3deg); transition: transform .2s,background .2s;}
.path-step:nth-child(even) .path-node {transform: rotate(3deg);}
.path-step:hover .path-node {transform: rotate(0) translateY(-5px); background: #4b4934;}
.path-step.done .path-node {background: #75c9ab; color: #182e27; border-color: #75c9ab; border-bottom-color: #3e8f72;}
.path-step strong {font-size: 13px; line-height: 1.6; max-width: 230px;}
.path-step small {font-size: 10px; color: #aeb9c8; margin-top: 9px;}
.path-step small span {color: #e7c87d;}
.memo-card {border-radius: 26px; border-bottom: 5px solid #486956; background: radial-gradient(ellipse at top,#30463e,#1b222c); animation: card-in .3s ease;}
.memo-answer,.correction,.result {animation: card-in .25s ease;}
.correction.is-wrong {border-color: #e98c80 !important; background: #60312c40 !important; color: #f5b6aa !important;}
.correction.is-correct {background: #245b4640 !important; border-color: #72c5a0 !important;}
.quiz-top {border-radius: 12px;}
.answer {border-radius: 13px;}
#app {animation: card-in .35s ease;}
#reward-confetti {position: fixed; inset: 0; pointer-events: none; z-index: 9999; overflow: hidden;}
#reward-confetti i {position: absolute; left: var(--x); top: -15px; background: var(--color); width: 9px; height: 14px; animation: confetti-drop 1.9s ease-in var(--delay) both;}
@keyframes confetti-drop { 
  to {transform: translateY(105vh) rotate(var(--r)); opacity: 0;} 
}
@keyframes atlas-float { 
  50% {transform: translateY(-5px);} 
}
@keyframes atlas-blink { 
  0%,43%,47%,100% {transform: scaleY(1);} 
  45% {transform: scaleY(.08);} 
}
@keyframes atlas-wave { 
  0%,5%,15%,100% {transform: rotate(0);} 
  8%,12% {transform: rotate(15deg);} 
}
@keyframes card-in { 
  from {opacity: .4; transform: translateY(7px);} 
  to {opacity: 1; transform: translateY(0);} 
}
@media (max-width:1100px) {.experience-hero {grid-template-columns: 1fr;}.launch-card {min-height: 350px;}.guardian-scene {right: 30px; width: 210px;}.badge-collection {grid-template-columns: repeat(2,1fr);}}
@media (max-width:650px) {.launch-card {padding: 25px 22px; min-height: 340px;}.launch-card h2 {font-size: 29px;}.launch-card p {font-size: 11px; max-width: 60%;}.guardian-scene {right: -10px; width: 145px; bottom: 65px;}.atlas-label {font-size: 8px;}.atlas-label span {font-size: 8px;}.launch-card .btn-gold {font-size: 12px;}.experience-hero {gap: 16px;}.mission-card {padding: 22px;}.missions-layout {grid-template-columns: 1fr;}.atlas-note {display: none;}.learning-trail {grid-template-columns: repeat(2,1fr); gap: 10px; padding: 18px 8px;}.chapter-heading {padding: 18px 14px;}.chapter-heading h2 {font-size: 16px;}.chapter-heading>small {display: none;}.path-intro {gap: 12px; flex-wrap: wrap;}.path-intro p {font-size: 12px;}.badge-collection {gap: 10px;}.collectible {padding: 20px 10px;}.activity-tile {padding: 19px;}.quest-row {gap: 9px;}.quest-row strong {font-size: 11px;}.quest-row small {font-size: 9px;}.quest-icon {width: 30px;}.mission-date {font-size: 10px;}}
@media (prefers-reduced-motion:reduce) {*,*::before,*::after {animation: none !important; transition: none !important; scroll-behavior: auto !important;}#reward-confetti {display: none;}}
.sidebar .brand {display: flex; align-items: center; justify-content: flex-start; gap: 12px; position: relative; width: 100%; height: 64px; margin: 0; text-align: left; overflow: visible; letter-spacing: 0;}
.brand-emblem {width: 43px; height: 54px; flex: none; display: block;}
.brand-wordmark {color: #dcaf17; font-family: Manrope,sans-serif; font-size: 25px; letter-spacing: 4px; line-height: 1.2; font-weight: 600;}
.brand-wordmark small {color: #dcaf17; font-size: 9px; letter-spacing: 4px; line-height: 1.4; margin-top: 4px;}
.sidebar nav .nav-title {flex: 1; min-width: 0;}
.sidebar nav :is(button,a:where([data-view])) {gap: 9px; font-size: 12px; min-height: 44px;}
.sidebar nav .icon {width: 18px; flex: none;}
.nav-locked .nav-title,.nav-locked>.icon {filter: none; opacity: .8;}
.premium-lock {flex: none; display: inline-flex; align-items: center; gap: 3px; font-size: 8px; color: #f0ce84; background: #edc56c18; border: 1px solid #edc56c40; border-radius: 5px; padding: 4px; filter: none; letter-spacing: .4px;}
.nav-locked:hover {background: #edc56c10 !important;}
.menu-toggle,.menu-backdrop,.mobile-premium {display: none;}
.premium-feature-gate {position: relative; border: 1px solid #edc56c50; border-radius: 24px; overflow: hidden; background: #1b222c; min-height: 360px; display: grid; place-items: center; padding: 30px;}
.locked-preview {position: absolute; inset: 25px; filter: blur(7px); opacity: .22; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; pointer-events: none;}
.locked-preview div {border-radius: 16px; background: linear-gradient(120deg,#93b8ec70,#eac45f50); height: 105px;}
.locked-preview div:first-child {grid-column: 1/-1;}
.premium-gate-message {position: relative; text-align: center; max-width: 470px; background: #1b222cd9; border: 1px solid #444d5a; padding: 28px; border-radius: 20px;}
.premium-gate-message h2 {margin: 18px 0 12px; font-size: 26px;}
.premium-gate-message p {font-size: 13px; line-height: 1.8;}
.premium-gate-message>strong {display: block; color: #f0ce84; font-size: 29px; margin: 18px 0;}
.premium-gate-message strong small {font-size: 11px; color: #b9c1ca; font-weight: 400;}
.premium-gate-message>small {display: block; font-size: 10px; color: #b9c1ca; line-height: 1.7; margin-top: 15px;}
.gate-free {margin-top: 24px;}
.gate-free p {font-size: 13px;}
.gate-free :is(button,a:where([data-view])) {margin: 4px 8px 4px 0; font-size: 12px;}
.analysis-grid {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 24px;}
.analysis-next h2 {margin-top: 14px;}
.analysis-part h3 {margin-top: 14px;}
.analysis-part p {font-size: 12px;}
.analysis-part small {display: block; color: #aeb9c8; margin: 14px 0;}
.analysis-part :is(button,a:where([data-view])) {font-size: 12px;}
.journal-intro {display: flex; justify-content: space-between; gap: 15px; align-items: center; margin-bottom: 24px;}
.journal-entry {margin-bottom: 15px;}
.journal-entry summary {display: flex; gap: 15px; align-items: center; cursor: pointer; list-style: none;}
.journal-entry summary::-webkit-details-marker {display: none;}
.journal-kind {font-size: 25px; color: #edc56c;}
.journal-entry summary>span:nth-child(2) {flex: 1; min-width: 0;}
.journal-entry strong {font-size: 14px; line-height: 1.5; display: block;}
.journal-entry small {display: block; font-size: 11px; color: #aeb9c8; margin-top: 5px;}
.journal-entry b {color: #edc56c; font-size: 14px; white-space: nowrap;}
.journal-entry pre {white-space: pre-wrap; overflow-wrap: anywhere; font: 13px/1.9 monospace; color: #d6dde7; background: #ffffff05; padding: 18px; border-radius: 12px;}
.journal-entry>p {font-size: 12px; margin-top: 24px;}
@media (max-width:1150px) and (min-width:801px) {.sidebar {width: 230px; padding-left: 16px; padding-right: 16px;}.shell {margin-left: 230px;}.brand-wordmark {font-size: 24px; letter-spacing: 3px;}.brand-wordmark small {letter-spacing: 3.5px;}}
@media (max-width:800px) {.sidebar {position: sticky; top: 0; z-index: 50; display: flex; flex-direction: row; align-items: center; justify-content: space-between; width: 100%; height: 74px; padding: 10px 16px; background: #0c1016; border-right: 0; border-bottom: 1px solid #303743; overflow: visible;}.sidebar .brand {width: auto; height: 54px; gap: 10px;}.brand-emblem {width: 34px; height: 43px;}.brand-wordmark {font-size: 22px; letter-spacing: 3px;}.brand-wordmark small {font-size: 8px; letter-spacing: 3px;}.sidebar .nav-label,.sidebar-bottom {display: none;}.menu-toggle {display: flex; gap: 7px; align-items: center; justify-content: center; min-width: 78px; min-height: 44px; padding: 8px 12px; color: #f0ce84; background: #edc56c12; font-size: 18px;}.menu-toggle span {font-size: 12px;}.sidebar nav {display: none; position: fixed; top: 74px; bottom: 0; left: 0; width: min(330px,90vw); max-height: calc(100dvh - 74px); overflow-y: auto; overscroll-behavior: contain; margin: 0; padding: 16px 14px calc(24px + env(safe-area-inset-bottom)); background: #10161f; box-shadow: 15px 0 50px #0005; z-index: 55; border-right: 1px solid #394353;}.sidebar.menu-open nav {display: block;}.sidebar nav :is(button,a:where([data-view])) {display: flex; width: 100%; white-space: normal; padding: 13px 12px; min-height: 48px; font-size: 14px; margin: 4px 0; text-align: left;}.sidebar nav :is(button,a:where([data-view])):hover {transform: none;}.sidebar nav .icon {font-size: 20px; width: 22px;}.sidebar nav .count {display: block;}.sidebar nav .premium-lock {font-size: 9px;}.sidebar nav .mobile-premium {display: flex; margin-top: 18px; border: 1px solid #edc56c55; color: #edc56c;}.menu-backdrop:not([hidden]) {display: block; position: fixed; inset: 74px 0 0; z-index: 40; background: #0009; border: 0; border-radius: 0; padding: 0; backdrop-filter: blur(3px);}.mobile-menu-open {overflow: hidden;}.shell {margin-left: 0;}.shell>header {height: 58px; padding: 0 16px; gap: 10px;}.shell>header>span {display: none;}.shell>header>div {width: 100%; justify-content: space-between; gap: 12px;}.account-menu summary {max-width: 190px; min-height: 44px; display: flex; align-items: center; font-size: 13px;}.account-dropdown {max-width: calc(100vw - 32px); width: 280px; top: 48px; z-index: 35;}.top-streak {font-size: 13px; white-space: nowrap;}main {padding: 24px 16px; min-width: 0;}.heading {flex-direction: column; align-items: stretch; gap: 16px; margin-bottom: 24px;}.heading h1 {font-size: 27px; line-height: 1.25; overflow-wrap: anywhere;}.heading p {font-size: 13px;}.heading select {max-width: none; width: 100%; min-height: 44px; font-size: 16px; padding: 11px 15px;}.heading>div,.heading>label {min-width: 0;}.experience-hero,.missions-layout,.home-grid,.home-lower,.case-layout,.mc-layout,.premium-layout,.layout {grid-template-columns: minmax(0,1fr);}.experience-hero {margin-top: 20px;}.activity-grid,.programme-grid {grid-template-columns: repeat(2,minmax(0,1fr));}.activity-tile {min-width: 0; min-height: 205px; padding: 18px;}.activity-tile strong {font-size: 15px;}.activity-tile p {font-size: 12px;}.activity-meta {font-size: 10px; line-height: 1.6;}.activity-icon {font-size: 26px; margin-bottom: 12px;}.panel {padding: 22px; min-width: 0;}.section-head {flex-wrap: wrap; gap: 12px;}.section-head h2 {font-size: 21px; margin: 0;}.section-head .tag {font-size: 9px;}.launch-card .btn-gold {min-height: 48px; font-size: 13px;}.hero-secondary {min-height: 44px; display: flex; align-items: center;}.mission-link {min-height: 44px; line-height: 1.7;}.quest-reward {min-height: 46px; min-width: 65px;}.quest-row strong {font-size: 12px;}.quest-row small {font-size: 11px;}.mission-card>p {font-size: 13px;}.mission-date {font-size: 12px;}.quest-icon {width: 34px;}.badge-collection {grid-template-columns: repeat(2,minmax(0,1fr));}.path-intro {flex-wrap: wrap;}.path-intro p {min-width: 180px;}.path-intro .btn-gold {width: 100%;}.path-step {min-height: 160px;}.path-step strong {font-size: 12px;}.path-step small {font-size: 11px;}.path-node {width: 64px; height: 66px;}.programme-search input,.mc-paper input,.mc-paper textarea,.account-form input,.account-form select,.activity-toolbar select {font-size: 16px !important; min-height: 44px;}.mc-toolbar {flex-direction: column; align-items: stretch;}.mc-toolbar label {flex-direction: column; align-items: flex-start; width: 100%;}.mc-toolbar select {width: 100%; max-width: 100%; font-size: 16px;}.mc-fields {grid-template-columns: 1fr;}.mc-paper-head {flex-direction: column;}.mc-paper textarea {min-height: 350px; line-height: 28px;}.mc-buttons :is(button,a:where([data-view])) {width: 100%; min-height: 48px;}.mc-rubric strong {font-size: 13px;}.case-events li {display: flex; gap: 10px; align-items: flex-start; flex-wrap: wrap; padding: 14px;}.case-events p {flex: 1; min-width: 150px; font-size: 13px;}.case-events li>div {display: flex; gap: 8px; margin-left: auto;}.case-events :is(button,a:where([data-view])) {min-width: 44px; min-height: 44px; padding: 9px;}.case-feedback pre,.mc-model pre {overflow-wrap: anywhere;}.activity-tabs {display: flex; width: 100%; gap: 8px;}.activity-tabs :is(button,a:where([data-view])) {flex: 1; min-width: 0; min-height: 48px; font-size: 12px; padding: 10px;}.memo-card {padding: 26px 20px; min-height: 360px;}.memo-card h2 {font-size: 21px; line-height: 1.6;}.memo-actions {flex-wrap: wrap;}.memo-actions :is(button,a:where([data-view])) {min-height: 48px; flex: 1;}.daily-row {align-items: stretch; flex-direction: column;}.daily-row :is(button,a:where([data-view])) {width: 100%;}.exam-rules {grid-template-columns: 1fr;}.exam-outline ul {grid-template-columns: 1fr;}.allowance {padding: 20px; gap: 15px;}.allowance strong {font-size: 17px;}.allowance p {font-size: 12px;}.allowance :is(button,a:where([data-view])) {min-height: 48px;}.analysis-grid {grid-template-columns: 1fr;}.journal-intro {align-items: stretch; flex-direction: column;}.journal-entry {padding: 18px;}.journal-entry summary {gap: 10px;}.journal-entry strong {font-size: 13px;}.journal-entry b {font-size: 12px;}.journal-entry pre {padding: 13px; font-size: 12px;}.premium-feature-gate {padding: 16px; min-height: 370px;}.premium-gate-message {padding: 24px 18px; width: 100%;}.premium-gate-message h2 {font-size: 23px;}.premium-gate-message .btn-gold {width: 100%; min-height: 48px;}.gate-free :is(button,a:where([data-view])) {width: 100%; min-height: 48px; margin: 6px 0;}.premium-card .price {font-size: 32px;}.premium-card :is(button,a:where([data-view])) {width: 100%; min-height: 48px;}.premium-card li {font-size: 13px; line-height: 1.8;}.stats {grid-template-columns: repeat(2,minmax(0,1fr));}.stat {min-width: 0; padding: 15px 12px; gap: 10px;}.stat strong {font-size: 22px;}.stat-icon {padding: 8px;}footer {padding: 24px 16px calc(24px + env(safe-area-inset-bottom)); font-size: 11px; line-height: 1.7; flex-direction: column; align-items: flex-start;}.premium-layout,.cards,.right {grid-template-columns: 1fr;}dialog {width: calc(100% - 24px); max-width: 720px; max-height: calc(100dvh - 24px); margin: auto; padding: 22px 18px; border-radius: 20px; overflow-y: auto; overscroll-behavior: contain;}#quiz .quiz-title {font-size: 21px; line-height: 1.55;}#quiz .answer {min-height: 52px; padding: 14px; font-size: 14px; text-align: left; line-height: 1.6; overflow-wrap: anywhere;}.quiz-actions {flex-wrap: wrap;}.quiz-actions :is(button,a:where([data-view])) {min-height: 48px; flex: 1;}.quiz-top {gap: 8px; flex-wrap: wrap;}.quiz-top>:is(button,a:where([data-view])) {min-width: 44px; min-height: 44px;}.question-clock {font-size: 18px; min-width: 70px;}.result-score {font-size: 48px;}.result-review summary {font-size: 13px; line-height: 1.6;}.correction {font-size: 13px; line-height: 1.8;}.correction a {overflow-wrap: anywhere;}.account-form :is(button,a:where([data-view])) {min-height: 48px; width: 100%;}#toast {max-width: calc(100vw - 32px); font-size: 13px; bottom: calc(20px + env(safe-area-inset-bottom)); white-space: normal;}.tag {max-width: 100%; white-space: normal; line-height: 1.5;}}
@media (max-width:480px) {.activity-grid,.programme-grid {grid-template-columns: 1fr;}.activity-tile {min-height: 160px;}.activity-tile p {margin-bottom: 15px;}.launch-card {min-height: 390px; padding: 25px 20px;}.launch-card h2 {font-size: 30px; max-width: 100%; margin-bottom: 18px;}.launch-card p {max-width: 60%; font-size: 12px;}.guardian-scene {width: 145px; right: 0; bottom: 110px;}.launch-card .btn-gold {margin-top: 32px; width: 100%; position: relative; z-index: 2;}.hero-secondary {font-size: 12px;}.atlas-label {font-size: 8px;}.atlas-label span {font-size: 8px;}.mission-card {padding: 22px 18px;}.quest-row {gap: 9px;}.quest-row strong {font-size: 12px;}.quest-row small {font-size: 10px;}.quest-reward {min-width: 60px;}.quest-icon {width: 30px;}.mission-heading .eyebrow {letter-spacing: 1px; font-size: 10px;}.learning-trail {padding: 20px 8px; gap: 12px;}.chapter-heading {padding: 18px 14px;}.chapter-heading h2 {font-size: 16px;}.chapter-heading>small {display: none;}.collectible {padding: 22px 10px;}.collectible p {font-size: 11px;}.heading h1 {font-size: 26px;}.stats {gap: 10px;}.stat {flex-direction: column; align-items: flex-start;}.journal-entry summary {flex-wrap: wrap;}.journal-entry b {margin-left: 35px;}.path-intro p {min-width: 160px;}}
@media (max-width:360px) {main {padding-left: 12px; padding-right: 12px;}.sidebar {padding-left: 12px; padding-right: 12px;}.brand-wordmark {font-size: 20px; letter-spacing: 2px;}.menu-toggle {min-width: 70px; padding: 8px;}.launch-card h2 {font-size: 27px;}.guardian-scene {width: 125px; right: -5px;}.mission-card {padding: 20px 14px;}.quest-row small {font-size: 9px;}.quest-reward {min-width: 55px;}.badge-collection {gap: 10px;}.quest-icon {width: 27px;}.premium-gate-message>strong {font-size: 26px;}}
@media (max-width:800px) and (orientation:landscape) {dialog {max-height: calc(100dvh - 16px); margin: 8px auto;}.sidebar {height: 64px;}.sidebar nav {top: 64px; max-height: calc(100dvh - 64px);}.menu-backdrop:not([hidden]) {top: 64px;}}
@media (max-width:480px) {.launch-card {min-height: 435px;}.guardian-scene {width: 135px; bottom: 115px;}.launch-card h2 {position: relative; z-index: 2;}.launch-card .btn-gold {margin-top: 55px;}.launch-card .hero-secondary {margin-top: 8px;}}
@media (max-width:800px) {.sidebar .premium-lock {min-width: 48px; justify-content: center;}.answers .answer>span {flex: none;}.result-review p,.case-feedback pre,.mc-model pre {overflow-wrap: anywhere;}.mission-heading .eyebrow {margin-bottom: 0;}.brand-wordmark small {font-family: 'DM Sans',sans-serif;}.mobile-menu-open .shell {pointer-events: none;}}
.sidebar .brand {justify-content: center;}
.training-size {display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px; border: 1px solid #edc56c35; border-radius: 16px; background: #edc56c08; margin-top: 24px;}
.training-size strong {display: block; font-size: 14px;}
.training-size small {display: block; color: #aeb9c8; font-size: 11px; margin-top: 8px; line-height: 1.7;}
.chapter-session {font-size: 11px; white-space: nowrap;}
.programme-part .section-head {flex-wrap: wrap;}
.programme-part .section-head h2 {flex: 1; min-width: 220px;}
@media (max-width:800px) {.sidebar .brand {justify-content: flex-start;}.training-size {flex-direction: column; align-items: stretch; gap: 15px;}.training-size select {font-size: 16px; min-height: 48px;}.chapter-session {min-height: 44px;}.programme-part .section-head h2 {min-width: 0;}}
.sidebar .brand {height: 70px; min-height: 70px; margin-bottom: 18px; gap: 11px;}
.sidebar .brand-emblem {width: 37px; height: 46px;}
.sidebar .brand-wordmark {font-family: Manrope,"Avenir Next",sans-serif; font-weight: 800; font-size: 26px; letter-spacing: 2.3px; line-height: 1.05; color: #e5be60;}
.sidebar .brand-wordmark small {font-family: "DM Sans","Avenir Next",sans-serif; font-weight: 500; font-size: 8px; letter-spacing: 3.25px; line-height: 1.5; margin-top: 7px; color: #c6b48b;}
.sidebar #nav {flex: 1; min-height: 0; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #343c48 transparent;}
.nav-group {margin: 0 0 18px;}
.nav-group-label {margin: 0 10px 7px; font: 600 9px/1.5 "DM Sans",sans-serif; text-transform: uppercase; letter-spacing: 1.5px; color: #8390a3;}
.sidebar nav .nav-group :is(button,a:where([data-view])) {min-height: 42px; padding: 10px; margin: 1px 0; border-radius: 9px; font-size: 12px; gap: 10px; line-height: 1.4;}
.sidebar nav .nav-group :is(button,a:where([data-view])):hover {transform: none; background: #ffffff06;}
.sidebar nav .nav-group :is(button,a:where([data-view])).active {background: #edc56c12; border-color: #edc56c26; box-shadow: inset 3px 0 #e5be60;}
.sidebar nav .nav-group .icon {font-size: 17px; text-align: center; color: #8996aa;}
.sidebar nav .nav-group :is(button,a:where([data-view])).active .icon {color: #e5be60;}
.nav-group-premium {padding-top: 15px; border-top: 1px solid #ffffff0b;}
.nav-group-premium .nav-group-label {color: #b7a276;}
.sidebar-bottom {flex: none; padding-top: 14px; border-top: 1px solid #ffffff0b;}
.sidebar-bottom .premium-link {font-size: 12px; min-height: 44px; border-radius: 10px;}
.sidebar-bottom>small {font-size: 10px;}
@media (min-width:801px) {.sidebar {overflow: hidden; padding-top: 20px; padding-bottom: 18px;}}
@media (max-width:800px) {.sidebar .brand {height: 50px; min-height: 50px; margin-bottom: 0; gap: 9px;}.sidebar .brand-emblem {width: 30px; height: 38px;}.sidebar .brand-wordmark {font-size: 23px; letter-spacing: 2px;}.sidebar .brand-wordmark small {font-size: 7px; letter-spacing: 2.8px; margin-top: 5px;}.sidebar #nav {padding-top: 20px;}.sidebar nav .nav-group :is(button,a:where([data-view])) {min-height: 48px; font-size: 14px; padding: 12px;}.nav-group {margin-bottom: 22px;}.nav-group-label {font-size: 10px; margin-bottom: 8px;}.sidebar nav .nav-group .icon {font-size: 19px;}}
.sidebar .brand-wordmark small {margin-top: 2px; line-height: 1.2; letter-spacing: 2.65px;}
.sidebar .brand-wordmark {line-height: 1.05;}
.privacy-links {display: flex; gap: 14px; flex-wrap: wrap;}
.privacy-links :is(button,a:where([data-view])) {border: 0; background: none; padding: 8px 0; color: #aab5c3; font-size: 11px; min-height: 44px;}
.legal-panel p,.legal-panel li {font-size: 14px; line-height: 1.8; color: #b4becc;}
.legal-panel h2 {margin-top: 24px;}
.privacy-actions {display: flex; gap: 12px; flex-wrap: wrap; margin-top: 20px;}
.privacy-danger {color: #ffb6b6; border-color: #ff929244;}
.auth-providers {display: grid; gap: 10px; margin: 20px 0;}
.auth-providers :is(button,a:where([data-view])) {min-height: 48px;}
.auth-providers :is(button,a:where([data-view])):disabled {opacity: .7;}
.local-account-note {padding: 16px; border: 1px solid #edc56c30; border-radius: 12px; font-size: 13px; line-height: 1.7;}
.legal-table {width: 100%; border-collapse: collapse; font-size: 12px;}
.legal-table th,.legal-table td {text-align: left; padding: 12px 8px; border-bottom: 1px solid #303743; overflow-wrap: anywhere;}
.legal-table-wrap {overflow-x: auto;}
.auth-top .brand-emblem {width: 32px; height: 42px;}
.auth-top .brand-wordmark {font-size: 22px;}
.auth-top {display: flex; justify-content: space-between;}
.auth-top .brand {height: auto;}
.auth-top .brand-wordmark small {font-size: 8px; margin-top: 2px;}
@media (max-width:800px) {.sidebar .brand-wordmark small {margin-top: 2px; letter-spacing: 2.5px;}.privacy-actions :is(button,a:where([data-view])) {width: 100%; min-height: 48px;}.privacy-links {gap: 12px;}.legal-panel {padding: 20px;}.legal-table th,.legal-table td {padding: 10px 6px;}}
@media (max-width:800px) {.shell>header {position: relative; z-index: 30; min-width: 0;}.shell>header>div {min-width: 0;}.shell>header .account-menu {position: static; min-width: 0; flex-shrink: 1;}.shell>header .account-menu summary {max-width: min(190px,55vw);}.shell>header .account-dropdown {position: absolute; left: 16px; right: 16px; top: calc(100% - 2px); width: auto; max-width: none; min-width: 0; z-index: 35; box-sizing: border-box; overflow-wrap: anywhere; max-height: calc(100dvh - 160px); overflow-y: auto; overscroll-behavior: contain;}.shell>header .account-dropdown :is(button,a:where([data-view])),.shell>header .account-dropdown a {min-height: 44px; white-space: normal; overflow-wrap: anywhere;}}
