/* liplip build 113 stylesheet bundle.
 * Generated from 28 ordered source stylesheets to preserve cascade order.
 * Do not edit directly; update source stylesheets and regenerate the bundle.
 */

/* ===== frontend/styles/tokens.css ===== */
/* Shared design tokens for all new frontend work. Existing legacy CSS can migrate gradually. */
:root {
  --ui-bg: #fbf9f5;
  --ui-surface: #fffdf8;
  --ui-surface-muted: #f4eee3;
  --ui-text: #2b2632;
  --ui-text-muted: #746877;
  --ui-border: #ded2dc;
  --ui-accent: #684d78;
  --ui-accent-strong: #4d4059;
  --ui-danger: #d92f45;
  --ui-success: #188b4d;

  --ui-font-ar: 'Readex Pro', system-ui, sans-serif;
  --ui-font-latin: 'DM Sans', system-ui, sans-serif;

  --ui-space-1: 4px;
  --ui-space-2: 8px;
  --ui-space-3: 12px;
  --ui-space-4: 16px;
  --ui-space-5: 20px;
  --ui-space-6: 24px;
  --ui-space-8: 32px;
  --ui-space-10: 40px;
  --ui-space-12: 48px;

  --ui-radius-sm: 10px;
  --ui-radius-md: 16px;
  --ui-radius-lg: 24px;
  --ui-radius-xl: 34px;
  --ui-radius-pill: 999px;

  --ui-shadow-1: 0 4px 14px rgb(44 35 51 / 8%);
  --ui-shadow-2: 0 14px 34px rgb(44 35 51 / 12%);

  --ui-content-sm: 640px;
  --ui-content-md: 920px;
  --ui-content-lg: 1180px;
  --ui-tap-min: 44px;

  --ui-z-base: 0;
  --ui-z-nav: 20;
  --ui-z-sheet: 50;
  --ui-z-modal: 100;
  --ui-z-toast: 150;

  --ui-motion-fast: 120ms;
  --ui-motion-normal: 220ms;
  --ui-ease: cubic-bezier(.2,.8,.2,1);
}

[dir='rtl'] { --ui-inline-start: right; --ui-inline-end: left; }
[dir='ltr'] { --ui-inline-start: left; --ui-inline-end: right; }

.ui-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
}


/* ===== styles.css ===== */
:root{font-family:'Readex Pro',sans-serif;color:#22233c;background:#fbf9f5;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8c63d0;outline-offset:3px}svg{flex-shrink:0}h1,h2,h3,p{margin-top:0}.wrap{max-width:1260px;margin:auto;padding-inline:34px}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding-inline:max(4.5vw,24px);border-bottom:1px solid #eae7e4;background:#fbf9f5;position:relative;z-index:5}.logo{font-family:'DM Sans',sans-serif;font-weight:800;font-size:34px;letter-spacing:-2.5px;display:inline-flex;align-items:baseline;direction:ltr;color:#2c2c4b}.logo span:nth-child(2){color:#ee80a6}.logo span:nth-child(3){color:#8e70cd}.logo span:nth-child(4){color:#efaa58}.logo i{width:8px;height:8px;background:#9acb91;border-radius:50%;margin-inline-start:3px}.top-actions{display:flex;align-items:center;gap:22px}.header-note{font-size:12px;font-weight:600;color:#838397}.header-button{border:1.5px solid #2b2b4c;background:#fff;border-radius:999px;color:#2b2b4c;padding:10px 17px;display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:700;transition:.2s}.header-button:hover{background:#2b2b4c;color:white}.header-button svg,.cta svg,.text-link svg{transform:rotate(180deg)}.section-kicker{display:block;font-size:12px;font-weight:700;letter-spacing:.01em;color:#8b64bb}.landing{overflow:hidden}.hero{min-height:630px;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.hero-copy{padding-block:54px}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:#eaf4e4;border:1px solid #d9ebd4;color:#497d62;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:700}.hero h1{font-size:clamp(50px,5.3vw,82px);font-weight:700;line-height:1.36;letter-spacing:-.055em;margin:20px 0 15px}.hero h1 em{font-style:normal;color:#b27ac9}.hero-copy>p{font-size:17px;line-height:2;max-width:520px;color:#6c7084}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:30px}.cta{border:1.5px solid #252845;border-radius:999px;background:#ffd572;box-shadow:0 5px 0 #252845;color:#252845;padding:15px 24px;min-height:55px;display:inline-flex;justify-content:center;align-items:center;gap:20px;font-size:14px;font-weight:700;transition:transform .2s,box-shadow .2s;white-space:nowrap}.cta:hover{transform:translateY(-2px);box-shadow:0 7px 0 #252845}.cta:active{transform:translateY(3px);box-shadow:0 2px 0 #252845}.aside-note{font-size:12px;color:#87899a}.hero-foot{margin-top:31px;color:#787d8c;font-size:12px;display:flex;align-items:center;gap:8px}.tiny-mark{width:21px;height:21px;display:grid;place-items:center;background:#dcefd8;border-radius:50%;color:#4e8f69}.hero-art{height:530px;position:relative;display:grid;place-items:center;direction:ltr}.orbit{position:absolute;border:1.5px dashed #c9bbde;border-radius:50%}.orbit-one{width:510px;height:510px;transform:rotate(18deg)}.orbit-two{width:370px;height:370px;border-color:#f1d0ce}.art-blob{position:absolute;background:#e9dcf6;width:420px;height:420px;border-radius:53% 47% 60% 40%/47% 61% 39% 53%;transform:rotate(-20deg)}.art-main{width:305px;height:345px;background:white;border:2px solid #33304d;border-radius:31px;box-shadow:12px 13px 0 #3a3458;position:relative;z-index:1;transform:rotate(-6deg);display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden}.art-icon{color:#8d72cf;background:#f1eafd;width:190px;height:175px;border-radius:44% 56% 49% 51%;display:grid;place-items:center;transform:rotate(8deg)}.art-icon svg{transform:rotate(-8deg)}.art-line{height:8px;width:126px;background:#e6e0f0;border-radius:10px;margin-top:24px}.art-line.short{width:85px;margin-top:10px}.art-main strong{font-size:16px;margin-top:24px;color:#4b476b;direction:rtl}.word-card{position:absolute;z-index:2;background:#fff;border:1.5px solid #30334d;border-radius:14px;box-shadow:4px 5px 0 #30334d;padding:13px 16px;display:flex;gap:10px;align-items:center;font-family:'DM Sans','Readex Pro',sans-serif;font-weight:700;font-size:15px}.word-one{top:66px;right:12px;transform:rotate(9deg)}.word-two{bottom:77px;left:10px;transform:rotate(-8deg)}.word-three{bottom:45px;right:0;transform:rotate(6deg)}.word-dot{width:10px;height:10px;border-radius:50%}.pink{background:#f4a0b9}.mint{background:#9fd3ab}.gold{background:#f2c46e}.art-spark{position:absolute;color:#eaae56;z-index:2}.spark-one{top:72px;left:40px}.spark-two{bottom:88px;right:70px;color:#a2c995}.marquee{background:#eee8f7;border-block:1px solid #e2d8f1;padding:24px 0}.marquee-inner{display:flex;align-items:center;justify-content:space-around;gap:20px}.marquee span{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700;color:#605579;white-space:nowrap}.marquee svg{color:#987bbf}.marquee i{width:5px;height:5px;border-radius:50%;background:#a98dcb}.features{text-align:center;padding-top:92px;padding-bottom:94px}.features h2{font-size:clamp(34px,3.5vw,51px);line-height:1.4;margin:10px 0}.section-lead{color:#777a8c;font-size:15px;line-height:1.9}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:right;margin-top:46px}.feature{border-radius:25px;min-height:265px;padding:29px 28px;border:1px solid #e6e2e8;position:relative}.feature-lilac{background:#f1eafb}.feature-peach{background:#fff0e9}.feature-mint{background:#eaf3e7}.feature-icon,.tile-icon{height:55px;width:55px;border-radius:16px;display:grid;place-items:center;color:#342f58;background:#fff;border:1px solid #e9e2ec}.feature-number{position:absolute;left:30px;top:37px;font:700 13px 'DM Sans';color:#a29aaa}.feature h3{font-size:22px;margin:27px 0 9px}.feature p{font-size:13px;color:#747687;line-height:1.9;max-width:290px;margin:0}.end-banner{margin-bottom:88px;background:#373052;border-radius:29px;padding-block:38px;display:flex;align-items:center;justify-content:space-between;gap:22px}.end-banner .section-kicker{color:#cdb6ed}.end-banner h2{color:#fff;font-size:32px;margin:8px 0 0}.cta-light{background:#f8dd86}.footer{border-top:1px solid #e7e4e0;padding:25px 0;color:#8b8c9b;font-size:12px}.footer .wrap{display:flex;justify-content:space-between;gap:15px}.auth-layout{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1fr 1fr}.auth-art{background:#eae0f8;display:grid;place-items:center;min-height:650px;padding:50px;overflow:hidden;position:relative}.auth-art:before{content:'';width:570px;height:570px;border:2px dashed #c5acdf;border-radius:50%;position:absolute}.auth-art-content{text-align:center;max-width:430px;position:relative}.auth-art-icon{width:210px;height:210px;border-radius:48% 52% 60% 40%;background:#fff;border:2px solid #35304e;box-shadow:10px 10px 0 #bca7dc;display:grid;place-items:center;color:#ac86d6;margin:0 auto 38px;transform:rotate(-10deg)}.auth-art-icon svg{transform:rotate(10deg)}.auth-art h2{font-size:42px;line-height:1.5;margin:9px 0}.auth-art p{color:#716882;line-height:1.9}.auth-bubble{position:absolute;border:1.5px solid #373052;background:#fff;padding:10px 16px;border-radius:14px;font-weight:700;box-shadow:4px 4px 0 #373052}.bubble-a{top:25px;right:-40px;transform:rotate(9deg)}.bubble-b{bottom:46px;left:-60px;transform:rotate(-9deg)}.auth-panel{display:grid;place-items:center;padding:50px 30px}.form-card{width:min(100%,445px)}.back{background:none;border:0;color:#818395;font-size:12px;display:flex;align-items:center;gap:8px;padding:0;margin-bottom:35px}.back svg{transform:rotate(180deg)}.form-card h1{font-size:39px;margin:9px 0 9px;line-height:1.4}.muted{color:#797d8e;line-height:1.9;font-size:14px}.form-card .muted{margin-bottom:24px}.tabs{background:#f1efef;border-radius:14px;padding:5px;display:flex;margin-bottom:22px}.tabs button{flex:1;border:0;background:transparent;border-radius:10px;padding:12px;color:#828396;font-size:13px;font-weight:700}.tabs button.active{background:white;box-shadow:0 2px 8px #30264516;color:#3d315b}.field{margin-bottom:17px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.field input,.field select{width:100%;min-height:51px;border:1.5px solid #dedce2;background:#fff;border-radius:12px;padding:12px 14px;color:#292a46;outline:none}.field input:focus,.field select:focus{border-color:#9b77ca;box-shadow:0 0 0 3px #9b77ca2e}.field input::placeholder{color:#aaa9b4}.field small{display:block;margin-top:6px;font-size:11px;color:#848698;line-height:1.6}.full{width:100%}.guest-button{width:100%;margin-top:18px;padding:15px;border:1.5px solid #b9a4da;border-radius:13px;background:#f4eefc;display:flex;align-items:center;gap:10px;color:#614a8b;font-size:14px;font-weight:700}.guest-button:hover{background:#e9ddf8}.guest-button span{font-size:11px;color:#8b75ae;margin-inline-start:auto}.divider{display:flex;align-items:center;gap:12px;color:#a0a0ad;font-size:12px;margin:23px 0}.divider:before,.divider:after{content:'';height:1px;background:#e5e3e7;flex:1}.social{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;direction:ltr}.social button{border:1.5px solid #e2dfe6;background:#fff;color:#45455d;border-radius:12px;min-height:53px;display:flex;align-items:center;justify-content:center;gap:7px;font:700 11px 'DM Sans',sans-serif}.social button:hover{border-color:#a58acb}.notice{font-size:11px;color:#838595;line-height:1.8;margin-top:17px}.notice.error{color:#af5264}.profile-shell{max-width:760px;margin:55px auto 95px;padding-inline:25px}.step-line{display:flex;justify-content:space-between;color:#8d73b8;font-weight:700;font-size:12px}.progress{height:8px;background:#e8e5ec;border-radius:10px;margin:13px 0 39px;overflow:hidden}.progress span{display:block;height:100%;background:#b195d8;border-radius:10px}.profile-shell h1{font-size:42px;line-height:1.4;margin:6px 0 10px}.lead{color:#767b8d;line-height:2;font-size:14px;margin-bottom:29px}.form-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.span-2{grid-column:1/-1}.profile-shell .cta{margin-top:12px}.question{border:1.5px solid #e6e0eb;background:white;border-radius:17px;padding:20px;margin:0 0 14px}.question legend{font-size:15px;font-weight:700;padding:0 7px}.question legend span{display:inline-block}.answers{display:grid;grid-template-columns:1fr 1fr;gap:9px}.answers label{border:1.5px solid #e2dfe6;border-radius:10px;padding:13px;cursor:pointer;font:600 13px 'DM Sans',sans-serif}.answers label:has(input:checked){border-color:#9373c9;background:#f3edfb}.answers input{margin-right:8px;accent-color:#8969c2}.app-layout{min-height:calc(100vh - 82px)}.mainnav{background:#fff;border-bottom:1px solid #eae6e3;display:flex;justify-content:center;gap:9px;padding:10px}.navitem{border:0;background:transparent;border-radius:12px;color:#818496;padding:13px 21px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700}.navitem.active{background:#f0e9fa;color:#684e97}.navitem:hover{color:#684e97}.dashboard{max-width:1170px;margin:auto;padding:60px 30px 85px}.dash-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dash-intro h1{font-size:clamp(38px,4vw,57px);margin:10px 0;line-height:1.4}.dash-intro p{color:#818395;font-size:14px}.badge{display:inline-flex;align-items:center;gap:8px;background:#e9f4e6;color:#517c5d;border-radius:999px;padding:11px 16px;font-size:12px;font-weight:700;white-space:nowrap}.welcome-card{border-radius:29px;background:#eae0f7;margin-top:26px;min-height:290px;padding:42px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative}.welcome-text{position:relative;z-index:2}.welcome-card h2{font-size:36px;margin:12px 0 7px}.welcome-card p{max-width:520px;color:#716782;line-height:1.9;font-size:14px}.text-link{background:none;border:0;color:#60468e;font-size:13px;font-weight:700;padding:10px 0;display:inline-flex;align-items:center;gap:6px}.welcome-art{position:relative;width:220px;height:200px;display:grid;place-items:center;color:#a581ce}.welcome-art>span{position:relative;z-index:2;background:#fff;border:2px solid #433956;box-shadow:8px 8px 0 #63527e;width:170px;height:170px;display:grid;place-items:center;border-radius:45% 55% 45% 55%;transform:rotate(-12deg)}.welcome-art>span svg{transform:rotate(12deg)}.welcome-art i{position:absolute;right:8px;top:0;color:#e6a765}.welcome-orbit{position:absolute;width:245px;height:245px;border:2px dashed #c5addc;border-radius:50%}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.dashboard-grid article{border:1px solid #e8e4e6;border-radius:24px;padding:27px;background:#fff}.dashboard-grid article:nth-child(2){background:#fff3db}.tile-icon.lilac{background:#eee8fa;color:#815eb3}.tile-icon.peach{background:#ffdfad;color:#aa793f}.dashboard-grid h3{font-size:20px;margin:19px 0 8px}.dashboard-grid p{font-size:13px;line-height:1.9;color:#818394;margin:0}.coming{min-height:58vh;display:grid;place-items:center;text-align:center;padding:50px 20px}.coming-inner{max-width:530px}.coming-icon{margin:0 auto 25px;width:112px;height:112px;border-radius:32px;background:#f0e8fa;display:grid;place-items:center;color:#8f6bc5}.coming h1{font-size:43px;margin:11px 0}.coming p{font-size:14px;color:#777d8e;line-height:2;margin-bottom:25px}@media(max-width:1050px) and (min-width:701px){.app-layout{display:grid;grid-template-columns:92px 1fr}.mainnav{border-bottom:0;border-left:1px solid #eae6e3;flex-direction:column;justify-content:flex-start;gap:12px;padding:26px 8px}.navitem{width:100%;flex-direction:column;gap:5px;font-size:11px;padding:12px 4px}.navitem svg{width:25px;height:25px}.hero-art{transform:scale(.85);margin-inline:-30px}.word-card{font-size:13px}}@media(max-width:800px){.hero{grid-template-columns:1fr;gap:0;padding-top:36px}.hero-copy{padding-bottom:0}.hero-art{height:430px;transform:scale(.8);margin:-25px auto;width:100%}.feature-grid{grid-template-columns:1fr}.feature{min-height:0}.auth-layout{grid-template-columns:1fr}.auth-art{display:none}.end-banner{margin-inline:22px}}@media(max-width:700px){.topbar{height:68px;padding-inline:20px}.logo{font-size:29px}.header-note{display:none}.header-button{font-size:11px;padding:9px 12px}.wrap{padding-inline:21px}.hero{padding-top:20px}.hero h1{font-size:clamp(43px,10.6vw,67px)}.hero-copy>p{font-size:14px}.hero-actions{gap:11px;flex-wrap:wrap}.aside-note{font-size:11px}.hero-art{height:345px;transform:scale(.67);margin:-55px auto -30px;min-width:420px;position:relative;left:50%;translate:-50% 0}.marquee{padding:19px 0}.marquee-inner{justify-content:center}.marquee span{font-size:12px}.marquee span:nth-of-type(2),.marquee i{display:none}.features{padding-top:68px;padding-bottom:70px}.features h2{font-size:35px}.feature-grid{margin-top:28px}.feature{padding:25px}.end-banner{padding:29px;display:block;margin-bottom:65px}.end-banner h2{font-size:28px;margin-bottom:25px}.footer .wrap{flex-direction:column}.auth-panel{padding:34px 23px}.form-card h1{font-size:35px}.profile-shell{margin:34px auto 90px}.profile-shell h1{font-size:35px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.answers{grid-template-columns:1fr}.app-layout{padding-bottom:75px}.mainnav{position:fixed;bottom:0;left:0;right:0;z-index:10;border-top:1px solid #eae6e3;border-bottom:0;justify-content:space-around;gap:0;padding:7px 3px max(8px,env(safe-area-inset-bottom))}.navitem{flex-direction:column;gap:4px;font-size:10px;padding:7px 2px;min-width:60px}.navitem svg{width:21px;height:21px}.dashboard{padding:34px 20px 55px}.dash-intro{display:block}.dash-intro h1{font-size:36px}.badge{margin-top:9px}.welcome-card{padding:30px;min-height:230px}.welcome-card h2{font-size:29px}.welcome-art{display:none}.dashboard-grid{grid-template-columns:1fr}.coming h1{font-size:34px}}@media(max-width:390px){.social button{gap:3px;font-size:10px}.hero-art{transform:scale(.6);margin-top:-70px}.navitem{min-width:55px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Shared study and conversation progress */
.level-hero{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#eee7fa;border:1px solid #e3d9f0;border-radius:29px;margin-top:27px;padding:40px 43px;min-height:300px;overflow:hidden}.level-copy{max-width:680px;position:relative;z-index:1}.level-value{font:800 clamp(65px,8vw,104px)/1 'DM Sans',sans-serif;color:#56417b;display:flex;align-items:center;gap:24px;direction:ltr;justify-content:flex-end;margin:14px 0}.level-value small{font:600 14px 'Readex Pro',sans-serif;color:#7b6b96;direction:rtl}.level-copy>p{font-size:13px;color:#716580;line-height:2;max-width:620px}.level-symbol{color:#a486cc;background:#fff9;border:2px dashed #c7b6e0;width:205px;height:205px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.level-track{display:flex;gap:6px;direction:ltr;margin-top:26px}.level-track span{flex:1;min-width:40px;text-align:center;border-radius:999px;background:#ddd1ee;color:#8c7da6;padding:8px 4px;font:700 12px 'DM Sans',sans-serif}.level-track span.current{background:#47375f;color:#fff}.level-track span.passed{background:#9ccba7;color:#284937}.overview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.overview-stats article{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #e9e5e9;border-radius:19px;padding:20px}.overview-stats article>span{width:46px;height:46px;border-radius:13px;background:#f1eafa;color:#8c6abc;display:grid;place-items:center;flex-shrink:0}.overview-stats b,.learning-stats strong{display:block;font:700 23px 'DM Sans','Readex Pro',sans-serif;color:#35304c}.overview-stats small,.learning-stats small{display:block;color:#9293a3;font-size:11px;margin-top:4px}.evidence-note{display:flex;gap:18px;align-items:start;background:#f2f5ec;border:1px solid #e4eadb;border-radius:20px;padding:22px 25px;margin-top:20px;color:#60816b}.evidence-note p{font-size:12px;line-height:2;color:#718071;margin:0}.evidence-note strong{color:#446a51}.page-intro{max-width:800px}.page-intro h1{font-size:clamp(37px,4vw,54px);line-height:1.4;margin:9px 0}.page-intro p{color:#7c8091;line-height:2;font-size:14px}.learning-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}.learning-stats article{min-height:120px;background:#fff;border:1px solid #e9e5e9;border-radius:19px;padding:21px;display:flex;flex-direction:column;align-items:flex-start}.learning-stats article>span{color:#936dbe}.learning-stats small{margin:12px 0 5px}.curriculum-panel,.chat-choices,.skill-section{background:#fff;border:1px solid #e6e1e8;border-radius:25px;padding:30px;margin-top:22px}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:22px}.panel-heading h2{font-size:25px;margin:8px 0}.panel-heading p{font-size:12px;line-height:1.9;color:#86889a;max-width:680px;margin-bottom:0}.panel-count{background:#f0eaf9;color:#75569f;font-size:11px;font-weight:700;padding:10px 14px;border-radius:999px;white-space:nowrap}.stage-row{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:27px 0}.stage-tile{border:1px solid #e7e3ea;background:#fbfafc;border-radius:15px;padding:15px 12px;min-height:98px}.stage-tile.selected{background:#eee7f9;border-color:#aa8dd2}.stage-tile span,.stage-tile small{display:block;color:#9493a4;font-size:10px}.stage-tile strong{display:block;font-size:12px;margin:7px 0;color:#55546a}.stage-tile.selected strong{color:#674393}.step-heading{border-top:1px solid #ece9ed;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.step-heading h3{font-size:18px;margin:0 0 6px}.step-heading p{font-size:11px;color:#9092a2;line-height:1.7;margin:0}.step-heading>span{font-size:11px;font-weight:700;color:#9679bb;white-space:nowrap}.step-track{display:grid;grid-template-columns:repeat(10,1fr);gap:7px;margin:19px 0 23px;direction:ltr}.step-track span{text-align:center;padding:8px 0;background:#f1eff2;border-radius:8px;color:#9c9aa7;font:700 11px 'DM Sans',sans-serif}.step-track span.active{background:#9270c4;color:#fff}.box-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:8px;direction:ltr}.box{min-height:58px;border:1px solid #e7e5eb;background:#f8f7f9;border-radius:11px;display:flex;align-items:center;justify-content:center;gap:3px;flex-direction:column;color:#b0aeb9;font:700 11px 'DM Sans',sans-serif}.box.active{background:#f5ebd2;border:1.5px solid #d5ad59;color:#685329;box-shadow:0 3px 0 #d5ad59}.box.done{background:#e9f5e7;border-color:#b4d7b0;color:#548257}.learning-bottom{background:#e9e0f7;border-radius:23px;padding:27px 30px;margin-top:19px;display:flex;align-items:center;justify-content:space-between;gap:23px}.learning-bottom h3{font-size:20px;margin:0 0 8px}.learning-bottom p{font-size:12px;color:#756c86;line-height:1.9;margin:0;max-width:580px}.learning-bottom .cta{flex-shrink:0}.learning-bottom .cta:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.skill-section h3{font-size:19px;margin-bottom:17px}.meter-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.skill-meter{display:flex;align-items:center;gap:11px;background:#f9f8fa;border:1px solid #efedf0;border-radius:15px;padding:14px}.skill-icon{color:#9778bd;background:#f0e9fa;width:41px;height:41px;border-radius:11px;display:grid;place-items:center;flex-shrink:0}.skill-meter strong{display:block;font-size:12px}.skill-meter small{color:#a1a1ac;font-size:10px}.skill-meter b{font:700 16px 'DM Sans',sans-serif;color:#6a568b;margin-inline-start:auto}.chat-choices{background:#fcfaf7}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:25px}.choice-card{border:1.5px solid #e5dce9;background:#fff;border-radius:20px;padding:23px;min-height:170px;text-align:right;color:#7b5ba7;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,border-color .2s}.choice-card:hover{transform:translateY(-3px);border-color:#aa86cf}.choice-card strong{font-size:18px;color:#2d2d46;margin:12px 0 6px}.choice-card span{font-size:12px;color:#898b9c;line-height:1.8}.choice-card>svg:last-child{align-self:flex-end;transform:rotate(180deg);margin-top:auto}.mode-back{border:0;background:#eee7f8;border-radius:999px;padding:10px 14px;color:#694994;display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;white-space:nowrap}.mode-back svg{transform:rotate(180deg)}.closet-card{background:#fff;border:1px solid #e6e1e8;border-radius:25px;padding:38px;margin-top:30px;min-height:300px}.closet-count{display:inline-flex;align-items:center;gap:13px;color:#7858a4;font:700 38px 'DM Sans',sans-serif}.closet-card h2{font-size:25px;margin:13px 0}.closet-card p{color:#858698;font-size:13px;line-height:2;max-width:500px}.word-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.word-list span{background:#f0e9fa;border:1px solid #ddd0ed;border-radius:999px;padding:9px 15px;font:600 13px 'DM Sans',sans-serif;color:#5c487a}@media(max-width:1050px){.stage-row{grid-template-columns:repeat(3,1fr)}.box-grid{grid-template-columns:repeat(5,1fr)}.meter-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.level-hero{padding:27px;min-height:0}.level-symbol{display:none}.level-value{font-size:68px;justify-content:flex-end;gap:12px}.level-value small{font-size:11px}.level-track{gap:3px}.level-track span{min-width:0;font-size:10px}.overview-stats,.learning-stats{grid-template-columns:1fr}.overview-stats article{padding:14px}.learning-stats article{min-height:0;display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:12px}.learning-stats small{margin:0}.learning-stats strong{font-size:21px}.curriculum-panel,.chat-choices,.skill-section{padding:20px}.panel-heading,.step-heading{display:block}.panel-count,.step-heading>span{display:inline-block;margin-top:12px}.stage-row{grid-template-columns:repeat(2,1fr)}.stage-tile{min-height:82px}.step-track{gap:3px}.box-grid{grid-template-columns:repeat(5,1fr);gap:6px}.box{min-height:50px}.learning-bottom{padding:25px;display:block}.learning-bottom .cta{margin-top:19px;white-space:normal}.meter-row,.choice-grid{grid-template-columns:1fr}.choice-card{min-height:150px}.mode-back{margin-top:12px}.closet-card{padding:25px}.evidence-note{padding:18px}}
/* Compact icon navigation */
.mainnav{gap:12px;padding:10px}.navitem{width:52px;height:48px;display:grid;place-items:center;padding:0;position:relative}.navitem svg{width:24px;height:24px}.navitem:hover:after,.navitem:focus-visible:after{content:attr(aria-label);position:absolute;top:calc(100% + 8px);right:50%;transform:translateX(50%);white-space:nowrap;background:#2f2949;color:#fff;border-radius:8px;padding:6px 9px;font-size:10px;z-index:6;pointer-events:none}.system-panel{background:#fff;border:1px solid #e6e1e8;border-radius:25px;padding:30px;margin-top:22px}.system-paths{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:26px}.system-paths>div{display:grid;grid-template-columns:32px 1fr;column-gap:9px;align-items:center;background:#f8f5fb;border:1px solid #ece6f1;border-radius:14px;padding:14px 12px;color:#8261ac}.system-paths strong{color:#403956;font-size:12px}.system-paths small{grid-column:2;font-size:10px;color:#8e8a9a}.system-disclaimer{font-size:11px;color:#888b9a;line-height:1.8;margin:20px 0 0}.waypoint{display:grid;grid-template-columns:130px repeat(3,1fr);gap:0;border-radius:20px;background:#fff;border:1px solid #e9e4eb;margin:28px 0;overflow:hidden;box-shadow:0 8px 30px #26213c08}.waypoint>div{padding:20px 22px;border-inline-end:1px solid #eee9ee;min-width:0}.waypoint>div:last-child{border:0}.waypoint span{display:block;font-size:10px;color:#888a9c;margin-bottom:8px}.waypoint strong{display:block;color:#37334e;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.waypoint-level{background:#f1e9fb}.waypoint-level strong{font:800 33px 'DM Sans',sans-serif;color:#7a59ab}.waypoint-study .waypoint-level{background:#fcebd0}.waypoint-study .waypoint-level strong{color:#a67236}.waypoint-reception .waypoint-level{background:#dfede8}.waypoint-reception .waypoint-level strong{color:#418075}.waypoint-chat .waypoint-level{background:#e3e9fa}.waypoint-chat .waypoint-level strong{color:#5270ae}.study-layout .page-intro{max-width:850px}.study-feature{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:20px}.study-sheet{position:relative;background:#fffdf8;border:1px solid #e8d7ba;border-radius:26px;padding:38px;min-height:470px;box-shadow:9px 9px 0 #f0e1c9;overflow:hidden}.study-sheet:after{content:'';position:absolute;inset:0 28px auto auto;height:100%;width:1px;background:#f3e4d5;pointer-events:none}.sheet-label{display:inline-block;border:1px solid #e3cda9;background:#fcf1de;border-radius:999px;color:#987245;padding:8px 12px;font-size:11px;font-weight:700}.sheet-emblem{width:104px;height:104px;border-radius:26px;background:#f8e6bf;color:#a87642;display:grid;place-items:center;margin:35px 0 29px;transform:rotate(-7deg)}.study-sheet h2{font-size:38px;margin:8px 0}.study-sheet p{font-size:13px;line-height:2;color:#878075;max-width:540px}.study-sheet .cta{margin-top:24px}.study-side{display:flex;flex-direction:column;gap:15px}.study-stat{background:#f5eddb;border:1px solid #e9dbc1;border-radius:19px;padding:22px;display:flex;align-items:center;gap:17px;color:#a3784a}.study-stat strong{font:800 36px 'DM Sans',sans-serif;display:block;color:#4f3c36}.study-stat span{font-size:11px;color:#8e8176}.study-focus{border:1px solid #e9e4e8;background:#fff;border-radius:20px;padding:25px;flex:1}.study-focus h3{font-size:20px;margin-bottom:25px}.study-focus>div{border-top:1px solid #eee9e9;padding:15px 0;display:flex;gap:12px;align-items:center;color:#9478b7;font-size:12px}.study-focus>div span{color:#646276}.study-skill-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.study-skill-row .skill-meter{padding:12px}.chat-hero{min-height:260px;padding:36px 42px;background:#e7ecfa;border:1px solid #dbe2f3;border-radius:27px;display:flex;align-items:center;justify-content:space-between;gap:25px;overflow:hidden}.chat-hero h1{font-size:45px;line-height:1.5;margin:9px 0}.chat-hero p{font-size:13px;color:#6c7894;line-height:1.9;max-width:560px}.chat-illustration{min-width:220px;height:200px;position:relative}.chat-illustration span{position:absolute;background:#fff;border:2px solid #7d91c3;box-shadow:5px 6px 0 #a7b5da;border-radius:25px;display:grid;place-items:center;color:#647fbe;width:120px;height:105px;transform:rotate(9deg);top:16px;right:0}.chat-illustration span:last-child{width:100px;height:85px;top:95px;right:102px;background:#fff8e8;color:#b68c52;transform:rotate(-10deg)}.chat-layout .chat-choices{border-color:#dfe4f0;background:#f8f9fe}.chat-layout .choice-card{border-color:#dce4f3;color:#6880b5}.chat-layout .choice-card:hover{border-color:#829ac8}.chat-skills{border-color:#dfe4f0}.reception-layout .page-intro{max-width:850px}.reception-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reception-grid article{border-radius:26px;overflow:hidden;padding:22px 26px 27px;display:flex;flex-direction:column;align-items:flex-start;min-height:550px}.reception-grid .watch-card{background:#252c43;color:#fff}.reception-grid .read-card{background:#f3eadc;color:#342c31;border:1px solid #e6d9c5}.reception-grid .section-kicker{margin-top:24px;color:#bbc5eb}.reception-grid .read-card .section-kicker{color:#a37555}.reception-grid h2{font-size:28px;margin:11px 0}.reception-grid p{font-size:12px;line-height:2;color:#bac2d2;margin-bottom:23px}.reception-grid .read-card p{color:#87796f}.reception-grid small{font-size:10px;opacity:.7;margin-top:11px}.watch-screen{width:100%;height:247px;border-radius:17px;background:radial-gradient(circle at 70% 35%,#52658e,#252c43 60%);border:1px solid #61708b;position:relative;display:grid;place-items:center;overflow:hidden}.watch-screen:after{content:'';position:absolute;width:200px;height:200px;border:1px dashed #91a0c0;border-radius:50%;left:-75px;bottom:-90px}.screen-top{position:absolute;top:16px;right:18px;display:flex;gap:5px}.screen-top i{display:block;width:6px;height:6px;border-radius:50%;background:#a2aec7}.play-disc{width:82px;height:82px;border:1px solid #b9c5e4;background:#f4f6f8ee;border-radius:50%;display:grid;place-items:center;color:#3d567e}.screen-line{position:absolute;height:5px;border-radius:5px;background:#acb8d4;left:19px;right:19px;bottom:20px}.screen-line:after{content:'';display:block;width:34%;height:5px;background:#e5d09a;border-radius:5px}.read-paper{width:100%;height:247px;border-radius:4px 16px 16px 4px;background:#fffdf8;border:1px solid #e2d3bd;box-shadow:9px 9px 0 #ddcbb2;position:relative;padding:30px 35px}.paper-kicker{font:700 10px 'DM Sans',sans-serif;color:#b18d6b}.paper-title,.paper-line{height:9px;background:#c8b7a9;border-radius:9px;width:70%;margin-top:16px}.paper-title.short{width:44%;margin-top:8px}.paper-line{height:5px;width:88%;background:#e6dcd0;margin-top:19px}.paper-line.short{width:60%}.paper-mark{position:absolute;bottom:20px;left:25px;color:#bc9a75}.reception-button{border:1.5px solid currentColor;border-radius:999px;background:transparent;color:inherit;padding:13px 20px;display:inline-flex;align-items:center;gap:15px;font-size:12px;font-weight:700;margin-top:auto}.reception-button svg{transform:rotate(180deg)}.reception-button:hover{background:#ffffff18}.read-card .reception-button:hover{background:#fff8}.experience-soon{min-height:calc(100vh - 160px);padding:45px 30px 80px}.experience-frame{max-width:1080px;margin:auto}.experience-frame>.back{margin-bottom:12px}.experience-frame .waypoint{margin:0 0 30px}.waypoint-dark{background:#323c54;border-color:#52617a}.waypoint-dark .waypoint-level{background:#4c5876}.waypoint-dark span{color:#b4c0d3}.waypoint-dark strong,.waypoint-dark .waypoint-level strong{color:#fff}.waypoint-dark>div{border-color:#52617a}.watch-experience{background:#1e263a;color:#fff}.watch-experience .back{color:#c6cfe1}.cinema-scene{height:390px;background:radial-gradient(circle at 50% 50%,#465b82 0,#253149 52%,#151d30 100%);border:1px solid #566480;border-radius:25px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:#d8dfef}.cinema-play{height:120px;width:120px;display:grid;place-items:center;border-radius:50%;background:#fff1;color:#fff;border:2px solid #aab9d5}.cinema-scene span{font-size:13px}.experience-caption{display:flex;align-items:center;justify-content:space-between;margin-top:30px;gap:20px}.experience-caption h1{font-size:34px;margin:8px 0}.experience-caption p{color:#b6c0d2;line-height:1.9;font-size:13px;max-width:650px}.experience-caption>span{color:#93a6c5}.read-experience{background:#f0e6d6}.waypoint-paper .waypoint-level{background:#e7d1b6}.waypoint-paper .waypoint-level strong{color:#926c4e}.reading-spread{display:grid;grid-template-columns:1fr 1fr;background:#fffaf0;border:1px solid #dacbb7;border-radius:17px;box-shadow:12px 14px 0 #d8cab7;min-height:420px;overflow:hidden}.reading-page{padding:40px 50px}.reading-page:first-child{border-left:1px solid #e4d8c8}.reading-page>span{font:700 11px 'DM Sans','Readex Pro',sans-serif;color:#aa8e72}.reading-page h1,.reading-page h2{font-size:35px;line-height:1.5;margin:25px 0}.reading-page h2{font-size:30px}.reading-page p{font-size:13px;line-height:2;color:#84796d}.reading-page>svg{color:#b18e70}.reading-line{height:7px;background:#e9ded0;border-radius:8px;margin:19px 0;width:95%}.reading-line.short{width:58%}.study-experience{background:#f9f1e5}.study-preview{background:#fffdf8;border:1px solid #e9d7bb;border-radius:22px;padding:55px;min-height:430px;box-shadow:10px 10px 0 #ead9c0}.study-preview h1{font-size:48px;margin:18px 0}.study-preview p{color:#847a72;line-height:2;max-width:580px;font-size:13px}.preview-lines{margin:36px 0}.preview-lines i{display:block;height:8px;width:65%;background:#ede4d7;border-radius:9px;margin:14px 0}.preview-lines i:nth-child(2){width:46%}.preview-lines i:nth-child(3){width:57%}.chat-experience{background:#eef2fc}.chat-preview{min-height:420px;background:#e6ecfa;border-radius:25px;padding:55px;display:flex;flex-direction:column;align-items:flex-start}.preview-bubble{background:white;border:1px solid #c5d2e8;padding:15px 20px;border-radius:18px 18px 5px 18px;display:flex;align-items:center;gap:12px;color:#667fb1;font-size:13px;margin-bottom:15px}.preview-bubble.other{align-self:flex-end;border-radius:18px 18px 18px 5px;background:#f9f3e7;color:#98764e}.chat-preview h1{font-size:34px;margin-top:20px}.chat-preview p{font-size:13px;color:#747f98;line-height:2}@media(max-width:1050px) and (min-width:701px){.mainnav{gap:14px}.navitem{width:100%;height:52px}.system-paths{grid-template-columns:repeat(2,1fr)}.study-feature{grid-template-columns:1fr}.study-side{display:grid;grid-template-columns:1fr 1fr}.study-skill-row{grid-column:1/-1}}@media(max-width:800px){.reception-grid{grid-template-columns:1fr}.reception-grid article{min-height:0}.reception-button{margin-top:10px}.watch-screen,.read-paper{height:220px}}@media(max-width:700px){.mainnav{gap:0;padding:7px 3px max(8px,env(safe-area-inset-bottom))}.navitem{flex:1;min-width:0;width:auto;height:49px;padding:0}.navitem svg{width:23px;height:23px}.navitem:hover:after,.navitem:focus-visible:after{top:auto;bottom:calc(100% + 8px)}.system-panel{padding:20px}.system-paths{grid-template-columns:repeat(2,1fr);gap:6px}.system-paths>div{padding:11px 8px;grid-template-columns:25px 1fr}.system-paths strong{font-size:11px}.system-paths small{font-size:9px}.waypoint{grid-template-columns:1fr 1fr;margin:22px 0}.waypoint>div{padding:14px 16px;border-bottom:1px solid #eee9ee}.waypoint>div:nth-child(2){border-inline-end:0}.waypoint>div:nth-child(n+3){border-bottom:0}.waypoint span{font-size:9px}.waypoint strong{font-size:12px}.waypoint-level strong{font-size:29px}.study-feature{grid-template-columns:1fr}.study-sheet{padding:25px;min-height:0}.study-sheet h2{font-size:32px}.study-side{display:block}.study-side>div{margin-top:14px}.study-skill-row{display:grid;grid-template-columns:1fr 1fr}.chat-hero{padding:27px;min-height:0}.chat-hero h1{font-size:34px}.chat-illustration{display:none}.reception-grid article{padding:18px 20px 24px}.reception-grid h2{font-size:25px}.experience-soon{padding:24px 18px 100px}.cinema-scene{height:250px}.experience-caption h1{font-size:27px}.experience-caption>span{display:none}.reading-spread{grid-template-columns:1fr}.reading-page{padding:25px;min-height:230px}.reading-page:first-child{border-left:0;border-bottom:1px solid #e4d8c8}.reading-page h1,.reading-page h2{font-size:27px;margin:14px 0}.study-preview{padding:30px;min-height:330px}.study-preview h1{font-size:37px}.chat-preview{padding:26px;min-height:340px}.chat-preview h1{font-size:27px}}
/* Compact reception and matched conversation cards */
.reception-grid article{min-height:420px;padding:20px 24px 24px}.watch-screen,.read-paper{height:170px}.read-paper{padding:18px 26px}.paper-title,.paper-line{margin-top:9px}.paper-mark{bottom:14px}.reception-grid .section-kicker{margin-top:18px}.reception-grid h2{font-size:24px;margin:8px 0}.reception-grid p{line-height:1.8;margin-bottom:15px}.chat-card-heading{display:flex;justify-content:space-between;align-items:center;margin:8px 0 15px}.chat-card{background:#e8eafa;color:#313651;border:1px solid #d9dff2}.chat-card .section-kicker{color:#7c72b5}.chat-card p{color:#68718e}.chat-card .reception-button{color:#504a82}.chat-card .reception-button:hover{background:#fff8}.chat-supervise{background:#e5e9fa}.chat-practice{background:#e6f1ec;border-color:#d0e5da}.chat-practice .section-kicker,.chat-practice .reception-button{color:#4e8571}.chat-text{background:#f2e9f7}.chat-call{background:#e4ebf9}.chat-card-art{width:100%;height:170px;border-radius:17px;position:relative;overflow:hidden;background:radial-gradient(circle at 20% 20%,#f9faffaa,transparent 45%),linear-gradient(125deg,#aab8e2,#d8dff4);border:1px solid #c0cbe5}.chat-practice .chat-card-art{background:linear-gradient(125deg,#8bbfaf,#d3e9dc);border-color:#acd3c1}.chat-text .chat-card-art{background:linear-gradient(125deg,#bea4cf,#e7d8ed)}.chat-call .chat-card-art{background:linear-gradient(125deg,#9badd7,#dee6f6)}.chat-float{position:absolute;width:86px;height:75px;background:#fff;border:1.5px solid #646b98;border-radius:20px 20px 6px 20px;display:grid;place-items:center;box-shadow:5px 5px 0 #7580a355;color:#667ab1}.chat-float.one{top:20px;right:24%;transform:rotate(8deg)}.chat-float.two{top:70px;right:49%;width:76px;height:65px;transform:rotate(-9deg);background:#fffbea;color:#997f59}.chat-lines{position:absolute;bottom:12px;left:18px;display:flex;gap:5px}.chat-lines i{height:5px;width:23px;background:#f7f9ff90;border-radius:5px}.chat-lines i:nth-child(2){width:35px}
/* Learning workspace */
.editor-shortcut{display:inline-flex;align-items:center;gap:9px;background:transparent;border:1px solid #c9b6d8;border-radius:999px;color:#735994;padding:11px 17px;font-size:12px;font-weight:700;margin-top:27px}.editor-shortcut:hover{background:#f1eaf8}.lesson-shell{max-width:1250px;margin:auto;padding:35px 32px 100px}.lesson-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.lesson-top .back{margin:0}.lesson-edit{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #dbcde6;border-radius:999px;padding:10px 15px;color:#735992;font-size:11px;font-weight:700}.lesson-head{background:#f8eedc;border:1px solid #eadbc2;border-radius:26px;padding:33px 40px;display:flex;align-items:center;justify-content:space-between;min-height:205px;gap:25px}.lesson-head h1{font-size:43px;line-height:1.5;margin:7px 0}.lesson-head p{color:#8b7b6b;font-size:13px;line-height:2;max-width:620px;margin:0}.lesson-round{width:126px;height:126px;border-radius:50%;background:#fffaf1;border:1px dashed #d8bc8f;display:grid;place-items:center;color:#b68753;flex-shrink:0}.lesson-workspace{display:grid;grid-template-columns:250px 1fr;gap:18px;margin-top:20px}.lesson-sidebar{display:flex;flex-direction:column;gap:16px}.lesson-progress,.lesson-tip{background:#fff;border:1px solid #e9e2e8;border-radius:18px;padding:20px}.lesson-progress>span{font-size:11px;color:#85869a}.lesson-progress strong{display:block;font:700 23px 'DM Sans',sans-serif;color:#62517d;margin:6px 0 13px}.lesson-progress>div{height:7px;background:#eee9f0;border-radius:10px;overflow:hidden}.lesson-progress i{display:block;height:100%;background:#a682ce;border-radius:10px}.lesson-tablist{display:flex;flex-direction:column;gap:7px}.lesson-tablist button{display:flex;align-items:center;gap:9px;border:1px solid #e8e3eb;border-radius:13px;background:#fff;color:#858295;min-height:61px;padding:12px;font-size:12px;font-weight:700;text-align:right}.lesson-tablist button.active{background:#ece5f7;border-color:#b99cda;color:#67488e}.lesson-tablist small{margin-inline-start:auto;font:700 11px 'DM Sans',sans-serif}.tab-number{font:700 10px 'DM Sans',sans-serif;color:#aa9db8}.lesson-tip{display:flex;align-items:start;gap:10px;color:#9b79c0;background:#f5f0fa}.lesson-tip p{margin:0;font-size:11px;color:#857990;line-height:1.8}.lesson-stage{background:#fff;border:1px solid #e9e2e8;border-radius:22px;padding:30px;min-height:550px}.stage-heading h2{font-size:28px;margin:8px 0}.stage-heading p{font-size:12px;color:#85899b;line-height:1.9}.flash-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:22px}.flash-card{border:1px solid #e5dfeb;background:#fdfbff;border-radius:17px;padding:21px;min-height:226px;display:flex;flex-direction:column;align-items:flex-start}.flash-card.reviewed{border-color:#bfdcbf;background:#f5fbf4}.flash-top{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:10px;color:#a49bb1}.flash-top button,.speaking-row>button:first-child{background:#eee7f6;color:#7d62a6;border:0;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.flash-card>strong{font:800 25px 'DM Sans',sans-serif;color:#2d2c49;margin:9px 0 3px;text-align:left}.translation{font-size:12px;color:#8467aa}.flash-card p{font:500 11px 'DM Sans',sans-serif;color:#848698;margin:14px 0;direction:ltr;text-align:left}.review-button{margin-top:auto;border:1px solid #d2bfdf;background:white;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:700;color:#7a5a9c;display:flex;align-items:center;gap:5px}.reviewed .review-button{background:#e5f3e3;border-color:#bcd8b9;color:#51805b}.writing-list{margin-top:23px}.writing-row{display:grid;grid-template-columns:1fr minmax(150px,230px);align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid #eeeaf0}.writing-row>div>span{display:block;font-size:14px;font-weight:700}.writing-row small{font-size:10px;color:#9b95a4}.writing-row input{border:1.5px solid #ddd4e5;border-radius:11px;padding:12px;color:#302f48;outline:none;text-align:left}.writing-row.correct{color:#4d855f}.writing-row.correct>svg{justify-self:end}.lesson-check{background:#eee7f8;color:#684a91;border:1px solid #bea8d8;border-radius:999px;padding:11px 18px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:9px;margin-top:20px}.lesson-check svg{transform:rotate(180deg)}.speaking-list{margin-top:20px}.speaking-row{display:flex;align-items:center;gap:15px;padding:14px;border:1px solid #ebe5ec;border-radius:13px;margin-bottom:9px}.speaking-row>div{flex:1}.speaking-row strong{display:block;font:700 16px 'DM Sans',sans-serif;text-align:right}.speaking-row span{font-size:11px;color:#9191a0}.spoken-check{background:#fff;border:1px solid #d6c7e5;color:#7d62a2;border-radius:999px;padding:9px 13px;font-size:10px;font-weight:700}.spoken-check.checked{background:#e7f3e6;border-color:#b7d7b5;color:#4b7e57}.rating-field{border:1px solid #e8e2ec;border-radius:16px;margin:24px 0;padding:16px}.rating-field legend{font-weight:700;font-size:12px;padding:0 8px}.rating-field legend small{display:block;font-size:10px;color:#9692a1;font-weight:400}.rating-field>div{display:flex;gap:8px;flex-wrap:wrap}.rating-field label{border:1px solid #e4dce9;border-radius:12px;padding:10px 13px;font-size:11px;cursor:pointer}.rating-field label.selected{background:#f1eafa;border-color:#aa8acb}.rating-field input{accent-color:#8461b1;margin-inline-end:6px}.lesson-feedback{color:#705489;font-size:11px;min-height:22px;margin:16px 0}.lesson-complete{border-top:1px solid #eee9ef;padding-top:21px;display:flex;align-items:center;justify-content:space-between;gap:15px}.lesson-complete strong,.lesson-complete small{display:block}.lesson-complete strong{font-size:13px}.lesson-complete small{font-size:10px;color:#92919f;margin-top:5px}.lesson-complete .cta{font-size:12px;min-height:45px;padding:11px 17px}.lesson-complete .cta:disabled,.study-sheet .cta:disabled{opacity:.48;box-shadow:none;cursor:not-allowed}.lesson-empty{border:1px dashed #d2bfdc;border-radius:20px;padding:55px;text-align:center;background:#faf6fc;margin-top:20px}.lesson-empty>span{color:#9676b9}.lesson-empty h2{font-size:25px;margin:15px 0}.lesson-empty p{font-size:12px;line-height:1.9;color:#838297;max-width:550px;margin:0 auto 22px}
/* Browser-local lesson editor */
.editor-local{display:flex;align-items:center;gap:5px;font-size:10px;color:#9b92a5}.editor-heading{padding:33px 0 23px;max-width:760px}.editor-heading h1{font-size:41px;line-height:1.4;margin:9px 0}.editor-heading p{font-size:12px;line-height:2;color:#86899a}.editor-layout{display:grid;grid-template-columns:255px 1fr;gap:20px}.editor-aside{align-self:start;background:#eee8f7;border:1px solid #ddd0eb;border-radius:22px;padding:24px}.editor-aside h3{font-size:18px}.editor-aside label{display:block;font-size:11px;color:#666077;margin-bottom:8px}.editor-aside form>div{display:flex;gap:7px}.editor-aside input{width:100%;min-width:0;padding:11px;border:1px solid #c9b4df;border-radius:9px}.editor-aside form button{width:44px;flex-shrink:0;border:0;border-radius:9px;background:#735599;color:#fff}.editor-aside form button svg{transform:rotate(180deg)}.editor-location{display:flex;flex-direction:column;gap:5px;border-top:1px solid #d9cbe9;margin-top:22px;padding-top:20px}.editor-location span,.editor-aside p{font-size:10px;line-height:1.9;color:#847691}.editor-location strong{font-size:17px}.editor-aside p{margin:22px 0 0}.editor-form{background:#fff;border:1px solid #e7e1e9;border-radius:22px;padding:28px}.editor-form-top,.editor-words-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.editor-form-top h2{font-size:24px;margin:6px 0 21px}.editor-form-top>span{color:#9b92a5;font-size:11px}.editor-form textarea{width:100%;border:1.5px solid #dedce2;border-radius:12px;padding:12px 14px;resize:vertical;outline:none}.editor-form textarea:focus{border-color:#9b77ca;box-shadow:0 0 0 3px #9b77ca2e}.editor-words-heading{border-top:1px solid #eee9ef;margin-top:23px;padding-top:22px}.editor-words-heading h3{font-size:18px}.editor-words-heading button{border:1px solid #c9b0dc;border-radius:999px;background:#f6f0fa;color:#74569a;padding:10px 14px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:7px}.editor-words-heading button:disabled{opacity:.4}.editor-word{background:#fbfafc;border:1px solid #e9e4eb;border-radius:15px;padding:18px;margin:13px 0}.editor-word-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.editor-word-title strong{font-size:11px;color:#86749b}.editor-word-title button{border:0;background:transparent;color:#ad6271;font-size:10px;display:flex;align-items:center;gap:4px}.editor-word-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.editor-word label{display:block;font-size:10px;font-weight:700;color:#747188}.editor-word input{display:block;width:100%;border:1px solid #ded8e3;border-radius:10px;margin:6px 0 13px;padding:10px;font-size:12px;color:#28283e}.editor-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:22px}.editor-danger,.editor-restore{border:1px solid #d5c9d5;background:white;color:#a26072;border-radius:999px;padding:12px 17px;font-size:11px;font-weight:700}.editor-restore{color:#765c98}.delete-confirm{border:1px solid #e2b8c1;background:#fff3f5;border-radius:14px;margin-top:20px;padding:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.delete-confirm strong{font-size:12px}.delete-confirm span{color:#8a7580;font-size:10px}.delete-confirm button{border:1px solid #cb9ba9;border-radius:999px;background:#fff;color:#925466;padding:8px 12px;font-size:10px}
/* Completion */
.finish-shell{display:grid;place-items:center;min-height:65vh}.finish-card{max-width:760px;text-align:center;background:#f3edfb;border:1px solid #ded0eb;border-radius:28px;padding:55px 65px}.finish-symbol{width:100px;height:100px;border-radius:50%;background:#e1f1df;color:#5e9969;display:grid;place-items:center;margin:0 auto 23px}.finish-card h1{font-size:34px;line-height:1.5;margin:10px 0}.finish-card p{font-size:12px;line-height:2;color:#79768b}.finish-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:27px 0}.finish-stats div{background:#fff;border:1px solid #e4daec;border-radius:15px;padding:16px}.finish-stats strong{display:block;font:700 25px 'DM Sans',sans-serif;color:#655087}.finish-stats span{font-size:10px;color:#8d879c}.finish-actions{display:flex;justify-content:center;gap:12px;align-items:center}.finish-actions .cta:disabled{opacity:.5;box-shadow:none}@media(max-width:1000px){.lesson-workspace,.editor-layout{grid-template-columns:1fr}.lesson-sidebar{display:grid;grid-template-columns:1fr 2fr;align-items:stretch}.lesson-tablist{flex-direction:row}.lesson-tablist button{flex:1;flex-direction:column;justify-content:center;text-align:center;gap:5px}.lesson-tip{grid-column:1/-1}.editor-aside{display:grid;grid-template-columns:1fr 1fr;gap:12px}.editor-aside h3{grid-column:1/-1}.editor-aside p{margin:0}}@media(max-width:700px){.reception-grid article{min-height:0;padding:17px 20px 22px}.watch-screen,.read-paper,.chat-card-art{height:145px}.chat-float.one{right:30%;top:11px}.chat-float.two{top:57px}.reception-grid p{margin-bottom:11px}.lesson-shell{padding:24px 18px 95px}.lesson-head{padding:25px;min-height:0}.lesson-head h1{font-size:31px}.lesson-round{display:none}.lesson-workspace{grid-template-columns:1fr}.lesson-sidebar{display:block}.lesson-progress{margin-bottom:10px}.lesson-tablist{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.lesson-tablist button{min-height:67px;font-size:10px}.lesson-tip{display:none}.lesson-stage{margin-top:13px;padding:20px;min-height:0}.stage-heading h2{font-size:23px}.flash-grid{grid-template-columns:1fr}.flash-card{min-height:200px}.lesson-complete{display:block}.lesson-complete .cta{margin-top:15px}.writing-row{grid-template-columns:1fr;gap:8px}.writing-row input{width:100%}.speaking-row{gap:9px;padding:10px}.spoken-check{max-width:115px;font-size:9px}.editor-heading h1{font-size:31px}.editor-layout{grid-template-columns:1fr}.editor-aside{display:block}.editor-aside p{margin-top:15px}.editor-form{padding:19px}.editor-word-grid{grid-template-columns:1fr;gap:0}.editor-actions{display:block}.editor-actions button{margin:6px 3px}.finish-card{padding:33px 20px}.finish-card h1{font-size:27px}.finish-stats{gap:5px}.finish-stats div{padding:12px 6px}.finish-stats strong{font-size:20px}.finish-actions{display:block}.finish-actions button{margin:6px 0}}
.settings-panel{background:#fff;border:1px solid #e8e0e9;border-radius:24px;padding:32px;max-width:710px;margin-top:30px}.settings-panel h2{font-size:24px;margin:17px 0 9px}.settings-panel p{color:#828494;line-height:2;font-size:12px;max-width:600px}.settings-summary{display:flex;gap:11px;flex-wrap:wrap;margin:21px 0}.settings-summary span{background:#f1eafa;color:#765b9c;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:700}.settings-panel .editor-danger{margin-top:6px}

/* Focused learning zone */
.zone{min-height:100vh;background:#f6f5f1;color:#24263e;padding-bottom:110px}.zone-vocab{background:#fbf3e8}.zone-listen{background:#eef4f4}.zone-grammar{background:#f4f0fb}.zone-exam{background:#fff1ed}.zone-header{height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw);border-bottom:1px solid #e8e6ea;position:sticky;top:0;z-index:10}.zone-header button{border:1px solid #dcdbe4;background:#fff;color:#36334d;border-radius:30px;padding:10px 17px;font-size:12px;font-weight:700}.zone-brand{font:800 27px 'DM Sans',sans-serif;letter-spacing:-2px}.zone-brand span{color:#ec7fa3}.zone-save{font-size:11px;color:#788078}.zone-main{max-width:1030px;margin:0 auto;padding:42px 25px 90px}.zone-context{display:flex;justify-content:space-between;gap:12px;color:#746d87;font-size:12px;margin-bottom:25px}.zone-context strong{color:#292942}.zone-track{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-bottom:38px}.zone-track span{background:#fff9;border:1px solid #e6e2e8;border-radius:14px;padding:12px 9px;color:#9995a3;font-size:10px;font-weight:700;display:flex;align-items:center;gap:8px}.zone-track i{font:700 11px 'DM Sans',sans-serif;font-style:normal;background:#f1eef3;border-radius:8px;padding:7px}.zone-track .current{color:#262342;border-color:#b3a4e0;background:#eae3fa}.zone-track .done{color:#43836d;background:#e5f2ea;border-color:#c6e5d2}.zone-panel{background:#fff;border:1px solid #e8e3e7;border-radius:28px;padding:clamp(24px,4vw,56px);box-shadow:0 18px 55px #2d26460a}.zone-section-head{margin-bottom:28px;max-width:680px}.zone-kicker{font-size:11px;font-weight:800;color:#8c63bb}.zone-section-head h1{font-size:clamp(28px,4vw,45px);letter-spacing:-.035em;line-height:1.4;margin:7px 0}.zone-section-head p{color:#77788a;font-size:13px;line-height:2}.zone-count{display:flex;justify-content:space-between;font-size:12px;color:#826e79;margin-bottom:11px}.zone-flash{width:100%;min-height:310px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;border:2px solid #252640;border-radius:24px;background:#ffd681;color:#262642;box-shadow:8px 9px 0 #e8af6a;padding:32px;text-align:center;transition:transform .2s,background .2s}.zone-flash:hover{transform:translateY(-3px)}.zone-flash.is-flipped{background:#e4d7f9;box-shadow:8px 9px 0 #bb9edb}.zone-flash strong{font-size:clamp(31px,5vw,62px);line-height:1.4;overflow-wrap:anywhere}.zone-flash small,.zone-flash-hint{font-size:12px;color:#655e75}.zone-card-actions,.zone-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:24px}.zone-card-actions button,.zone-manual{border:1px solid #d9d8e2;border-radius:30px;background:#fff;padding:11px 17px;color:#3b3a56;font-size:12px;font-weight:700}.zone-card-actions button:disabled,.zone-primary:disabled{opacity:.45;cursor:not-allowed}.zone-foot{justify-content:space-between;border-top:1px solid #eee9ec;padding-top:24px}.zone-foot small{color:#898397}.zone-primary{background:#302c52;color:white;border:0;border-radius:30px;padding:15px 23px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.zone-primary:hover{background:#56437c}.zone-audio{background:#e6f4f0!important;border-color:#b8dcd1!important;color:#266955!important}.zone-wave{display:flex;align-items:center;justify-content:center;gap:6px;height:80px}.zone-wave i{width:7px;height:30px;border-radius:10px;background:#5a9f98}.zone-wave i:nth-child(2),.zone-wave i:nth-child(6){height:55px}.zone-wave i:nth-child(3),.zone-wave i:nth-child(5){height:70px}.zone-wave i:nth-child(4){height:42px}.zone-voice{text-align:center;border-radius:24px;background:#eaf6f2;border:1px solid #cce7df;padding:30px}.zone-voice strong{display:block;font:700 clamp(32px,5vw,56px) 'DM Sans',sans-serif;margin:18px 0 8px;overflow-wrap:anywhere}.zone-voice span,.zone-voice small{display:block;color:#6d867f}.zone-voice .zone-audio{border-radius:25px;padding:11px 18px;margin-top:25px}.zone-speaking{margin-top:25px;border:1px dashed #bdd5d0;border-radius:20px;padding:24px}.zone-speaking h2{font-size:20px}.zone-speaking p,.zone-speaking small{font-size:11px;color:#6b8080;line-height:1.8}.zone-speaking small{display:block;margin-top:13px}.zone-speaking .zone-manual{margin:5px}.zone-question{border:1px solid #e7e3eb;border-radius:20px;padding:22px;margin:0 0 17px;min-width:0}.zone-question legend{font-weight:700;padding:0 8px;line-height:1.8}.zone-question legend small{background:#f1eafb;border-radius:8px;padding:4px 7px;color:#8a65a7}.zone-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.zone-options label{position:relative;cursor:pointer}.zone-options input{position:absolute;opacity:0}.zone-options span{display:block;padding:16px;border:1px solid #dfdce4;border-radius:12px;min-height:64px;background:#faf9fa}.zone-options input:checked+span{border:2px solid #8263bf;background:#eee8fb}.zone-options input:focus-visible+span{outline:3px solid #8c63d0}.zone-question>label{display:block;font-size:12px;color:#676079}.zone-question input[type=text],.zone-question input:not([type]){display:block;width:100%;max-width:440px;margin-top:8px;padding:15px;border:1px solid #cbc7d2;border-radius:12px}.zone-grammar-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.zone-grammar-item{border:1px solid #e4dbea;background:#fdfcff;border-radius:18px;padding:24px;line-height:1.8;min-width:0}.zone-grammar-item.sentenceRule,.zone-grammar-item.questionRule{background:#eae0fb}.zone-grammar-item small{color:#8a63a8;font-weight:700}.zone-grammar-item h2{font-size:18px;margin:9px 0}.zone-grammar-item p,.zone-grammar-item span{color:#6e687b;font-size:12px}.zone-grammar-item strong{display:block;font-size:16px}.zone-formula{border-radius:10px;padding:12px;background:white}.zone-grammar-item blockquote{margin:12px 0 0;border-left:3px solid #ab8bd1;padding:9px;color:#594c76;font:700 15px 'DM Sans',sans-serif}.zone-grammar-test{margin-top:28px;border-top:1px solid #eee8f2;padding-top:26px}.zone-grammar-test h2{font-size:21px}.zone-empty{padding:40px;border:1px dashed #c9bfd2;border-radius:18px;color:#777087;line-height:2}.zone-feedback,.zone-notice{background:#fff9d9;border:1px solid #ecdca1;color:#67532e;padding:12px 16px;border-radius:12px;font-size:12px;margin-top:18px}.zone-control{position:fixed;left:25px;bottom:25px;z-index:12;border:1px solid #2b2947;background:#282742;color:white;border-radius:30px;padding:14px 22px;box-shadow:0 12px 30px #29264144;font-weight:700;font-size:12px}.zone-overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center}.zone-backdrop{position:absolute;inset:0;border:0;background:#17152d9c;width:100%;height:100%;cursor:default}.zone-sheet{position:relative;background:#fff;width:min(650px,calc(100vw - 28px));max-height:min(85vh,900px);overflow:auto;border-radius:24px;padding:26px 30px;box-shadow:0 25px 100px #1612295c}.zone-sheet-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ebe7ec;margin-bottom:18px}.zone-sheet-head small{color:#986eb7;font:700 10px 'DM Sans',sans-serif}.zone-sheet-head h2{margin:6px 0 20px;font-size:26px}.zone-close,.zone-back{border:1px solid #e2dde5;border-radius:24px;padding:9px 16px;background:#fff;color:#544d64}.zone-back{margin-bottom:12px}.zone-sheet>p{color:#817a8b;font-size:12px}.zone-menu{display:grid;gap:10px}.zone-menu button{padding:19px;text-align:right;border:1px solid #dfd7e6;border-radius:15px;background:#f8f4ff;font-weight:700;color:#4b3d66}.zone-menu small{display:block;color:#958ba5;margin-top:7px}.zone-editor-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.zone-editor-tabs button{border:1px solid #d8d1df;border-radius:20px;padding:9px 12px;background:#fff;color:#484052;font-size:11px}.zone-editor-tabs button.selected{background:#5b467d;color:#fff}.zone-editor-form{display:grid;gap:13px}.zone-editor-form label,.zone-location label{font-size:12px;color:#625c70;font-weight:700;display:grid;gap:7px}.zone-editor-form input,.zone-editor-form textarea,.zone-editor-form select,.zone-location select{width:100%;border:1px solid #dcd7e0;border-radius:11px;padding:12px;background:#fff;color:#353147}.zone-editor-form textarea{min-height:92px;resize:vertical}.zone-editor-actions{display:flex;gap:9px;margin-top:7px}.zone-danger{border:1px solid #b94e5c;background:#fff1f2;color:#aa3849;border-radius:25px;padding:11px 17px}.zone-confirm{margin-top:16px;padding:16px;background:#fff1f2;border-radius:12px}.zone-location{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.zone-location button{grid-column:1/-1}.zone-item-list{max-height:340px;overflow:auto;margin-bottom:16px}.zone-item-list h3{font-size:12px;color:#8769a3;margin:18px 0 8px}.zone-item-list button{display:block;width:100%;text-align:right;border:1px solid #e4dfe8;border-radius:9px;background:#fff;padding:10px;margin:5px 0;color:#39344d}.zone-item-list p{font-size:11px;color:#aaa3b2}
@media(max-width:700px){.zone-header{height:65px;padding:0 16px}.zone-save{display:none}.zone-main{padding:24px 15px 80px}.zone-context{font-size:10px}.zone-track{display:flex;overflow-x:auto;margin-bottom:22px}.zone-track span{min-width:115px;flex-direction:column;text-align:center}.zone-panel{padding:23px 18px}.zone-flash{min-height:280px;box-shadow:5px 6px 0 #e8af6a}.zone-options{grid-template-columns:1fr}.zone-options span{min-height:45px}.zone-grammar-grid{grid-template-columns:1fr}.zone-control{left:15px;bottom:16px}.zone-overlay{align-items:end}.zone-sheet{width:100%;max-height:88vh;border-radius:24px 24px 0 0;padding:22px 18px env(safe-area-inset-bottom,18px)}.zone-location{gap:6px}.zone-question{padding:14px}.zone-speaking{padding:17px}}

/* Excel content studio */
.zone-import-intro{padding:20px;border:1px solid #e6def1;background:linear-gradient(135deg,#f7f1ff,#fff9ef);border-radius:18px;margin-bottom:18px}.zone-import-intro strong{font-size:18px;color:#352a58}.zone-import-intro p{font-size:12px;line-height:1.9;color:#6f667f;margin:8px 0 14px}.zone-import-template{display:inline-flex;align-items:center;gap:10px;color:#493878;font-size:12px;font-weight:800;text-decoration:none;padding:10px 0}.zone-import-template:hover{text-decoration:underline}.zone-import-scopes{grid-template-columns:repeat(2,minmax(0,1fr))}.zone-import-scopes button{min-height:102px;background:#fff;text-align:right}.zone-import-scopes button:hover,.zone-import-grid button:hover{border-color:#7e62ae;background:#f3edff}.zone-import-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:9px}.zone-import-grid button{border:1px solid #e0d8e9;background:#faf7fe;border-radius:13px;padding:16px 10px;color:#4f3d72;font-weight:800;cursor:pointer}.zone-import-drop{min-height:165px;border:2px dashed #b7a2d1;border-radius:18px;background:#faf7ff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:18px;color:#453667;cursor:pointer}.zone-import-drop>span{font-size:31px;line-height:1}.zone-import-drop strong{font-size:14px}.zone-import-drop small{font-size:11px;color:#81758e}.zone-import-drop input{max-width:260px;width:100%;font-size:11px;margin-top:10px}.zone-import-status,.zone-import-error,.zone-import-warning{font-size:12px;line-height:1.8;border-radius:12px;padding:12px 15px}.zone-import-status{background:#f0edfb;color:#53477c}.zone-import-error{background:#fff0ed;color:#a73734;border:1px solid #f3c8c0}.zone-import-warning{background:#fff8e8;color:#785e35;border:1px solid #e9d4a7;margin:18px 0}.zone-import-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.zone-import-stats div{background:#f5f0fc;border:1px solid #e5d9f3;border-radius:14px;padding:17px 12px;display:grid;gap:5px}.zone-import-stats strong{font:800 27px 'DM Sans',sans-serif;color:#473466}.zone-import-stats span{color:#746985;font-size:11px}.zone-import-confirm{width:100%;cursor:pointer}.zone-import-done{text-align:center;border:1px solid #cde5d7;background:#f2fbf5;border-radius:18px;padding:28px;color:#27674d}.zone-import-done>span{font-size:30px}.zone-import-done h3{margin:7px}.zone-import-done p{line-height:1.8}.zone-import-done small{color:#5b8070}
@media(max-width:700px){.zone-import-scopes{grid-template-columns:1fr}.zone-import-scopes button{min-height:74px}.zone-import-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.zone-import-stats div{padding:11px 6px}.zone-import-stats strong{font-size:20px}.zone-import-stats span{font-size:10px}}
.zone-menu .zone-import-direct{position:relative;display:block;padding:19px;text-align:right;border:1px solid #b6a3d2;border-radius:15px;background:#f3eafa;color:#49346c;cursor:pointer}.zone-import-direct:hover,.zone-import-direct:focus-within{border-color:#7654a6;background:#ede1fa;outline:2px solid #7654a6;outline-offset:2px}.zone-import-direct strong{display:block;font-weight:800}.zone-import-direct input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.zone-import-direct input:disabled{cursor:wait}.zone-import-direct small{pointer-events:none}
.zone-import-location,.zone-preview-note{margin:16px 0;padding:14px 17px;border:1px solid #e6d8b3;background:#fff9e9;color:#715d3b;border-radius:13px;font-size:12px;line-height:1.9}.zone-saved-boxes{border-top:1px solid #ece8f0;margin-top:22px;padding-top:16px}.zone-saved-boxes h3{font-size:15px;margin:0 0 8px;color:#3d3356}.zone-saved-boxes p{font-size:11px;color:#787185;line-height:1.8}.zone-saved-boxes form{display:flex;gap:9px;align-items:center}.zone-saved-boxes select{min-width:0;flex:1;border:1px solid #ded6e8;border-radius:12px;padding:12px;background:#fff;color:#322b48}.zone-saved-boxes button{white-space:nowrap}.zone-preview{background:#f7f5fb}.zone-preview-intro{background:#fff;border:1px solid #e7dfed;border-radius:25px;padding:clamp(20px,4vw,40px);margin-bottom:20px}.zone-preview-intro h1{font-size:clamp(28px,4vw,44px);margin:8px 0;color:#272542}.zone-preview-intro>p{color:#756b84;font-size:13px}.zone-preview-intro .zone-preview-note{margin:18px 0 0}.zone-preview-section{background:#fff;border:1px solid #e7dfed;border-radius:23px;padding:clamp(18px,3vw,32px);margin-bottom:20px}.zone-preview-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.zone-preview-section-title h2{margin:0;color:#342a54;font-size:20px}.zone-preview-section-title span{color:#877994;font-size:12px}.zone-preview-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:12px}.zone-preview-item{border:1px solid #e6dfea;background:#fbf9ff;border-radius:16px;padding:18px;min-width:0;overflow-wrap:anywhere}.zone-preview-item-head{display:flex;justify-content:space-between;align-items:center;min-height:32px;color:#876bad;font-weight:800}.zone-preview-item-head button{border:1px solid #d9cde9;background:#fff;color:#5b4781;border-radius:50%;width:37px;height:37px;display:grid;place-items:center}.zone-preview-item strong{display:block;color:#242541;font-size:20px;margin:8px 0}.zone-preview-item h3{font-size:16px;margin:8px 0;color:#332847}.zone-preview-item p{color:#746c7c;font-size:12px;line-height:1.8;margin:7px 0}.zone-preview-item ol{padding-right:23px;font-size:12px;line-height:2;color:#555064}.zone-preview-item li.is-answer{color:#287455;font-weight:800}.zone-preview-formula{background:#ede5fa;padding:10px 12px;border-radius:9px;color:#4f3972!important;font-weight:700}
@media(max-width:700px){.zone-saved-boxes form{flex-direction:column;align-items:stretch}.zone-saved-boxes button{width:100%}.zone-preview-items{grid-template-columns:1fr}}

/* Listening-check questions: an explicit, reusable audio player above the choices. */
.zone-checkpointListen .zone-question{border-color:#cfdedc;background:#fcfefd}
.zone-question-audio{margin:16px 0 22px;border:1px solid #bcdad4;border-radius:20px;padding:16px;background:linear-gradient(135deg,#f0faf7,#e5f2f0);clear:both}
.zone-question-audio-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:11px}
.zone-question-audio-tag{font-weight:800;color:#25675f;letter-spacing:.015em}
.zone-question-audio-hint{color:#668881}
.zone-question-play{width:100%;min-height:88px;display:flex;align-items:center;gap:16px;border:1.5px solid #439689;border-radius:16px;background:#fff;color:#1d504d;padding:15px 18px;text-align:right;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.zone-question-play:hover{background:#f4fffc;border-color:#227a70;transform:translateY(-1px);box-shadow:0 6px 15px #266b5c1a}
.zone-question-play:focus-visible{outline:3px solid #405c9a;outline-offset:3px}
.zone-question-play.is-playing{background:#def2ec;border-color:#27786d}
.zone-question-speaker{width:54px;height:54px;display:grid;place-items:center;flex:none;border-radius:14px;background:#23796d;color:white}
.zone-question-play-copy{display:grid;gap:5px;flex:1;min-width:0}
.zone-question-play-copy strong{font-size:16px;line-height:1.45}
.zone-question-play-copy small{font-size:11px;color:#67837e;line-height:1.5}
.zone-question-wave{display:flex;align-items:center;gap:3px;direction:ltr;min-width:41px;justify-content:center}
.zone-question-wave i{width:4px;height:13px;background:#429c8e;border-radius:5px}
.zone-question-wave i:nth-child(2),.zone-question-wave i:nth-child(4){height:25px}
.zone-question-wave i:nth-child(3){height:34px}
.zone-question-play.is-playing .zone-question-wave i{animation:zone-audio-wave .75s ease-in-out infinite alternate}
.zone-question-play.is-playing .zone-question-wave i:nth-child(2){animation-delay:.12s}
.zone-question-play.is-playing .zone-question-wave i:nth-child(3){animation-delay:.26s}
.zone-question-play.is-playing .zone-question-wave i:nth-child(4){animation-delay:.39s}
.zone-question-play.is-playing .zone-question-wave i:nth-child(5){animation-delay:.5s}
@keyframes zone-audio-wave{to{transform:scaleY(.45)}}
@media(prefers-reduced-motion:reduce){.zone-question-play.is-playing .zone-question-wave i{animation:none}}
@media(max-width:700px){.zone-question-audio{margin:18px 0;padding:12px}.zone-question-audio-top{flex-wrap:wrap;gap:3px}.zone-question-play{min-height:78px;gap:10px;padding:11px}.zone-question-speaker{width:48px;height:48px}.zone-question-play-copy strong{font-size:14px}.zone-question-play-copy small{font-size:10px}}

/* Card-only navigation for vocabulary and speaking. */
.zone-simple-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:30px}
.zone-simple-nav button{min-width:125px;border:1px solid #d9d5e2;border-radius:100px;padding:14px 24px;background:#fff;color:#38344f;font-weight:800;font-size:13px}
.zone-simple-nav button.zone-primary{background:#302c52;color:white;border-color:#302c52}
.zone-simple-nav button:disabled{opacity:.42;cursor:not-allowed}
.zone-card-progress{font-size:11px;color:#8a8296;line-height:1.8;margin:17px 0 0;text-align:center}
.zone-pronounce-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.zone-pronounce-tile{min-width:0;min-height:305px;border:1.5px solid #b9d8d1;border-radius:23px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:22px;text-align:center;transition:transform .2s,box-shadow .2s,border-color .2s;overflow-wrap:anywhere}
.zone-pronounce-tile:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 25px #1f6b5720}
.zone-pronounce-tile:disabled{opacity:.7;cursor:wait}
.zone-hear{background:#e6f5f0;color:#245c54}
.zone-say{background:#f0eafb;color:#584280;border-color:#d8c7eb}
.zone-say.is-done{background:#e9f6ee;border-color:#a6d8bf}
.zone-tile-step{align-self:stretch;text-align:right;font-size:11px;font-weight:800;letter-spacing:.01em}
.zone-tile-icon{width:64px;height:64px;border-radius:19px;background:#fff9;display:grid;place-items:center;margin-top:2px}
.zone-pronounce-tile strong{font:800 clamp(18px,2.8vw,31px) 'DM Sans','Readex Pro',sans-serif;line-height:1.45}
.zone-tile-meaning{font-size:12px;line-height:1.8;color:#617a73;max-width:100%}
.zone-say .zone-tile-meaning{color:#7b6e91}
.zone-tile-command{margin-top:auto;padding:8px 12px;border-radius:100px;background:#fff9;font-size:11px;font-weight:700}
.zone-pronounce-assist{border:1px dashed #c3d8d6;border-radius:15px;padding:14px 16px;margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#667d7b;font-size:11px;line-height:1.8}
.zone-pronounce-assist button{background:transparent;border:0;color:#3e6173;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;font-size:11px;font-weight:700}
/* Contextual grammar guide. */
.zone-grammar-head{max-width:none}
.zone-grammar-head h1{overflow-wrap:anywhere}
.zone-grammar-journey{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
.zone-grammar-journey span{background:#eee6fa;border:1px solid #d9c7ee;color:#6c4f92;border-radius:100px;padding:10px 14px;font-size:11px;font-weight:700}
.zone-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.zone-rule{border-radius:22px;border:1px solid #ddd0ec;background:#f2ebfd;padding:25px;min-width:0}
.zone-rule:nth-child(even){background:#ebeefa;border-color:#d0d7e9}
.zone-rule-top{display:flex;align-items:center;justify-content:space-between;color:#8064a5;font-size:11px;font-weight:800}
.zone-rule h2{font-size:clamp(19px,2.5vw,27px);line-height:1.5;margin:18px 0 8px;overflow-wrap:anywhere}
.zone-rule>p{font-size:11px;color:#766986;line-height:1.8}
.zone-rule-formula{display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:#fff;padding:16px;border-radius:15px;min-height:95px;margin:17px 0;color:#302947}
.zone-rule-formula span{background:#f1eafa;border:1px solid #e4d5f5;border-radius:10px;padding:8px 10px;font-size:13px;font-weight:700;overflow-wrap:anywhere}
.zone-rule-formula b{font:700 15px 'DM Sans',sans-serif;color:#9a81b9}
.zone-rule-example{border-top:1px solid #d9c9e6;padding-top:17px}
.zone-rule-example small{display:block;font-size:10px;color:#81699d;font-weight:700;margin-bottom:8px}
.zone-rule-example strong{display:block;text-align:left;font:700 17px 'DM Sans',sans-serif;line-height:1.5;overflow-wrap:anywhere}
.zone-rule-example p{font-size:11px;color:#73677e;line-height:1.8;margin:10px 0 0}
.zone-grammar-supports{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:16px}
.zone-grammar-support{border:1px solid #e2dce9;background:#fff;border-radius:16px;padding:18px;min-width:0}
.zone-grammar-support.note{background:#fff7e8;border-color:#ecdabb}
.zone-grammar-support.addition{background:#eaf5f0;border-color:#cde7d7}
.zone-grammar-support>span{font-size:10px;font-weight:800;color:#865caa}
.zone-grammar-support h3{font-size:15px;margin:9px 0}
.zone-grammar-support p,.zone-grammar-support small{font-size:11px;color:#756f82;line-height:1.9}
.zone-grammar-support strong{display:block;font:700 15px 'DM Sans',sans-serif;text-align:left;overflow-wrap:anywhere}
.zone-grammar-support small{display:block;margin-top:5px}
.zone-grammar-test{margin-top:26px;border:1px solid #d9c9e9;border-radius:20px;padding:24px;background:#fbf9ff}
.zone-grammar-test>p{color:#776e89;font-size:11px;line-height:1.8}
@media(max-width:700px){.zone-simple-nav{margin-top:21px}.zone-simple-nav button{min-width:105px;padding:12px 17px}.zone-pronounce-pair{gap:9px}.zone-pronounce-tile{min-height:245px;padding:14px 9px;border-radius:17px}.zone-tile-icon{width:49px;height:49px;border-radius:14px}.zone-pronounce-tile strong{font-size:clamp(16px,4vw,22px)}.zone-tile-meaning,.zone-tile-command{font-size:10px}.zone-pronounce-assist{align-items:flex-start;flex-direction:column}.zone-rule-grid{grid-template-columns:1fr}.zone-rule{padding:20px}.zone-grammar-supports{grid-template-columns:1fr}.zone-grammar-test{padding:18px}.zone-grammar-journey span{font-size:10px;padding:7px 10px}}

/* Study destination: colorful overview with a clear next action. */
.study-reimagined{--study-ink:#28233f;--study-purple:#7857c8;max-width:1250px}
.study-masthead{position:relative;min-height:390px;border-radius:32px;background:#322653;color:#fff;overflow:hidden;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;padding:clamp(27px,4vw,58px);box-shadow:11px 12px 0 #e6d6fa}
.study-masthead:before,.study-masthead:after{content:'';position:absolute;border-radius:50%;background:#ffffff0d;width:400px;height:400px;inset:-190px auto auto -125px}
.study-masthead:after{inset:auto -140px -230px auto;background:#ffc95418;width:480px;height:480px}
.study-masthead-copy{position:relative;z-index:1}.study-overline{font-size:11px;font-weight:800;letter-spacing:.025em}.study-masthead .study-overline{color:#e3d0ff}.study-masthead h1{font-size:clamp(41px,5vw,72px);line-height:1.32;letter-spacing:-.05em;margin:15px 0}.study-masthead h1 em{font-style:normal;color:#ffdc83}.study-masthead p{font-size:14px;line-height:2;color:#e4dbf1;max-width:560px}.study-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:27px}.study-hero-actions>span{font-size:11px;color:#c8b9e3}.study-start{background:#ffdd86;border:1.5px solid #ffdd86;color:#2c2547;border-radius:100px;padding:16px 23px;font-size:13px;font-weight:800;display:flex;align-items:center;gap:16px;box-shadow:0 5px 0 #211938}.study-start:disabled,.study-next-button:disabled{opacity:.45;cursor:not-allowed}
.study-masthead-art{position:relative;height:280px;z-index:1}.study-art-bubble{position:absolute;display:grid;place-items:center;border:2px solid #2b2441;border-radius:28px;font:800 75px 'DM Sans',sans-serif;box-shadow:7px 8px 0 #1e1a36}.study-art-one{background:#ffca83;color:#342748;width:140px;height:140px;right:20%;top:20px;transform:rotate(11deg)}.study-art-two{background:#c5f1d7;color:#342748;width:120px;height:120px;left:10%;bottom:0;transform:rotate(-13deg)}.study-art-path{position:absolute;border:2px dashed #d5bfee;border-radius:50%;inset:33px 10px 15px 20px;transform:rotate(20deg)}.study-art-mark{position:absolute;bottom:0;right:2%;background:#d9c5ff;border-radius:50%;color:#453078;width:94px;height:94px;display:grid;place-items:center}
.study-current{margin-top:36px;border:1px solid #e5dcf1;border-radius:24px;background:#fff;padding:24px 28px}.study-current-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;color:#7d60b5}.study-current-counter{font:700 13px 'DM Sans',sans-serif;color:#87769b}.study-current-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ece6f1;border:1px solid #ece6f1;border-radius:16px;overflow:hidden}.study-current-grid>div{background:#faf8fd;padding:18px}.study-current-grid small{display:block;color:#887e98;font-size:10px;margin-bottom:8px}.study-current-grid strong{font-size:16px;color:#34284e}.study-current-grid>div:first-child{background:#e8ddff}.study-current-grid>div:first-child strong{font:800 29px 'DM Sans',sans-serif;color:#7253b5}.study-line{height:7px;background:#eeeaf4;border-radius:10px;overflow:hidden;margin-top:19px}.study-line i{display:block;height:100%;background:#8e66d2;min-width:2px;border-radius:10px}
.study-next{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;padding:36px;border:1px solid #d9e4df;border-radius:27px;background:#ecf8f2;margin-top:24px}.study-next-copy .study-overline{color:#488771}.study-next-copy h2{font-size:clamp(25px,3vw,38px);margin:10px 0;color:#2c3744}.study-next-copy p{font-size:12px;line-height:2;color:#667b75;max-width:460px}.study-next-button{border:0;border-radius:30px;background:#286957;color:#fff;padding:13px 19px;font-size:12px;font-weight:800;display:flex;align-items:center;gap:12px;margin-top:18px}.study-next-stages{display:grid;gap:8px}.study-next-stages>div{background:#fff;border:1px solid #dcebe2;border-radius:14px;display:grid;grid-template-columns:32px 28px 1fr;align-items:center;gap:9px;padding:12px 16px;color:#41635a}.study-next-stages>div>span{font:800 12px 'DM Sans',sans-serif;color:#9690a7}.study-next-stages strong{font-size:12px}.study-next-stages small{font-size:10px;color:#8a9990;grid-column:3}
.study-footer-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:22px 0}.study-words{display:flex;align-items:center;gap:9px;color:#7b5ca5;font-size:11px}.study-words strong{font:800 24px 'DM Sans',sans-serif}.study-words span{color:#827d90}.study-manage{border:1px solid #d8d0e3;background:white;border-radius:100px;color:#6a5886;padding:11px 15px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:7px}
/* Mic tiles use icons only. The word and recording state live outside the controls. */
.zone-pronounce-word{text-align:center;background:#fff;border:1px solid #d4e8e2;border-radius:17px;padding:22px;margin-bottom:14px}.zone-pronounce-word strong{display:block;font:800 clamp(22px,3vw,35px) 'DM Sans',sans-serif;overflow-wrap:anywhere}.zone-pronounce-word span{display:block;color:#7a8a86;font-size:12px;margin-top:8px}.zone-listen .zone-pronounce-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.zone-listen .zone-pronounce-tile{min-height:118px;height:118px;padding:0;border-radius:18px;gap:0}.zone-listen .zone-pronounce-tile>svg{width:42px;height:42px}.zone-listen .zone-hear{background:#e1f3ee}.zone-listen .zone-say{background:#efe9fa}.zone-listen .zone-say.is-recording{background:#ffe5e8;border-color:#e37c8b;color:#bd304c;box-shadow:0 0 0 4px #e9587629;animation:zone-record-glow 1.3s ease-in-out infinite alternate}.zone-listen .zone-say.is-done{background:#e8f8ed;border-color:#acd8bb;color:#397454}.zone-record-status{text-align:center;color:#74837e;font-size:11px;line-height:1.8;min-height:20px;margin:12px 0 0}
@keyframes zone-record-glow{to{box-shadow:0 0 0 9px #e958760f}}
@media(prefers-reduced-motion:reduce){.zone-listen .zone-say.is-recording{animation:none}}
@media(max-width:800px){.study-masthead{grid-template-columns:1fr}.study-masthead-art{display:none}.study-next{grid-template-columns:1fr}.study-current-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.study-reimagined{padding:26px 17px 110px}.study-masthead{min-height:0;padding:28px 23px;border-radius:25px;box-shadow:5px 6px 0 #e6d6fa}.study-masthead h1{font-size:42px}.study-masthead p{font-size:12px}.study-hero-actions{margin-top:21px}.study-current{margin-top:22px;padding:18px}.study-current-grid>div{padding:12px}.study-current-grid strong{font-size:13px}.study-next{padding:22px;gap:15px}.study-footer-row{align-items:flex-start;flex-direction:column}.zone-listen .zone-pronounce-tile{height:86px;min-height:86px}.zone-listen .zone-pronounce-tile>svg{width:34px;height:34px}}
/* Reading, picture prompts, and compact word audio */
.zone-sentence{background:linear-gradient(145deg,#fff8ed,#f0e9fc);border:1px solid #e8d6bb;border-radius:26px;padding:clamp(24px,5vw,52px);box-shadow:8px 9px 0 #e7d9f3}
.zone-sentence-label{font:800 11px 'DM Sans',sans-serif;letter-spacing:.16em;color:#927041}
.zone-sentence>p{font:800 clamp(26px,5vw,51px)/1.3 'DM Sans',sans-serif;color:#292844;text-align:left;margin:28px 0;overflow-wrap:anywhere}
.zone-sentence-translation{border-top:1px solid #dacbbd;padding-top:25px;display:grid;gap:9px}.zone-sentence-translation strong{font-size:clamp(17px,3vw,26px)}

.zone-sentence-tools{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.zone-sentence-tools button,.zone-word-audio{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #ded1ec;background:#fff;color:#5b4086;padding:12px 20px;border-radius:100px;font-weight:800}.zone-sentence-tools button:disabled{background:#e7f5e9;color:#397657}
.zone-flash-wrap{position:relative}.zone-flash-wrap .zone-word-audio{position:absolute;bottom:18px;left:18px;z-index:2}.zone-word-audio svg{width:21px;height:21px}.zone-flash-wrap:has(.zone-image-frame) .zone-flash{min-height:230px}
.zone-image-frame{margin:0 0 19px;position:relative;overflow:hidden;border-radius:22px;border:1px solid #dedbea;background:radial-gradient(circle at 20% 15%,#f1e3ff,#def5ea);min-height:190px;display:grid;place-items:center}
.zone-image-frame img{display:block;max-width:100%;width:100%;max-height:350px;object-fit:contain;min-height:190px}.zone-image-frame figcaption{position:absolute;bottom:12px;right:12px;background:#fffdf0ec;color:#4a4160;border-radius:100px;padding:7px 14px;font-size:11px;font-weight:700}
.zone-image-question{background:#fbf9ff;border-color:#d9c5ed;padding:22px}.zone-image-question .zone-image-frame{margin:16px 0}.zone-image-speak{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #e3d9ee;border-radius:18px;padding:15px}.zone-image-speak strong{display:block;font-size:15px}.zone-image-speak span{font-size:11px;color:#746e80}.zone-image-mic,.zone-image-speak [data-zone=image-audio]{border:0;border-radius:15px;background:#e8def8;color:#5a4684;padding:14px;cursor:pointer;font-weight:800}.zone-image-mic.is-recording{background:#ffe4e7;color:#af3450}.zone-image-mic.is-done{background:#ddf3e7;color:#285f49}
@media(max-width:700px){.zone-flash-wrap .zone-word-audio{left:12px;bottom:12px;font-size:11px;padding:9px 12px}.zone-image-question{padding:13px}.zone-image-frame img{max-height:230px}}
.zone-image-mic{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:54px}.zone-image-mic svg{flex:none}.zone-image-mic span{font-size:12px;font-weight:800;color:inherit}
/* Closet: two collections and one item per reading view. */
.closet-page{max-width:1120px}.closet-hero{background:#2d294a;color:#fff;position:relative;min-height:330px;border-radius:32px;padding:clamp(28px,5vw,56px);display:flex;align-items:center;justify-content:space-between;gap:30px;overflow:hidden;box-shadow:10px 11px 0 #e9e1f5}.closet-hero:before{content:"";position:absolute;inset:-130px -65px auto auto;width:360px;height:360px;border:1px solid #ffffff27;border-radius:50%}.closet-hero>div:first-child{position:relative;z-index:1}.closet-hero .section-kicker{color:#ccb8ee}.closet-hero h1{font-size:clamp(38px,5vw,66px);line-height:1.36;margin:10px 0}.closet-hero h1 em{font-style:normal;color:#fbd989}.closet-hero p{color:#ded9ea;font-size:14px;line-height:1.9;max-width:475px}.closet-hero-art{width:230px;height:225px;flex:none;display:grid;place-items:center;background:#cfedda;color:#356354;border:2px solid #f6f1e4;border-radius:37% 63% 46% 54%;transform:rotate(-10deg);box-shadow:12px 13px 0 #ae90c8;position:relative}.closet-hero-art svg{transform:rotate(10deg)}.closet-hero-art i{position:absolute;width:17px;height:17px;background:#edac7d;border-radius:50%;top:-22px;left:23px}.closet-hero-art i:last-child{width:27px;height:27px;background:#dbacd2;top:auto;left:auto;bottom:-18px;right:0}.closet-shelves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:42px}.closet-shelf{background:#f5f0ff;border:1px solid #ddd1ef;border-radius:26px;padding:31px;display:flex;align-items:flex-start;flex-direction:column;min-height:315px;position:relative;overflow:hidden}.closet-shelf-rules{background:#fff5e3;border-color:#e9d6b9}.closet-shelf:after{content:"";position:absolute;width:180px;height:180px;border:1px dashed #9d80c75c;border-radius:50%;right:-55px;top:-60px}.closet-shelf-icon{width:58px;height:58px;background:white;border-radius:17px;color:#7159a8;display:grid;place-items:center;margin-bottom:20px}.closet-shelf-rules .closet-shelf-icon{color:#a77542}.closet-shelf>span{font-size:13px;font-weight:800;color:#736288}.closet-shelf>strong{font:800 clamp(45px,5vw,67px) 'DM Sans',sans-serif;line-height:1.2;color:#302844}.closet-shelf p{font-size:12px;color:#807587;line-height:1.9;margin:10px 0 22px}.closet-shelf button{margin-top:auto;border:0;border-radius:100px;background:#473463;color:white;padding:13px 19px;font-weight:800;display:inline-flex;align-items:center;gap:11px;font-size:13px}.closet-shelf-rules button{background:#845d3b}.closet-shelf button:disabled{opacity:.45;cursor:not-allowed}.closet-hint{margin-top:25px;border:1px dashed #dac9e8;border-radius:17px;background:#fff;padding:20px;color:#777189;font-size:13px;line-height:1.8}.closet-hint button{border:0;background:none;color:#6b4c96;font-weight:800;display:inline-flex;align-items:center;gap:5px}.closet-detail-head,.closet-detail-title{display:flex;align-items:center;justify-content:space-between;gap:18px}.closet-detail-head{color:#917ea0;font-size:12px}.closet-back{border:1px solid #e0d7e9;background:#fff;border-radius:100px;padding:10px 16px;color:#453957;font-weight:800;display:inline-flex;align-items:center;gap:8px}.closet-detail-title{margin:30px 0}.closet-detail-title h1{font-size:clamp(30px,4vw,48px);margin:8px 0}.closet-page-counter{background:#ece5f7;color:#665283;border-radius:100px;padding:11px 19px;font:800 16px 'DM Sans',sans-serif;white-space:nowrap}.closet-item{border-radius:27px;border:1.5px solid #dfd4eb;background:#fcfaff;padding:clamp(24px,5vw,48px);min-height:395px;box-shadow:8px 9px 0 #ede6f4}.closet-rule-item{background:#fff9ee;border-color:#ecdec9;box-shadow:8px 9px 0 #f3ebdf}.closet-item-top{display:flex;justify-content:space-between;gap:14px;font-size:11px;font-weight:800;color:#907b9f}.closet-item-top span:first-child{font-family:'DM Sans',sans-serif;letter-spacing:.13em}.closet-image{height:195px;margin:24px 0;border-radius:18px;background:#eee5f8;overflow:hidden;display:grid;place-items:center}.closet-image img{width:100%;height:100%;object-fit:contain}.closet-word-line{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:45px 0 12px}.closet-word-line strong{font:800 clamp(37px,6vw,75px) 'DM Sans',sans-serif;overflow-wrap:anywhere}.closet-word-line button{border:0;width:57px;height:57px;border-radius:18px;background:#e5f2e8;color:#2b6957;flex:none;display:grid;place-items:center}.closet-meaning{font-size:clamp(21px,3vw,32px);font-weight:800;color:#66547b}.closet-example{background:white;border:1px solid #e8deea;border-radius:17px;padding:19px 22px;margin-top:30px}.closet-example small{color:#9285a1;font-size:11px;font-weight:800}.closet-example p{font:700 clamp(16px,2vw,22px) 'DM Sans',sans-serif;margin:9px 0 0;text-align:left;color:#38334b}.closet-rule-kind{display:inline-block;margin:31px 0 8px;border-radius:100px;background:#f5e5c7;color:#7b5a38;padding:8px 14px;font-size:12px;font-weight:800}.closet-rule-item h2{font-size:clamp(24px,3vw,37px);margin:9px 0 27px}.closet-formula{border:1px solid #e6d8c4;border-radius:17px;background:white;padding:25px;font-size:clamp(19px,3vw,28px);font-weight:800;line-height:1.8}.closet-rule-explain{font-size:13px;line-height:2;color:#726b70;margin:21px 0}.closet-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:35px}.closet-pager button{border:1px solid #ded4e8;border-radius:100px;background:white;padding:13px 18px;color:#483958;font-weight:800;display:flex;align-items:center;gap:8px}.closet-pager button:last-child{background:#322c50;border-color:#322c50;color:white}.closet-pager button:disabled{opacity:.4;cursor:not-allowed}.closet-pager span{color:#9c90a5;font:700 12px 'DM Sans',sans-serif}.closet-empty{background:#f8f5fb;border:1px dashed #d5c8e3;border-radius:22px;padding:50px;text-align:center;color:#716980}.closet-empty button{border:0;border-radius:50px;background:#49365f;color:white;padding:12px 18px;font-weight:800}
@media(max-width:700px){.closet-page{padding:28px 17px 115px}.closet-hero{min-height:0;border-radius:24px;box-shadow:5px 6px 0 #e9e1f5;padding:29px 23px}.closet-hero-art{display:none}.closet-hero h1{font-size:40px}.closet-hero p{font-size:12px}.closet-shelves{grid-template-columns:1fr;gap:15px;margin-top:28px}.closet-shelf{min-height:250px;padding:24px}.closet-shelf-icon{margin-bottom:10px}.closet-shelf>strong{font-size:53px}.closet-detail-head span{display:none}.closet-detail-title{margin:24px 0}.closet-item{min-height:330px;padding:25px}.closet-word-line{margin:25px 0 10px}.closet-item-top{flex-wrap:wrap}.closet-pager button{font-size:12px;padding:11px 13px}}

/* The mark keeps the Arabic word connected so its diacritics and letter joins render correctly. */
.logo,.zone-brand{direction:rtl;display:inline-flex;align-items:center;gap:5px;letter-spacing:0;isolation:isolate;white-space:nowrap}
.logo{font:700 32px/1.3 'Readex Pro',sans-serif;align-self:center;min-height:58px}
.logo-word{display:inline-block;position:relative;font-family:'Readex Pro',sans-serif;font-weight:700;line-height:1.35;letter-spacing:-.07em;color:#684cb2;background:linear-gradient(112deg,#433b83 7%,#8758c4 38%,#db6caa 69%,#e8a342 95%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;padding-inline:2px;padding-bottom:5px}
.logo-word:after{content:'';position:absolute;inset-inline:18% 14%;bottom:1px;height:4px;background:linear-gradient(90deg,#c3dfa8,#eab671,#e88cab);border-radius:100% 60% 100% 50%;transform:rotate(-4deg)}
.logo-emblem{width:37px;height:39px;display:grid;place-items:center;color:#3b6558;transform:rotate(-9deg);filter:drop-shadow(1px 2px 0 #f2d8b9)}
.logo-emblem svg{width:100%;height:100%}
.logo-seed{width:8px;height:8px;background:#a5ce9b;border-radius:50%;align-self:flex-end;margin-bottom:13px;box-shadow:-2px 2px 0 #fff5e8}
.zone-brand{font:700 26px/1.4 'Readex Pro',sans-serif}
.zone-brand .logo-seed{margin-bottom:10px}

/* A compact location strip shared by every section outside Home. */
.waypoint.status-strip{display:grid;grid-template-columns:minmax(88px,.65fr) minmax(0,1.5fr) minmax(0,1fr);gap:9px;align-items:stretch;overflow:visible;border:0;background:transparent;box-shadow:none;margin:0 0 28px;max-width:100%;--status-accent:#7658ad}
.waypoint-reception.status-strip{--status-accent:#277d75}
.waypoint-chat.status-strip{--status-accent:#6074bb}
.waypoint-paper.status-strip{--status-accent:#a16d43}
.waypoint-dark.status-strip{--status-accent:#778ac3}
.status-strip .status-card,.waypoint.status-strip>div{min-width:0;min-height:92px;display:flex;flex-direction:column;justify-content:center;gap:4px;background:#fff;border:1px solid #e5e1ed;border-radius:18px;padding:15px 20px;box-shadow:0 4px 16px #382c5710;text-align:right}
.status-strip .status-card:first-child,.waypoint.status-strip .waypoint-level{background:color-mix(in srgb,var(--status-accent) 12%,#fff);border-color:color-mix(in srgb,var(--status-accent) 28%,#fff)}
.status-strip .status-card>span,.waypoint.status-strip span{color:#77798c;font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.status-strip .status-card>strong,.waypoint.status-strip strong,.waypoint-dark.status-strip strong{color:#302a47;font-size:16px;font-weight:700;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.status-strip .status-card:first-child strong,.waypoint.status-strip .waypoint-level strong{color:var(--status-accent);font:800 29px/1.25 'DM Sans',sans-serif;text-align:right}
.study-layout .status-strip,.closet-page .status-strip{margin-bottom:30px}

/* Landing: constrain every grid child and scale the illustration in its own box. */
.landing .hero{min-width:0}
.landing .hero-copy,.landing .hero-art{min-width:0}
.landing .hero h1{letter-spacing:-.04em}
@media(max-width:700px){
 .logo{font-size:26px;min-height:53px}.logo-emblem{width:30px;height:33px}.logo-seed{width:6px;height:6px}
 .waypoint.status-strip{grid-template-columns:minmax(66px,.66fr) minmax(0,1.52fr) minmax(0,1fr);gap:6px;margin:0 0 20px}
 .status-strip .status-card,.waypoint.status-strip>div{min-height:70px;padding:9px 8px;border-radius:13px;gap:4px}
 .status-strip .status-card>span,.waypoint.status-strip span{font-size:9px}
 .status-strip .status-card>strong,.waypoint.status-strip strong{font-size:11px}
 .status-strip .status-card:first-child strong,.waypoint.status-strip .waypoint-level strong{font-size:22px}
 .landing .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;gap:13px;padding-top:42px;padding-bottom:24px}
 .landing .hero-copy{width:100%;padding:0;max-width:100%}
 .landing .eyebrow{max-width:100%;font-size:11px;white-space:normal}
 .landing .hero h1{font-size:clamp(38px,10vw,54px);line-height:1.35;letter-spacing:-.045em;margin:22px 0 12px;overflow-wrap:normal}
 .landing .hero-copy>p{font-size:14px;line-height:1.95;max-width:100%;margin-bottom:0}
 .landing .hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:15px;margin-top:24px}
 .landing .hero-actions .cta{min-height:54px;font-size:13px;padding:13px 20px}
 .landing .hero-foot{margin-top:19px}
 .landing .hero-art{width:min(100%,390px);height:345px;margin:16px auto 0;left:auto;translate:none;transform:none;overflow:visible}
 .landing .orbit-one{width:min(93vw,344px);height:min(93vw,344px)}
 .landing .orbit-two{width:270px;height:270px}
 .landing .art-blob{width:295px;height:295px}
 .landing .art-main{width:223px;height:250px;border-radius:25px;box-shadow:8px 9px 0 #3a3458}
 .landing .art-icon{width:130px;height:117px}.landing .art-icon svg{width:75px;height:75px}
 .landing .art-main strong{font-size:12px;margin-top:14px}.landing .art-line{margin-top:15px;width:95px}.landing .art-line.short{width:66px;margin-top:8px}
 .landing .word-card{font-size:10px;padding:8px 10px;border-radius:10px}.landing .word-dot{width:6px;height:6px}
 .landing .word-one{top:62px;right:0}.landing .word-two{bottom:57px;left:2px}.landing .word-three{bottom:36px;right:0}
 .landing .spark-one{top:52px;left:8px}.landing .spark-two{bottom:72px;right:32px}
 .landing .marquee{padding:15px 0}.landing .marquee-inner{flex-wrap:wrap;gap:8px 12px}.landing .marquee span{font-size:10px;white-space:normal}.landing .marquee svg{width:18px;height:18px}.landing .marquee i{display:none}
 .landing .features{padding-top:55px;padding-bottom:62px}
}
@media(max-width:360px){.landing .hero h1{font-size:36px}.landing .hero-art{transform:scale(.88);transform-origin:center center;margin-block:-8px -17px}.topbar{padding-inline:14px}.header-button{font-size:10px;padding:8px 10px}}

/* Text-only Arabic wordmark; the connected word remains a single shaping run. */
.logo,.zone-brand{gap:0;align-items:center;justify-content:center;min-height:0;line-height:1}
.logo{font-size:34px;align-self:auto;padding:3px 0 7px;flex:none}
.logo-word,.zone-brand .logo-word{font-family:'Readex Pro',sans-serif;font-weight:700;line-height:1.4;letter-spacing:-.065em;padding:0 2px 3px;background:linear-gradient(108deg,#463b89 9%,#9060cb 40%,#df77aa 68%,#e6a651 98%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.logo-word:after,.zone-brand .logo-word:after{content:none}
.zone-brand{font-size:28px}

/* One playful progress card with two horizontal bands. */
.waypoint.status-strip{display:flex;flex-direction:column;gap:0;padding:0;max-width:100%;border:1.5px solid #d9c8ee;border-radius:23px;background:#fff;box-shadow:6px 7px 0 #e8ddf9;overflow:hidden;margin:0 0 32px;--status-accent:#8666be}
.waypoint-reception.status-strip{border-color:#c8e2d7;box-shadow:6px 7px 0 #e0f2e8;--status-accent:#348474}
.waypoint-chat.status-strip{border-color:#d3d7f2;box-shadow:6px 7px 0 #e8eafa;--status-accent:#6276b8}
.waypoint-dark.status-strip{border-color:#abb8d7;box-shadow:6px 7px 0 #38425d;--status-accent:#6f82b8}
.waypoint-paper.status-strip{border-color:#e7d6b7;box-shadow:6px 7px 0 #f3e8d5;--status-accent:#ad7b49}
.waypoint.status-strip>div,.waypoint.status-strip .status-upper,.waypoint.status-strip .status-lower{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;width:100%;min-height:0;border:0;border-radius:0;box-shadow:none;text-align:right;gap:13px;padding:13px 22px;background:transparent}
.waypoint.status-strip .status-upper{background:linear-gradient(110deg,#fff9ef 0%,#f8f1ff 55%,#eaf7f1 100%);border-bottom:1px dashed #ddd1eb;min-height:65px}
.waypoint-reception.status-strip .status-upper{background:linear-gradient(110deg,#eaf7ed,#fff7e9,#eaf2fb)}
.waypoint-chat.status-strip .status-upper{background:linear-gradient(110deg,#eaf0ff,#f5edff,#fff5e9)}
.waypoint.status-strip .status-label,.waypoint.status-strip .status-caption{font-size:12px;color:#635f78;font-weight:700;white-space:nowrap}
.waypoint.status-strip .status-level{font:800 27px/1 'DM Sans',sans-serif;color:#fff;background:var(--status-accent);border-radius:12px;padding:8px 13px;direction:ltr;white-space:nowrap;box-shadow:3px 3px 0 #30284824}
.waypoint.status-strip .status-caption{margin-inline-start:auto;color:#797487;font-size:11px}
.waypoint.status-strip .status-lower{min-height:56px;justify-content:space-between;gap:20px}
.waypoint.status-strip .status-lower>span{display:flex;align-items:center;gap:7px;font-size:12px;color:#635e73;font-weight:600;overflow:visible;white-space:nowrap;flex:none}
.waypoint.status-strip .status-lower strong{color:var(--status-accent);font-size:13px;line-height:1.4;font-weight:800}
.waypoint.status-strip .status-lower i{width:4px;height:4px;border-radius:50%;background:#c9b9d7;display:inline-block;margin-inline:2px;flex:none}
.waypoint.status-strip .status-lower>b{font-size:12px;font-weight:700;color:#39354d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}

/* Watching and reading: two distinct, compact invitations. */
.reception-studio{max-width:1190px}
.studio-intro{padding:6px 0 27px;position:relative}
.studio-eyebrow{font-size:11px;font-weight:700;color:#6e56a0;display:inline-flex;align-items:center;gap:10px;letter-spacing:.01em}
.studio-eyebrow>span{color:#d9ac65}
.studio-intro h1,.talk-intro h1{font-size:clamp(35px,5vw,62px);line-height:1.38;letter-spacing:-.04em;margin:10px 0 9px}
.studio-intro h1 em,.talk-intro h1 em{font-style:normal;color:#835ab5}
.studio-intro p,.talk-intro p{font-size:13px;line-height:1.9;color:#727489;max-width:650px;margin:0}
.studio-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:21px}
.studio-tags span{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #e9e0ef;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:700;color:#70677e}
.studio-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}
.studio-choice{min-width:0;border-radius:27px;border:1px solid #ded9df;padding:21px;display:flex;flex-direction:column;overflow:hidden;position:relative}
.studio-watch{background:#292d4d;border-color:#464772;color:#fff;box-shadow:5px 6px 0 #ddd9e9}
.studio-read{background:#f8efe1;border-color:#e7d4b9;color:#393347;box-shadow:5px 6px 0 #f1e5d5}
.studio-choice-top{display:flex;justify-content:space-between;align-items:center;min-height:23px;direction:ltr}
.choice-index{font:800 10px 'DM Sans',sans-serif;letter-spacing:.14em;opacity:.72}
.choice-signal{display:flex;gap:4px;align-items:flex-end;height:18px}
.choice-signal i{display:block;width:3px;height:8px;background:#f1c57e;border-radius:4px}.choice-signal i:nth-child(2){height:17px}.choice-signal i:nth-child(3){height:12px}
.choice-stars{color:#aa7b4a}
.studio-watch-art,.studio-read-art{height:183px;margin:16px 0 18px;position:relative;overflow:hidden;display:grid;place-items:center}
.studio-watch-art{border:1px solid #747999;border-radius:17px;background:radial-gradient(circle at 62% 25%,#636895 0%,transparent 38%),linear-gradient(135deg,#414a76,#242943);box-shadow:inset 0 0 35px #161b3855}
.studio-watch-art:before,.studio-watch-art:after{content:'';position:absolute;border:1px solid #ffffff27;border-radius:50%;width:220px;height:220px;top:-135px;right:-55px}.studio-watch-art:after{top:auto;bottom:-185px;right:auto;left:-40px;width:285px;height:285px}
.studio-watch-caption{font:700 25px/1.3 'DM Sans',sans-serif;letter-spacing:-.04em;text-align:left;position:absolute;left:24px;top:37px;color:#f9efff;opacity:.9;direction:ltr}
.studio-play{position:absolute;right:27px;bottom:31px;width:63px;height:63px;border-radius:50%;background:#f9d37f;color:#302d49;display:grid;place-items:center;box-shadow:4px 5px 0 #16192b66;z-index:1}
.studio-filmbar{position:absolute;bottom:0;left:0;right:0;height:13px;background:#171e37aa;display:flex;align-items:center;justify-content:space-around}.studio-filmbar i{height:5px;width:32px;border-radius:2px;background:#e7e2f266}
.studio-read-art{background:#efe2ce;border:1px solid #e2ceb1;border-radius:17px}
.studio-page{position:relative;z-index:1;width:69%;height:160px;align-self:end;background:#fffdfa;border-radius:8px 13px 0 0;padding:19px 23px;box-shadow:9px 4px 0 #d6bea1,15px 10px 0 #bea37e;transform:rotate(-5deg);direction:ltr;text-align:left}
.studio-page span{display:block;color:#b8895a;font:800 8px 'DM Sans',sans-serif;letter-spacing:.17em}.studio-page strong{display:block;font:800 23px/1.1 'DM Sans',sans-serif;margin:14px 0;color:#3e3b53}.studio-page i{display:block;background:#e7dccc;height:4px;border-radius:9px;margin:6px 0;width:80%}.studio-page i:nth-last-of-type(1){width:48%}.studio-page small{display:block;color:#ac9074;font-size:8px;margin-top:9px;direction:rtl;text-align:right}
.studio-page-back{position:absolute;width:59%;height:150px;background:#ddc39d;border-radius:10px;transform:rotate(9deg) translate(5px,15px)}
.studio-choice-body{display:flex;align-items:flex-start;flex-direction:column;flex:1}
.studio-choice-label{font-size:10px;font-weight:700;color:#d4c6e5}.studio-read .studio-choice-label{color:#a47752}
.studio-choice h2{font-size:27px;line-height:1.4;margin:7px 0 5px}.studio-choice p{font-size:11px;line-height:1.9;margin:0 0 18px;color:#d5d3e4;max-width:400px}.studio-read p{color:#766c66}
.studio-choice button{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;border:0;border-radius:14px;padding:12px 15px;background:#f6d184;color:#2f2d47;font-size:12px;font-weight:800}.studio-read button{background:#4d6c5f;color:#fff}.studio-choice button:hover{filter:brightness(1.06)}.studio-choice button span{display:grid;place-items:center}.studio-choice button svg{transform:rotate(180deg)}
.studio-choice-body>small{font-size:10px;opacity:.7;margin-top:11px}.studio-footnote{font-size:11px;color:#807d8a;line-height:1.8;margin:19px 0}

/* Conversation: clear two-stage decision and a distinct practice palette. */
.talk-studio{max-width:1190px}
.talk-intro{border-radius:27px;background:#e8e9fb;border:1px solid #d9ddf0;padding:32px 36px;display:flex;justify-content:space-between;align-items:center;gap:25px;overflow:hidden;position:relative}
.talk-intro:before{content:'';position:absolute;width:330px;height:330px;border:1px dashed #a4a8d2;border-radius:50%;left:-110px;top:-140px}
.talk-intro-copy{position:relative;z-index:1}.talk-intro h1{font-size:clamp(35px,4.5vw,55px);margin:8px 0 9px}.talk-intro h1 em{color:#6268ad}.talk-intro p{max-width:500px;color:#6a708e}
.talk-illustration{width:240px;height:170px;position:relative;flex:none;z-index:1}.talk-bubble{position:absolute;background:#fff;color:#383958;border:1.5px solid #8f95c6;box-shadow:5px 6px 0 #bcc1e5;border-radius:19px 19px 6px 19px;padding:13px 15px;font:700 15px 'DM Sans','Readex Pro',sans-serif;direction:ltr;white-space:nowrap}.talk-bubble-one{top:11px;right:4px;transform:rotate(7deg)}.talk-bubble-two{top:78px;right:72px;background:#fff8e9;border-color:#d0b689;transform:rotate(-6deg)}
.talk-wave{position:absolute;bottom:0;right:17px;display:flex;align-items:center;gap:5px;height:24px}.talk-wave i{height:12px;width:5px;background:#8f72bc;border-radius:7px}.talk-wave i:nth-child(2),.talk-wave i:nth-child(4){height:21px}.talk-wave i:nth-child(3){height:15px}
.talk-section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:30px 0 16px}.talk-section-head h2,.talk-metrics h2{font-size:24px;margin:6px 0 0}.talk-step{font:800 11px 'DM Sans','Readex Pro',sans-serif;color:#7460a5}.talk-hint{font-size:11px;color:#88829b}.talk-section-head .mode-back{border:1px solid #ddd7ed;background:#fff;border-radius:999px;padding:9px 13px;font-size:11px;font-weight:700;color:#6c5796;display:inline-flex;align-items:center;gap:6px}
.talk-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.talk-option{min-width:0;min-height:262px;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden;background:#f5efff;border:1px solid #e0d2f2;border-radius:24px;padding:27px}.talk-option:before{content:'';position:absolute;width:190px;height:190px;border:1px dashed #9c85bb77;border-radius:50%;top:-115px;left:-65px}.talk-free{background:#eaf5ef;border-color:#cee5d8}.talk-textual{background:#fff1eb;border-color:#f0d8d0}.talk-spoken{background:#eaf0fc;border-color:#d2def2}
.talk-option-icon{width:52px;height:52px;background:#fff;border:1px solid #e8dff1;border-radius:15px;display:grid;place-items:center;color:#7559a6;margin-bottom:17px;position:relative}.talk-free .talk-option-icon{color:#3d856c}.talk-textual .talk-option-icon{color:#ba7466}.talk-spoken .talk-option-icon{color:#5878b0}
.talk-option-kicker{font-size:10px;font-weight:700;color:#816ba7}.talk-free .talk-option-kicker{color:#4f8c71}.talk-textual .talk-option-kicker{color:#ae7668}.talk-spoken .talk-option-kicker{color:#6380b1}
.talk-option h3{font-size:23px;margin:7px 0 6px;line-height:1.4}.talk-option p{font-size:11px;line-height:1.9;color:#747189;max-width:340px;margin:0 0 17px}.talk-option button{margin-top:auto;background:#373154;color:#fff;border:0;border-radius:100px;padding:11px 17px;display:inline-flex;align-items:center;gap:13px;font-size:11px;font-weight:800}.talk-free button{background:#35765e}.talk-textual button{background:#9e6158}.talk-spoken button{background:#49699f}.talk-option button svg{transform:rotate(180deg)}.talk-option-number{position:absolute;top:24px;left:27px;color:#8a75ad66;font:800 32px 'DM Sans',sans-serif}
.talk-metrics{margin-top:25px;border:1px solid #e5e2ee;background:#fff;border-radius:22px;padding:24px}.talk-metrics .meter-row{margin-top:20px}.talk-metrics h2{font-size:19px}
@media(max-width:700px){
 .logo{font-size:27px;padding:1px 0 5px}.zone-brand{font-size:24px}
 .waypoint.status-strip{margin-bottom:23px;border-radius:17px;box-shadow:4px 5px 0 #e8ddf9}
 .waypoint.status-strip>div,.waypoint.status-strip .status-upper,.waypoint.status-strip .status-lower{padding:9px 13px;gap:9px}
 .waypoint.status-strip .status-upper{min-height:53px}.waypoint.status-strip .status-lower{min-height:48px}
 .waypoint.status-strip .status-level{font-size:22px;padding:6px 10px;border-radius:9px}
 .waypoint.status-strip .status-label{font-size:11px}.waypoint.status-strip .status-caption{font-size:9px}
 .waypoint.status-strip .status-lower>span{font-size:10px;gap:4px}.waypoint.status-strip .status-lower strong{font-size:11px}
 .waypoint.status-strip .status-lower>b{font-size:10px;flex:1;text-align:left}
 .studio-intro h1,.talk-intro h1{font-size:clamp(30px,8.8vw,40px)}.studio-intro p,.talk-intro p{font-size:11px}.studio-intro{padding-bottom:20px}.studio-tags{margin-top:16px}
 .studio-choices,.talk-options{grid-template-columns:1fr;gap:13px}.studio-choice{padding:17px;border-radius:21px}.studio-watch-art,.studio-read-art{height:150px;margin:10px 0 13px}.studio-page{height:137px;padding:15px 19px}.studio-page strong{font-size:20px;margin:11px 0}.studio-page-back{height:138px}.studio-choice h2{font-size:23px}.studio-choice p{font-size:11px;margin-bottom:12px}.studio-watch-caption{font-size:20px}.studio-play{width:53px;height:53px}
 .talk-intro{padding:24px 21px;min-height:0}.talk-illustration{display:none}.talk-section-head{margin:25px 0 13px}.talk-section-head h2{font-size:20px}.talk-hint{display:none}.talk-option{min-height:0;padding:22px;border-radius:20px}.talk-option h3{font-size:21px}.talk-option-icon{margin-bottom:12px}.talk-option p{margin-bottom:16px}.talk-option-number{top:19px;left:20px}.talk-metrics{padding:20px}
}
@media(max-width:400px){.waypoint.status-strip .status-lower>b{display:none}}

/* Study overview and an aligned, two-band location card. */
.logo,.zone-brand{overflow:visible;line-height:1.6;padding:0;align-self:center}
.logo-word,.zone-brand .logo-word{line-height:1.7;padding:10px 5px 7px;overflow:visible;white-space:nowrap;letter-spacing:-.035em}
.topbar{overflow:visible}
.waypoint.status-strip .status-upper{justify-content:space-between;gap:14px;padding:14px 19px;min-height:78px}
.waypoint.status-strip .status-level-copy{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}
.waypoint.status-strip .status-level-copy .status-label{font-size:14px;color:#39344e;line-height:1.4}
.waypoint.status-strip .status-level-copy .status-caption{margin:0;font-size:11px;line-height:1.3;color:#79758d;font-weight:500}
.waypoint.status-strip .status-level{flex:none;line-height:1.2;box-shadow:3px 4px 0 #30284822}
.waypoint.status-strip .status-lower{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:stretch;padding:0;min-height:78px;background:#fff}
.waypoint.status-strip .status-lower>div{min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:13px 19px;border-inline-end:1px solid #eee9f2}
.waypoint.status-strip .status-lower>div:last-child{border-inline-end:0}
.waypoint.status-strip .status-lower>div>span{font-size:11px;font-weight:700;color:#8a8297;white-space:nowrap;line-height:1.4}
.waypoint.status-strip .status-lower>div>strong{font-size:14px;font-weight:800;color:#36314d;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.5}
.waypoint.status-strip .status-lower>div:last-child>strong{color:var(--status-accent)}
.study-reimagined .study-masthead{min-height:0;padding:clamp(27px,4vw,48px);grid-template-columns:1.3fr .7fr;box-shadow:6px 7px 0 #e6d6fa;margin-bottom:22px}
.study-reimagined .study-masthead h1{font-size:clamp(34px,4.7vw,60px);line-height:1.35;margin:10px 0}
.study-reimagined .study-masthead p{max-width:530px;line-height:1.9}
.study-reimagined .study-masthead-art{height:195px}
.study-reimagined .study-art-one{height:115px;width:115px;font-size:57px;top:0}
.study-reimagined .study-art-two{height:98px;width:98px;font-size:52px}
.study-reimagined .study-art-mark{height:70px;width:70px}.study-reimagined .study-art-mark svg{width:45px;height:45px}
.study-path{border-radius:25px;border:1px solid #e3dced;background:#fff;padding:27px 30px;box-shadow:0 9px 26px #4536670a}
.study-path-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}
.study-path .study-overline,.study-inside .study-overline{color:#7856aa}
.study-path-heading h2,.study-inside-heading h2{font-size:clamp(22px,2.8vw,30px);line-height:1.45;margin:6px 0}
.study-path-heading p,.study-inside-heading p{font-size:11px;color:#858096;line-height:1.8;margin:0}
.study-path-total{font:800 37px/1.2 'DM Sans',sans-serif;color:#7454ac;background:#f2eafa;border-radius:19px;padding:10px 17px;white-space:nowrap}
.study-path-total small{font:700 14px 'DM Sans',sans-serif;color:#ad97c9}
.study-path-track{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:6px;margin:25px 0}
.study-path-node{height:30px;display:grid;place-items:center;border-radius:9px;background:#f4f1f6;color:#a29aac;font:700 10px 'DM Sans',sans-serif;border:1px solid #ebe6ef}
.study-path-node.done{background:#e3f4eb;border-color:#c4e4d3;color:#397358}
.study-path-node.active{background:#805fc0;border-color:#805fc0;color:#fff;box-shadow:0 4px 0 #d5c5eb}
.study-path-footer{border-top:1px solid #eee9f2;padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#797487;font-size:10px;font-weight:700}
.study-path-footer span:first-child{color:#65518d;display:inline-flex;align-items:center;gap:7px}
.study-inside{margin-top:22px;border-radius:25px;background:#fff8ec;border:1px solid #eaddc8;padding:27px 30px 29px}
.study-inside-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:21px}
.study-inside-grid article{background:#fff;border:1px solid #efe5d7;border-radius:17px;padding:16px;display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;min-width:0}
.study-inside-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;grid-row:span 2}.study-inside-icon.purple{background:#f1eafa;color:#7657b0}.study-inside-icon.pink{background:#fce9f0;color:#c878a0}.study-inside-icon.mint{background:#e8f6eb;color:#4a9270}.study-inside-icon.gold{background:#fff0d4;color:#aa803c}
.study-inside-grid article>strong{font:800 22px/1.2 'DM Sans',sans-serif;color:#322d45}.study-inside-grid article>span:last-child{font-size:10px;color:#8c8491;font-weight:700}
.study-peek{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:17px;background:#fff;border:1px dashed #e7d5b7;border-radius:17px;padding:16px 20px}
.study-peek>div{display:flex;align-items:baseline;gap:13px;flex-wrap:wrap}.study-peek>div>span{font-size:10px;color:#97836e;font-weight:700}.study-peek strong{font:800 23px 'DM Sans',sans-serif;color:#40334f}.study-peek small{font-size:12px;color:#80748b}.study-peek-mark{color:#c99750}.study-inside-empty{font-size:11px;color:#7f7380;margin:16px 0 0;line-height:1.8}
@media(max-width:1050px){.study-reimagined .study-masthead{grid-template-columns:1fr}.study-reimagined .study-masthead-art{display:none}.study-path-track{grid-template-columns:repeat(10,minmax(0,1fr))}}
@media(max-width:700px){
 .topbar{height:76px}.zone-header{height:74px}.logo{font-size:27px}.zone-brand{font-size:24px}.logo-word,.zone-brand .logo-word{line-height:1.8;padding:11px 4px 8px}
 .waypoint.status-strip .status-upper{min-height:66px;padding:11px 15px}.waypoint.status-strip .status-level-copy .status-label{font-size:12px}.waypoint.status-strip .status-level-copy .status-caption{font-size:9px}.waypoint.status-strip .status-level{font-size:22px;padding:8px 12px}
 .waypoint.status-strip .status-lower{min-height:69px;gap:0;padding:0}.waypoint.status-strip .status-lower>div{padding:10px 8px;gap:3px}.waypoint.status-strip .status-lower>div>span{font-size:9px}.waypoint.status-strip .status-lower>div>strong{font-size:11px}
 .study-reimagined{padding-top:23px}.study-reimagined .study-masthead{padding:27px 22px;margin-bottom:19px}.study-reimagined .study-masthead h1{font-size:clamp(34px,8.7vw,43px)}.study-reimagined .study-masthead p{font-size:11px}.study-reimagined .study-hero-actions{gap:10px}.study-reimagined .study-hero-actions>span{font-size:10px}
 .study-path,.study-inside{padding:21px 17px;border-radius:21px}.study-path-heading h2,.study-inside-heading h2{font-size:21px}.study-path-heading p,.study-inside-heading p{font-size:10px}.study-path-total{font-size:25px;padding:9px 11px;border-radius:12px}.study-path-total small{font-size:10px}
 .study-path-track{grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;margin:19px 0}.study-path-node{height:27px;font-size:9px;border-radius:7px}.study-path-footer{flex-wrap:wrap;font-size:9px}
 .study-inside{margin-top:17px}.study-inside-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.study-inside-grid article{padding:11px}.study-inside-icon{width:35px;height:35px}.study-inside-icon svg{width:19px;height:19px}.study-inside-grid article>strong{font-size:19px}.study-peek{padding:13px 15px}.study-peek>div{gap:8px}.study-peek strong{font-size:20px}
}


/* Content studio hierarchy controls */
.zone-sheet{width:min(760px,calc(100vw - 28px));border:1px solid #e7e1ea;border-radius:30px;padding:18px 28px 30px}
.zone-sheet-handle{display:none;width:44px;height:5px;border-radius:9px;background:#d8d2dc;margin:0 auto 15px}
.zone-sheet-head{margin-bottom:14px;padding-top:2px}
.zone-sheet-head h2{margin:5px 0 17px;font-size:29px;letter-spacing:-.02em}
.zone-sheet-context{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 18px;padding:8px;background:#f6f3f8;border:1px solid #e8e2ec;border-radius:16px}
.zone-sheet-context span{display:grid;gap:3px;padding:8px 10px;border-left:1px solid #e2dce7;min-width:0}
.zone-sheet-context span:last-child{border-left:0}
.zone-sheet-context small{font-size:9px;color:#8d8494}
.zone-sheet-context strong{font-size:12px;color:#352f43;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zone-sheet-intro{padding:5px 2px 14px}
.zone-sheet-intro>span,.zone-clear-head>span{font:800 10px 'DM Sans',sans-serif;letter-spacing:.08em;color:#8a68aa}
.zone-sheet-intro h3,.zone-clear-head h3{font-size:21px;margin:6px 0;color:#312a40}
.zone-sheet-intro p,.zone-clear-head p{font-size:12px;line-height:1.8;color:#7c7383;margin:0}
.zone-menu-primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.zone-menu .zone-menu-card{position:relative;min-height:120px;padding:20px 19px;text-align:right;border:1px solid #e1dbe6;border-radius:19px;background:#fbf9fc;color:#443a53;cursor:pointer;transition:transform .16s,border-color .16s,background .16s}
.zone-menu .zone-menu-card:hover,.zone-menu .zone-menu-card:focus-visible{transform:translateY(-2px);border-color:#a98cc6;background:#f8f2fd;outline:0}
.zone-menu-card .zone-menu-index{display:inline-grid;place-items:center;min-width:34px;height:27px;padding:0 8px;border-radius:20px;background:#eee8f3;color:#73558f;font:800 10px 'DM Sans',sans-serif;margin-bottom:13px}
.zone-menu-card strong{display:block;font-size:15px}
.zone-menu-card small{line-height:1.65}
.zone-menu .zone-menu-clear{border-color:#edcfd3;background:#fff8f8;color:#773b45}
.zone-menu .zone-menu-clear .zone-menu-index{background:#fbe5e7;color:#a14a58}
.zone-menu .zone-import-direct.zone-menu-card{padding:20px 19px;border-color:#d6c9e2;background:#faf6fd}
.zone-menu .zone-import-direct.zone-menu-card:hover,.zone-menu .zone-import-direct.zone-menu-card:focus-within{border-color:#9f7bbc;background:#f5eefb;outline:0}
.zone-clear-head{margin:4px 0 17px}
.zone-clear-scopes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.zone-clear-scopes button,.zone-clear-language button{border:1px solid #ded7e4;border-radius:18px;background:#fbfafc;padding:20px;text-align:right;color:#43394f;cursor:pointer}
.zone-clear-scopes button:hover,.zone-clear-scopes button:focus-visible,.zone-clear-language button:hover,.zone-clear-language button:focus-visible{border-color:#9d7db9;background:#f7f1fb;outline:0}
.zone-clear-scopes strong,.zone-clear-language strong{display:block;font-size:14px}
.zone-clear-scopes small,.zone-clear-language small{display:block;color:#817789;line-height:1.7;margin-top:6px}
.zone-clear-trail{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 17px}
.zone-clear-trail span{padding:7px 10px;border:1px solid #e4dfe7;border-radius:20px;background:#faf9fb;color:#aaa2ae;font-size:10px;font-weight:700}
.zone-clear-trail span.is-set{background:#eee7f7;border-color:#d9c9e9;color:#624a7a}
.zone-clear-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.zone-clear-grid button{min-height:67px;border:1px solid #ded8e3;border-radius:14px;background:#fff;color:#42394d;padding:9px 7px;cursor:pointer}
.zone-clear-grid button:hover,.zone-clear-grid button:focus-visible{border-color:#8d68ad;background:#f1e8fa;outline:0}
.zone-clear-grid strong{display:grid;gap:4px;font-size:12px}
.zone-clear-grid small{display:block;font-size:9px;line-height:1.35;color:#887e90;font-weight:600}
.zone-clear-confirm{border:1px solid #edc5cb;background:#fff7f7;border-radius:20px;padding:24px}
.zone-clear-confirm>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f5dfe2;color:#9b4050;font-weight:900}
.zone-clear-confirm h3{font-size:19px;margin:12px 0 7px;color:#5d2e37}
.zone-clear-confirm p{font-size:12px;line-height:1.9;color:#715d62}
.zone-clear-confirm>small{display:block;color:#8c7479;font-size:10px}
.zone-clear-confirm-button{background:#9f4050!important;color:#fff!important;border-color:#9f4050!important}
.zone-clear-done{text-align:center;border:1px solid #cce3d6;background:#f4fbf6;border-radius:20px;padding:28px;color:#2d664c}
.zone-clear-done>span{display:grid;place-items:center;width:42px;height:42px;margin:0 auto;border-radius:50%;background:#dcefe4;font-size:20px}
.zone-clear-done h3{margin:10px 0 6px}
.zone-clear-done p{font-size:12px;line-height:1.8}
.zone-clear-done small{color:#668173}
@media(max-width:700px){
 .zone-sheet{padding:10px 16px max(20px,env(safe-area-inset-bottom,18px));border-radius:26px 26px 0 0}
 .zone-sheet-handle{display:block}
 .zone-sheet-head h2{font-size:24px}
 .zone-sheet-context{grid-template-columns:repeat(4,minmax(58px,1fr));overflow:auto}
 .zone-sheet-context span{padding:7px}
 .zone-menu-primary,.zone-clear-scopes{grid-template-columns:1fr}
 .zone-menu .zone-menu-card{min-height:94px}
 .zone-clear-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .zone-clear-grid button{min-height:62px}
 .zone-editor-actions{flex-wrap:wrap}
}


/* Dedicated image-word vocabulary card */
.zone-image-word-card{direction:ltr;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);min-height:390px;border:1px solid #d9d0e8;border-radius:28px;overflow:hidden;background:#fff;box-shadow:9px 10px 0 #e7ddf0}
.zone-image-word-media{position:relative;min-height:390px;padding:24px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 18% 12%,#fff3bf 0,#f6e8c8 25%,#e9ddf5 70%,#ded7ef 100%)}
.zone-image-word-media:before,.zone-image-word-media:after{content:"";position:absolute;border-radius:50%;border:1px solid #ffffff8c;pointer-events:none}
.zone-image-word-media:before{width:260px;height:260px;left:-90px;top:-105px}
.zone-image-word-media:after{width:180px;height:180px;right:-65px;bottom:-75px}
.zone-image-word-media img{position:relative;z-index:1;width:100%;height:100%;max-height:360px;object-fit:contain;filter:drop-shadow(0 14px 20px #3a2d4b18)}
.zone-image-word-badge{position:absolute;z-index:2;top:18px;left:18px;border:1px solid #ffffffb8;background:#fff9;color:#5f5170;border-radius:999px;padding:7px 11px;font:800 9px 'DM Sans',sans-serif;letter-spacing:.12em;backdrop-filter:blur(8px)}
.zone-image-word-copy{direction:rtl;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,5vw,54px);background:linear-gradient(160deg,#322c50 0,#44365c 100%);color:#fff}
.zone-image-word-kicker{font:800 10px 'DM Sans',sans-serif;letter-spacing:.1em;color:#cab8dc}
.zone-image-word-text{width:100%;margin:18px 0 28px;font:800 clamp(43px,7vw,84px)/1.05 'DM Sans',sans-serif;text-align:left;overflow-wrap:anywhere;color:#fff}
.zone-image-word-audio{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid #ffffff2b;background:#ffffff12;color:#fff;border-radius:999px;padding:13px 18px;font-weight:800;cursor:pointer;transition:transform .16s,background .16s,border-color .16s}
.zone-image-word-audio:hover,.zone-image-word-audio:focus-visible{transform:translateY(-2px);background:#ffffff1f;border-color:#ffffff55;outline:0}
.zone-image-word-audio svg{width:22px;height:22px;flex:none}
.zone-image-word-audio span{font-size:12px}
@media(max-width:700px){
 .zone-image-word-card{grid-template-columns:1fr;min-height:0;border-radius:22px;box-shadow:6px 7px 0 #e7ddf0}
 .zone-image-word-media{min-height:260px;padding:20px}
 .zone-image-word-media img{max-height:250px}
 .zone-image-word-copy{padding:26px 22px 28px}
 .zone-image-word-text{font-size:clamp(42px,14vw,68px);margin:12px 0 20px}
 .zone-image-word-audio{width:100%;min-height:50px}
}


/* Unified image learning system */
.zone-image-word-arabic{display:block;width:100%;margin:-14px 0 24px;color:#d9cce8;font-size:clamp(18px,2.5vw,28px);font-weight:700;text-align:left}
.zone-listen-image-card{height:min(48vw,430px);min-height:260px;margin:0 0 18px;border:1px solid #ceded9;border-radius:26px;overflow:hidden;background:linear-gradient(145deg,#eef8f5,#e8e2f4);display:grid;place-items:center}
.zone-listen-image-card img{width:100%;height:100%;object-fit:contain;display:block;padding:16px}
.zone-image-pronounce-pair{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.zone-image-pronounce-pair .zone-pronounce-tile{min-height:155px}
.zone-image-pronounce-pair .zone-pronounce-tile strong{font:800 18px 'Readex Pro',sans-serif}
.zone-image-question{background:#fbfaff;border-color:#ded3ea}
.zone-word-image-question,.zone-image-match-question,.zone-image-words-question{padding:clamp(18px,3vw,30px)}
.zone-image-question-word{margin:12px 0 24px;text-align:center;font:800 clamp(38px,7vw,72px)/1.1 'DM Sans',sans-serif;color:#332b4b}
.zone-image-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zone-image-option{position:relative;cursor:pointer;min-width:0}
.zone-image-option input{position:absolute;opacity:0;pointer-events:none}
.zone-image-option span{position:relative;display:grid;place-items:center;min-height:190px;padding:10px;border:2px solid #e1dbe8;border-radius:20px;background:#fff;overflow:hidden;transition:border-color .16s,transform .16s,box-shadow .16s}
.zone-image-option span img{width:100%;height:180px;object-fit:contain;border-radius:14px}
.zone-image-option span small{position:absolute;top:10px;left:10px;display:grid;place-items:center;min-width:31px;height:31px;border-radius:999px;background:#ffffffdc;color:#65547e;font:800 10px 'DM Sans',sans-serif;box-shadow:0 3px 10px #35274817}
.zone-image-option input:checked+span{border-color:#7252a6;background:#f4eefc;box-shadow:0 0 0 3px #8060b71f}
.zone-image-option input:focus-visible+span{outline:3px solid #8c63d0;outline-offset:2px}
.zone-image-option:hover span{transform:translateY(-2px)}
.zone-image-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.zone-image-match-card{display:grid;gap:10px;padding:12px;border:1px solid #ded7e5;border-radius:20px;background:#fff}
.zone-image-match-card img{width:100%;height:175px;object-fit:contain;border-radius:14px;background:#f7f4fa}
.zone-image-match-card select{width:100%;min-height:48px;border:1px solid #d8d0df;border-radius:12px;background:#faf8fc;color:#393148;padding:9px 11px;font-weight:700}
.zone-image-question-focus{height:min(42vw,380px);min-height:240px;margin:12px 0 20px;border:1px solid #dfd7e6;border-radius:22px;background:linear-gradient(145deg,#f7f3fb,#eef5f1);display:grid;place-items:center;overflow:hidden}
.zone-image-question-focus img{width:100%;height:100%;object-fit:contain;padding:14px}
.zone-image-word-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.zone-image-word-options label{position:relative;cursor:pointer}
.zone-image-word-options input{position:absolute;opacity:0;pointer-events:none}
.zone-image-word-options span{display:flex;align-items:center;justify-content:center;min-height:68px;padding:13px;border:2px solid #e0d9e6;border-radius:16px;background:#fff;color:#342d45;font:800 clamp(16px,2.4vw,23px) 'DM Sans',sans-serif;transition:border-color .16s,background .16s,transform .16s}
.zone-image-word-options input:checked+span{border-color:#7351a7;background:#f0e7fb}
.zone-image-word-options input:focus-visible+span{outline:3px solid #8c63d0;outline-offset:2px}
.zone-image-word-options label:hover span{transform:translateY(-2px)}
.zone-editor-form input[name^="img"],.zone-editor-form input[name="image"]{direction:ltr}
@media(max-width:700px){
 .zone-image-word-arabic{margin:-8px 0 19px;font-size:20px}
 .zone-listen-image-card{height:290px;min-height:0;border-radius:20px}
 .zone-listen-image-card img{padding:10px}
 .zone-image-pronounce-pair{gap:10px}
 .zone-image-pronounce-pair .zone-pronounce-tile{min-height:118px;padding:15px}
 .zone-image-options,.zone-image-match-grid,.zone-image-word-options{grid-template-columns:1fr 1fr}
 .zone-image-option span{min-height:132px;padding:7px}
 .zone-image-option span img,.zone-image-match-card img{height:120px}
 .zone-image-question-focus{height:250px;min-height:0}
 .zone-image-word-options span{min-height:58px;font-size:17px}
 .zone-image-match-card{padding:8px}
 .zone-image-match-card select{font-size:11px;padding:8px}
}

.zone-preview-image-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.zone-preview-image-set img{width:100%;height:140px;object-fit:contain;border:1px solid #e3dce8;border-radius:12px;background:#faf8fc}@media(max-width:700px){.zone-preview-image-set img{height:105px}}


/* Grammar process v2 */
.zone-grammar-section{margin-top:30px}
.zone-grammar-section:first-of-type{margin-top:0}
.zone-grammar-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.zone-grammar-section-title>div>span{display:block;font:800 9px 'DM Sans',sans-serif;letter-spacing:.13em;color:#8c69ad}
.zone-grammar-section-title h2{margin:5px 0 0;font-size:clamp(20px,2.8vw,29px);line-height:1.45;color:#302943}
.zone-grammar-section-title>small{flex:none;border:1px solid #e1d7eb;background:#faf7fd;color:#756784;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:800}
.zone-grammar-section-title>small.is-ready{border-color:#c8dfd2;background:#edf8f1;color:#3d7659}
.zone-grammar-section-title>small.needs-content{border-color:#ecd8b6;background:#fff7e7;color:#8a6731}

.zone-grammar-law{position:relative;overflow:hidden;border:1px solid #cdb9e4;border-radius:26px;padding:clamp(24px,4vw,38px);background:linear-gradient(145deg,#f2eafa 0,#ebe7f8 100%)}
.zone-grammar-law:after{content:"";position:absolute;width:210px;height:210px;border:1px solid #ffffff8a;border-radius:50%;left:-82px;top:-98px}
.zone-grammar-card-top{position:relative;z-index:1;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:10px;font-weight:800;color:#715392}
.zone-grammar-card-top span{font-family:'DM Sans',sans-serif;letter-spacing:.1em}
.zone-grammar-card-top b{font-weight:800;color:#584668}
.zone-grammar-law h2{position:relative;z-index:1;margin:18px 0 12px;font-size:clamp(24px,4vw,38px);color:#302640}

.zone-grammar-formula{position:relative;z-index:1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:16px 0 20px;padding:15px;border:1px solid #ded4e9;border-radius:16px;background:#ffffffc9}
.zone-grammar-formula span{padding:8px 10px;border:1px solid #e5ddee;background:#fff;border-radius:10px;font:800 13px 'DM Sans',sans-serif;color:#40344f}
.zone-grammar-formula b{font:800 16px 'DM Sans',sans-serif;color:#a287ba}

.zone-grammar-bilingual{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.zone-grammar-bilingual p{margin:0;border-radius:14px;padding:15px 16px;line-height:1.9;font-size:12px}
.zone-grammar-ar{background:#fff8e9;border:1px solid #eadcbf;color:#544832}
.zone-grammar-en{background:#fff;border:1px solid #ddd7e4;color:#4b4358;text-align:left;font-family:'DM Sans','Readex Pro',sans-serif}
.zone-grammar-example-line,.zone-grammar-mini-example{position:relative;z-index:1;margin-top:14px;border-top:1px solid #d8cae7;padding-top:14px}
.zone-grammar-example-line small,.zone-grammar-mini-example small{display:block;margin-bottom:6px;color:#806799;font-size:9px;font-weight:800;letter-spacing:.08em}
.zone-grammar-example-line strong,.zone-grammar-mini-example strong{display:block;font:800 clamp(18px,2.5vw,26px) 'DM Sans',sans-serif;text-align:left;color:#352c45}

.zone-grammar-transform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.zone-grammar-transform{border:1px solid #ddd3e8;border-radius:22px;padding:22px;background:#fff;min-width:0}
.zone-grammar-transform.question{background:#f6f0fc}
.zone-grammar-transform.negative{background:#fff2ef;border-color:#edd2ca}
.zone-grammar-transform h3{margin:15px 0 8px;font-size:20px;line-height:1.5}
.zone-grammar-transform.negative .zone-grammar-card-top{color:#9a6256}
.zone-grammar-transform.negative .zone-grammar-formula{border-color:#ead7d0}
.zone-grammar-missing{min-height:240px;display:grid;place-items:center;text-align:center}

.zone-grammar-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.zone-grammar-guide{border:1px solid #cbded8;border-radius:22px;padding:23px;background:linear-gradient(155deg,#eef8f4,#f7fbf9)}
.zone-grammar-guide.agreementGuide{border-color:#e5d8b9;background:linear-gradient(155deg,#fff8e7,#fffdf8)}
.zone-grammar-guide-head span{font:800 9px 'DM Sans',sans-serif;letter-spacing:.12em;color:#4d7b6b}
.zone-grammar-guide.agreementGuide .zone-grammar-guide-head span{color:#8b6a35}
.zone-grammar-guide-head h3{margin:6px 0 14px;font-size:21px;color:#2f403a}
.zone-grammar-map{display:grid;gap:7px;margin-top:13px}
.zone-grammar-map span{display:block;border:1px solid #d9e7e2;background:#fff;border-radius:11px;padding:10px 12px;font:800 12px 'DM Sans',sans-serif;color:#3c514a;text-align:left;white-space:pre-wrap}
.zone-grammar-guide.agreementGuide .zone-grammar-map span{border-color:#eadfc7;color:#59482b}

.zone-grammar-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.zone-grammar-note{border:1px solid #e0d8e7;border-radius:18px;padding:18px;background:#faf8fc}
.zone-grammar-note.exception{border-color:#efcec4;background:#fff4f0}
.zone-grammar-note>span{font:800 9px 'DM Sans',sans-serif;letter-spacing:.11em;color:#7c6297}
.zone-grammar-note.exception>span{color:#a05e50}
.zone-grammar-note h3{margin:7px 0 10px;font-size:16px}
.zone-grammar-note p{margin:6px 0;font-size:11px;line-height:1.85;color:#696273}
.zone-grammar-note p[dir="ltr"]{font-family:'DM Sans','Readex Pro',sans-serif;text-align:left}
.zone-grammar-note-detail{margin-top:10px;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid #e6dfe9;font-size:11px;line-height:1.8;white-space:pre-wrap}

.zone-grammar-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.zone-grammar-example{position:relative;border:1px solid #ded7e6;border-radius:17px;padding:18px 18px 16px;background:#fff;min-width:0}
.zone-grammar-example>span{position:absolute;top:12px;left:12px;display:grid;place-items:center;min-width:29px;height:29px;border-radius:999px;background:#eee7f7;color:#6c5286;font:800 9px 'DM Sans',sans-serif}
.zone-grammar-example strong{display:block;padding-left:38px;font:800 18px/1.5 'DM Sans',sans-serif;text-align:left;color:#332b43;overflow-wrap:anywhere}
.zone-grammar-example p{margin:10px 0 0;color:#5f5968;font-size:12px;line-height:1.8}
.zone-grammar-example small{display:block;margin-top:9px;padding-top:9px;border-top:1px solid #eee8f0;color:#88808e;font-size:10px;line-height:1.7}

.zone-grammar-test{margin-top:32px}
.zone-grammar-test .zone-grammar-section-title{margin-bottom:8px}
.zone-grammar-test>p{margin-bottom:18px}
.zone-grammar-editor-hint{display:grid;gap:5px;padding:12px 14px;border:1px solid #d9cce6;border-radius:12px;background:#f6f0fb;color:#554566}
.zone-grammar-editor-hint strong{font-size:12px}
.zone-grammar-editor-hint span{font-size:10px;line-height:1.75;color:#786b83}

@media(max-width:700px){
 .zone-grammar-section-title{align-items:flex-start;flex-direction:column;gap:8px}
 .zone-grammar-bilingual,.zone-grammar-transform-grid,.zone-grammar-guide-grid,.zone-grammar-note-grid,.zone-grammar-example-grid{grid-template-columns:1fr}
 .zone-grammar-law,.zone-grammar-transform,.zone-grammar-guide{padding:18px}
 .zone-grammar-formula{padding:11px}
 .zone-grammar-bilingual p{padding:12px}
 .zone-grammar-example strong{font-size:16px}
}

.zone-image-open{position:relative;display:grid;width:100%;height:100%;place-items:center;text-decoration:none;color:inherit}
.zone-image-open img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.zone-image-open>span{position:absolute;left:12px;bottom:12px;border:1px solid #ffffffaa;background:#fffffff0;color:#554566;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;box-shadow:0 5px 16px #3527481a}
.zone-image-open-card>span,.zone-image-open-listen>span{opacity:.9}
.zone-image-open:hover>span,.zone-image-open:focus-visible>span{background:#fff;outline:0}
.zone-grammar-ar-only{position:relative;z-index:1}
.zone-grammar-ar-only p{margin:0;border:1px solid #eadcbf;background:#fff8e9;color:#544832;border-radius:14px;padding:15px 16px;line-height:1.95;font-size:12px}
@media(max-width:700px){.zone-image-open>span{left:8px;bottom:8px;padding:6px 9px;font-size:9px}}


/* Full-bleed image treatment */
/* Every learning image fills its visual frame edge-to-edge. Cropping is intentional. */
.zone-image-frame{
  height:min(42vw,350px);
  min-height:230px;
  padding:0;
}
.zone-image-frame .zone-image-open,
.zone-image-frame img{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
}
.zone-image-frame img{
  min-height:0;
  object-fit:cover;
}

/* Vocabulary image word */
.zone-image-word-media{
  padding:0;
}
.zone-image-word-media .zone-image-open-card,
.zone-image-word-media img{
  width:100%;
  height:100%;
}
.zone-image-word-media img{
  max-height:none;
  object-fit:cover;
  filter:none;
}

/* Listening / speaking image */
.zone-listen-image-card .zone-image-open-listen,
.zone-listen-image-card img{
  width:100%;
  height:100%;
}
.zone-listen-image-card img{
  padding:0;
  object-fit:cover;
}

/* Word -> four image choices */
.zone-image-option span{
  height:190px;
  min-height:190px;
  padding:0;
}
.zone-image-option span img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:18px;
}

/* Four words <-> four images */
.zone-image-match-card{
  gap:0;
  padding:0;
  overflow:hidden;
}
.zone-image-match-card img{
  width:100%;
  height:175px;
  object-fit:cover;
  border-radius:0;
  background:none;
}
.zone-image-match-card select{
  width:calc(100% - 20px);
  margin:10px;
}

/* One image -> four word choices */
.zone-image-question-focus img{
  width:100%;
  height:100%;
  padding:0;
  object-fit:cover;
}

/* Content preview / closet */
.zone-preview-image-set{
  overflow:hidden;
}
.zone-preview-image-set img{
  width:100%;
  height:140px;
  object-fit:cover;
  border-radius:12px;
}
.closet-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Generic clickable image wrapper must not reintroduce contain behavior. */
.zone-image-open img{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
}

@media(max-width:700px){
  .zone-image-frame{
    height:230px;
    min-height:230px;
  }
  .zone-image-word-media{
    padding:0;
  }
  .zone-listen-image-card img{
    padding:0;
  }
  .zone-image-option span{
    height:132px;
    min-height:132px;
    padding:0;
  }
  .zone-image-option span img,
  .zone-image-match-card img{
    height:100%;
  }
  .zone-image-match-card img{
    height:120px;
  }
  .zone-preview-image-set img{
    height:105px;
  }
}


/* Study treasure map */
.treasure-study{
  --map-ink:#443526;
  --map-muted:#786957;
  --map-paper:#f7edcf;
  --map-paper-deep:#ead9ad;
  --map-gold:#d69e34;
  --map-gold-dark:#8f6122;
  --map-green:#557a61;
  --map-purple:#71558d;
  max-width:1180px;
}
.treasure-map-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);
  gap:24px;
  align-items:center;
  overflow:hidden;
  border:1px solid #d8c28d;
  border-radius:32px;
  padding:clamp(28px,5vw,52px);
  color:var(--map-ink);
  background:
    radial-gradient(circle at 12% 18%,#fff9df 0 2px,transparent 2.5px),
    radial-gradient(circle at 78% 30%,#e7cf91 0 1.5px,transparent 2px),
    linear-gradient(135deg,#fbf3d9,#f2e2bb);
  background-size:38px 38px,46px 46px,auto;
  box-shadow:0 18px 50px #66512c17;
}
.treasure-map-hero:before,
.treasure-map-hero:after{
  content:"";
  position:absolute;
  border:2px dashed #a9854d55;
  border-radius:50%;
  pointer-events:none;
}
.treasure-map-hero:before{width:260px;height:190px;left:-85px;bottom:-110px;transform:rotate(16deg)}
.treasure-map-hero:after{width:330px;height:220px;right:-125px;top:-130px;transform:rotate(-18deg)}
.treasure-map-hero>div{position:relative;z-index:1}
.treasure-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#7a5a28;
  font-size:12px;
  font-weight:900;
}
.treasure-map-hero h1{
  margin:13px 0 12px;
  font-size:clamp(34px,5vw,62px);
  line-height:1.35;
  letter-spacing:-.02em;
}
.treasure-map-hero h1 em{font-style:normal;color:#926421}
.treasure-map-hero p{max-width:650px;margin:0;color:#746651;font-size:13px;line-height:2}
.treasure-map-summary{
  min-height:190px;
  border:1px solid #dcc38a;
  border-radius:25px;
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  background:#fffaf0cc;
  box-shadow:inset 0 0 0 5px #ffffff73;
}
.treasure-map-summary span{font-size:11px;font-weight:800;color:#8d744e}
.treasure-map-summary strong{font:900 clamp(46px,7vw,74px)/1 'DM Sans',sans-serif;color:#6c4a20;margin:8px 0}
.treasure-map-summary small{font-size:10px;line-height:1.7;color:#89785f}

.treasure-map-panel{
  position:relative;
  overflow:hidden;
  margin-top:24px;
  border:1px solid #dbc99d;
  border-radius:32px;
  padding:clamp(22px,4vw,38px);
  color:var(--map-ink);
  background:
    linear-gradient(#ffffff45,#ffffff45),
    repeating-linear-gradient(0deg,transparent 0 31px,#9b80510c 32px),
    var(--map-paper);
  box-shadow:0 18px 50px #66512c12;
}
.treasure-map-panel:after{
  content:"";
  position:absolute;
  width:230px;height:230px;
  border:1px dashed #987a4561;
  border-radius:48% 52% 55% 45%;
  left:-125px;top:34%;
  pointer-events:none;
}
.treasure-map-title{
  position:relative;z-index:2;
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  margin-bottom:28px;
}
.treasure-map-title>div>span{display:block;color:#91713c;font-size:10px;font-weight:900;letter-spacing:.06em}
.treasure-map-title h2{margin:5px 0 4px;font-size:clamp(25px,3.7vw,37px)}
.treasure-map-title p{margin:0;color:#82725d;font-size:11px;line-height:1.8}
.treasure-map-title>strong{
  flex:none;
  min-width:72px;
  border:1px solid #d9bd7b;
  border-radius:999px;
  padding:10px 14px;
  background:#fff8e4;
  color:#765222;
  text-align:center;
  font:900 16px 'DM Sans',sans-serif;
}
.treasure-map-breadcrumb{
  position:relative;z-index:3;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin-bottom:22px;
}
.treasure-map-breadcrumb button,
.treasure-map-breadcrumb span{
  border:1px solid #d9c79d;
  border-radius:999px;
  padding:8px 12px;
  background:#fffaf0;
  color:#6c5a43;
  font-size:10px;
  font-weight:800;
}
.treasure-map-breadcrumb button{cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.treasure-map-breadcrumb button:hover{background:#fff}

.treasure-route{
  position:relative;z-index:2;
  display:grid;
  gap:15px;
}
.treasure-route:before{
  content:"";
  position:absolute;
  z-index:0;
  top:20px;bottom:20px;right:50%;
  width:3px;
  transform:translateX(50%);
  background:repeating-linear-gradient(to bottom,#ad8950 0 8px,transparent 8px 17px);
  opacity:.45;
}
.treasure-level-route .treasure-node:nth-child(odd){margin-left:8%}
.treasure-level-route .treasure-node:nth-child(even){margin-right:8%}
.treasure-step-route{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 34px;
}
.treasure-step-route .treasure-node:nth-child(4n+1),
.treasure-step-route .treasure-node:nth-child(4n+4){transform:translateY(9px)}

.treasure-node{
  position:relative;z-index:1;
  width:auto;min-height:126px;
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  border:1px solid #d7c395;
  border-radius:23px;
  padding:16px;
  text-align:right;
  color:var(--map-ink);
  background:#fffaf0;
  box-shadow:5px 6px 0 #cfb97c45;
  transition:transform .17s,box-shadow .17s,border-color .17s;
}
.treasure-node:not(:disabled){cursor:pointer}
.treasure-node:not(:disabled):hover{transform:translateY(-3px);box-shadow:7px 10px 0 #cfb97c55;border-color:#b99148}
.treasure-node.current{
  border-color:#a77fc9;
  background:linear-gradient(135deg,#fbf7ff,#f1e8fa);
  box-shadow:6px 7px 0 #b69ad55c;
}
.treasure-node.done{border-color:#aac6ad;background:linear-gradient(135deg,#fbfff9,#eef7ec)}
.treasure-node.locked{opacity:.56;filter:saturate(.55);box-shadow:none}
.treasure-node-index{
  align-self:start;
  color:#a58b63;
  font:900 10px 'DM Sans',sans-serif;
}
.treasure-node-copy{display:flex;flex-direction:column;min-width:0}
.treasure-node-copy small{color:#927a55;font-size:9px;font-weight:900}
.treasure-node-copy strong{font-size:17px;line-height:1.55;margin:2px 0}
.treasure-node-copy>span:not(.treasure-progress){color:#847664;font-size:10px;line-height:1.65}
.treasure-percent{
  min-width:48px;
  text-align:center;
  color:#72552f;
  font:900 12px 'DM Sans',sans-serif;
}
.treasure-node.current .treasure-percent{color:#674a80}
.treasure-node.done .treasure-percent{color:#4e7657}

.treasure-chest{
  position:relative;
  width:58px;height:54px;
  flex:none;
  display:block;
}
.treasure-lid{
  position:absolute;
  width:48px;height:20px;
  right:5px;top:5px;
  border:2px solid #6e4b22;
  border-bottom:0;
  border-radius:17px 17px 5px 5px;
  background:linear-gradient(#d69d35,#ba7825);
}
.treasure-body{
  position:absolute;
  width:52px;height:31px;
  right:3px;bottom:1px;
  border:2px solid #69461f;
  border-radius:5px 5px 10px 10px;
  background:linear-gradient(90deg,#a96422,#d18d2d 42%,#b66d22);
}
.treasure-chest>b{
  position:absolute;
  z-index:2;
  width:10px;height:14px;
  right:24px;bottom:10px;
  border-radius:3px;
  background:#f3d178;
  border:1px solid #795120;
}
.treasure-chest>em{
  position:absolute;
  z-index:3;
  left:-4px;top:-5px;
  width:27px;height:27px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#fff3bd;
  color:#93661f;
  box-shadow:0 3px 9px #65451e26;
}
.done .treasure-lid,.done .treasure-body{background:linear-gradient(#78a77c,#527c5c);border-color:#3f6348}
.done .treasure-chest>b{background:#d8efd8;border-color:#4c7658}
.done .treasure-chest>em{background:#e3f4e4;color:#3f6c4c}
.current .treasure-lid,.current .treasure-body{background:linear-gradient(#a985ca,#725493);border-color:#59416f}
.current .treasure-chest>b{background:#f1d986;border-color:#725426}
.current .treasure-chest>em{background:#f3eaff;color:#684985}
.locked .treasure-lid,.locked .treasure-body{background:linear-gradient(#bbb0a0,#998d7e);border-color:#756b60}
.locked .treasure-chest>b{background:#ccc4b7;border-color:#756b60}
.locked .treasure-chest>em{background:#e4dfd7;color:#6e665d}

.treasure-progress{
  display:block;
  width:100%;height:6px;
  margin-top:9px;
  overflow:hidden;
  border-radius:999px;
  background:#dfd1b0;
}
.treasure-progress i{display:block;height:100%;border-radius:inherit;background:#b58231}
.current .treasure-progress i{background:#8060a3}
.done .treasure-progress i{background:#5d8b68}

.treasure-process-key{
  position:relative;z-index:2;
  display:flex;flex-wrap:wrap;gap:7px;
  margin:-8px 0 24px;
}
.treasure-process-key span{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid #d9c8a4;border-radius:999px;
  padding:7px 10px;background:#fff9eb;color:#6f604c;
  font-size:9px;font-weight:800;
}
.treasure-process-key span b{
  display:grid;place-items:center;width:19px;height:19px;
  border-radius:50%;background:#ead8ae;color:#765424;
  font:900 9px 'DM Sans',sans-serif;
}
.treasure-process-key .exam-seal{border-color:#cab5dc;background:#f8f1fd;color:#6a507d}

.treasure-box-grid{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:13px;
}
.treasure-box{
  position:relative;
  min-height:205px;
  display:flex;flex-direction:column;align-items:center;
  border:1px solid #d7c397;border-radius:21px;
  padding:16px 12px 13px;
  color:var(--map-ink);
  background:#fffaf0;
  box-shadow:4px 5px 0 #cdb77b3b;
  text-align:center;
}
.treasure-box:not(:disabled){cursor:pointer}
.treasure-box:not(:disabled):hover{transform:translateY(-3px);border-color:#b7914d}
.treasure-box.current{border:2px solid #9f7abb;background:#f6effb;box-shadow:5px 6px 0 #ad91c65e}
.treasure-box.done{border-color:#a9c7ae;background:#f2f9f0}
.treasure-box.locked{opacity:.5;filter:grayscale(.35);box-shadow:none}
.treasure-box .treasure-chest{transform:scale(.88);margin:-2px 0}
.treasure-box-number{
  position:absolute;top:11px;left:12px;
  color:#a08760;font:900 9px 'DM Sans',sans-serif;
}
.treasure-box>strong{font-size:13px;line-height:1.5;margin:3px 0 8px}
.treasure-box>small{min-height:33px;color:#837563;font-size:9px;line-height:1.65}
.treasure-box>b:last-child{
  margin-top:9px;border-radius:999px;padding:5px 9px;
  background:#efe1bf;color:#7a592b;font-size:9px;
}
.treasure-box.current>b:last-child{background:#e6d8f0;color:#684d80}
.treasure-box.done>b:last-child{background:#dceedd;color:#4b7355}
.treasure-process-dots{display:flex;gap:4px;margin:0 0 8px}
.treasure-process-dots i{
  width:9px;height:9px;border-radius:50%;
  border:1px solid #bba889;background:#eee2c9;
}
.treasure-process-dots i.filled{background:#d29a36;border-color:#9d6e23}
.current .treasure-process-dots i.filled{background:#8965a9;border-color:#694b84}
.done .treasure-process-dots i.filled{background:#5e8d69;border-color:#477452}
.treasure-box .treasure-progress{height:5px;margin-top:auto}

.treasure-map-note{
  display:flex;align-items:flex-start;gap:8px;
  margin:18px 4px 0;
  color:#85745f;font-size:10px;line-height:1.8;
}

@media(max-width:900px){
 .treasure-step-route{grid-template-columns:1fr}
 .treasure-step-route .treasure-node:nth-child(n){transform:none}
 .treasure-box-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
 .treasure-study{padding-bottom:100px}
 .treasure-map-hero{grid-template-columns:1fr;padding:24px 18px;border-radius:25px}
 .treasure-map-hero h1{font-size:34px}
 .treasure-map-summary{min-height:130px}
 .treasure-map-panel{padding:20px 13px;border-radius:25px}
 .treasure-map-title{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:21px}
 .treasure-map-title>strong{align-self:flex-start}
 .treasure-route:before{right:29px;transform:none}
 .treasure-level-route .treasure-node:nth-child(n){margin-left:0;margin-right:0}
 .treasure-node{grid-template-columns:auto auto minmax(0,1fr);gap:10px;padding:13px;min-height:112px}
 .treasure-node-index{display:none}
 .treasure-percent{grid-column:3;justify-self:start;min-width:0}
 .treasure-chest{width:51px;height:48px}
 .treasure-lid{width:43px;height:18px}
 .treasure-body{width:47px;height:28px}
 .treasure-chest>b{right:22px;bottom:9px}
 .treasure-node-copy strong{font-size:15px}
 .treasure-box-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .treasure-box{min-height:190px;padding:13px 9px 11px}
 .treasure-process-key{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;margin-left:-2px;margin-right:-2px}
 .treasure-process-key span{flex:none}
}
@media(max-width:390px){
 .treasure-box-grid{grid-template-columns:1fr 1fr}
 .treasure-box{min-height:183px}
 .treasure-box>strong{font-size:12px}
}


/* Treasure status + Watch Read learning */
.treasure-map-hero-status{
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  align-items:stretch;
}
.treasure-status-box{
  position:relative;
  z-index:2;
  overflow:hidden;
  border:1px solid #cfb477;
  border-radius:26px;
  padding:18px;
  background:linear-gradient(145deg,#fffdf4e8,#f5e4bde8);
  box-shadow:inset 0 0 0 5px #fff7dd8c,0 12px 32px #6a4c2117;
}
.treasure-status-box:before{
  content:"";
  position:absolute;inset:-40% auto auto -25%;
  width:160px;height:160px;border:1px dashed #a5804450;border-radius:50%;
}
.treasure-status-top,.treasure-status-foot{
  position:relative;z-index:1;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.treasure-status-top>span{font-size:10px;font-weight:900;color:#80653c}
.treasure-status-top>b{
  border-radius:999px;padding:6px 9px;
  background:#eee0b5;color:#735225;font-size:9px;
}
.treasure-status-main{
  position:relative;z-index:1;
  display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;
  margin:16px 0;
}
.treasure-status-current{display:flex;flex-direction:column;min-width:0}
.treasure-status-current small{color:#8b744d;font-size:9px;font-weight:800}
.treasure-status-current strong{
  color:#5c4122;font:900 clamp(38px,5vw,58px)/1 'DM Sans',sans-serif;
  margin:5px 0;
}
.treasure-status-current span{font-size:9px;line-height:1.7;color:#78684f}
.treasure-status-ring{
  --value:0;
  width:83px;height:83px;border-radius:50%;
  display:grid;place-items:center;
  position:relative;
  background:conic-gradient(#b17b2d calc(var(--value)*1%),#e5d5ae 0);
  box-shadow:0 5px 15px #6e4f281a;
}
.treasure-status-ring:after{
  content:"";position:absolute;inset:8px;border-radius:50%;background:#fff9e9;
}
.treasure-status-ring b,.treasure-status-ring small{position:relative;z-index:1;grid-area:1/1}
.treasure-status-ring b{margin-top:-10px;color:#6e4e23;font:900 14px 'DM Sans',sans-serif}
.treasure-status-ring small{margin-top:20px;color:#9b835c;font-size:7px;font-weight:800}
.treasure-status-process{
  position:relative;z-index:1;
  border-top:1px dashed #cbb584;
  border-bottom:1px dashed #cbb584;
  padding:11px 0;margin-bottom:12px;
}
.treasure-status-process>span{display:block;font-size:8px;color:#977c51;font-weight:800}
.treasure-status-process>strong{display:block;margin:3px 0 8px;font-size:12px;color:#57452e}
.treasure-status-process>div{display:flex;gap:5px}
.treasure-status-process i{
  width:100%;height:5px;border-radius:999px;background:#dfd0ac;
}
.treasure-status-process i.done{background:#60906b}
.treasure-status-process i.active{background:#8060a3;box-shadow:0 0 0 2px #8060a323}
.treasure-status-foot span{font-size:8px;color:#8a775b}
.treasure-status-foot b{font:900 11px 'DM Sans',sans-serif;color:#604623}
.treasure-status-box.reception{
  border-color:#aebfc7;
  background:linear-gradient(145deg,#f8f6e9ec,#e4eee9e8);
  box-shadow:inset 0 0 0 5px #ffffff80,0 12px 32px #2f525416;
}
.treasure-status-box.reception .treasure-status-top>span,
.treasure-status-box.reception .treasure-status-current small{color:#59706f}
.treasure-status-box.reception .treasure-status-top>b{background:#dce9e4;color:#3f625d}
.treasure-status-box.reception .treasure-status-current strong,
.treasure-status-box.reception .treasure-status-ring b,
.treasure-status-box.reception .treasure-status-foot b{color:#365953}
.treasure-status-box.reception .treasure-status-ring{background:conic-gradient(#4f827a calc(var(--value)*1%),#d6dfd7 0)}
.treasure-status-box.reception .treasure-status-process i.active{background:#4f827a;box-shadow:0 0 0 2px #4f827a23}
.reception-map-hero{background:radial-gradient(circle at 16% 18%,#fff 0 2px,transparent 2.5px),linear-gradient(135deg,#f8f2d8,#dfece4)}
.reception-map-panel{background:linear-gradient(#ffffff48,#ffffff48),repeating-linear-gradient(0deg,transparent 0 31px,#526f6510 32px),#f1ead1}
.reception-process-key span{border-color:#b9cdc5;background:#f3faf6;color:#47665f}
.reception-process-key span b{background:#dbe9e3;color:#42665e}
.reception-treasure-box.current{border-color:#65958b;background:#edf7f3;box-shadow:5px 6px 0 #6f9a9050}
.reception-treasure-box.current .treasure-lid,
.reception-treasure-box.current .treasure-body{background:linear-gradient(#6f9f94,#47766e);border-color:#355e57}
.reception-treasure-box.current .treasure-process-dots i.filled{background:#4f827a;border-color:#37635c}
.reception-treasure-box.current>b:last-child{background:#d7ebe5;color:#3f6b63}

/* Watch & Read zone */
.reception-zone{
  min-height:100vh;
  color:#40372d;
  background:linear-gradient(180deg,#f4efdf,#faf8f0 38%,#f5f1e6);
  padding:24px clamp(16px,4vw,48px) 70px;
}
.reception-zone-top{
  max-width:1180px;margin:0 auto;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;
  border:1px solid #d7c9a5;border-radius:22px;padding:12px 14px;background:#fffaf0;
}
.reception-zone-top button{
  border:1px solid #d5c49f;border-radius:999px;background:#fff;color:#66543a;
  padding:9px 12px;font:inherit;font-size:10px;font-weight:800;cursor:pointer;
}
.reception-zone-top>div{text-align:center}
.reception-zone-top>div span{display:block;color:#957d58;font-size:8px;font-weight:900}
.reception-zone-top>div strong{display:block;font-size:15px;margin-top:2px}
.reception-zone-notice{
  max-width:1180px;margin:10px auto 0;border-radius:12px;padding:9px 12px;
  background:#e9f3e9;color:#47704d;font-size:9px;text-align:center;
}
.reception-phase-nav{
  max-width:950px;margin:18px auto 0;
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;
}
.reception-phase-nav span{
  min-height:54px;border:1px solid #ddd0ad;border-radius:14px;padding:8px;
  display:flex;align-items:center;gap:7px;background:#fffaf0;color:#918068;
  font-size:9px;font-weight:800;
}
.reception-phase-nav span b{
  width:24px;height:24px;display:grid;place-items:center;flex:none;
  border-radius:50%;background:#e8ddc4;color:#765e39;font:900 9px 'DM Sans',sans-serif;
}
.reception-phase-nav span.done{border-color:#adc8b2;background:#f2f8ef;color:#4b7154}
.reception-phase-nav span.done b{background:#dceedd;color:#477051}
.reception-phase-nav span.active{border-color:#789b94;background:#edf6f2;color:#3e675f;box-shadow:0 7px 18px #42675e12}
.reception-phase-nav span.active b{background:#54847b;color:#fff}
.reception-zone-body{max-width:1050px;margin:25px auto 0}
.reception-empty{
  min-height:380px;border:1px dashed #c9b88e;border-radius:28px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  background:#fffaf0;padding:30px;
}
.reception-empty>span{font-size:10px;color:#927b57;font-weight:800}
.reception-empty h2{max-width:530px;font-size:25px;line-height:1.6}
.reception-empty button,.reception-complete{
  border:0;border-radius:999px;padding:13px 20px;background:#4f7f77;color:#fff;
  font:inherit;font-size:11px;font-weight:900;cursor:pointer;
}

/* Cinematic YouTube viewer */
.watch-learning{display:grid;gap:18px}
.watch-heading{display:grid;gap:4px;text-align:right}
.watch-heading>span,.story-heading>span,.reception-exam-head>span{color:#5b817b;font-size:9px;font-weight:900;letter-spacing:.05em}
.watch-heading h1,.story-heading h1,.reception-exam-head h1{margin:0;font-size:clamp(28px,4vw,43px);line-height:1.45}
.watch-heading p{margin:3px 0 0;color:#746c60;line-height:1.9;font-size:11px}
.youtube-shell{
  position:relative;overflow:hidden;border-radius:28px;
  background:#161917;box-shadow:0 20px 55px #15201c32;
  border:7px solid #2a302d;
  aspect-ratio:16/9;
}
.youtube-shell:before{
  content:"";position:absolute;z-index:2;inset:0;pointer-events:none;
  box-shadow:inset 0 0 0 1px #ffffff1c,inset 0 0 45px #0000003d;
}
.youtube-shell iframe{display:block;width:100%;height:100%;border:0}
.watch-keyline{
  display:grid;grid-template-columns:1fr auto;gap:5px 12px;align-items:center;
  border:1px solid #b9cbc3;border-radius:18px;padding:14px 16px;background:#f3f9f6;
}
.watch-keyline>span{grid-column:1/-1;color:#6b827e;font-size:8px;font-weight:900}
.watch-keyline strong{font-size:16px}
.watch-keyline button{
  border:1px solid #8eada5;border-radius:999px;background:#fff;color:#477269;
  padding:8px 12px;font:inherit;font-size:9px;font-weight:800;cursor:pointer;
}

/* Story book */
.story-learning{display:grid;gap:17px}
.story-heading{display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:end}
.story-heading>span{grid-column:1/-1}
.story-heading h1{grid-column:1}
.story-heading small{grid-column:2;color:#8e7b5a;font-size:9px}
.story-book{
  position:relative;max-width:900px;width:100%;margin:0 auto;
  border-radius:16px 30px 30px 16px;padding:16px 18px 16px 28px;
  background:linear-gradient(90deg,#b88b54 0 11px,#6f5134 12px 16px,#f5e7c7 17px);
  box-shadow:0 24px 55px #4f38252b;
}
.story-book-spine{
  position:absolute;left:16px;top:10px;bottom:10px;width:10px;border-radius:10px;
  background:linear-gradient(90deg,#634429,#9a7045,#5d4027);
}
.story-page{
  position:relative;min-height:540px;overflow:hidden;
  border:1px solid #d9c59d;border-radius:10px 23px 23px 10px;
  padding:clamp(28px,5vw,58px);
  background:
   repeating-linear-gradient(0deg,transparent 0 31px,#7f694112 32px),
   #fffaf0;
  box-shadow:inset 14px 0 28px #7a5a3220;
}
.story-page img{
  width:100%;height:min(32vw,260px);object-fit:cover;border-radius:17px;margin-bottom:25px;
}
.story-page p{
  max-width:720px;margin:0 auto;color:#302c27;
  font-family:'DM Sans',sans-serif;font-size:clamp(18px,2.4vw,25px);line-height:2.15;
  white-space:pre-wrap;
}
.story-page aside{
  max-width:720px;margin:30px auto 0;border-right:4px solid #b99558;padding:12px 15px;
  background:#f7eed8;color:#705d42;font-size:10px;line-height:1.9;
}
.story-page-number{position:absolute;bottom:16px;left:24px;color:#a08a66;font:800 9px 'DM Sans',sans-serif}
.story-controls{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.story-controls button{
  border:1px solid #ccb98e;border-radius:999px;padding:11px 17px;background:#fffaf0;color:#665238;
  font:inherit;font-size:10px;font-weight:800;cursor:pointer;
}
.story-controls button:disabled{opacity:.4;cursor:not-allowed}
.story-controls .reception-complete{border-color:#4f7f77;background:#4f7f77;color:#fff}

/* Reception exams */
.reception-exam{display:grid;gap:18px}
.reception-exam-head p{margin:4px 0 0;color:#7d7060;font-size:10px}
.reception-exam form{display:grid;gap:13px}
.reception-question{
  margin:0;border:1px solid #d8c9a6;border-radius:20px;padding:17px;background:#fffaf0;
}
.reception-question legend{padding:0 5px;color:#544532;font-size:11px;font-weight:800;line-height:1.8}
.reception-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:9px}
.reception-options label{
  display:flex;align-items:center;gap:8px;border:1px solid #ded2b7;border-radius:12px;padding:11px;
  background:#fff;color:#514a40;font-size:10px;cursor:pointer;
}
.reception-question input[type="text"],.reception-question>input{
  width:100%;box-sizing:border-box;border:1px solid #d3c4a3;border-radius:12px;padding:12px;margin-top:10px;
  background:#fff;font:inherit;font-size:12px;
}
.voice-question{
  display:inline-flex;border:0;border-radius:999px;padding:10px 15px;margin:10px 0 4px;
  background:#416e67;color:#fff;font:inherit;font-size:10px;font-weight:900;cursor:pointer;
}
.reception-question-image{
  display:block;width:100%;height:min(38vw,330px);object-fit:cover;border-radius:17px;margin:10px 0;
}
.reception-word{
  display:block;border-radius:14px;padding:16px;margin-top:10px;text-align:center;
  background:#f2ead6;color:#4d3f2f;font-size:25px;
}
.reception-feedback{
  border-radius:14px;padding:12px;background:#edf4eb;color:#497153;font-size:10px;text-align:center;
}

/* Watch & Read content control */
.reception-control{
  min-height:100vh;padding:24px clamp(14px,4vw,46px) 70px;
  background:#f7f4eb;color:#40382f;
}
.reception-control>header{
  max-width:1180px;margin:0 auto 20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;
  border:1px solid #d8ccb2;border-radius:22px;padding:13px;background:#fff;
}
.reception-control>header div{text-align:center}
.reception-control>header span{font-size:8px;color:#89785f;font-weight:800}
.reception-control>header h1{font-size:20px;margin:2px 0 0}
.reception-control>header button{
  border:1px solid #d5c8ad;border-radius:999px;background:#fff;padding:9px 12px;
  color:#5f5140;font:inherit;font-size:9px;font-weight:800;cursor:pointer;
}
.reception-control>header .reception-danger{border-color:#deb9b4;color:#904e4e;background:#fff5f3}
.reception-format-grid{
  max-width:1180px;margin:0 auto 16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;
}
.reception-format-card{
  border:1px solid #c7d2c9;border-radius:19px;padding:16px;background:#fff;
}
.reception-format-card>span{display:block;color:#52736d;font-size:9px;font-weight:900}
.reception-format-card>strong{display:block;margin:4px 0;font:800 16px 'DM Sans',sans-serif}
.reception-format-card p{margin:0;color:#7c7163;font-size:9px;line-height:1.8}
.reception-format-card details{margin-top:10px}
.reception-format-card summary{cursor:pointer;color:#6c5b45;font-size:9px;font-weight:800}
.reception-format-card code{display:block;margin-top:8px;white-space:normal;direction:ltr;text-align:left;font-size:8px;line-height:1.7;color:#635849}
.reception-import-panel{
  max-width:1180px;margin:0 auto 16px;border:1px solid #d6c9ad;border-radius:19px;padding:15px;
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;background:#fffaf0;
}
.reception-import-panel h2{margin:0;font-size:17px}
.reception-import-panel p{margin:3px 0 0;color:#7b6c56;font-size:9px}
.reception-import-panel input{font-size:9px;max-width:250px}
.reception-import-panel .error,.reception-import-panel .success{grid-column:1/-1;margin:0;font-size:9px}
.reception-import-panel .error{color:#a04949}.reception-import-panel .success{color:#4d7655}
.reception-editor-layout{
  max-width:1180px;margin:0 auto;display:grid;grid-template-columns:300px 1fr;gap:16px;align-items:start;
}
.reception-editor-layout>aside,.reception-editor-layout>form{
  border:1px solid #d9cdb3;border-radius:21px;padding:16px;background:#fff;
}
.reception-editor-layout aside h2{margin:0 0 12px;font-size:18px}
.reception-content-group{display:grid;gap:5px;margin-bottom:13px}
.reception-content-group>strong{font-size:10px;color:#6c5d49}
.reception-content-group>small{color:#a19583;font-size:8px}
.reception-content-group button{
  border:1px solid #ddd2bc;border-radius:10px;padding:8px;text-align:right;background:#faf7f0;color:#594d3e;
  font:inherit;font-size:9px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.reception-editor-selects{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.reception-editor-layout form label{display:grid;gap:5px;margin-bottom:10px;color:#695b48;font-size:9px;font-weight:800}
.reception-editor-layout form input,.reception-editor-layout form textarea,.reception-editor-layout form select{
  width:100%;box-sizing:border-box;border:1px solid #d9ccb2;border-radius:10px;padding:10px;background:#fff;font:inherit;font-size:10px;
}
.reception-editor-layout form textarea{resize:vertical}
.reception-editor-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.reception-editor-actions button{
  border:0;border-radius:999px;padding:10px 14px;background:#4f7f77;color:#fff;font:inherit;font-size:9px;font-weight:900;cursor:pointer;
}
.reception-editor-actions button:nth-child(2){background:#9b5555}.reception-editor-actions button:last-child{background:#78658a}

@media(max-width:900px){
 .treasure-map-hero-status{grid-template-columns:1fr}
 .reception-editor-layout{grid-template-columns:1fr}
 .reception-editor-layout>aside{order:2}
}
@media(max-width:700px){
 .treasure-status-box{padding:14px;border-radius:20px}
 .treasure-status-ring{width:72px;height:72px}
 .reception-zone{padding:14px 11px 90px}
 .reception-zone-top{grid-template-columns:1fr 1fr}
 .reception-zone-top>div{grid-column:1/-1;grid-row:1}
 .reception-zone-top button{grid-row:2}
 .reception-phase-nav{grid-template-columns:repeat(2,1fr);margin-top:12px}
 .youtube-shell{border-width:4px;border-radius:18px}
 .story-book{padding:9px 8px 9px 19px}
 .story-book-spine{left:8px}
 .story-page{min-height:430px;padding:25px 19px}
 .story-page img{height:190px}
 .story-page p{font-size:17px;line-height:2}
 .reception-options{grid-template-columns:1fr}
 .reception-question-image{height:230px}
 .reception-control{padding:14px 10px 90px}
 .reception-control>header{grid-template-columns:1fr 1fr}
 .reception-control>header div{grid-column:1/-1;grid-row:1}
 .reception-format-grid{grid-template-columns:1fr}
 .reception-import-panel{grid-template-columns:1fr}
 .reception-import-panel input{max-width:100%}
 .reception-editor-selects{grid-template-columns:1fr}
}

.reception-template-download{
  margin-top:12px;border:1px solid #9db9b1;border-radius:999px;padding:9px 12px;
  background:#eef7f3;color:#446d65;font:inherit;font-size:9px;font-weight:900;cursor:pointer;
}
.reception-template-download:hover{background:#e2f0ea}


/* Compact treasure status v16 */
.treasure-map-hero-status{
  grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);
  align-items:center;
}
.treasure-status-mini{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:11px 14px;
  align-items:center;
  border:1px solid #cfb477;
  border-radius:20px;
  padding:13px 14px;
  background:linear-gradient(145deg,#fffdf3e8,#f4e3bbe8);
  box-shadow:inset 0 0 0 3px #fff8e2a6,0 8px 22px #6a4c2114;
}
.treasure-status-mini-box{
  grid-row:1 / 3;
  min-width:78px;
  display:grid;
  place-items:center;
  align-self:stretch;
  border-left:1px dashed #c7ad75;
  padding-left:13px;
}
.treasure-status-mini-box>span{
  color:#91754b;
  font-size:8px;
  font-weight:900;
}
.treasure-status-mini-box>strong{
  margin:1px 0;
  color:#5d4324;
  font:900 29px/1 'DM Sans',sans-serif;
  letter-spacing:.02em;
}
.treasure-status-mini-box>small{
  color:#8a775b;
  font-size:7px;
  font-weight:800;
  white-space:nowrap;
}
.treasure-status-mini-progress{
  min-width:0;
}
.treasure-status-mini-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
}
.treasure-status-mini-head>span{
  overflow:hidden;
  color:#594936;
  font-size:10px;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.treasure-status-mini-head>b{
  flex:none;
  color:#78582d;
  font:900 10px 'DM Sans',sans-serif;
}
.treasure-status-mini-bar{
  height:5px;
  overflow:hidden;
  border-radius:999px;
  background:#ded0ac;
}
.treasure-status-mini-bar>i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#8060a3;
}
.treasure-status-mini-dots{
  display:flex;
  gap:4px;
  margin-top:7px;
}
.treasure-status-mini-dots>i{
  flex:1;
  height:4px;
  border-radius:999px;
  background:#dfd3b6;
}
.treasure-status-mini-dots>i.done{background:#61906b}
.treasure-status-mini-dots>i.active{
  background:#8060a3;
  box-shadow:0 0 0 1px #8060a326;
}
.treasure-status-mini-count{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#87745a;
  font-size:7px;
  font-weight:800;
}
.treasure-status-mini-count span{
  white-space:nowrap;
}
.treasure-status-mini-count b{
  color:#5e472b;
  font:900 9px 'DM Sans',sans-serif;
}
.treasure-status-mini.reception{
  border-color:#aec4bd;
  background:linear-gradient(145deg,#fbfbf3ed,#e5eee9eb);
  box-shadow:inset 0 0 0 3px #ffffffa3,0 8px 22px #31564d14;
}
.treasure-status-mini.reception .treasure-status-mini-box{
  border-left-color:#b4cbc4;
}
.treasure-status-mini.reception .treasure-status-mini-box>span,
.treasure-status-mini.reception .treasure-status-mini-box>small{
  color:#607972;
}
.treasure-status-mini.reception .treasure-status-mini-box>strong,
.treasure-status-mini.reception .treasure-status-mini-head>b,
.treasure-status-mini.reception .treasure-status-mini-count b{
  color:#365c54;
}
.treasure-status-mini.reception .treasure-status-mini-head>span{
  color:#435f59;
}
.treasure-status-mini.reception .treasure-status-mini-bar{
  background:#d6e0dc;
}
.treasure-status-mini.reception .treasure-status-mini-bar>i,
.treasure-status-mini.reception .treasure-status-mini-dots>i.active{
  background:#4f8279;
}
.treasure-status-mini.reception .treasure-status-mini-dots>i.done{
  background:#5b8b72;
}
@media(max-width:700px){
  .treasure-map-hero-status{
    grid-template-columns:1fr;
    gap:16px;
  }
  .treasure-status-mini{
    grid-template-columns:72px minmax(0,1fr);
    gap:8px 11px;
    border-radius:17px;
    padding:10px 11px;
  }
  .treasure-status-mini-box{
    min-width:0;
    padding-left:10px;
  }
  .treasure-status-mini-box>strong{
    font-size:24px;
  }
  .treasure-status-mini-head{
    margin-bottom:5px;
  }
  .treasure-status-mini-count{
    gap:8px;
  }
}


/* Unified Watch Read template */
.reception-format-grid.unified{
  grid-template-columns:1fr;
}
.reception-format-unified{
  display:grid;
  gap:10px;
}
.reception-format-unified>p{
  max-width:780px;
}
.reception-format-help{
  display:grid;
  gap:7px;
  margin-top:4px;
  border-top:1px dashed #d7cbb3;
  padding-top:12px;
}
.reception-format-help>b{
  color:#4f7069;
  font-size:9px;
}
.reception-format-help>code{
  display:block;
  border:1px solid #ddd2bd;
  border-radius:11px;
  padding:10px;
  background:#faf7ef;
  direction:ltr;
  text-align:left;
  white-space:normal;
  overflow-wrap:anywhere;
  color:#5f5547;
  font-size:8px;
  line-height:1.8;
}
.reception-format-help>small{
  color:#8a7b66;
  font-size:8px;
  line-height:1.7;
}

.account-page{max-width:1040px}
.account-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;margin:26px 0 18px;border:1px solid var(--line,#ded5ca);border-radius:28px;background:linear-gradient(135deg,#fff,#f5edf9);padding:clamp(22px,4vw,38px);box-shadow:7px 8px 0 #e8deec}
.account-avatar{width:88px;height:88px;border-radius:28px;background:#6f4f86;color:#fff;display:grid;place-items:center;font-size:38px;font-weight:900}
.account-identity small{color:#87798c;font-size:10px}.account-identity h2{font-size:clamp(27px,4vw,42px);margin:5px 0}.account-identity span{color:#756b7a;font-size:11px}.account-identity b{color:#6d4e84}
.account-settings-button{border:0;border-radius:999px;background:#302a46;color:#fff;padding:13px 18px;display:flex;align-items:center;gap:8px;font:inherit;font-size:11px;font-weight:900;cursor:pointer}
.account-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.account-stats article{border:1px solid #dfd6e3;border-radius:20px;background:#fff;padding:20px;display:flex;flex-direction:column;gap:5px}.account-stats strong{font:900 30px 'DM Sans',sans-serif;color:#5f4772}.account-stats span{font-size:10px;color:#7d7381}
.account-logout{margin-top:22px;border:1px solid #dfc9cc;border-radius:999px;background:#fff7f7;color:#95545c;padding:11px 16px;display:flex;align-items:center;gap:7px;font:inherit;font-size:10px;font-weight:900;cursor:pointer}.account-settings-back{margin-bottom:18px}
@media(max-width:650px){.account-card{grid-template-columns:auto 1fr}.account-settings-button{grid-column:1/-1;justify-content:center}.account-avatar{width:68px;height:68px;border-radius:22px}.account-stats{grid-template-columns:1fr}}


/* ===== reception-template-v18.css ===== */
.reception-template-schema{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.reception-template-schema span{border:1px solid #d7ccb6;border-radius:12px;padding:10px;background:#faf7ef;color:#615647;font-size:9px;line-height:1.8}.reception-template-schema b{display:block;color:#426b63;margin-bottom:3px}.reception-format-card[data-v18="1"]>small{display:block;margin-top:10px;color:#897a65;font-size:8px;line-height:1.8}@media(max-width:700px){.reception-template-schema{grid-template-columns:1fr}}

/* ===== course.css ===== */
/* Unified level -> box -> phase course. */
.course-map{min-height:100vh;padding:38px clamp(18px,5vw,72px) 100px;background:linear-gradient(180deg,#fbf8f0,#f6f1e6);color:#3c3348}
.course-map-hero{max-width:1180px;margin:0 auto 28px;display:grid;grid-template-columns:1fr;gap:24px;padding:clamp(28px,5vw,58px);border:1px solid #d8c9b0;border-radius:34px;background:radial-gradient(circle at 80% 20%,#f4dca7 0,transparent 35%),#fffaf0;box-shadow:9px 10px 0 #e8dcc8;overflow:hidden}
.course-map-hero>div>span,.course-map-title>div>span,.course-zone-body header>span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#8162a8}
.course-map-hero h1{font-size:clamp(37px,6vw,68px);line-height:1.25;margin:12px 0}.course-map-hero h1 em{color:#7e5da5;font-style:normal}.course-map-hero p{max-width:650px;color:#726b79;line-height:2;font-size:13px}
.course-map-hero aside{align-self:stretch;border:1px solid #cfb678;border-radius:25px;background:#302a46;color:#fff;padding:24px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-shadow:7px 8px 0 #d7c795}
.course-map-hero aside small{color:#d8cdec;font-size:9px}.course-map-hero aside strong{font:900 62px/1.1 'DM Sans',sans-serif;margin:8px}.course-map-hero aside>span{font-size:11px}.course-map-hero aside>div{display:flex;gap:7px;margin-top:18px}.course-map-hero aside i{width:35px;height:6px;border-radius:20px;background:#625876}.course-map-hero aside i.done{background:#8dc4a2}.course-map-hero aside i.active{background:#f2cb6f;box-shadow:0 0 0 3px #f2cb6f22}
.course-map-panel{max-width:1180px;margin:0 auto;border:1px solid #ddd3c4;border-radius:30px;background:#fff;padding:clamp(22px,4vw,42px);box-shadow:0 16px 45px #5341270c}
.course-map-title,.course-breadcrumb{display:flex;align-items:center;justify-content:space-between;gap:16px}.course-map-title{margin-bottom:28px}.course-map-title h2{margin:5px 0;font-size:clamp(27px,4vw,42px)}.course-map-title p{margin:0;color:#827b83;font-size:11px}.course-map-title>strong{font:900 23px 'DM Sans',sans-serif;color:#7b5b9d;background:#f0e7f8;padding:10px 15px;border-radius:14px;white-space:nowrap}
.course-breadcrumb{justify-content:flex-start;margin-bottom:22px;color:#806e58;font-size:11px}.course-breadcrumb button{border:1px solid #ded3c3;background:#fffaf2;border-radius:999px;padding:9px 13px;display:flex;gap:7px;align-items:center;color:#67577b;font:inherit;font-weight:800;cursor:pointer}
.course-levels{display:grid;gap:14px}.course-level{width:100%;display:grid;grid-template-columns:52px 54px minmax(0,1fr) auto;align-items:center;gap:16px;text-align:right;border:1px solid #dfd5c6;border-radius:22px;background:#fffaf4;padding:16px 19px;color:#45384e;box-shadow:4px 5px 0 #eadfcf;transition:.16s}.course-level:not(:disabled){cursor:pointer}.course-level:not(:disabled):hover{transform:translateY(-2px);border-color:#b89bcf}.course-level>span,.course-level>b{font:900 17px 'DM Sans',sans-serif;color:#8b749e}.course-level div>small{color:#998b79;font-size:9px}.course-level div>strong{display:block;font-size:18px;margin:3px 0}.course-level div>p{font-size:10px;color:#817783;margin:0 0 8px}.course-level.locked{opacity:.5;box-shadow:none}.course-level.current{border:2px solid #9270b0;background:#f7f0fb}.course-level.complete{border-color:#9bc1a6;background:#f2f8f1}
.course-chest{width:46px;height:46px;border-radius:15px;background:#ece3d0;color:#79633f;display:grid;place-items:center}.course-chest.current{background:#8260a5;color:#fff}.course-chest.complete{background:#4f8a6c;color:#fff}.course-chest.locked{background:#ebe7df;color:#aaa39a}.course-progress{display:block;height:6px;border-radius:20px;background:#e9e1d6;overflow:hidden}.course-progress i{display:block;height:100%;background:linear-gradient(90deg,#8664a8,#c69b6a);border-radius:inherit}
.course-phase-key{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 22px;color:#706777;font-size:10px;font-weight:800}.course-phase-key span{display:flex;align-items:center;gap:7px}.course-phase-key i{width:12px;height:12px;border-radius:4px;background:#cfc8d3}.course-phase-key .phase-1 i{background:#8f6ab2}.course-phase-key .phase-2 i{background:#d09b43}.course-phase-key .phase-3 i{background:#4c8b72}
.course-boxes{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px}.course-box{min-height:126px;border:1px solid #ddd6ca;border-radius:18px;background:#fbf9f5;padding:10px 8px;color:#554b59;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:3px 4px 0 #e8e0d4;transition:.15s}.course-box:not(:disabled){cursor:pointer}.course-box:not(:disabled):hover{transform:translateY(-2px)}.course-box .course-chest{width:35px;height:35px;border-radius:11px}.course-box>b{font:900 13px 'DM Sans',sans-serif}.course-box>small{font-size:8px;line-height:1.45;text-align:center;min-height:24px}.course-box>span:last-child{display:flex;gap:3px}.course-box>span:last-child i{width:17px;height:4px;border-radius:5px;background:#ddd6df}.course-box>span:last-child i.done{background:#5f947b}.course-box>span:last-child i.active{background:#e2ae53}.course-box.phase-0.current{border:2px solid #8f6ab2;background:#f4eef9}.course-box.phase-1.current{border:2px solid #d09b43;background:#fff7e6}.course-box.phase-2.current{border:2px solid #4c8b72;background:#edf7f2}.course-box.complete{border-color:#77a88e;background:#edf7f1}.course-box.locked{opacity:.42;box-shadow:none}.course-map-note{max-width:1180px;margin:18px auto 0;color:#81798a;font-size:10px;display:flex;align-items:center;gap:7px}

.course-zone{min-height:100vh;padding:20px clamp(14px,4vw,48px) 80px;color:#3f3549;transition:background .2s}.course-zone.vocabulary{background:linear-gradient(180deg,#f5effb,#fbf9fd)}.course-zone.grammar{background:linear-gradient(180deg,#fbf2df,#fffaf1)}.course-zone.watchRead{background:linear-gradient(180deg,#eaf4f0,#f8fbf9)}
.course-zone-head{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:11px 13px;border:1px solid #d9cfdf;border-radius:20px;background:#fff}.course-zone-head>div{text-align:center}.course-zone-head span{display:block;color:#8d8098;font-size:8px}.course-zone-head strong{display:block;margin-top:3px;font-size:16px}.course-zone-head button{border:1px solid #ddd3e5;border-radius:999px;background:#fff;padding:9px 12px;color:#675779;font:inherit;font-size:10px;font-weight:900;display:flex;align-items:center;gap:7px;cursor:pointer}
.course-notice,.course-review-note{max-width:1000px;margin:12px auto;border-radius:12px;background:#fff;padding:10px 14px;color:#62566d;font-size:10px;text-align:center}.course-phase-toggle{max-width:900px;margin:18px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.course-phase-toggle button{min-height:70px;border:1px solid #dad0df;border-radius:17px;background:#ffffffa8;color:#877b8d;padding:10px 13px;display:flex;align-items:center;gap:11px;text-align:right;font:inherit}.course-phase-toggle button:not(:disabled){cursor:pointer}.course-phase-toggle button>b{font:900 12px 'DM Sans',sans-serif}.course-phase-toggle button span{font-size:11px;font-weight:900}.course-phase-toggle button small{display:block;font-size:8px;font-weight:600;margin-top:3px}.course-phase-toggle button.active{border:2px solid #8261a3;background:#fff;color:#563d71;box-shadow:0 7px 18px #5e437018}.course-phase-toggle button.done svg{margin-inline-start:auto;color:#4f8b6a}.course-phase-toggle button:disabled{opacity:.43}
.course-process-review{max-width:620px;margin:12px auto 0;display:flex;align-items:center;justify-content:center;gap:8px;color:#786d7d;font-size:9px}.course-process-review button{border:1px solid #d8cede;border-radius:999px;background:#fff;padding:8px 12px;color:#6e5c78;font:inherit;font-weight:900;cursor:pointer}.course-process-review button.active{background:#5f4772;color:#fff;border-color:#5f4772}
.course-zone-body{max-width:1000px;margin:24px auto}.course-zone-body>section,.course-zone-body>article{border:1px solid #ddd3df;border-radius:30px;background:#fff;padding:clamp(24px,5vw,52px);box-shadow:0 18px 50px #4a36500d}.course-zone-body header h1{font-size:clamp(30px,5vw,53px);line-height:1.35;margin:9px 0}.course-zone-body header p{color:#7b7180;line-height:1.9;font-size:11px}.course-advance,.course-submit{border:0;border-radius:999px;background:#654681;color:#fff;padding:14px 22px;font:inherit;font-size:11px;font-weight:900;cursor:pointer;margin-top:24px}
.vocab-deck{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:28px}.vocab-card{min-height:220px;border:1px solid #ded2e7;border-radius:23px;background:#f9f5fc;padding:22px;display:flex;flex-direction:column}.vocab-card>span{font-size:8px;color:#8f7b9d;font-weight:900}.vocab-card>strong{font:900 clamp(26px,5vw,48px) 'DM Sans',sans-serif;margin:auto 0 8px}.vocab-card>p{color:#6e5a7b}.vocab-card img{width:100%;height:170px;object-fit:cover;border-radius:16px;margin-bottom:16px}.vocab-card button{align-self:flex-start;border:0;border-radius:999px;background:#e8dcf2;color:#5b4173;padding:9px 13px;font-weight:900;cursor:pointer}
.course-question{border:1px solid #e1d7e6;border-radius:20px;padding:20px;margin:16px 0}.course-question legend{font-weight:900;padding:0 8px}.course-question>img{display:block;max-width:360px;width:100%;max-height:240px;object-fit:cover;border-radius:15px;margin:14px auto}.course-question>button{border:0;border-radius:999px;background:#e8def0;padding:10px 14px;color:#624a76;font-weight:800}.course-question>input{width:100%;border:1px solid #ddd0e3;border-radius:12px;padding:12px;margin-top:12px}.course-options{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:15px}.course-options label{border:1px solid #e1d8e4;border-radius:13px;padding:12px;background:#faf8fb;display:flex;gap:9px;align-items:center}
.phase-grammar{font-family:'Readex Pro',sans-serif}.grammar-formulas{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.grammar-formulas div{border:1px solid #e5cf9f;border-radius:18px;background:#fff9ea;padding:20px}.grammar-formulas small{display:block;color:#a2762d;font:900 9px 'DM Sans',sans-serif}.grammar-formulas strong{display:block;margin-top:12px;font:800 16px 'DM Sans',sans-serif}.grammar-notes{border-right:5px solid #d29a3c;background:#fff7e4;border-radius:18px;padding:18px 24px;margin:22px 0}.grammar-notes li{margin:8px 0;line-height:1.8;font-size:12px}.grammar-examples>div{display:flex;align-items:center;justify-content:space-between}.grammar-examples>div span{background:#f1dfb8;border-radius:999px;padding:7px 11px;font-size:9px}.grammar-examples>p{display:grid;grid-template-columns:35px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid #eee2ca;padding:14px 0;margin:0}.grammar-examples>p b{color:#b08032}.grammar-examples>p small{font-size:8px;border-radius:999px;padding:5px 8px;background:#eee}.grammar-examples>p.medium small{background:#fff0c9}.grammar-examples>p.difficult small{background:#f4d8cf}
.phase-watch{background:#181c2d!important;color:#fff!important;border-color:#353b58!important}.phase-watch header>span{color:#e0b85f}.phase-watch header p{color:#bec2d3}.course-video{position:relative;padding-top:56.25%;border-radius:22px;overflow:hidden;margin:27px 0;background:#000;box-shadow:0 18px 45px #0005}.course-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.phase-watch .course-question{border-color:#3d435f;background:#23283d}.phase-watch .course-options label{background:#2b3048;border-color:#464d6b}.phase-watch .course-submit{background:#e2b85f;color:#282438}
.story-spread{display:grid;grid-template-columns:.8fr 1.2fr;min-height:420px;border:1px solid #c7d9cf;border-radius:24px;background:#fffef8;overflow:hidden;box-shadow:8px 9px 0 #dceae3}.story-spread>img{width:100%;height:100%;object-fit:cover}.story-spread>div{padding:clamp(25px,5vw,52px);display:flex;flex-direction:column}.story-spread>div>span{color:#56806e;font-size:9px;font-weight:900}.story-spread>div>p{font:700 clamp(18px,3vw,28px)/1.9 'DM Sans',sans-serif;margin:auto 0}.story-spread aside{border-top:1px solid #dce9e1;padding-top:17px;color:#617269;line-height:1.8}.story-pager{display:flex;justify-content:space-between;margin:18px 0}.story-pager button{border:1px solid #bdd4c7;border-radius:999px;background:#edf7f1;color:#426d5a;padding:10px 15px;font-weight:900}.story-pager button:disabled{opacity:.35}.course-empty{border:1px dashed #c8bcd0;border-radius:20px;padding:40px;text-align:center;color:#817689}
.course-control-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end}.course-control-backdrop{position:absolute;inset:0;border:0;background:#261e30aa}.course-control{position:relative;width:min(1100px,100%);max-height:88vh;overflow:auto;margin:0 auto;background:#fff;border-radius:30px 30px 0 0;padding:clamp(22px,4vw,42px);box-shadow:0 -18px 50px #1d152c55}.course-control>header{display:flex;justify-content:space-between;align-items:center}.course-control h2{margin:4px 0;font-size:28px}.course-control>header button{border:1px solid #ded4e5;border-radius:999px;background:#fff;padding:9px 14px;font-weight:900}.course-control>p{color:#7c7281;font-size:11px}.course-template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.course-template-grid article{border:1px solid #ddd4e3;border-radius:20px;padding:20px;background:#faf8fb}.course-template-grid article.grammar{background:#fff9eb;border-color:#e7d2a7}.course-template-grid article.watchRead{background:#eef7f3;border-color:#bed8cc}.course-template-grid article>span{font-size:9px;font-weight:900}.course-template-grid h3{font:800 14px 'DM Sans',sans-serif;overflow-wrap:anywhere}.course-template-grid code{display:block;background:#fff;border-radius:9px;padding:8px;font-size:10px}.course-template-grid small{display:block;min-height:45px;margin:10px 0;color:#756d78;font-size:8px;line-height:1.7}.course-template-grid article>div{display:flex;gap:8px;flex-wrap:wrap}.course-template-grid button,.course-template-grid label{border:0;border-radius:999px;background:#654b7c;color:#fff;padding:10px 13px;font-size:9px;font-weight:900;cursor:pointer}.course-template-grid label{position:relative;background:#fff;color:#5f516a;border:1px solid #d8cedf}.course-template-grid input{position:absolute;inset:0;opacity:0;cursor:pointer}.course-control-error,.course-control-success{padding:12px!important;border-radius:12px;font-weight:800}.course-control-error{background:#fff0ed;color:#9a493d!important}.course-control-success{background:#edf7f0;color:#39704e!important}
@media(max-width:900px){.course-boxes{grid-template-columns:repeat(5,minmax(0,1fr))}.course-template-grid{grid-template-columns:1fr}.course-map-hero{grid-template-columns:1fr}.grammar-formulas{grid-template-columns:1fr}}
@media(max-width:620px){.course-map{padding:20px 12px 90px}.course-map-hero{padding:25px 20px;border-radius:24px}.course-map-panel{padding:20px 13px;border-radius:22px}.course-level{grid-template-columns:36px 42px minmax(0,1fr);gap:9px}.course-level>b{display:none}.course-boxes{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.course-box{min-height:116px}.course-zone{padding:12px 10px 70px}.course-zone-head{grid-template-columns:1fr 1fr}.course-zone-head>div{grid-column:1/-1;grid-row:1}.course-phase-toggle{grid-template-columns:1fr}.course-zone-body>section,.course-zone-body>article{padding:22px 16px;border-radius:22px}.vocab-deck,.course-options{grid-template-columns:1fr}.story-spread{grid-template-columns:1fr}.story-spread>img{height:230px}.grammar-examples>p{grid-template-columns:28px 1fr}.grammar-examples>p small{grid-column:2}.course-template-grid article{padding:16px}}

.course-result{min-height:100vh;padding:clamp(28px,7vw,80px) 18px;background:radial-gradient(circle at 50% 5%,#efe3ff 0,transparent 35%),linear-gradient(155deg,#fbf8ff,#fffaf0);display:grid;place-items:center}
.course-result-card{width:min(820px,100%);border:1px solid #d9cce2;border-radius:34px;background:#fff;padding:clamp(28px,6vw,58px);text-align:center;box-shadow:10px 12px 0 #e6daed}
.course-result-kicker{display:inline-block;border-radius:999px;background:#eee4f6;color:#694b82;padding:8px 14px;font-size:10px;font-weight:900}
.course-result-score{width:170px;height:170px;margin:26px auto 20px;border:12px solid #8dc4a2;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 9px #e8f5ed}
.course-result-score strong{font:900 48px/1 'DM Sans',sans-serif;color:#3d7252}.course-result-score small{margin-top:7px;color:#6d7c72;font-size:10px;font-weight:800}
.course-result-card h1{font-size:clamp(29px,5vw,48px);margin:12px 0}.course-result-card>p{color:#756c79;line-height:1.8;font-size:12px}
.course-result-phases{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.course-result-phases article{border:1px solid #ddd3e4;border-radius:20px;background:#faf7fc;padding:18px 12px;display:flex;flex-direction:column;gap:7px}.course-result-phases article>b{color:#85649d;font:800 10px 'DM Sans',sans-serif}.course-result-phases article>span{font-size:11px;font-weight:900}.course-result-phases article>strong{font:900 26px 'DM Sans',sans-serif;color:#473651}.course-result-phases article>small{font-size:8px;color:#82788a}
.course-result-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.course-result-actions button{min-width:130px;border:1px solid #cdbfd5;border-radius:999px;background:#fff;color:#5c4869;padding:13px 20px;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.course-result-actions button.primary{background:#654681;color:#fff;border-color:#654681}.course-result-actions button:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:620px){.course-result-card{padding:27px 16px;border-radius:24px}.course-result-phases{grid-template-columns:1fr}.course-result-actions{display:grid}.course-result-actions button{width:100%}}

.course-control-fab{position:fixed;z-index:850;left:18px;bottom:calc(92px + env(safe-area-inset-bottom));border:0;border-radius:999px;background:#302a46;color:#fff;padding:12px 16px;display:flex;align-items:center;gap:8px;font:inherit;font-size:10px;font-weight:900;box-shadow:0 10px 28px #302a4655;cursor:pointer}
.course-manager-overlay{position:fixed;inset:0;z-index:1100;display:flex;align-items:flex-end}.course-manager-backdrop{position:absolute;inset:0;border:0;background:#211a2baa}.course-manager-sheet{position:relative;width:min(980px,100%);max-height:88vh;overflow:auto;margin:0 auto;background:#fff;border-radius:30px 30px 0 0;padding:22px clamp(16px,4vw,38px) calc(24px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px #1d152c55}
.course-manager-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:1px solid #e5dce8}.course-manager-sheet>header small{color:#846c94;font-size:9px;font-weight:900}.course-manager-sheet>header h2{margin:4px 0 0;font-size:clamp(24px,4vw,36px)}.course-manager-sheet>header>div:last-child{display:flex;gap:7px}.course-manager-sheet>header button{border:1px solid #ded3e4;border-radius:999px;background:#fff;padding:8px 12px;color:#66546f;font:inherit;font-size:9px;font-weight:900;cursor:pointer}
.course-manager-body{padding-top:20px}.course-manager-home{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.course-manager-home>button{min-height:125px;border:1px solid #ddd2e5;border-radius:23px;background:#faf6fd;padding:20px;display:flex;align-items:center;gap:15px;text-align:right;color:#4a3b52;font:inherit;cursor:pointer}.course-manager-home b{width:46px;height:46px;border-radius:15px;background:#7c5a98;color:#fff;display:grid;place-items:center;font:900 17px 'DM Sans',sans-serif}.course-manager-home span{display:flex;flex-direction:column;gap:5px}.course-manager-home strong{font-size:15px}.course-manager-home small{color:#837888;font-size:9px}
.course-manager-selectors{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:18px}.course-manager-selectors label,.course-manager-fields label{display:flex;flex-direction:column;gap:6px;color:#746778;font-size:9px;font-weight:900}.course-manager-selectors select,.course-manager-fields input,.course-manager-fields select,.course-manager-fields textarea{width:100%;border:1px solid #ddd2e3;border-radius:12px;background:#fff;padding:10px 11px;color:#403449;font:inherit;font-size:11px}.course-manager-fields textarea{resize:vertical;line-height:1.7}
.course-manager-form,.course-manager-item{border:1px solid #dfd5e4;border-radius:20px;background:#fbf9fc;padding:16px}.course-manager-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.course-manager-fields .wide{grid-column:1/-1}.course-manager-form>button,.course-manager-item>button{margin-top:15px;border:0;border-radius:999px;background:#654681;color:#fff;padding:11px 18px;font:inherit;font-size:10px;font-weight:900;cursor:pointer}
.course-manager-items{display:grid;gap:12px}.course-manager-item>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.course-manager-item>header strong{font-size:12px}.course-manager-item>header button{border:0;background:#fff0f1;color:#9a5058;border-radius:999px;padding:7px 10px;font:inherit;font-size:8px;font-weight:900;cursor:pointer}.course-manager-empty{padding:28px;text-align:center;color:#84798a}
.course-manager-import{display:grid;grid-template-columns:1fr 1fr;gap:12px}.course-manager-import label,.course-manager-import>button{min-height:105px;border:1px solid #dcd1e3;border-radius:20px;background:#faf7fc;padding:18px;display:flex;align-items:center;justify-content:center;text-align:center;color:#5f4a70;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.course-manager-import input{display:none}.course-manager-import>button{background:#302a46;color:#fff}.course-manager-import p{grid-column:1/-1;margin:0;color:#807585;font-size:9px;line-height:1.8;text-align:center}
@media(min-width:900px){.course-control-fab{bottom:28px;left:28px}}
@media(max-width:620px){.course-control-fab span{display:none}.course-control-fab{width:48px;height:48px;padding:0;justify-content:center}.course-manager-sheet{max-height:91vh;border-radius:24px 24px 0 0}.course-manager-home,.course-manager-import{grid-template-columns:1fr}.course-manager-selectors{grid-template-columns:repeat(2,1fr)}.course-manager-fields{grid-template-columns:1fr}.course-manager-fields .wide,.course-manager-import p{grid-column:1}.course-manager-sheet>header{align-items:flex-start}}


/* Structured phase content and the six shared exam interactions. */
.grammar-laws{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}
.grammar-laws>h2{grid-column:1/-1;margin:0;color:#49365f}
.grammar-laws article{padding:20px;border:1px solid #d9cdea;border-radius:22px;background:linear-gradient(145deg,#fff,#f6f0ff)}
.grammar-laws small{color:#8a6ca8;text-transform:uppercase;font-weight:800}.grammar-laws h3{margin:8px 0;color:#302441}.grammar-laws p{color:#6d6377}.grammar-laws strong{display:block;margin-top:14px;padding:12px;border-radius:12px;background:#2f294b;color:#fff}
.course-match{display:grid;gap:10px}.course-match label{display:grid;grid-template-columns:minmax(90px,1fr) minmax(130px,1fr);align-items:center;gap:12px}.course-match span{font-weight:800}.course-match select,.course-written input{width:100%;border:1px solid #d6cce2;border-radius:12px;padding:12px;background:#fff}
.course-written{display:grid;gap:8px}.course-written span{font-weight:800;color:#5e4b70}
.course-question.voiceToSpeak,.course-question.imageToVoice{border-color:#89b9aa;background:#f3fbf8}.course-question.match{border-color:#dbb65c;background:#fffaf0}.course-question.trueFalse{border-color:#9f86bf}
@media(max-width:760px){.grammar-laws{grid-template-columns:1fr}.course-match label{grid-template-columns:1fr}}


/* Vocabulary activity types: each imported Feature has its own study interaction. */
.vocab-deck{display:grid;grid-template-columns:1fr;gap:30px}
.vocab-group{display:grid;gap:14px}
.vocab-group>header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:0 4px}
.vocab-group>header small{display:block;color:#8b759c;font-size:8px;font-weight:900;letter-spacing:.08em}
.vocab-group>header h2{margin:5px 0 3px;color:#3c3148;font-size:21px}
.vocab-group>header p{margin:0;color:#817487;font-size:10px;line-height:1.6}
.vocab-group>header>b{min-width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#ede4f3;color:#674a7e;font:900 15px 'DM Sans',sans-serif}
.vocab-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.vocab-card{min-height:0;margin:0;overflow:hidden}
.vocab-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
.vocab-card>header span{font:900 12px 'DM Sans',sans-serif;color:#917da0}
.vocab-card>header em{font-style:normal;font-size:9px;font-weight:900;color:#7f6b8f}
.vocab-speak{display:inline-flex;align-items:center;gap:8px;justify-content:center}
.vocab-flashcard-word{background:#f8f3fc;border-color:#d9c9e6;box-shadow:0 7px 0 #eee4f4}
.vocab-flashcard-word details{display:grid;flex:1}
.vocab-flashcard-word summary{list-style:none;min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;cursor:pointer;border-radius:18px;background:#fff;border:1px dashed #cfb9df;padding:20px}
.vocab-flashcard-word summary::-webkit-details-marker{display:none}
.vocab-flashcard-word summary small{color:#9884a5;font-size:8px}.vocab-flashcard-word summary strong{font:900 clamp(30px,6vw,52px) 'DM Sans',sans-serif;margin-top:16px}
.vocab-reveal{min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-radius:18px;background:#62477c;color:#fff;padding:20px}
.vocab-reveal small{color:#ddcfeb}.vocab-reveal strong{font-size:28px;margin-top:12px}
.vocab-flashcard-word details[open] summary{display:none}.vocab-flashcard-word .vocab-speak{margin-top:16px}
.vocab-sentence-card{grid-column:1/-1;background:#fff9ee;border-color:#ead7b7}
.vocab-sentence-card>div{padding:18px;border-radius:17px}.vocab-sentence-en{background:#332d4d;color:#fff}.vocab-sentence-ar{background:#f5ead8;margin-top:10px;color:#594c5e}
.vocab-sentence-card small{font-size:8px;font-weight:900;opacity:.72}.vocab-sentence-card p{margin:7px 0 0;font-size:18px;line-height:1.8}.vocab-sentence-card .vocab-speak{margin-top:14px;background:#e9d5a9;color:#5c4932}
.vocab-image-word,.vocab-image-speak{background:#f3faf7;border-color:#bcd9cd}
.vocab-image-word>img,.vocab-image-speak>img,.vocab-image-placeholder{width:100%;height:220px;object-fit:cover;border-radius:18px;margin:0 0 15px}
.vocab-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#e5f1ed;color:#66877b}.vocab-image-placeholder span{font-size:9px;font-weight:800}
.vocab-image-word figcaption{display:grid;gap:4px}.vocab-image-word figcaption small{color:#6f8d82;font-weight:900}.vocab-image-word figcaption strong{font:900 32px 'DM Sans',sans-serif}.vocab-image-word figcaption span{color:#63766f}
.vocab-image-word .vocab-speak,.vocab-image-speak .vocab-speak{margin-top:14px;background:#dceee8;color:#416f60}
.vocab-voice-speak{grid-column:1/-1;background:linear-gradient(145deg,#302a46,#4d3e64);border-color:#302a46;color:#fff}
.vocab-voice-speak>header span,.vocab-voice-speak>header em{color:#d8cae7}
.vocab-speak-steps{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.vocab-speak-steps span{display:flex;align-items:center;gap:7px;border:1px solid #665778;border-radius:999px;padding:7px 11px;color:#ddd3e7;font-size:9px;font-weight:800}.vocab-speak-steps b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#dfc86e;color:#302a46}
.vocab-voice-speak .vocab-speak{align-self:stretch;min-height:56px;background:#dfc86e;color:#302a46;font-size:12px}
.vocab-voice-speak blockquote{margin:18px 0 0;padding:20px;border:1px solid #635674;border-radius:18px;background:#3a324f;font:800 clamp(20px,4vw,34px) 'DM Sans',sans-serif;text-align:center}
.vocab-voice-speak>p{margin:12px 0 0;text-align:center;color:#d9d0df}
.vocab-image-speak figcaption>strong{display:block;font-size:14px;line-height:1.7}.vocab-image-speak details{margin-top:12px;border-radius:14px;background:#fff;padding:12px}.vocab-image-speak summary{cursor:pointer;color:#4f796b;font-weight:900}.vocab-image-speak details p{font:900 27px 'DM Sans',sans-serif;margin:12px 0 4px}.vocab-image-speak details span{color:#64766f}
.vocab-unknown{background:#faf8fb}
@media(max-width:680px){.vocab-group-grid{grid-template-columns:1fr}.vocab-sentence-card,.vocab-voice-speak{grid-column:auto}.vocab-card{padding:18px}.vocab-group>header{align-items:center}.vocab-group>header p{display:none}.vocab-flashcard-word summary,.vocab-reveal{min-height:180px}}


/* Item-by-item learning player */
.course-item-progress{margin:22px 0 18px;padding:14px 17px;border:1px solid #e3d7eb;border-radius:18px;background:#fff}
.course-item-progress>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.course-item-progress span{color:#806e8d;font-size:9px;font-weight:900}.course-item-progress b{font:900 12px 'DM Sans',sans-serif;color:#4d3b5b}
.course-item-progress>i{display:block;height:9px;border-radius:999px;background:#eee7f2;overflow:hidden}.course-item-progress u{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8c62b0,#ef8ba9,#f1c85d);transition:width .25s ease}
.course-item-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.course-item-nav button{min-height:52px;border:1px solid #d8cce1;border-radius:17px;background:#fff;color:#5c4969;font:inherit;font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.course-item-nav button.primary{border-color:#654681;background:linear-gradient(135deg,#6f4d8b,#956aba);color:#fff;box-shadow:0 6px 0 #dfd0e8}.course-item-nav button:last-child svg{transform:rotate(180deg)}.course-item-nav button:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}
.vocab-single{display:block}.vocab-single .vocab-card{max-width:720px;margin:0 auto;min-height:420px}.vocab-single .vocab-flashcard-word,.vocab-single .vocab-voice-speak{min-height:470px}
.course-exam-player form,.phase-watch form,.phase-story form{max-width:760px;margin:0 auto}.course-exam-player>.course-item-progress,.phase-watch>.course-item-progress,.phase-story>.course-item-progress{max-width:760px;margin-left:auto;margin-right:auto}
.course-exam-player .course-question,.phase-watch .course-question,.phase-story .course-question{min-height:340px;display:flex;flex-direction:column;justify-content:center;background:#fff}
.course-question.mcq{background:linear-gradient(145deg,#fff8df,#fff);border-color:#efcf72}.course-question.fillBlank{background:linear-gradient(145deg,#eef7ff,#fff);border-color:#9dc9e9}.course-question.voiceToSpeak{background:linear-gradient(145deg,#e9fbf4,#fff)}.course-question.imageToVoice{background:linear-gradient(145deg,#fff0f6,#fff)}.course-question.match{background:linear-gradient(145deg,#f3efff,#fff)}.course-question.trueFalse{background:linear-gradient(145deg,#fff0e5,#fff)}
.grammar-step-card{max-width:760px;min-height:390px;margin:0 auto;padding:clamp(25px,5vw,48px);border-radius:30px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;box-shadow:0 9px 0 rgba(56,45,70,.1)}
.grammar-step-card:before{content:'';position:absolute;width:190px;height:190px;border-radius:50%;top:-95px;left:-65px;background:rgba(255,255,255,.32)}
.grammar-step-card>span{position:relative;font-size:9px;font-weight:900;letter-spacing:.08em}.grammar-step-card h2{position:relative;font-size:clamp(26px,5vw,43px);margin:15px 0}.grammar-step-card p{position:relative;font-size:clamp(16px,3vw,24px);line-height:1.9}.grammar-step-card>strong{position:relative;display:block;margin-top:18px;padding:18px;border-radius:17px;background:#342d4d;color:#fff;font-size:clamp(15px,3vw,24px)}
.grammar-step-card.law{background:linear-gradient(145deg,#ffe89d,#fff5d4);color:#504027}.grammar-step-card.law.negative{background:linear-gradient(145deg,#ffcbd8,#fff0f4);color:#63394a}.grammar-step-card.law.question{background:linear-gradient(145deg,#bfe9ff,#eef9ff);color:#34576a}
.grammar-step-card.note{background:linear-gradient(145deg,#dfd0ff,#f4efff);color:#493a66;text-align:center}.grammar-step-card.note>div{position:relative;display:grid;place-items:center;width:74px;height:74px;margin:15px auto;border-radius:50%;background:#6d4e8c;color:#fff;font:900 42px 'DM Sans',sans-serif}
.grammar-step-card.example{background:linear-gradient(145deg,#c7f2dd,#f2fff8);color:#315c48}.grammar-step-card.example.medium{background:linear-gradient(145deg,#ffdca8,#fff7e9);color:#684b2f}.grammar-step-card.example.difficult{background:linear-gradient(145deg,#ffc5c5,#fff0f0);color:#6f3838}.grammar-step-card.example>b{position:relative;font:900 64px 'DM Sans',sans-serif;opacity:.18}
.vocab-flashcard-word{perspective:1200px}.vocab-flip-card{display:block!important;width:100%;flex:1!important;min-height:300px!important;padding:0!important;border:0!important;border-radius:24px!important;background:transparent!important;color:inherit!important;cursor:pointer;perspective:1000px}
.vocab-flip-inner{position:relative;display:block;width:100%;height:310px;transition:transform .55s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.vocab-flip-card.is-flipped .vocab-flip-inner{transform:rotateY(180deg)}
.vocab-flip-face,.vocab-flip-back{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:24px;backface-visibility:hidden;padding:24px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.5)}
.vocab-flip-face{background:linear-gradient(145deg,#ffdf73,#ff9eb8);color:#3b2e43}.vocab-flip-back{transform:rotateY(180deg);background:linear-gradient(145deg,#654681,#9b70bd);color:#fff}.vocab-flip-face small,.vocab-flip-back small{font-size:9px;font-weight:900;opacity:.75}.vocab-flip-face strong,.vocab-flip-back strong{font-size:clamp(35px,7vw,64px);margin-top:24px}.vocab-flip-face strong{font-family:'DM Sans',sans-serif}
.course-mic-practice{display:grid;gap:10px;margin-top:16px}.course-mic-practice>button{width:100%;min-height:58px;border:0;border-radius:18px;background:linear-gradient(135deg,#ff6f91,#ff9a62)!important;color:#fff!important;display:flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-weight:900;cursor:pointer;box-shadow:0 6px 0 #e9bdc3}.course-mic-practice>button.listening{animation:micPulse 1s infinite;background:linear-gradient(135deg,#eb466f,#f06c45)!important}.course-mic-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:#ee5f7f;font-size:12px}.course-mic-practice>p{margin:0;padding:12px;border-radius:14px;background:#fff4f6;color:#7b4c59;text-align:center;font-size:10px}.course-mic-practice>p strong{display:block;margin-top:7px;color:#3f3148;font-size:14px}.course-mic-practice>p.has-result{border:1px solid #f2c2ce}
.vocab-voice-speak .course-mic-practice>button{background:linear-gradient(135deg,#f17e99,#f4bd52)!important}.vocab-image-speak .course-mic-practice{width:100%}
@keyframes micPulse{50%{transform:scale(.98);box-shadow:0 0 0 8px rgba(255,111,145,.15)}}
@media(max-width:680px){.course-item-nav{position:sticky;bottom:8px;z-index:4;padding:8px;border-radius:20px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px)}.vocab-single .vocab-card,.vocab-single .vocab-flashcard-word,.vocab-single .vocab-voice-speak{min-height:390px}.vocab-flip-inner{height:270px}.grammar-step-card{min-height:340px}}

/* Watch, story and exam reading rhythm */
.course-question{position:relative;overflow:hidden;padding:clamp(22px,4vw,34px);border-radius:26px!important;justify-content:flex-start!important;box-shadow:0 8px 0 rgba(54,42,67,.08)}
.course-question:after{content:'';position:absolute;width:150px;height:150px;left:-80px;top:-80px;border:2px dashed currentColor;border-radius:50%;opacity:.12;pointer-events:none}
.course-question-title{display:grid;grid-template-columns:48px minmax(0,1fr);gap:13px;align-items:start;margin-bottom:26px;text-align:right}
.course-question-title>b{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#3a314c;color:#fff;font:900 13px 'DM Sans',sans-serif;box-shadow:0 5px 0 #d9cfe0}
.course-question-title small{display:block;margin-bottom:5px;color:#887695;font:800 8px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.08em}
.course-question-title h2{margin:0;color:#3c3348;font-size:clamp(20px,4vw,32px);line-height:1.55}
.course-question>.course-options,.course-question>.course-match,.course-question>.course-written,.course-question>.course-mic-practice{margin-top:auto}
.course-question .course-options label{min-height:62px;padding:15px 17px;border-radius:17px;font-size:12px;font-weight:800;cursor:pointer;transition:.18s transform,.18s border-color}
.course-question .course-options label:hover{transform:translateY(-2px);border-color:#8b69a6}
.course-question .course-options input{accent-color:#7b57a0}
.course-question>button{align-self:flex-start;margin:0 0 18px}
.watch-video-player,.watch-exam-player{background:radial-gradient(circle at 12% 8%,#3c3557 0,transparent 30%),#171a2b!important}
.watch-video-player .course-item-progress,.watch-exam-player .course-item-progress{border-color:#ffffff20;background:#ffffff0d}.watch-video-player .course-item-progress span,.watch-exam-player .course-item-progress span{color:#d9cbe3}.watch-video-player .course-item-progress b,.watch-exam-player .course-item-progress b{color:#fff}.watch-video-player .course-item-progress>i,.watch-exam-player .course-item-progress>i{background:#ffffff1a}
.watch-video-player .course-video{border:7px solid #2d3147;border-radius:29px;box-shadow:0 18px 45px #0008,0 0 0 1px #59607f}
.watch-exam-player form{padding-top:8px}.watch-exam-player .course-question{min-height:400px;border-color:#efd071!important;background:linear-gradient(145deg,#fff5cb,#fff)!important;color:#3d3348!important}.watch-exam-player .course-options label{border-color:#e5d7ae!important;background:#fffdf5!important;color:#3d3348!important}.watch-exam-player .course-question-title>b{background:linear-gradient(145deg,#e0ae3e,#f0ce72);color:#3a3048;box-shadow:0 5px 0 #8b6a2c}.watch-exam-player .course-item-nav{padding:12px;border-radius:21px;background:#ffffff12}.watch-exam-player .course-item-nav button:not(.primary){border-color:#ffffff2b;background:#ffffff10;color:#fff}.watch-exam-player .course-item-nav button.primary{background:linear-gradient(135deg,#f0c65c,#e8899d);color:#30283c;border:0;box-shadow:0 6px 0 #5b4260}
.story-page-player,.story-exam-player{background:linear-gradient(145deg,#f4fff9,#fffaf0)!important;border-color:#c7dfd3!important}.story-page-player header>span,.story-exam-player header>span{color:#548b74}.story-page-player header p,.story-exam-player header p{color:#667a71}.story-page-player .course-item-progress,.story-exam-player .course-item-progress{border-color:#cfe2d8;background:#ffffffc7}.story-page-player .course-item-progress u,.story-exam-player .course-item-progress u{background:linear-gradient(90deg,#65a58a,#93d6bc,#f2c966)}
.story-spread{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);border-radius:30px;background:#fff;box-shadow:9px 10px 0 #dceae3}.story-spread>figure{position:relative;margin:0;min-height:420px;background:linear-gradient(145deg,#d9efe6,#f7e7b8)}.story-spread>figure img{width:100%;height:100%;object-fit:cover}.story-spread>figure figcaption{position:absolute;right:14px;bottom:14px;padding:7px 11px;border-radius:999px;background:#ffffffdd;color:#507060;font-size:8px;font-weight:900}.story-spread>div>p{padding:18px 0;font-size:clamp(19px,3vw,29px);color:#344b42}.story-spread aside{margin-top:14px;padding:16px 18px;border:0;border-radius:17px;background:#eef8f3;color:#527064}.story-spread aside small{display:block;margin-bottom:6px;color:#6c9684;font-size:8px;font-weight:900}
.story-exam-player .course-question{min-height:400px;border-color:#94c7ae;background:linear-gradient(145deg,#e8faF2,#fff)!important}.story-exam-player .course-question-title>b{background:linear-gradient(145deg,#4d9476,#85c5aa);box-shadow:0 5px 0 #c9e5d8}.story-exam-player .course-options label{border-color:#cbe3d8;background:#f9fffc}.story-exam-player .course-item-nav button.primary{background:linear-gradient(135deg,#4f9678,#83c4a8);border-color:#4f9678;box-shadow:0 6px 0 #c6dfd4}
@media(max-width:620px){.course-question{min-height:380px!important;margin:12px 0;padding:20px 16px}.course-question-title{grid-template-columns:42px minmax(0,1fr);gap:10px;margin-bottom:18px}.course-question-title>b{width:42px;height:42px}.course-question-title h2{font-size:20px}.course-question .course-options{gap:8px}.course-question .course-options label{min-height:55px;padding:12px}.watch-exam-player form,.story-exam-player form{width:100%}.story-spread{grid-template-columns:1fr}.story-spread>figure{min-height:220px;max-height:260px}.story-spread>div{padding:24px 20px}.story-page-player .course-item-nav,.story-exam-player .course-item-nav{background:#fffffff0}.watch-video-player .course-video{border-width:4px;border-radius:21px}.watch-video-player,.watch-exam-player{padding-left:14px!important;padding-right:14px!important}}


/* ===== course-nav-fix.css ===== */
/* Course player navigation: stable two-button row with RTL-correct arrows. */
.course-item-nav{
  width:100%;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:14px!important;
  align-items:stretch;
  direction:rtl;
}
.course-item-nav>button{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:10px;
  white-space:nowrap;
}
.course-item-nav>button[data-course="item-prev"]{grid-column:1}
.course-item-nav>button.primary{grid-column:2}
.course-item-nav>button[data-course="item-prev"] svg{transform:rotate(180deg)}
.course-item-nav>button[data-course="item-next"] svg{transform:none}
.course-item-nav>button.course-nav-locked,
.course-item-nav>button:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  pointer-events:none;
  box-shadow:none!important;
  transform:none!important;
}
@media(max-width:560px){
  .course-item-nav{gap:10px!important}
  .course-item-nav>button{min-height:64px!important;padding-inline:14px!important}
}


/* ===== talk.css ===== */
.talk-room{
  --ink:#332b48;
  --purple:#7956a5;
  --purple-dark:#4b3a62;
  --pink:#ff7e9e;
  --yellow:#f5ca62;
  --mint:#92d7bd;
  --shell-x:clamp(14px,4vw,34px);
  --content:860px;
  box-sizing:border-box;
  width:100%!important;
  max-width:none!important;
  min-width:0;
  min-height:100dvh;
  margin:0!important;
  padding:0!important;
  color:var(--ink);
  overflow-x:hidden;
}
.talk-room *,.talk-room *::before,.talk-room *::after{box-sizing:border-box}
.talk-room button,.talk-room input{font-family:inherit}
.dashboard.learning-page.talk-room{width:100%!important;max-width:none!important;min-height:100dvh!important;margin:0!important;padding:0!important}

/* Every talk state is a complete page surface. */
.talk-select,.talk-waiting,.talk-active,.talk-rating{
  position:relative;
  width:100%;
  min-width:0;
  min-height:100dvh;
  margin:0;
  border:0;
  border-radius:0;
  padding:clamp(22px,4vw,48px) var(--shell-x) calc(118px + env(safe-area-inset-bottom));
  overflow:hidden;
}

/* Selection */
.talk-select{
  display:grid;
  align-content:start;
  gap:clamp(22px,4vw,36px);
  background:
    radial-gradient(circle at 10% 12%,#f3c7d9 0 5%,transparent 5.2%),
    linear-gradient(145deg,#fbf7ff 0 48%,#fff8df 100%);
}
.talk-hero{
  position:relative;
  width:min(100%,var(--content));
  margin:0 auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  text-align:right;
  overflow:visible;
}
.talk-hero:after{content:'✦';position:absolute;left:2%;top:4px;font-size:clamp(34px,6vw,58px);color:#ef83a2;opacity:.72;transform:rotate(-12deg)}
.talk-hero>span,.talk-kicker{color:#805ea1;font-size:12px;font-weight:900}
.talk-hero h1{max-width:760px;margin:10px 0 12px;font-size:clamp(34px,6vw,64px);line-height:1.08;letter-spacing:-.03em}
.talk-hero h1 em{color:#8a61af;font-style:normal}
.talk-hero p{max-width:680px;margin:0;color:#756c7d;font-size:clamp(14px,2vw,17px);line-height:1.85}
.talk-mode-cards{width:min(100%,var(--content));margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.talk-mode-card{position:relative;min-width:0;min-height:330px;padding:30px;border:0;border-radius:32px;display:flex;flex-direction:column;align-items:flex-start;text-align:right;color:var(--ink);cursor:pointer;overflow:hidden;transition:.2s transform,.2s box-shadow}
.talk-mode-card:hover{transform:translateY(-3px)}
.talk-mode-card.call{background:linear-gradient(145deg,#ffdce4,#fff1c0);box-shadow:0 8px 0 #edcbd0}
.talk-mode-card.chat{background:linear-gradient(145deg,#ddd2ff,#d4f2e8);box-shadow:0 8px 0 #c9c1df}
.talk-mode-card:after{content:'';position:absolute;width:190px;height:190px;border:2px dashed #ffffffa6;border-radius:50%;left:-58px;top:-64px}
.talk-mode-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;background:#fff;color:#7f58a3;flex:0 0 auto}
.talk-mode-card small{display:block;width:100%;margin-top:28px;font-weight:900;color:#80648c}
.talk-mode-card h2{width:100%;margin:8px 0;font-size:clamp(28px,4vw,44px);line-height:1.15}
.talk-mode-card p{width:100%;max-width:400px;margin:0;line-height:1.75;color:#665d70}
.talk-mode-card b{position:static;margin-top:auto;display:flex;align-items:center;gap:9px;padding:12px 17px;border-radius:999px;background:#342b49;color:#fff}

/* Journey progress */
.talk-journey-progress{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,620px);margin:0 auto 34px;flex:0 0 auto}
.talk-journey-progress>span{position:absolute;top:18px;right:16.6%;left:16.6%;height:4px;border-radius:4px;background:linear-gradient(to left,#845faf calc((var(--step) - 1)*50%),#e6dce9 0)}
.talk-journey-progress b{position:relative;display:grid;justify-items:center;gap:8px;color:#a699aa;font-size:10px}
.talk-journey-progress i{display:grid;place-items:center;width:39px;height:39px;border:4px solid #f9f7fb;border-radius:50%;background:#e6dce9;font-style:normal}
.talk-journey-progress b.active{color:#684983}
.talk-journey-progress b.active i{background:#805ca3;color:#fff}

/* Waiting */
.talk-waiting{text-align:center;background:linear-gradient(160deg,#eee7ff 0,#fbfbff 46%,#dff7ee 100%)}
.talk-waiting.call{background:linear-gradient(160deg,#fff5d7 0,#fffdf8 46%,#ffe7ec 100%)}
.talk-waiting.chat{background:linear-gradient(160deg,#eee7ff 0,#fbfbff 46%,#dff7ee 100%)}
.talk-wait-art{position:relative;width:min(300px,72vw);height:245px;margin:0 auto 8px}
.talk-orbit{position:absolute;inset:26px;border:2px dashed #bfa9ce;border-radius:50%;animation:talkSpin 13s linear infinite}
.talk-orbit.two{inset:58px;animation-direction:reverse;animation-duration:9s}
.talk-avatar{position:absolute;z-index:2;display:grid;place-items:center;width:94px;height:94px;border:8px solid #fff;border-radius:34px;font-size:38px;font-weight:900;box-shadow:0 15px 30px #8064a52b}
.talk-avatar.me{right:20px;bottom:30px;background:#8c65ae;color:#fff;transform:rotate(6deg)}
.talk-avatar.partner{left:25px;top:30px;background:#ffd873;color:#5b4860;transform:rotate(-7deg)}
.talk-wait-art>i{position:absolute;width:14px;height:14px;border-radius:50%;background:#ff7d9f}
.talk-wait-art>i:nth-of-type(1){top:42px;right:76px}
.talk-wait-art>i:nth-of-type(2){bottom:45px;left:92px;background:#79cdb0}
.talk-wait-art>i:nth-of-type(3){top:105px;left:45%;background:#f4c85d}
.talk-waiting h1{margin:9px auto;max-width:700px;font-size:clamp(30px,5vw,50px);line-height:1.2}
.talk-waiting>p{max-width:680px;margin:0 auto;color:#756c7d;line-height:1.8}
.talk-match-chips{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:28px 0}
.talk-match-chips span{display:flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #dfd5e4;border-radius:999px;background:#fff;font-size:10px;font-weight:800}
.talk-wait-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.talk-wait-actions button{min-height:51px;padding:0 24px;border:1px solid #d8cae0;border-radius:17px;background:#fff;color:#685375;font-weight:900;cursor:pointer}
.talk-wait-actions .primary{border-color:#76529a;background:#76529a;color:#fff;box-shadow:0 6px 0 #dfd1e8}

/* Shared active header */
.talk-session-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(100%,var(--content));margin:0 auto 24px;text-align:right;flex:0 0 auto}
.talk-session-head div{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:8px}
.talk-session-head h1{grid-column:1/3;margin:2px 0;font-size:clamp(24px,4vw,31px);line-height:1.2}
.talk-session-head p{margin:0;color:#6d9f8b;font-size:10px;font-weight:900}
.online-dot{width:10px;height:10px;border-radius:50%;background:#62c79e;box-shadow:0 0 0 5px #dff6ed}
.talk-end{flex:0 0 auto;padding:11px 20px;border:0;border-radius:15px;background:#ffe7eb;color:#b74f68;font-weight:900;cursor:pointer}

/* Call: full dark page with vector controls; emoji glyphs are visually replaced. */
.talk-active.talk-call{display:flex;flex-direction:column;background:radial-gradient(circle at 50% 16%,#5f4b82 0,#39294f 34%,#241d38 100%);color:#fff;text-align:center}
.talk-call .talk-journey-progress b{color:#cfc4d7}
.talk-call .talk-journey-progress b.active{color:#fff}
.talk-call .talk-journey-progress i{border-color:#443754}
.talk-call .talk-session-head p{color:#9ee4c6}
.call-stage{position:relative;width:min(100%,700px);min-height:430px;margin:0 auto;flex:1 1 auto;padding:34px 20px;border:1px solid #ffffff20;border-radius:38px;background:radial-gradient(circle at 50% 30%,#8f68ad,#413452 70%);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}
.call-avatar{display:grid;place-items:center;width:154px;height:154px;margin:0 auto;border:8px solid #ffffff24;border-radius:54px;background:linear-gradient(145deg,#ffc96c,#ff829d);font-size:64px;font-weight:900}
.call-stage h2{margin:20px 0 4px;font-size:30px}
.call-stage p{margin:0;font:700 16px 'DM Sans',sans-serif;color:#e0d8e5}
.call-spark{position:absolute;font-size:34px;color:#f5c967}
.call-spark.a{right:12%;top:22%}
.call-spark.b{left:15%;bottom:20%;color:#ff9ab0}
.voice-wave{height:45px;display:flex;align-items:center;justify-content:center;gap:5px;margin-top:22px}
.voice-wave i{width:5px;height:calc(10px + (var(--i) % 5)*6px);border-radius:5px;background:#fff;animation:talkWave .9s ease-in-out calc(var(--i)*-.08s) infinite alternate}
.call-controls{width:min(100%,700px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px auto 0;direction:rtl;flex:0 0 auto}
.call-controls button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:92px;padding:12px 8px;border:1px solid #ffffff2b;border-radius:21px;background:#ffffff14;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.call-controls button>span{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:#ffffff14;font-size:0!important;line-height:0;color:currentColor}
.call-controls button>span::before{content:'';display:block;width:24px;height:24px;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.call-controls button[data-talk="mute"]>span::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 14a3 3 0 0 0 3-3V6a3 3 0 1 0-6 0v5a3 3 0 0 0 3 3Zm-5-3a1 1 0 1 0-2 0 7 7 0 0 0 6 6.93V21H8a1 1 0 1 0 0 2h8a1 1 0 1 0 0-2h-3v-3.07A7 7 0 0 0 19 11a1 1 0 1 0-2 0 5 5 0 0 1-10 0Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 14a3 3 0 0 0 3-3V6a3 3 0 1 0-6 0v5a3 3 0 0 0 3 3Zm-5-3a1 1 0 1 0-2 0 7 7 0 0 0 6 6.93V21H8a1 1 0 1 0 0 2h8a1 1 0 1 0 0-2h-3v-3.07A7 7 0 0 0 19 11a1 1 0 1 0-2 0 5 5 0 0 1-10 0Z'/%3E%3C/svg%3E")}
.call-controls button[data-talk="speaker"]>span::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 9v6h4l5 4V5L7 9H3Zm12.5-.5a1 1 0 0 0-1.4 1.4 3 3 0 0 1 0 4.2 1 1 0 1 0 1.4 1.4 5 5 0 0 0 0-7Zm2.8-2.8a1 1 0 1 0-1.4 1.4 7 7 0 0 1 0 9.8 1 1 0 1 0 1.4 1.4 9 9 0 0 0 0-12.6Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 9v6h4l5 4V5L7 9H3Zm12.5-.5a1 1 0 0 0-1.4 1.4 3 3 0 0 1 0 4.2 1 1 0 1 0 1.4 1.4 5 5 0 0 0 0-7Zm2.8-2.8a1 1 0 1 0-1.4 1.4 7 7 0 0 1 0 9.8 1 1 0 1 0 1.4 1.4 9 9 0 0 0 0-12.6Z'/%3E%3C/svg%3E")}
.call-controls button.end>span::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8a15.2 15.2 0 0 1 10.8 0l1.1-2.4a1.7 1.7 0 0 1 2.2-.9l1.1.5a1.7 1.7 0 0 1 .9 2.2l-1.5 3.5a1.7 1.7 0 0 1-2.2.9l-2.1-.9a1.7 1.7 0 0 1-1-1.5 12.2 12.2 0 0 0-7.8 0 1.7 1.7 0 0 1-1 1.5l-2.1.9a1.7 1.7 0 0 1-2.2-.9l-1.5-3.5A1.7 1.7 0 0 1 2.2 8l1.1-.5a1.7 1.7 0 0 1 2.2.9l1.1 2.4Z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8a15.2 15.2 0 0 1 10.8 0l1.1-2.4a1.7 1.7 0 0 1 2.2-.9l1.1.5a1.7 1.7 0 0 1 .9 2.2l-1.5 3.5a1.7 1.7 0 0 1-2.2.9l-2.1-.9a1.7 1.7 0 0 1-1-1.5 12.2 12.2 0 0 0-7.8 0 1.7 1.7 0 0 1-1 1.5l-2.1.9a1.7 1.7 0 0 1-2.2-.9l-1.5-3.5A1.7 1.7 0 0 1 2.2 8l1.1-.5a1.7 1.7 0 0 1 2.2.9l1.1 2.4Z'/%3E%3C/svg%3E")}
.call-controls button.off{background:#fff;color:#443651}
.call-controls .end{background:#ed5f75;border-color:#ed5f75}

/* Chat: one explicit vertical stream. No horizontal collision is possible. */
.talk-active.talk-chat{display:flex;flex-direction:column;align-items:stretch;background:linear-gradient(155deg,#f1ebff 0,#fbfbff 42%,#e5f8f1 100%)}
.chat-topic,.talk-messages,.talk-composer{width:min(100%,var(--content));margin-left:auto;margin-right:auto}
.chat-topic{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:15px 18px;border-radius:19px;background:#fff1bd;text-align:right;box-shadow:0 5px 0 #eadfb8}
.chat-topic>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:#f2c75e}
.chat-topic div{min-width:0;flex:1}
.chat-topic small,.chat-topic b{display:block}
.chat-topic small{color:#8e7740}
.chat-topic b{margin-top:3px;font-family:'DM Sans',sans-serif;direction:ltr;text-align:left;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.talk-messages{flex:1 1 auto;min-height:260px;padding:24px 0 18px;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-end!important;gap:12px!important;direction:ltr!important;overflow:hidden}
.talk-messages>.talk-bubble{position:relative!important;inset:auto!important;float:none!important;clear:both!important;display:block!important;flex:0 0 auto!important;width:fit-content!important;min-width:0!important;max-width:min(82%,38rem)!important;margin-top:0!important;margin-bottom:0!important;padding:13px 16px!important;border-radius:20px;text-align:left;box-shadow:0 5px 0 #dfd5e6;overflow:hidden;transform:none!important}
.talk-bubble span{display:block;margin-bottom:5px;font-size:8px;font-weight:900;direction:rtl;text-align:left}
.talk-bubble p{display:block;margin:0;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.45;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;max-width:100%}
.talk-messages>.talk-bubble.partner{align-self:flex-start!important;margin-right:auto!important;margin-left:0!important;background:#fff;color:var(--ink);border-bottom-left-radius:6px}
.talk-messages>.talk-bubble.me{align-self:flex-end!important;margin-left:auto!important;margin-right:0!important;background:#7e5ba1;color:#fff;border-bottom-right-radius:6px;box-shadow:0 5px 0 #d3c4df}
.talk-composer{flex:0 0 auto;display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:10px;padding:10px;border:1px solid #ddd1e4;border-radius:22px;background:#fff;direction:ltr;box-shadow:0 8px 24px #71548d16}
.talk-composer input{width:100%;min-width:0;border:0;outline:0;padding:0 13px;background:transparent;font:600 14px 'DM Sans',sans-serif}
.talk-composer button{width:54px;min-width:54px;border:0;border-radius:16px;background:#805ca4;color:#fff;cursor:pointer}
.talk-composer button svg{transform:rotate(180deg)}

/* Rating */
.talk-rating{text-align:center;background:linear-gradient(165deg,#fff7da 0,#fffdf8 43%,#f1e9ff 100%)}
.rating-celebration{display:flex;justify-content:center;gap:27px;margin-bottom:14px;color:#ef7d9b;font-size:27px}
.rating-celebration span:nth-child(2){display:grid;place-items:center;width:72px;height:72px;border-radius:26px;background:#ffd46f;color:#fff;font-size:42px;transform:rotate(7deg);box-shadow:0 8px 0 #ead8a8}
.talk-rating h1{margin:8px 0;font-size:clamp(34px,6vw,56px);line-height:1.15}
.talk-rating>p{max-width:680px;margin:0 auto;color:#796f80;line-height:1.8}
.ten-stars{width:min(100%,700px);display:grid;grid-template-columns:repeat(10,minmax(0,1fr));direction:ltr;gap:6px;margin:28px auto 12px}
.ten-stars button{display:grid;place-items:center;width:100%;aspect-ratio:1;border:1px solid #ded4e3;border-radius:16px;background:#ffffffa8;color:#d9d1dd;font-size:clamp(24px,4vw,38px);cursor:pointer;transition:.18s transform,.18s color,.18s background}
.ten-stars button.selected{color:#f1bd3f;background:#fff9e7;text-shadow:0 2px 0 #d89d2f}
.ten-stars button:hover{transform:translateY(-2px)}
.rating-number{display:block;color:#7e5b9d}
.talk-feedback-boxes{width:min(100%,760px);margin:30px auto 0;padding:22px;border:1px solid #e2d7e6;border-radius:27px;background:#fff}
.talk-feedback-boxes h2{margin:0 0 16px;font-size:18px}
.talk-feedback-boxes>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.talk-feedback-boxes button{min-height:82px;padding:8px;border:1px solid #e0d5e5;border-radius:17px;background:#faf7fc;color:#665472;font-size:10px;font-weight:900;cursor:pointer}
.talk-feedback-boxes button.selected{border-color:#7e5a9f;background:#eee5f6;color:#6b4788;box-shadow:inset 0 0 0 2px #fff}
.talk-rating-actions{display:flex;justify-content:center;gap:10px;margin:26px auto 0;width:min(100%,760px)}
.talk-rating-actions button{min-width:125px;min-height:51px;border:1px solid #dacde1;border-radius:17px;background:#fff;color:#674d78;font-weight:900;cursor:pointer}
.talk-rating-actions button:disabled{opacity:.4;cursor:not-allowed}
.talk-rating-actions .done{background:#76529a;color:#fff}
.talk-rating-actions .report{color:#bd5169;background:#fff0f2}

/* Report sheet */
.talk-report-layer{position:fixed;z-index:80;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:18px;background:#241e33a8;backdrop-filter:blur(6px)}
.talk-report-sheet{position:relative;width:min(680px,100%);padding:18px 30px 34px;border-radius:34px 34px 24px 24px;background:#fff;text-align:right;box-shadow:0 -20px 70px #21172f55;animation:sheetUp .25s ease-out}
.sheet-handle{width:64px;height:6px;margin:0 auto 18px;border-radius:8px;background:#ddd4e0}
.sheet-close{position:absolute;left:24px;top:27px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:14px;background:#f2edf5;color:#6f577d}
.talk-report-sheet>span{font-size:10px;font-weight:900;color:#bb546a}
.talk-report-sheet h2{margin:5px 0;font-size:32px}
.talk-report-sheet>p{color:#776d7c}
.report-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:20px 0}
.report-options button{display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 14px;border:1px solid #e2d7e5;border-radius:16px;background:#faf8fb;color:#5f4c6b;font-weight:800;text-align:right;cursor:pointer}
.report-options i{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#eee7f1;color:#8a6c98;font-style:normal}
.report-options button.selected{border-color:#cc6076;background:#fff0f2;color:#a34156}
.report-options button.selected i{background:#d55f78;color:#fff}
.report-submit{width:100%;min-height:53px;border:0;border-radius:17px;background:#332b48;color:#fff;font-weight:900}
.report-submit:disabled{opacity:.4}

@keyframes talkSpin{to{transform:rotate(360deg)}}
@keyframes talkWave{to{height:9px;opacity:.45}}
@keyframes sheetUp{from{transform:translateY(60px);opacity:0}}

@media(max-width:700px){
  .talk-room,.dashboard.learning-page.talk-room{min-height:100dvh!important}
  .talk-select,.talk-waiting,.talk-active,.talk-rating{min-height:100dvh;padding:18px 14px calc(112px + env(safe-area-inset-bottom))}
  .talk-select{gap:20px}
  .talk-hero:after{font-size:42px}
  .talk-mode-cards{grid-template-columns:1fr}
  .talk-mode-card{min-height:285px;padding:24px;border-radius:28px}
  .talk-mode-card small{margin-top:22px}
  .talk-journey-progress{margin-bottom:24px}
  .talk-session-head{margin-bottom:20px}
  .talk-wait-art{width:250px;height:220px}
  .talk-wait-actions{flex-direction:column}
  .talk-wait-actions button{width:100%}
  .call-stage{min-height:380px;padding:28px 14px;border-radius:30px}
  .call-avatar{width:126px;height:126px;border-radius:42px;font-size:54px}
  .call-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px}
  .call-controls button{min-height:84px;border-radius:18px;font-size:9px;padding:10px 6px}
  .call-controls button>span{width:38px;height:38px;border-radius:13px}
  .call-controls button>span::before{width:22px;height:22px}
  .chat-topic{padding:14px;border-radius:18px}
  .chat-topic b{font-size:clamp(14px,4.1vw,17px)}
  .talk-messages{min-height:300px;padding:20px 0 16px;gap:11px!important}
  .talk-messages>.talk-bubble{max-width:84%!important;padding:12px 14px!important}
  .talk-bubble p{font-size:14px}
  .talk-composer{grid-template-columns:minmax(0,1fr) 54px}
  .ten-stars{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:100%;margin-top:24px}
  .ten-stars button{border-radius:15px;font-size:31px}
  .talk-feedback-boxes>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .talk-rating-actions{display:grid;grid-template-columns:1fr 1fr}
  .talk-rating-actions .done{grid-column:1/3}
  .talk-rating-actions button{min-width:0}
  .report-options{grid-template-columns:1fr}
  .talk-report-sheet{padding:16px 19px 25px}
  .talk-report-sheet h2{font-size:27px}
}

@media(max-width:390px){
  .talk-select,.talk-waiting,.talk-active,.talk-rating{padding-left:12px;padding-right:12px}
  .talk-journey-progress i{width:36px;height:36px}
  .talk-session-head h1{font-size:23px}
  .talk-end{padding:10px 16px}
  .call-stage{min-height:350px}
  .call-controls button{min-height:80px}
  .talk-messages>.talk-bubble{max-width:88%!important}
  .chat-topic>span{flex-basis:38px;width:38px;height:38px}
}


/* ===== home-closet-profile-v28.css ===== */
/* v28 redesigned home, closet, and profile */
.home-v28,.closet-v28,.profile-v28{max-width:1180px;padding-top:34px;padding-bottom:110px}
.home-greeting{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:18px;align-items:stretch}.home-greeting-copy{padding:26px 28px;border:1px solid #e8dff0;border-radius:28px;background:linear-gradient(135deg,#f8f2ff,#fff8e4);box-shadow:0 7px 0 #eee5f3}.home-greeting-copy>span,.home-section-head span,.home-progress-top span,.closet-v28-hero>div>span,.closet-detail-v28-head>div>span,.profile-v28-name>span{color:#7d5aa2;font-size:12px;font-weight:900}.home-greeting-copy h1{margin:7px 0 5px;font-size:clamp(34px,5vw,56px);line-height:1.18}.home-greeting-copy p{margin:0;color:#756d80;line-height:1.8}.home-status-mini{padding:22px;border-radius:28px;background:#342b49;color:#fff;display:grid;align-content:center;gap:7px}.home-status-mini small{color:#cfc3db;font-size:11px}.home-status-mini strong{font:800 40px 'DM Sans',sans-serif}.home-status-mini span{font-size:12px;color:#e6deec}.home-status-mini i{height:7px;border-radius:999px;background:#ffffff20;overflow:hidden}.home-status-mini i u{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f7d36e,#b98ad1);text-decoration:none}.home-status-mini b{font:700 11px 'DM Sans',sans-serif;color:#cfc3db}
.home-section{margin-top:34px}.home-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}.home-section-head h2,.home-progress-top h2{margin:5px 0 0;font-size:clamp(25px,3vw,36px)}.home-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-action{min-width:0;min-height:92px;border:1px solid #e5dce9;border-radius:23px;padding:15px 17px;background:#fff;color:#332b48;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;text-align:start;transition:.18s transform,.18s box-shadow,.18s border-color}.home-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 18px #59446d13;border-color:#bca9cf}.home-action:disabled{opacity:.45;cursor:not-allowed}.home-action.primary{background:linear-gradient(135deg,#76529a,#9469b8);color:#fff;border-color:#76529a}.home-action.chat{background:#f0e7ff}.home-action.call{background:#fff0de}.home-action.review{background:#eef7eb}.home-action.soon{background:#faf8fb}.home-action-icon{width:50px;height:50px;border-radius:17px;display:grid;place-items:center;background:#fff;color:#735397;border:1px solid #e8e0ed;font-weight:900}.home-action.primary .home-action-icon{background:#ffffff18;color:#fff;border-color:#ffffff1f}.home-action div{min-width:0;display:grid;gap:3px}.home-action strong{font-size:15px}.home-action small{color:#81788a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-action.primary small{color:#eee5f4}.home-action>svg{transform:rotate(180deg)}.home-letter{font:900 22px 'DM Sans',sans-serif}.home-number{font:900 14px 'DM Sans',sans-serif}.soon-pill{padding:6px 9px;border-radius:999px;background:#eee8f1;color:#8c7896;font-size:9px;font-weight:900;white-space:nowrap}
.home-progress-card{margin-top:34px;padding:25px;border:1px solid #e5dce8;border-radius:30px;background:#fff;box-shadow:0 8px 0 #f0ecf2}.home-progress-top{display:flex;align-items:center;justify-content:space-between;gap:24px}.home-progress-top p{max-width:680px;margin:6px 0 0;color:#81778a;line-height:1.8}.home-progress-ring{--p:0;width:102px;height:102px;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,#fff 0 55%,transparent 56%),conic-gradient(#815da6 calc(var(--p)*1%),#eee8f1 0);flex:0 0 auto}.home-progress-ring strong{font:800 21px 'DM Sans',sans-serif}.home-progress-ring small{font-size:9px;color:#8c8291}.home-current-box{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:23px;padding:17px 19px;border-radius:19px;background:linear-gradient(135deg,#f4edfb,#fff7dc)}.home-current-box div{display:grid;gap:2px}.home-current-box small{color:#8c6ca6}.home-current-box strong{font-size:19px}.home-current-box span{color:#776d7e;font-size:11px}.home-current-box button{border:0;border-radius:15px;background:#342b49;color:#fff;padding:12px 16px;font-weight:900;display:flex;align-items:center;gap:8px}.home-current-box button svg{transform:rotate(180deg)}.home-phase-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:17px}.home-phase{display:flex;gap:11px;align-items:center;padding:15px;border:1px solid #e8e1eb;border-radius:18px;background:#faf8fb}.home-phase>span{width:33px;height:33px;border-radius:11px;background:#ece6ef;display:grid;place-items:center;font-size:10px;font-weight:900}.home-phase div{display:grid;gap:2px}.home-phase strong{font-size:12px}.home-phase small{font-size:9px;color:#89808e}.home-phase.done{background:#eef8f1;border-color:#d7ecdd}.home-phase.done>span{background:#cde8d5;color:#4d8661}.home-phase.active{box-shadow:inset 0 0 0 2px #8f70b2}.home-level-list{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:17px}.home-level{padding:12px;border:1px solid #e6dfe8;border-radius:16px;background:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center}.home-level>span{font:800 11px 'DM Sans';color:#9a88a4}.home-level div{display:grid;gap:1px;min-width:0}.home-level strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-level small{font-size:8px;color:#918793}.home-level b{font:800 10px 'DM Sans';color:#76569a}.home-level.active{background:#f2ebf8;border-color:#a889bd}

.closet-v28-hero{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:29px;border-radius:29px;background:linear-gradient(135deg,#f0e7ff,#fff6dc);border:1px solid #e4d8e9}.closet-v28-hero h1{max-width:730px;margin:8px 0;font-size:clamp(30px,4vw,49px);line-height:1.25}.closet-v28-hero p{max-width:660px;margin:0;color:#776e7d;line-height:1.8}.closet-hero-mark{width:118px;height:118px;border-radius:38px;background:#fff;display:grid;place-items:center;color:#7e5ca1;box-shadow:0 8px 0 #ded2e8;transform:rotate(-5deg)}.closet-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.closet-category-v28{min-height:150px;border:1px solid #e4dbe7;border-radius:25px;background:#fff;padding:20px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;text-align:start;color:#342b49}.closet-category-v28.words{background:#f3ecff}.closet-category-v28.grammar{background:#fff2df}.closet-category-v28.videos{background:#eaf5f1}.closet-category-v28.stories{background:#fff0f3}.closet-cat-icon,.closet-kind-icon{width:62px;height:62px;border-radius:21px;background:#fff;display:grid;place-items:center;color:#805ea3;border:1px solid #eadfec}.closet-category-v28 div{display:grid;gap:2px}.closet-category-v28 span{font-size:12px;font-weight:900}.closet-category-v28 strong{font:800 32px 'DM Sans'}.closet-category-v28 small{color:#7e7483}.closet-category-v28>svg{transform:rotate(180deg)}
.closet-detail-v28-head{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end;position:relative;padding-top:44px}.closet-detail-v28-head>button{position:absolute;top:0;inset-inline-start:0;border:0;background:transparent;color:#6e5b78;display:flex;gap:7px;align-items:center}.closet-detail-v28-head>button svg{transform:rotate(180deg)}.closet-detail-v28-head h1{margin:5px 0;font-size:42px}.closet-detail-v28-head p{margin:0;color:#81788a}.closet-tools-v28{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:23px}.closet-search-v28{flex:1;min-width:0;display:flex;align-items:center;gap:9px;border:1px solid #dfd5e4;background:#fff;border-radius:17px;padding:0 14px;height:52px;color:#8b7698}.closet-search-v28 input{min-width:0;flex:1;border:0;outline:0;background:transparent}.closet-filter-v28{display:flex;gap:7px;flex-wrap:wrap}.closet-filter-v28 button{border:1px solid #dfd5e4;background:#fff;border-radius:999px;padding:9px 12px;color:#76667f;font-size:10px;font-weight:800}.closet-filter-v28 button.active{background:#76569a;color:#fff;border-color:#76569a}.closet-filter-v28 b{font:800 9px 'DM Sans'}.closet-box-summary{display:flex;gap:9px;flex-wrap:wrap;margin:13px 0}.closet-box-summary span{padding:7px 10px;border-radius:999px;background:#f2edf5;color:#77687f;font-size:9px;font-weight:800}.closet-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.closet-entry-v28{min-width:0;padding:17px;border:1px solid #e5dce8;border-radius:20px;background:#fff}.closet-entry-v28[hidden]{display:none}.closet-entry-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:13px}.closet-entry-head span{padding:5px 8px;border-radius:999px;background:#edf7ef;color:#57816a;font-size:8px;font-weight:900}.closet-entry-v28[data-closet-status="unfinished"] .closet-entry-head span{background:#fff1df;color:#9a6f3e}.closet-entry-head small{color:#968a99;font-size:8px}.closet-entry-v28>strong{font-size:20px;overflow-wrap:anywhere}.closet-entry-v28>p{margin:7px 0 0;color:#6f6674;line-height:1.65;font-size:12px}.closet-entry-detail{display:block;margin-top:9px;color:#918692;overflow-wrap:anywhere}.closet-v28-empty{grid-column:1/-1;text-align:center;padding:55px 20px;border:1px dashed #d9ccdf;border-radius:25px;color:#7d6c85}.closet-v28-empty span{display:inline-grid;width:72px;height:72px;place-items:center;border-radius:24px;background:#f3edf7}.closet-v28-empty h2{margin:14px 0 5px}

.profile-v28-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:26px;border:1px solid #e4dbe7;border-radius:30px;background:linear-gradient(135deg,#f3ecff,#fff6de)}.profile-cartoon{position:relative;width:112px;height:112px;border-radius:38px;background:#d9c6f0;overflow:hidden;box-shadow:0 8px 0 #d3c5df}.profile-cartoon .hair{position:absolute;left:24px;right:24px;top:18px;height:47px;border-radius:45px 45px 20px 20px;background:#4a385a;z-index:2}.profile-cartoon .face{position:absolute;left:28px;right:28px;top:31px;height:60px;border-radius:45% 45% 48% 48%;background:#f1c69f;z-index:3}.profile-cartoon .eye{position:absolute;top:25px;width:5px;height:5px;border-radius:50%;background:#443448}.profile-cartoon .e1{right:15px}.profile-cartoon .e2{left:15px}.profile-cartoon .smile{position:absolute;width:18px;height:9px;border-bottom:2px solid #8a5c68;border-radius:0 0 20px 20px;bottom:12px;left:50%;transform:translateX(-50%)}.profile-cartoon>b{position:absolute;z-index:4;bottom:4px;right:6px;width:30px;height:30px;border-radius:11px;background:#fff;display:grid;place-items:center;color:#805ba2}.profile-v28-name h1{margin:4px 0;font-size:clamp(31px,4vw,47px)}.profile-v28-name p{margin:0;color:#776d7d}.profile-settings-shortcut{border:0;border-radius:15px;background:#fff;color:#634781;padding:12px 15px;font-weight:900;display:flex;align-items:center;gap:8px}.profile-facts-v28{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:16px}.profile-facts-v28 article{padding:16px;border:1px solid #e5dce8;border-radius:19px;background:#fff;display:flex;align-items:center;gap:11px}.profile-facts-v28 article>span{width:39px;height:39px;border-radius:13px;background:#f1ebf6;color:#76589a;display:grid;place-items:center}.profile-facts-v28 div{display:grid;gap:2px}.profile-facts-v28 small{font-size:9px;color:#8b818e}.profile-facts-v28 strong{font-size:15px}.profile-actions-v28{margin-top:20px;border:1px solid #e4dbe7;border-radius:25px;background:#fff;overflow:hidden}.profile-action-row{min-height:78px;padding:14px 17px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;border-bottom:1px solid #eee8f0}.profile-action-row:last-child{border-bottom:0}.profile-action-row>span{width:41px;height:41px;border-radius:14px;background:#f1ebf6;color:#775b96;display:grid;place-items:center}.profile-action-row>div{display:grid;gap:2px}.profile-action-row strong{font-size:13px}.profile-action-row small{font-size:9px;color:#8b818e}.profile-action-row>button,.profile-action-row>select{border:1px solid #ddd2e2;border-radius:13px;background:#fff;padding:10px 12px;color:#634d70;font-weight:800}.profile-action-row>button svg{transform:rotate(180deg)}.profile-action-row.danger>span{background:#fff0f2;color:#b44d67}.profile-action-row.danger>button{color:#b44d67;border-color:#efd0d7;background:#fff4f5}.profile-delete-confirm-v28{position:fixed;z-index:100;inset:0;background:#251c33a8;display:grid;place-items:center;padding:20px;backdrop-filter:blur(5px)}.profile-delete-confirm-v28>div{width:min(430px,100%);padding:25px;border-radius:26px;background:#fff;text-align:center}.profile-delete-confirm-v28>div>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 13px;border-radius:20px;background:#fff0f2;color:#b94e67}.profile-delete-confirm-v28 h2{margin:0 0 8px}.profile-delete-confirm-v28 p{color:#786f7c;line-height:1.7}.profile-delete-confirm-v28>div>div{display:flex;gap:8px}.profile-delete-confirm-v28 button{flex:1;border:1px solid #ddd2e2;border-radius:14px;background:#fff;padding:12px;font-weight:900}.profile-delete-confirm-v28 button.danger{background:#bd5369;color:#fff;border-color:#bd5369}
html[dir="ltr"] .home-action>svg,html[dir="ltr"] .home-current-box button svg,html[dir="ltr"] .closet-category-v28>svg,html[dir="ltr"] .profile-action-row>button svg{transform:none}html[dir="ltr"] .closet-detail-v28-head>button svg{transform:none}
@media(max-width:760px){.home-v28,.closet-v28,.profile-v28{padding:22px 14px 105px}.home-greeting{grid-template-columns:1fr}.home-status-mini{grid-template-columns:1fr auto;align-items:center}.home-status-mini small,.home-status-mini span,.home-status-mini i{grid-column:1/-1}.home-status-mini strong{font-size:34px}.home-actions-grid{grid-template-columns:1fr}.home-progress-top{align-items:flex-start}.home-progress-ring{width:86px;height:86px}.home-phase-row{grid-template-columns:1fr}.home-level-list{grid-template-columns:1fr}.home-current-box{align-items:flex-start}.home-current-box button{white-space:nowrap}.closet-v28-hero{align-items:flex-start}.closet-hero-mark{width:82px;height:82px;border-radius:26px}.closet-category-grid,.closet-entry-grid{grid-template-columns:1fr}.closet-tools-v28{display:grid}.closet-filter-v28{overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.closet-filter-v28 button{white-space:nowrap}.profile-v28-card{grid-template-columns:auto 1fr}.profile-settings-shortcut{grid-column:1/-1;justify-content:center}.profile-cartoon{width:88px;height:88px;border-radius:29px}.profile-cartoon .hair{left:18px;right:18px;top:13px;height:39px}.profile-cartoon .face{left:21px;right:21px;top:24px;height:49px}.profile-facts-v28{grid-template-columns:1fr}.profile-action-row{grid-template-columns:auto minmax(0,1fr)}.profile-action-row>button,.profile-action-row>select{grid-column:1/-1;width:100%}}
@media(max-width:430px){.home-greeting-copy{padding:22px}.home-action{min-height:86px;padding:13px}.home-action-icon{width:45px;height:45px}.home-progress-card{padding:18px}.home-progress-top{display:grid;grid-template-columns:1fr auto}.home-progress-top p{grid-column:1/-1}.home-progress-ring{grid-column:2;grid-row:1/3}.closet-v28-hero{display:grid;grid-template-columns:1fr auto}.closet-v28-hero p{grid-column:1/-1}.closet-category-v28{min-height:128px}.closet-detail-v28-head h1{font-size:34px}.profile-v28-name h1{font-size:29px}}


/* ===== ux-content-v29.css ===== */
/* v29 refinements */
.course-clear-content-entry{border:1px solid #f0ccd3!important;background:linear-gradient(135deg,#fff4f5,#fffaf2)!important}.course-clear-content-entry>b{background:#ed7185!important;color:#fff!important}

.profile-cartoon-v29{position:relative!important;width:128px!important;height:128px!important;min-width:128px!important;border-radius:36px!important;background:linear-gradient(145deg,#ffdf78,#ff91b3 48%,#a88be7)!important;border:0!important;box-shadow:0 12px 0 #d9c9e5,0 22px 34px #49365f24!important;overflow:visible!important;isolation:isolate}
.profile-cartoon-v29 .avatar-backdrop{position:absolute;inset:9px;border-radius:30px;background:linear-gradient(145deg,#fff7d8,#f8efff);z-index:-1}.profile-cartoon-v29 .avatar-hair{position:absolute;top:23px;left:33px;width:63px;height:52px;border-radius:50% 50% 38% 42%;background:#443554;transform:rotate(-7deg);z-index:2}.profile-cartoon-v29 .avatar-hair:before{content:'';position:absolute;width:28px;height:35px;right:-10px;top:13px;border-radius:50%;background:#443554}.profile-cartoon-v29 .avatar-face{position:absolute;top:37px;left:35px;width:60px;height:62px;border-radius:47% 47% 44% 44%;background:#ffd8ba;border:2px solid #5c4665;z-index:3}.profile-cartoon-v29 .avatar-eye{position:absolute;top:22px;width:6px;height:8px;border-radius:50%;background:#3e324a}.profile-cartoon-v29 .avatar-eye.left{left:15px}.profile-cartoon-v29 .avatar-eye.right{right:15px}.profile-cartoon-v29 .avatar-nose{position:absolute;left:28px;top:31px;width:5px;height:5px;border-radius:50%;background:#e99d86}.profile-cartoon-v29 .avatar-smile{position:absolute;left:20px;top:39px;width:20px;height:10px;border-bottom:3px solid #7d4054;border-radius:0 0 20px 20px}.profile-cartoon-v29 .avatar-cheek{position:absolute;top:34px;width:9px;height:5px;border-radius:50%;background:#f4a4a7;opacity:.65}.profile-cartoon-v29 .avatar-cheek.left{left:6px}.profile-cartoon-v29 .avatar-cheek.right{right:6px}.profile-cartoon-v29 .avatar-ear{position:absolute;top:58px;width:14px;height:20px;border-radius:50%;background:#ffd8ba;border:2px solid #5c4665;z-index:1}.profile-cartoon-v29 .avatar-ear.left{left:28px}.profile-cartoon-v29 .avatar-ear.right{right:28px}.profile-cartoon-v29 .avatar-shirt{position:absolute;left:28px;bottom:8px;width:72px;height:38px;border-radius:28px 28px 16px 16px;background:linear-gradient(135deg,#7655a5,#a67fd0);border:2px solid #5c4665;z-index:2;display:grid;place-items:center;color:#fff}.profile-cartoon-v29 .avatar-shirt b{font-size:18px}.profile-cartoon-v29 .avatar-confetti{position:absolute;z-index:5;font-size:17px;font-weight:900}.profile-cartoon-v29 .avatar-confetti.c1{right:-9px;top:8px;color:#f4b94f;transform:rotate(14deg)}.profile-cartoon-v29 .avatar-confetti.c2{left:-8px;top:22px;color:#68cba5;font-size:12px}.profile-cartoon-v29 .avatar-confetti.c3{left:1px;bottom:1px;color:#ef7396;transform:rotate(-12deg)}

.settings-v29{max-width:980px!important}.settings-v29-head{margin-bottom:28px}.settings-v29-head>.back{margin-bottom:24px}.settings-v29-head>span{display:block;color:#805ca4;font-size:12px;font-weight:900}.settings-v29-head h1{font-size:clamp(34px,5vw,52px);margin:7px 0 6px}.settings-v29-head p{color:#7d7585;line-height:1.8}.settings-v29-list{display:grid;gap:12px}.settings-v29-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:15px;padding:18px;border:1px solid #e2d9e7;border-radius:22px;background:#fff;box-shadow:0 5px 0 #ebe5ef}.settings-v29-row.primary{background:linear-gradient(135deg,#f1e9ff,#fff7df)}.settings-v29-row.danger{background:#fff3f4;border-color:#f0cfd4}.settings-v29-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#f0e8fa;color:#7657a0}.settings-v29-row strong,.settings-v29-row small{display:block}.settings-v29-row small{margin-top:4px;color:#817989;line-height:1.6}.settings-v29-row>button,.settings-v29-row>select{min-height:42px;border:1px solid #d8ccdf;border-radius:13px;background:#fff;padding:0 14px;color:#5d4b6c;font-weight:800}.settings-v29-row.danger>button{border-color:#e8aeb9;color:#b94f64}.settings-v29-row>b{font:800 20px 'DM Sans',sans-serif;color:#6d4c93}

.clear-content-modal-v29{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px}.clear-content-backdrop-v29{position:absolute;inset:0;border:0;background:#261d35b8;backdrop-filter:blur(5px)}.clear-content-modal-v29>section{position:relative;z-index:1;width:min(760px,100%);max-height:min(88dvh,850px);overflow:auto;border-radius:28px;background:#fff;box-shadow:0 24px 70px #1d152c55}.clear-content-modal-v29 header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 24px 15px;border-bottom:1px solid #eee7f1;background:linear-gradient(135deg,#f5edff,#fff8e3)}.clear-content-modal-v29 header small{color:#8b64b0;font-weight:900}.clear-content-modal-v29 header h2{margin:5px 0;font-size:28px}.clear-content-modal-v29 header p{margin:0;color:#7d7484}.clear-content-modal-v29 header>button{width:42px;height:42px;border:1px solid #ded2e4;border-radius:14px;background:#fff;color:#6e577c}.clear-content-form-v29{padding:22px 24px;display:grid;gap:18px}.clear-content-form-v29>label{display:grid;gap:7px;font-weight:900}.clear-content-form-v29 select{min-height:48px;border:1px solid #d9cce1;border-radius:14px;background:#fff;padding:0 13px}.clear-scope-v29>span{display:block;font-weight:900;margin-bottom:8px}.clear-scope-v29>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.clear-scope-v29 button{min-height:45px;border:1px solid #d9cce1;border-radius:13px;background:#fff;color:#655573;font-weight:800}.clear-scope-v29 button.active{background:#7857a0;color:#fff;border-color:#7857a0}.clear-content-scope-fields-v29{padding:15px;border-radius:17px;background:#faf8fc;border:1px solid #ece5f0}.clear-content-scope-fields-v29>p{margin:0;color:#716978}.clear-content-scope-fields-v29>label{display:grid;gap:7px;font-weight:900}.clear-multi-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.clear-multi-head button{border:0;background:#eee6f7;color:#654b82;border-radius:10px;padding:8px 12px;font-weight:800}.clear-box-grid-v29{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px;direction:ltr}.clear-box-grid-v29 label{cursor:pointer}.clear-box-grid-v29 input{position:absolute;opacity:0;pointer-events:none}.clear-box-grid-v29 span{height:38px;display:grid;place-items:center;border:1px solid #ddd1e4;border-radius:10px;background:#fff;font:800 12px 'DM Sans',sans-serif}.clear-box-grid-v29 input:checked+span{background:#76559c;border-color:#76559c;color:#fff}.clear-warning-v29{margin:0;padding:13px;border-radius:14px;background:#fff2f3;color:#a64e61;font-size:12px;line-height:1.7}.clear-content-modal-v29 footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 24px}.clear-content-modal-v29 footer button{min-height:46px;padding:0 18px;border:1px solid #d8cce0;border-radius:14px;background:#fff;color:#665573;font-weight:900}.clear-content-modal-v29 footer .danger{background:#d9546c;border-color:#d9546c;color:#fff}.clear-success-v29{display:block;width:100%;padding:13px;border-radius:14px;background:#eaf7ef;color:#3f805d;font-weight:900;text-align:center}

@media(max-width:700px){.profile-cartoon-v29{width:108px!important;height:108px!important;min-width:108px!important}.profile-cartoon-v29 .avatar-face{transform:scale(.88);transform-origin:center}.profile-cartoon-v29 .avatar-hair{transform:scale(.88) rotate(-7deg);transform-origin:center}.profile-cartoon-v29 .avatar-shirt{left:22px;width:64px}.settings-v29-row{grid-template-columns:46px minmax(0,1fr)}.settings-v29-row>:last-child{grid-column:2}.settings-v29-icon{width:42px;height:42px}.clear-scope-v29>div{grid-template-columns:1fr}.clear-box-grid-v29{grid-template-columns:repeat(5,minmax(0,1fr))}.clear-content-modal-v29>section{max-height:92dvh}.clear-content-modal-v29 footer{position:sticky;bottom:0;background:#fff;border-top:1px solid #eee7f1}}


/* ===== vocabulary-flashcards-v30.css ===== */
/* v31 colorful/playful vocabulary flashcards */
.phase-vocabulary{max-width:880px!important;margin-inline:auto!important}
.phase-vocabulary>header{text-align:center;margin-bottom:18px}
.phase-vocabulary>header h1{margin-bottom:7px!important}
.phase-vocabulary .vocab-deck.vocab-single{display:block!important;margin:22px auto 18px!important;max-width:720px}
.phase-vocabulary .vocab-card{--card-a:#f6e9ff;--card-b:#fff8d9;--card-c:#e6f8ef;position:relative;min-height:430px!important;padding:22px!important;border:2px solid #d7c7e7!important;border-radius:34px!important;background:linear-gradient(145deg,var(--card-a) 0 43%,#fff 43% 65%,var(--card-b) 65% 100%)!important;box-shadow:0 22px 55px rgba(77,54,101,.15),0 8px 0 #d6c6e3!important;overflow:hidden;isolation:isolate}
.phase-vocabulary .vocab-card:before,.phase-vocabulary .vocab-card:after{content:'';position:absolute;border-radius:999px;pointer-events:none;z-index:-1}
.phase-vocabulary .vocab-card:before{width:190px;height:190px;right:-70px;top:-65px;background:repeating-linear-gradient(45deg,#ffca6b 0 10px,#ffdca0 10px 20px);opacity:.55;transform:rotate(15deg)}
.phase-vocabulary .vocab-card:after{width:150px;height:150px;left:-55px;bottom:-52px;background:radial-gradient(circle at 30% 30%,#8bd5bd 0 9%,transparent 10%),radial-gradient(circle at 70% 50%,#ff8eb0 0 8%,transparent 9%),radial-gradient(circle at 45% 75%,#8f73d1 0 8%,transparent 9%),#e8f8f1;opacity:.82}
.phase-vocabulary .vocab-card>header{position:relative;z-index:2;display:flex!important;align-items:center;justify-content:space-between;margin:0 0 20px!important;padding:0!important;text-align:initial}
.phase-vocabulary .vocab-card>header span{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(145deg,#6d4ca1,#493266);color:#fff;font:900 12px 'DM Sans',sans-serif;box-shadow:0 4px 0 #38244e}
.phase-vocabulary .vocab-card>header em{font-style:normal;font-size:10px;font-weight:900;color:#5f4476;background:#fff;border:1px solid #dbc9e6;border-radius:999px;padding:8px 13px;box-shadow:0 3px 0 #e3d8ea}
.phase-vocabulary .vocab-flip-card{position:relative!important;width:100%!important;min-height:292px!important;padding:0!important;border:0!important;background:transparent!important;border-radius:28px!important;perspective:1200px!important;align-self:stretch!important}
.phase-vocabulary .vocab-flip-inner{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .58s cubic-bezier(.2,.8,.2,1)}
.phase-vocabulary .vocab-flip-card.is-flipped .vocab-flip-inner{transform:rotateY(180deg)}
.phase-vocabulary .vocab-flip-face,.phase-vocabulary .vocab-flip-back{position:absolute;inset:0;backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:28px;padding:30px;border:2px solid #d6c7e2;overflow:hidden}
.phase-vocabulary .vocab-flip-face{background:radial-gradient(circle at 18% 18%,#fff 0 7%,transparent 7.5%),radial-gradient(circle at 82% 80%,#ffd56e 0 8%,transparent 8.5%),linear-gradient(145deg,#efe2ff,#f9f3ff 45%,#e7f8ef);box-shadow:inset 0 -10px 30px #8a69b019}
.phase-vocabulary .vocab-flip-face:after{content:'✦  ●  ✦';position:absolute;bottom:18px;font-size:15px;letter-spacing:12px;color:#a78bc4;opacity:.65}
.phase-vocabulary .vocab-flip-back{transform:rotateY(180deg);background:radial-gradient(circle at 18% 22%,#ff92b0 0 6%,transparent 6.5%),radial-gradient(circle at 84% 74%,#8bcfaf 0 7%,transparent 7.5%),linear-gradient(145deg,#fff1bd,#fff9e9 48%,#ffe9f1);border-color:#e8ca75;box-shadow:inset 0 -10px 30px #d49d3116}
.phase-vocabulary .vocab-flip-face small,.phase-vocabulary .vocab-flip-back small{position:absolute;top:18px;color:#776981;font-size:9px;font-weight:900;background:#ffffffb8;border-radius:999px;padding:6px 10px}
.phase-vocabulary .vocab-flip-face strong{font:900 clamp(50px,9vw,88px)/1.05 'DM Sans',sans-serif;color:#332443;letter-spacing:-.045em;text-align:center;overflow-wrap:anywhere;text-shadow:0 3px 0 #fff}
.phase-vocabulary .vocab-flip-back strong{font-size:clamp(36px,7vw,64px);line-height:1.35;color:#59431f;text-align:center;text-shadow:0 2px 0 #fff}
.phase-vocabulary .vocab-sentence-card{--card-a:#e8f5ff;--card-b:#fff0bd;justify-content:flex-start}
.phase-vocabulary .vocab-sentence-en,.phase-vocabulary .vocab-sentence-ar{position:relative;z-index:2;border-radius:24px;padding:23px 25px;overflow:hidden}
.phase-vocabulary .vocab-sentence-en{background:linear-gradient(135deg,#493866,#6f54a2 58%,#8b70c0);color:#fff;min-height:165px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 7px 0 #352846}
.phase-vocabulary .vocab-sentence-en:after{content:'ABC';position:absolute;right:18px;top:10px;font:900 32px 'DM Sans';color:#ffffff16;transform:rotate(-6deg)}
.phase-vocabulary .vocab-sentence-en small{color:#e0d1f1;font:900 9px 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.phase-vocabulary .vocab-sentence-en p{margin:9px 0 0!important;font:800 clamp(25px,5vw,42px)/1.45 'DM Sans',sans-serif;color:#fff!important}
.phase-vocabulary .vocab-sentence-ar{margin-top:14px;background:linear-gradient(135deg,#fff5c8,#fffaf0);border:2px solid #efcf73;box-shadow:0 5px 0 #ead9a6}
.phase-vocabulary .vocab-sentence-ar small{font-size:9px;font-weight:900;color:#916722}
.phase-vocabulary .vocab-sentence-ar p{margin:8px 0 0!important;font-size:20px;line-height:1.7;color:#55431e!important;font-weight:800}
.phase-vocabulary .vocab-image-word{--card-a:#e7f8ef;--card-b:#ffe8ef}
.phase-vocabulary .vocab-image-word>img{position:relative;z-index:2;width:100%!important;height:255px!important;object-fit:contain!important;background:linear-gradient(135deg,#fff,#f8fffb)!important;border:2px solid #b9decf;border-radius:26px!important;margin:0 0 15px!important;padding:18px;box-shadow:0 6px 0 #cfe8de}
.phase-vocabulary .vocab-image-word figcaption{position:relative;z-index:2;background:linear-gradient(135deg,#315a4d,#487a68);color:#fff;border-radius:24px;padding:18px 22px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;box-shadow:0 6px 0 #26483f}
.phase-vocabulary .vocab-image-word figcaption small{grid-column:1/-1;color:#cfeade;font-size:9px;font-weight:900}
.phase-vocabulary .vocab-image-word figcaption strong{font:900 clamp(28px,5vw,44px) 'DM Sans',sans-serif}
.phase-vocabulary .vocab-image-word figcaption span{font-size:17px;font-weight:800;color:#ffe09a}
.phase-vocabulary .vocab-speak{position:relative;z-index:3!important;margin-top:auto!important;align-self:center!important;min-width:205px;justify-content:center;display:inline-flex!important;align-items:center;gap:9px;border:2px solid #cdb6dc!important;background:linear-gradient(180deg,#fff,#f8f1ff)!important;color:#5c3c79!important;box-shadow:0 6px 0 #d4c2e0;padding:11px 18px!important}
.phase-vocabulary .vocab-speak:before{content:'AUTO';font:900 8px 'DM Sans',sans-serif;background:#dff4e7;color:#386b4c;border-radius:999px;padding:4px 7px}
.phase-vocabulary .vocab-speak:active{transform:translateY(3px);box-shadow:0 3px 0 #d4c2e0}
.phase-vocabulary .vocab-card.is-auto-speaking{animation:vocabPulse 1.15s ease-in-out infinite alternate}
.phase-vocabulary .vocab-card.is-auto-speaking .vocab-speak{background:linear-gradient(180deg,#e8fff0,#fff)!important;border-color:#83c79d!important;color:#2f6d47!important}
@keyframes vocabPulse{from{box-shadow:0 22px 55px rgba(77,54,101,.15),0 8px 0 #d6c6e3}to{box-shadow:0 25px 65px rgba(108,71,143,.22),0 8px 0 #bfa9d1}}
.phase-vocabulary .course-item-nav{max-width:720px;margin-inline:auto}
@media(max-width:700px){.phase-vocabulary .vocab-card{min-height:400px!important;border-radius:28px!important;padding:16px!important}.phase-vocabulary .vocab-flip-card{min-height:275px!important}.phase-vocabulary .vocab-image-word>img{height:225px!important}.phase-vocabulary .vocab-sentence-en p{font-size:28px}.phase-vocabulary .vocab-sentence-ar p{font-size:17px}.phase-vocabulary .vocab-card:before{width:150px;height:150px}}


/* ===== study-treasure-map-v32.css ===== */
/* v32 playful vertical treasure-map study navigation */
.treasure-study-map{--purple:#7654a5;--purple-dark:#3d3159;--pink:#ff83a7;--yellow:#ffd66b;--mint:#8ed9bb;--blue:#89c7f6;--ink:#362d49;position:relative;min-height:100dvh!important;padding:0 0 calc(118px + env(safe-area-inset-bottom))!important;overflow:hidden;background:linear-gradient(180deg,#dff4ff 0,#fff4ca 26%,#f4eaff 56%,#dff7eb 78%,#ffe7ee 100%)!important;color:var(--ink)}
.treasure-study-map:before,.treasure-study-map:after{content:'';position:absolute;pointer-events:none;border-radius:50%;filter:blur(1px);opacity:.6}.treasure-study-map:before{width:340px;height:340px;right:-180px;top:280px;background:#fff7a9}.treasure-study-map:after{width:300px;height:300px;left:-150px;top:880px;background:#dcbcff}.treasure-sky-decor{position:absolute;inset:0;pointer-events:none;overflow:hidden}.treasure-sky-decor i{position:absolute;border-radius:999px;background:#fff8;box-shadow:28px 4px 0 #fff8,54px 0 0 #fff8}.treasure-sky-decor i:nth-child(1){width:54px;height:20px;top:170px;left:7%}.treasure-sky-decor i:nth-child(2){width:65px;height:22px;top:510px;right:8%;transform:scale(.8)}.treasure-sky-decor i:nth-child(3){width:48px;height:17px;top:1060px;left:11%;transform:scale(.7)}.treasure-sky-decor i:nth-child(4){width:58px;height:20px;top:1510px;right:9%;transform:scale(.85)}.treasure-sky-decor i:nth-child(5){width:44px;height:15px;top:1940px;left:15%;transform:scale(.65)}
.treasure-map-hero,.treasure-box-hero{position:relative;z-index:2;width:min(920px,calc(100% - 32px));margin:0 auto;padding:clamp(30px,6vw,64px) clamp(22px,5vw,54px);text-align:center}.treasure-map-hero>span,.treasure-box-hero>span{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:#ffffffb8;border:1px solid #ffffffde;color:#6f5590;font:900 10px 'DM Sans',sans-serif;letter-spacing:.08em}.treasure-map-hero h1,.treasure-box-hero h1{margin:14px 0 10px;font-size:clamp(35px,7vw,65px);line-height:1.08;letter-spacing:-.035em}.treasure-map-hero p,.treasure-box-hero p{max-width:680px;margin:0 auto;color:#70677d;font-size:12px;line-height:1.9;font-weight:600}.treasure-map-hero>div{width:130px;height:130px;margin:22px auto 0;border-radius:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#7d59aa,#4d3b69);color:#fff;box-shadow:0 15px 0 #4b3864,0 24px 35px #503f691f;transform:rotate(-3deg)}.treasure-map-hero>div b{font-size:9px;color:#e6d9f3}.treasure-map-hero>div strong{font:900 48px/1 'DM Sans',sans-serif;margin-top:7px}
.treasure-levels-road{position:relative;z-index:2;width:min(860px,calc(100% - 30px));margin:10px auto 60px;padding:28px 0 90px}.treasure-levels-road:before{content:'';position:absolute;top:35px;bottom:85px;left:50%;width:8px;transform:translateX(-50%);border-radius:999px;background:repeating-linear-gradient(to bottom,#ffffffd8 0 18px,#b891d7 18px 31px,#ffffffd8 31px 49px);box-shadow:0 0 0 5px #ffffff45}.treasure-level-stop{position:relative;min-height:235px;display:flex;align-items:center}.treasure-level-stop.left{justify-content:flex-start;padding-right:18%}.treasure-level-stop.right{justify-content:flex-end;padding-left:18%}.treasure-path-dot{position:absolute;z-index:3;left:50%;top:50%;width:32px;height:32px;transform:translate(-50%,-50%);border:7px solid #fff;border-radius:50%;background:#a174c0;box-shadow:0 5px 14px #6a4e7c33}.treasure-level-stop.complete .treasure-path-dot{background:#57ae80}.treasure-level-stop.locked .treasure-path-dot{background:#b6b0b9}.treasure-level-card{width:min(560px,82%);min-height:178px;border:2px solid #ffffffc9;border-radius:36px;padding:20px;display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:17px;align-items:center;text-align:start;color:var(--ink);background:linear-gradient(145deg,#ffffffeb,#fffaf3df);box-shadow:0 17px 0 #d6bce5,0 28px 38px #54405d1b;cursor:pointer;transition:.2s cubic-bezier(.2,.8,.2,1)}.treasure-level-stop:nth-child(2) .treasure-level-card{box-shadow:0 17px 0 #e5b66a,0 28px 38px #54405d1b}.treasure-level-stop:nth-child(3) .treasure-level-card{box-shadow:0 17px 0 #76c7aa,0 28px 38px #54405d1b}.treasure-level-stop:nth-child(4) .treasure-level-card{box-shadow:0 17px 0 #74b8ea,0 28px 38px #54405d1b}.treasure-level-stop:nth-child(5) .treasure-level-card{box-shadow:0 17px 0 #ef91aa,0 28px 38px #54405d1b}.treasure-level-card:not(:disabled):hover{transform:translateY(-5px) rotate(-1deg)}.treasure-level-stop.right .treasure-level-card:not(:disabled):hover{transform:translateY(-5px) rotate(1deg)}.treasure-level-card:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.62;box-shadow:0 10px 0 #c9c5c9}.treasure-level-art{position:relative;width:86px;height:86px;border-radius:29px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#8a65b7,#634285);box-shadow:inset 0 0 0 3px #ffffff3d}.treasure-level-stop:nth-child(2) .treasure-level-art{background:linear-gradient(145deg,#ffc958,#ef9d3f)}.treasure-level-stop:nth-child(3) .treasure-level-art{background:linear-gradient(145deg,#79d6b3,#43a780)}.treasure-level-stop:nth-child(4) .treasure-level-art{background:linear-gradient(145deg,#7dc7fa,#4f91d6)}.treasure-level-stop:nth-child(5) .treasure-level-art{background:linear-gradient(145deg,#ff99b5,#e65f88)}.treasure-level-art .spark{position:absolute;width:9px;height:9px;border-radius:3px;background:#fff7aa;transform:rotate(45deg)}.treasure-level-art .s1{top:10px;right:10px}.treasure-level-art .s2{bottom:13px;left:9px;width:6px;height:6px}.treasure-level-art .s3{top:16px;left:15px;width:5px;height:5px;background:#fff}.treasure-level-copy{min-width:0}.treasure-level-copy>small{font:900 9px 'DM Sans',sans-serif;letter-spacing:.12em;color:#9a7caf}.treasure-level-copy>strong{display:block;margin:5px 0 4px;font-size:clamp(19px,3vw,29px);line-height:1.25}.treasure-level-copy>em{display:block;min-height:32px;font-style:normal;color:#817586;font-size:10px;line-height:1.6}.treasure-progress{display:block;height:8px;border-radius:999px;background:#e9e1ec;margin-top:10px;overflow:hidden}.treasure-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7955a5,#ff83a7,#ffd66b)}.treasure-level-score{text-align:center;min-width:60px}.treasure-level-score b{display:block;font:900 20px 'DM Sans',sans-serif;color:#6a4c89}.treasure-level-score small{font-size:8px;color:#9b91a0}.treasure-finish{position:absolute;bottom:0;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:13px 18px;border-radius:999px;background:#3d3159;color:#fff;box-shadow:0 9px 0 #261f39}.treasure-finish b{font-size:10px}
.treasure-map-topbar{position:sticky;top:10px;z-index:30;width:min(820px,calc(100% - 24px));margin:10px auto 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:8px;border-radius:999px;background:#ffffffd9;border:1px solid #fff;backdrop-filter:blur(12px);box-shadow:0 10px 28px #4d3d5e1a}.treasure-map-topbar>span{justify-self:end;padding-inline:12px;font:900 10px 'DM Sans',sans-serif;color:#7a6590}.treasure-levels-back,.treasure-page-nav{border:0;font:inherit;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.treasure-levels-back{justify-self:start;padding:10px 13px;border-radius:999px;background:#efe5f7;color:#684982;font-size:10px}.treasure-page-nav.previous{padding:11px 20px;border-radius:999px;background:#5c4378;color:#fff;box-shadow:0 5px 0 #392b4a;font-size:10px}.treasure-page-nav:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.7)}
.treasure-box-hero{padding-top:34px;padding-bottom:18px}.treasure-box-hero h1{font-size:clamp(31px,6vw,53px)}.treasure-ten-road{position:relative;z-index:2;width:min(780px,calc(100% - 30px));margin:18px auto 24px;padding:24px 0}.treasure-ten-road:before{content:'';position:absolute;top:38px;bottom:38px;left:50%;width:7px;transform:translateX(-50%);border-radius:999px;background:repeating-linear-gradient(to bottom,#fff 0 15px,#815fa3 15px 27px,#fff 27px 42px);opacity:.75}.treasure-box-stop{position:relative;min-height:152px;display:flex;align-items:center}.treasure-box-stop.zig-left{justify-content:flex-start;padding-right:16%}.treasure-box-stop.zig-right{justify-content:flex-end;padding-left:16%}.treasure-box-path-dot{position:absolute;left:50%;top:50%;z-index:3;width:25px;height:25px;transform:translate(-50%,-50%);border:6px solid #fff;border-radius:50%;background:#9a73bc}.treasure-box-stop.complete .treasure-box-path-dot{background:#55ad7e}.treasure-box-stop.locked .treasure-box-path-dot{background:#aaa4ae}.treasure-box-stop.checkpoint .treasure-box-path-dot{width:35px;height:35px;background:#f1ad37;box-shadow:0 0 0 8px #ffd87855}.treasure-box-card{position:relative;width:min(500px,82%);min-height:116px;border:2px solid #fff;border-radius:29px;padding:16px 18px;display:grid;grid-template-columns:70px minmax(0,1fr);gap:14px;align-items:center;text-align:start;background:#ffffffdf;color:var(--ink);box-shadow:0 12px 0 #cdb5df,0 18px 28px #503b5c16;cursor:pointer;transition:.18s}.treasure-box-card:not(:disabled):hover{transform:translateY(-3px) scale(1.015)}.treasure-box-card:disabled{opacity:.5;cursor:not-allowed;box-shadow:0 7px 0 #cbc7cd;filter:grayscale(.7)}.treasure-box-icon{width:66px;height:66px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(145deg,#895fb0,#67448a);color:#fff}.treasure-box-stop.complete .treasure-box-icon{background:linear-gradient(145deg,#6ec295,#408d68)}.treasure-box-stop.locked .treasure-box-icon{background:#d2ced5}.treasure-box-copy small{font:900 8px 'DM Sans',sans-serif;letter-spacing:.12em;color:#9674aa}.treasure-box-copy strong{display:block;margin:4px 0;font-size:18px}.treasure-box-copy em{display:block;font-style:normal;color:#857887;font-size:9px;line-height:1.55}.treasure-box-phases{display:flex;gap:5px;margin-top:9px}.treasure-box-phases i{width:25px;height:6px;border-radius:999px;background:#e1d8e4}.treasure-box-phases i.done{background:#5db183}.treasure-box-phases i.active{background:#f4b84e;box-shadow:0 0 0 3px #f4b84e2b}.treasure-box-stop.checkpoint{min-height:190px}.treasure-box-stop.checkpoint .treasure-box-card{width:min(570px,88%);min-height:152px;grid-template-columns:90px minmax(0,1fr);border-color:#fff3b9;background:linear-gradient(145deg,#fff8c7,#ffd568 48%,#ffad63 100%);box-shadow:0 15px 0 #dc8d3d,0 25px 35px #9d612a27}.treasure-box-stop.checkpoint .treasure-box-icon{width:86px;height:86px;border-radius:29px;background:linear-gradient(145deg,#6e4d94,#3d3159);box-shadow:inset 0 0 0 4px #ffffff33}.treasure-box-stop.checkpoint .treasure-box-copy small{color:#6b4b33}.treasure-box-stop.checkpoint .treasure-box-copy strong{font-size:22px;color:#4e352a}.treasure-box-stop.checkpoint .treasure-box-copy em{color:#715547;font-weight:700}.treasure-crown{position:absolute;top:-13px;right:18px;display:flex;align-items:center;gap:4px;padding:7px 10px;border-radius:999px;background:#fff;color:#d1872a;box-shadow:0 5px 12px #b36d3326}.treasure-crown b{font:900 10px 'DM Sans',sans-serif}.treasure-bottom-nav{position:relative;z-index:4;width:min(600px,calc(100% - 30px));margin:10px auto 30px;text-align:center}.treasure-page-nav.next{margin:auto;padding:14px 28px;border-radius:999px;background:linear-gradient(135deg,#7855a5,#ff789f);color:#fff;box-shadow:0 7px 0 #54386f;font-size:11px}.treasure-bottom-nav small{display:block;margin-top:12px;color:#786c7d;font-size:9px;font-weight:800}.treasure-study-map>.course-control-fab{z-index:40}
@media(max-width:700px){.treasure-map-hero,.treasure-box-hero{width:calc(100% - 20px);padding-inline:14px}.treasure-levels-road{width:calc(100% - 18px)}.treasure-level-stop{min-height:205px}.treasure-level-stop.left{padding-right:11%}.treasure-level-stop.right{padding-left:11%}.treasure-level-card{width:87%;grid-template-columns:70px minmax(0,1fr);border-radius:27px;padding:15px;gap:12px}.treasure-level-art{width:67px;height:67px;border-radius:22px}.treasure-level-score{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding-inline:5px}.treasure-level-score b{font-size:16px}.treasure-level-score small{font-size:9px}.treasure-map-topbar{grid-template-columns:auto 1fr auto;border-radius:22px;top:6px}.treasure-map-topbar>span{font-size:8px;padding-inline:3px}.treasure-levels-back{padding:9px}.treasure-page-nav.previous{padding:10px 13px}.treasure-box-stop.zig-left{padding-right:9%}.treasure-box-stop.zig-right{padding-left:9%}.treasure-box-card{width:88%;grid-template-columns:56px minmax(0,1fr);padding:13px;border-radius:24px}.treasure-box-icon{width:54px;height:54px;border-radius:18px}.treasure-box-stop.checkpoint .treasure-box-card{width:92%;grid-template-columns:68px minmax(0,1fr)}.treasure-box-stop.checkpoint .treasure-box-icon{width:65px;height:65px;border-radius:22px}.treasure-box-stop.checkpoint .treasure-box-copy strong{font-size:19px}.treasure-crown{right:10px}.treasure-ten-road{width:calc(100% - 18px)}}
@media(max-width:390px){.treasure-level-card{width:90%}.treasure-level-stop.left{padding-right:7%}.treasure-level-stop.right{padding-left:7%}.treasure-box-card{width:91%}.treasure-box-stop.zig-left{padding-right:5%}.treasure-box-stop.zig-right{padding-left:5%}.treasure-box-copy strong{font-size:16px}.treasure-box-copy em{font-size:8px}}


/* ===== study-profile-polish-v34.css ===== */
/* v34 mobile treasure-map polish + editable profile */
body:has(.treasure-study-map)>.topbar{display:none!important}
body:has(.treasure-study-map) .app-layout{min-height:100dvh}
.treasure-study-map{padding-bottom:calc(148px + env(safe-area-inset-bottom))!important}
.treasure-map-topbar{top:8px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 10px 30px rgba(56,42,77,.12)!important}
.treasure-level-card,.treasure-box-card{background:#fff!important}
.treasure-map-hero p,.treasure-box-hero p{font-size:13px!important}

/* Profile v34 */
.profile-v34{max-width:980px;padding-top:28px;padding-bottom:120px}
.profile-v34-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;padding:28px;border:1px solid #e8dcef;border-radius:34px;background:linear-gradient(135deg,#eee3ff 0%,#fff1ca 48%,#dcf7eb 100%);box-shadow:0 10px 0 #eee5f3}
.profile-v34-hero:before,.profile-v34-hero:after{content:'';position:absolute;border-radius:50%;pointer-events:none}.profile-v34-hero:before{width:170px;height:170px;right:-70px;top:-80px;background:#ff92b355}.profile-v34-hero:after{width:130px;height:130px;left:-55px;bottom:-70px;background:#71d5bd55}
.profile-v34-avatar-wrap{position:relative;z-index:1;width:132px;height:132px;border-radius:42px;padding:6px;background:linear-gradient(145deg,#8d60bd,#ff7fa4,#ffd45f);box-shadow:0 10px 0 #c9abd9,0 20px 35px #5b416726;transform:rotate(-2deg)}
.profile-v34-avatar{width:100%;height:100%;border-radius:36px;overflow:hidden;background:#fff;display:grid;place-items:center}
.profile-v34-avatar svg,.profile-v34-avatar img{width:100%;height:100%;display:block;object-fit:cover}
.profile-v34-copy{position:relative;z-index:1;min-width:0}.profile-v34-copy>span{color:#78569c;font-size:11px;font-weight:900}.profile-v34-copy h1{margin:5px 0;font-size:clamp(31px,5vw,48px);line-height:1.15}.profile-v34-copy p{margin:0;color:#736879;font-weight:650}
.profile-v34-edit{position:relative;z-index:1;border:0;border-radius:16px;padding:13px 16px;background:#342b49;color:#fff;font-weight:900;display:flex;align-items:center;gap:8px;box-shadow:0 5px 0 #241d34}
.profile-v34-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:18px}.profile-v34-facts article{padding:17px;border:1px solid #e5dce8;border-radius:20px;background:#fff;display:flex;align-items:center;gap:12px}.profile-v34-facts article>span{width:42px;height:42px;border-radius:14px;background:#f0e8f8;color:#735397;display:grid;place-items:center}.profile-v34-facts small{display:block;color:#8d8290;font-size:9px}.profile-v34-facts strong{display:block;margin-top:2px;font-size:15px}
.profile-v34-actions{margin-top:20px}
.profile-edit-v34{max-width:900px;padding-top:24px;padding-bottom:120px}.profile-edit-v34-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.profile-edit-v34-head button{border:0;border-radius:14px;background:#f0e8f8;color:#674c83;padding:11px 14px;font-weight:900;display:flex;align-items:center;gap:7px}.profile-edit-v34-head h1{margin:0;font-size:clamp(30px,5vw,44px)}
.profile-edit-v34-card{padding:24px;border:1px solid #e5dce8;border-radius:30px;background:#fff;box-shadow:0 8px 0 #f0ecf2}.profile-edit-avatar-preview{display:flex;align-items:center;gap:18px;padding:18px;border-radius:24px;background:linear-gradient(135deg,#f4edff,#fff5d8)}.profile-edit-avatar-preview .profile-v34-avatar-wrap{width:108px;height:108px;border-radius:35px}.profile-edit-avatar-preview .profile-v34-avatar{border-radius:29px}.profile-edit-avatar-preview div:last-child{display:grid;gap:8px}.profile-edit-avatar-preview strong{font-size:18px}.profile-upload-label{display:inline-flex;width:max-content;align-items:center;gap:7px;border-radius:12px;background:#342b49;color:#fff;padding:10px 13px;font-size:11px;font-weight:900;cursor:pointer}.profile-upload-label input{display:none}
.profile-avatar-picker{margin-top:22px}.profile-avatar-picker>strong{display:block;margin-bottom:10px}.profile-avatar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.profile-avatar-choice{border:2px solid transparent;border-radius:22px;padding:5px;background:#f7f3f9;aspect-ratio:1;overflow:hidden}.profile-avatar-choice svg{width:100%;height:100%;display:block;border-radius:16px}.profile-avatar-choice.selected{border-color:#7654a5;background:#efe5f7;box-shadow:0 0 0 3px #7654a51f}
.profile-fields-v34{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px}.profile-fields-v34 label{display:grid;gap:7px;color:#665b6d;font-size:10px;font-weight:900}.profile-fields-v34 input{width:100%;height:52px;border:1px solid #ddd2e3;border-radius:15px;background:#fff;padding:0 14px;font:inherit;outline:0}.profile-fields-v34 input:focus{border-color:#8a69aa;box-shadow:0 0 0 3px #8a69aa18}.profile-edit-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.profile-edit-actions button{border:0;border-radius:14px;padding:12px 18px;font-weight:900}.profile-edit-actions .cancel{background:#eee8f1;color:#675b70}.profile-edit-actions .save{background:linear-gradient(135deg,#7654a5,#9d6ac0);color:#fff;box-shadow:0 5px 0 #563c75}

@media(max-width:700px){
  .treasure-study-map{overflow:hidden!important;background:linear-gradient(180deg,#e9f7ff 0%,#fff8d8 34%,#f4eaff 67%,#e5f7ef 100%)!important}
  .treasure-study-map:before,.treasure-study-map:after{opacity:.32!important}
  .treasure-map-topbar{width:calc(100% - 16px)!important;grid-template-columns:auto minmax(96px,1fr) auto!important;gap:6px!important;padding:7px!important;border-radius:22px!important;margin-top:8px!important}
  .treasure-levels-back{padding:10px 12px!important;font-size:10px!important;white-space:nowrap}.treasure-page-nav.previous{justify-self:center!important;width:auto!important;min-width:112px!important;padding:11px 15px!important;font-size:10px!important}.treasure-map-topbar>span{justify-self:end!important;padding:0 7px!important;white-space:nowrap!important;font-size:9px!important}
  .treasure-box-hero{padding:42px 18px 20px!important}.treasure-box-hero h1{font-size:38px!important;margin-top:12px!important}.treasure-box-hero p{max-width:330px!important;font-size:12px!important;line-height:1.75!important}
  .treasure-ten-road{width:calc(100% - 18px)!important;padding:12px 0 18px!important;margin-top:8px!important}.treasure-ten-road:before{left:auto!important;right:31px!important;transform:none!important;width:6px!important;z-index:0!important}
  .treasure-box-stop,.treasure-box-stop.zig-left,.treasure-box-stop.zig-right{min-height:142px!important;justify-content:flex-start!important;padding:0 62px 0 0!important}.treasure-box-stop.checkpoint{min-height:174px!important}
  .treasure-box-path-dot{left:auto!important;right:17px!important;transform:translateY(-50%)!important;z-index:4!important}
  .treasure-box-card,.treasure-box-stop.checkpoint .treasure-box-card{width:100%!important;min-height:112px!important;border-radius:25px!important;padding:14px!important;grid-template-columns:58px minmax(0,1fr)!important;gap:12px!important;background:#fff!important;box-shadow:0 10px 0 #cfb8df,0 17px 27px #503b5c12!important;z-index:2!important}
  .treasure-box-stop.checkpoint .treasure-box-card{min-height:142px!important;background:linear-gradient(145deg,#fff8cf,#ffe171 55%,#ffbc73)!important;box-shadow:0 12px 0 #d99448,0 20px 30px #93612621!important}
  .treasure-box-icon{width:56px!important;height:56px!important;border-radius:18px!important}.treasure-box-stop.checkpoint .treasure-box-icon{width:64px!important;height:64px!important;border-radius:21px!important}
  .treasure-box-copy strong{font-size:19px!important}.treasure-box-copy em{font-size:10px!important}.treasure-crown{top:-10px!important;right:12px!important}
  .treasure-bottom-nav{margin-top:16px!important}.treasure-page-nav.next{min-width:145px!important;font-size:11px!important}
  .treasure-levels-road{width:calc(100% - 18px)!important;padding-top:10px!important}.treasure-levels-road:before{left:auto!important;right:31px!important;transform:none!important;width:6px!important;z-index:0!important}.treasure-level-stop,.treasure-level-stop.left,.treasure-level-stop.right{min-height:194px!important;justify-content:flex-start!important;padding:0 62px 0 0!important}.treasure-path-dot{left:auto!important;right:16px!important;transform:translateY(-50%)!important;z-index:4!important}.treasure-level-card{width:100%!important;min-height:160px!important;background:#fff!important;border-radius:27px!important;grid-template-columns:68px minmax(0,1fr)!important;gap:12px!important;padding:15px!important;z-index:2!important}.treasure-level-art{width:64px!important;height:64px!important;border-radius:20px!important}.treasure-level-score{grid-column:1/-1!important;padding-top:6px!important}.treasure-map-hero{padding:34px 18px 20px!important}.treasure-map-hero h1{font-size:39px!important}.treasure-map-hero>div{width:102px!important;height:102px!important;border-radius:30px!important}.treasure-map-hero>div strong{font-size:37px!important}
  .treasure-study-map>.course-control-fab{bottom:100px!important;left:16px!important}
  .profile-v34{padding:18px 14px 110px}.profile-v34-hero{grid-template-columns:auto 1fr;padding:18px;gap:14px;border-radius:28px}.profile-v34-avatar-wrap{width:92px;height:92px;border-radius:30px}.profile-v34-avatar{border-radius:25px}.profile-v34-copy h1{font-size:27px}.profile-v34-edit{grid-column:1/-1;justify-content:center;width:100%}.profile-v34-facts{grid-template-columns:1fr;gap:8px}.profile-v34-facts article{padding:13px}.profile-edit-v34{padding:18px 14px 110px}.profile-edit-v34-card{padding:16px;border-radius:25px}.profile-edit-avatar-preview{padding:14px;gap:13px}.profile-avatar-grid{grid-template-columns:repeat(5,1fr);gap:6px}.profile-avatar-choice{border-radius:16px;padding:3px}.profile-avatar-choice svg{border-radius:12px}.profile-fields-v34{grid-template-columns:1fr}.profile-edit-actions{display:grid;grid-template-columns:1fr 1fr}.profile-edit-actions button{width:100%}
}


/* ===== content-delete-v35.css ===== */
/* v35 delete-content controls */
.course-delete-content-entry{border:1px solid #f1cfd7!important;background:linear-gradient(135deg,#fff7f8,#fff0f2)!important;color:#7b3143!important}
.course-delete-content-entry>b{background:#b84f69!important;color:#fff!important}
.course-delete-content-entry strong{color:#8e3a50!important}
.course-delete-content-entry small{color:#9a6d78!important}
.delete-content-modal-v35{position:fixed;z-index:160;inset:0;display:grid;align-items:end;justify-items:center;padding:18px;background:#261d3382;backdrop-filter:blur(7px)}
.delete-content-backdrop-v35{position:absolute;inset:0;border:0;background:transparent}
.delete-content-modal-v35>section{position:relative;z-index:2;width:min(680px,100%);max-height:min(86dvh,820px);overflow:auto;border:1px solid #eadde2;border-radius:30px 30px 24px 24px;background:#fff;box-shadow:0 28px 70px #271d363d}
.delete-content-modal-v35 header{position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 22px 17px;background:#fff;border-bottom:1px solid #f0e8eb}
.delete-content-modal-v35 header small{color:#9d6575;font-size:10px;font-weight:900}.delete-content-modal-v35 header h2{margin:5px 0 4px;font-size:27px;color:#3c2f40}.delete-content-modal-v35 header p{margin:0;color:#85747a;font-size:11px;line-height:1.65}.delete-content-modal-v35 header>button{width:38px;height:38px;border:1px solid #e7dce0;border-radius:13px;background:#faf7f8;color:#744e5c;font-size:25px;line-height:1}
.delete-content-form-v35{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px 22px}.delete-content-form-v35>label{display:grid;gap:7px;color:#695963;font-size:10px;font-weight:900}.delete-content-form-v35 select{width:100%;height:47px;border:1px solid #ded2d7;border-radius:14px;background:#fff;padding:0 13px;color:#493c48;font:inherit}
.delete-scope-v35{grid-column:1/-1;display:grid;gap:8px}.delete-scope-v35>span{font-size:10px;font-weight:900;color:#695963}.delete-scope-v35>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.delete-scope-v35 button{min-height:43px;border:1px solid #e3d7dc;border-radius:13px;background:#fff;color:#755d68;font-size:10px;font-weight:900}.delete-scope-v35 button.active{border-color:#b85169;background:#b85169;color:#fff;box-shadow:0 4px 0 #8d3e51}
#delete-content-scope-fields-v35{grid-column:1/-1}#delete-content-scope-fields-v35>label{display:grid;gap:7px;font-size:10px;font-weight:900;color:#695963}#delete-content-scope-fields-v35>p{margin:0;padding:13px 15px;border-radius:14px;background:#faf4f6;color:#795b65;font-size:11px;line-height:1.6}
.delete-multi-head-v35{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#695963;font-size:10px;font-weight:900}.delete-multi-head-v35 button{border:1px solid #ded2d7;border-radius:999px;background:#fff;padding:8px 11px;color:#8f4c5d;font-size:9px;font-weight:900}
.delete-box-grid-v35{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}.delete-box-grid-v35 label{position:relative}.delete-box-grid-v35 input{position:absolute;opacity:0;pointer-events:none}.delete-box-grid-v35 span{height:38px;border:1px solid #e7dce0;border-radius:10px;background:#fff;display:grid;place-items:center;font:800 9px 'DM Sans',sans-serif;color:#735e68}.delete-box-grid-v35 input:checked+span{background:#b85169;border-color:#b85169;color:#fff;box-shadow:0 3px 0 #8d3e51}
.delete-warning-v35{grid-column:1/-1;margin:0!important;padding:13px 15px;border:1px solid #f0d0d8;border-radius:14px;background:#fff6f7;color:#94465a!important;font-size:10px!important;line-height:1.65!important;font-weight:700}
.delete-content-modal-v35 footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:9px;padding:15px 22px calc(15px + env(safe-area-inset-bottom));border-top:1px solid #f0e8eb;background:#fff}.delete-content-modal-v35 footer button{min-height:44px;border:1px solid #e0d4d9;border-radius:13px;background:#fff;padding:0 17px;font-weight:900;color:#65515a}.delete-content-modal-v35 footer .danger{border-color:#b85169;background:#b85169;color:#fff;box-shadow:0 4px 0 #8c3c50}
@media(max-width:600px){.delete-content-modal-v35{padding:0;align-items:end}.delete-content-modal-v35>section{width:100%;max-height:88dvh;border-radius:28px 28px 0 0}.delete-content-form-v35{grid-template-columns:1fr;padding:17px}.delete-scope-v35,#delete-content-scope-fields-v35,.delete-warning-v35{grid-column:1}.delete-box-grid-v35{grid-template-columns:repeat(5,1fr)}.delete-content-modal-v35 header{padding:19px 17px 15px}.delete-content-modal-v35 footer{padding-inline:17px}.delete-content-modal-v35 footer button{flex:1;padding-inline:10px}}


/* ===== literacy-fastwrite-v36.css ===== */
/* v36 letters, numbers, handwriting and fast-writing UI */
.lit36{max-width:980px;margin:0 auto;padding:28px 18px calc(125px + env(safe-area-inset-bottom));min-height:100dvh;color:#2f2940;background:linear-gradient(180deg,#fff9ef 0,#f4efff 47%,#eefaf5 100%)}
.lit36-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.lit36-head>button{border:0;border-radius:999px;padding:11px 15px;background:#fff;color:#654c80;font-weight:900;display:flex;align-items:center;gap:7px;box-shadow:0 5px 0 #eadff1}.lit36-head>div{text-align:end}.lit36-head small{font-size:10px;color:#907da0;font-weight:900}.lit36-head h1{margin:3px 0;font-size:clamp(28px,5vw,45px)}
.lit36-progress{max-width:660px;margin:14px auto 22px;display:flex;align-items:center;gap:12px}.lit36-progress>span{font:900 12px 'DM Sans',sans-serif;color:#75568f}.lit36-progress>i{height:9px;flex:1;background:#e8e0ec;border-radius:999px;overflow:hidden}.lit36-progress>i>b{display:block;height:100%;background:linear-gradient(90deg,#7655a5,#ff87a6,#f3c855);border-radius:inherit}
.lit36-card-wrap{display:grid;justify-items:center;gap:16px}.lit36-flip{width:min(520px,92vw);height:min(440px,58vh);min-height:320px;border:0;background:transparent;position:relative;perspective:1200px;cursor:pointer}.lit36-face{position:absolute;inset:0;border-radius:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;backface-visibility:hidden;transition:transform .48s cubic-bezier(.2,.8,.2,1);border:3px solid #fff;box-shadow:0 18px 0 #d8c0e6,0 28px 45px #47365d1c}.lit36-face.front{background:radial-gradient(circle at 18% 17%,#fff7ab 0 8%,transparent 8.5%),radial-gradient(circle at 83% 80%,#9be0c4 0 10%,transparent 10.5%),linear-gradient(145deg,#ffddea,#e9ddff 52%,#fff0a9)}.lit36-face.back{background:linear-gradient(145deg,#dff4ff,#efffe8 55%,#fff5c8);transform:rotateY(180deg);box-shadow:0 18px 0 #b9ddd0,0 28px 45px #47365d1c}.lit36-flip.flipped .front{transform:rotateY(180deg)}.lit36-flip.flipped .back{transform:rotateY(360deg)}.lit36-face b{font:900 clamp(92px,22vw,190px)/.9 'DM Sans',sans-serif;color:#211b2c;letter-spacing:-.06em}.lit36-face.back b{font-size:clamp(54px,11vw,105px);letter-spacing:-.035em}.lit36-face small{font-weight:900;color:#6f657b}.lit36-sound{border:0;border-radius:999px;padding:12px 18px;background:#342a48;color:#fff;font-weight:900;display:inline-flex;align-items:center;gap:8px;box-shadow:0 6px 0 #20192e}.lit36-sound.big{width:78px;height:78px;border-radius:27px;justify-content:center;padding:0}
.lit36-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:520px;margin:24px auto}.lit36 button.primary,.lit36-nav button{min-height:52px;border:0;border-radius:17px;padding:12px 18px;font-weight:900;background:#fff;color:#5d4d69}.lit36 button.primary,.lit36-nav .primary{background:linear-gradient(135deg,#7655a5,#9f6ac1);color:#fff;box-shadow:0 6px 0 #583d73}.lit36-nav button:disabled,.lit36 button:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}
.lit36-practice-head{text-align:center;max-width:620px;margin:0 auto 15px}.lit36-practice-head>strong{display:block;font:900 64px 'DM Sans',sans-serif;color:#2a2335;margin:11px 0 2px}.lit36-practice-head p{margin:5px 0;color:#766d7d;font-weight:700}.lit36-canvas-card{position:relative;width:min(620px,92vw);aspect-ratio:1;margin:auto;border-radius:38px;background:linear-gradient(145deg,#fff,#fffaf0);border:3px solid #fff;box-shadow:0 15px 0 #dfcce9,0 26px 42px #4d3a6018;overflow:hidden}.lit36-canvas-card canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;z-index:2}.lit36-shadow{position:absolute;inset:0;display:grid;place-items:center;font:900 clamp(190px,48vw,390px)/1 'DM Sans',sans-serif;color:#20192d0f;-webkit-text-stroke:4px #20192d18;z-index:1;user-select:none}.lit36-draw-actions{max-width:620px;margin:20px auto;display:grid;grid-template-columns:1fr 2fr;gap:11px}.lit36-draw-actions button{border:0;border-radius:17px;min-height:54px;font-weight:900;background:#fff;color:#654f72}
.lit36-one-card,.lit36-finish,.fast36-result{max-width:620px;margin:30px auto;padding:34px 26px;border-radius:34px;background:linear-gradient(145deg,#fff,#f7f1ff);box-shadow:0 12px 0 #ddcae8;text-align:center;border:2px solid #fff}.lit36-one-card>strong{display:block;font:900 clamp(100px,25vw,190px)/1 'DM Sans',sans-serif;color:#211b2c;margin:18px 0}.lit36-one-card p{color:#766c7b;line-height:1.8}.lit36-mic{border:0;border-radius:999px;padding:13px 19px;background:#eef0f5;color:#5c5366;font-weight:900;display:inline-flex;align-items:center;gap:8px}.lit36-mic.active{background:#ffe5ec;color:#b54667;box-shadow:0 0 0 7px #ff91ad24}.lit36-one-card>small{display:block;min-height:26px;margin:12px 0;color:#6c6073}.lit36-stage-next{width:100%;margin-top:8px}.lit36-finish>span{width:90px;height:90px;border-radius:30px;margin:auto;display:grid;place-items:center;background:#fff0a7;font-size:42px;color:#926d13;transform:rotate(-5deg)}.lit36-finish h2{font-size:36px;margin:18px 0 5px}.lit36-finish p{color:#786f7c}.lit36-finish>div,.fast36-result>div{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:20px}.lit36-finish>div button,.fast36-result>div button{min-height:52px;border:0;border-radius:17px;font-weight:900;background:#fff;color:#65536f}.fast36-result>div{grid-template-columns:repeat(3,1fr)}
.fast36-picker{max-width:760px;margin:auto}.fast36-articles{display:grid;gap:10px}.fast36-articles button{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:12px;text-align:start;border:2px solid transparent;border-radius:22px;background:#fff;padding:15px;color:#332b40}.fast36-articles button.active{border-color:#805fa2;background:#f5eeff;box-shadow:0 6px 0 #d8c7e6}.fast36-articles span{width:44px;height:44px;border-radius:15px;background:#eee7f5;display:grid;place-items:center;font:900 11px 'DM Sans'}.fast36-articles p{margin:0;font:700 16px/1.6 'DM Sans',sans-serif}.fast36-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.fast36-mode button{min-height:58px;border:2px solid #e5dce9;border-radius:18px;background:#fff;color:#63546e;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px}.fast36-mode button.active{background:#352c49;color:#fff;border-color:#352c49}.fast36-start{width:100%}
.fast36-challenge{max-width:760px;margin:auto}.fast36-target{direction:ltr;text-align:left;padding:24px;border-radius:28px;background:#111017;color:#fff;font:800 clamp(22px,4vw,34px)/1.7 'DM Sans',monospace;letter-spacing:.01em;box-shadow:0 10px 0 #282132;min-height:180px}.fast36-target span.pending{color:#ffffff24}.fast36-target span.correct{color:#f8f8f8}.fast36-target span.wrong{color:#ff5d69;text-decoration:underline;text-decoration-thickness:3px}.fast36-target span.fixed{color:#52d389}.fast36-challenge textarea{width:100%;min-height:145px;margin-top:18px;border:2px solid #ded3e4;border-radius:22px;padding:18px;font:700 19px/1.7 'DM Sans',sans-serif;resize:vertical;outline:0;background:#fff}.fast36-challenge textarea:focus{border-color:#8c69ac;box-shadow:0 0 0 4px #8c69ac16}.fast36-count{display:flex;justify-content:flex-end;gap:5px;margin:10px 4px;color:#887b90}.fast36-count b{font:900 17px 'DM Sans'}.fast36-challenge>.primary{width:100%}.fast36-speech-box{margin-top:18px;padding:22px;border-radius:24px;background:#fff;text-align:center}.fast36-speech-box p{min-height:60px;font:700 18px/1.6 'DM Sans';color:#4b4252}.fast36-result>strong{display:block;font:900 76px/1 'DM Sans';color:#7655a5}.fast36-result h2{font-size:32px;margin:13px 0 5px}.fast36-result p{color:#776d7e}
@media(max-width:600px){.lit36{padding:18px 12px calc(112px + env(safe-area-inset-bottom))}.lit36-head{align-items:flex-start}.lit36-head h1{font-size:27px}.lit36-flip{height:390px}.lit36-face{border-radius:31px}.lit36-canvas-card{border-radius:29px}.fast36-result>div{grid-template-columns:1fr}.fast36-articles p{font-size:14px}.fast36-target{padding:18px;font-size:22px}.lit36-one-card,.lit36-finish,.fast36-result{padding:27px 17px;border-radius:28px}}


/* ===== literacy-flow-fix-v37.css ===== */
/* v37 exact literacy-stage presentation. */
.lit37-practice-flip{position:relative;width:min(620px,92vw);min-height:620px;margin:0 auto 20px;perspective:1400px}
.lit37-practice-face,.lit37-practice-back{position:absolute;inset:0;border-radius:38px;border:3px solid #fff;backface-visibility:hidden;transition:transform .5s cubic-bezier(.2,.8,.2,1);box-shadow:0 15px 0 #dfcce9,0 26px 42px #4d3a6018;overflow:hidden}
.lit37-practice-face{display:grid;place-items:center;align-content:center;gap:20px;background:radial-gradient(circle at 18% 18%,#fff2a8 0 8%,transparent 8.5%),radial-gradient(circle at 82% 78%,#9fe2c5 0 10%,transparent 10.5%),linear-gradient(145deg,#ffdce9,#eadfff 55%,#fff2b4)}
.lit37-practice-face small{font-weight:900;color:#6f657b}.lit37-practice-face strong{font:900 clamp(150px,38vw,330px)/.9 'DM Sans',sans-serif;color:#111;letter-spacing:-.06em}.lit37-practice-face button{border:0;border-radius:999px;padding:13px 20px;background:#30263f;color:#fff;font-weight:900;box-shadow:0 6px 0 #1e1728}
.lit37-practice-back{transform:rotateY(180deg);background:linear-gradient(145deg,#fff,#fffaf0);display:flex;flex-direction:column}
.lit37-practice-flip.show-back .lit37-practice-face{transform:rotateY(180deg)}.lit37-practice-flip.show-back .lit37-practice-back{transform:rotateY(360deg)}
.lit37-practice-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#ffffffd9;border-bottom:1px solid #eee5f0;z-index:4}.lit37-practice-tools>span{font-size:12px;color:#706775;font-weight:800;text-align:end}.lit37-practice-back .lit36-canvas-card{width:100%;height:100%;aspect-ratio:auto;margin:0;border:0;border-radius:0;box-shadow:none;flex:1}
.lit37-audio-only{padding:18px;border-radius:24px;background:#fff;border:1px solid #eadff0;box-shadow:0 7px 0 #e7dceb}.lit37-audio-only .lit36-sound{margin-bottom:10px}.lit37-audio-speaking{padding-top:54px!important}.lit37-audio-speaking>.lit36-sound.big{margin:0 auto 18px}.lit37-audio-speaking:before{content:'♪';display:grid;place-items:center;width:90px;height:90px;margin:0 auto 20px;border-radius:30px;background:linear-gradient(145deg,#7b5aa2,#4a385e);color:#fff;font-size:42px;box-shadow:0 9px 0 #382a49}
.fast36-articles button p{color:#312b38;text-shadow:0 1px 0 #fff;font-family:'DM Sans',ui-monospace,monospace}.fast36-articles button:not(.active) p{color:#312b3859}.fast36-articles button.active p{color:#17131f;font-weight:900}
@media(max-width:600px){.lit37-practice-flip{min-height:520px}.lit37-practice-face,.lit37-practice-back{border-radius:30px}.lit37-practice-tools{align-items:flex-start;flex-direction:column}.lit37-practice-face strong{font-size:clamp(140px,45vw,230px)}}

/* ===== literacy-typewriter-v38.css ===== */
/* v38: old-typewriter fast writing/speaking redesign */
.fast38-page{max-width:none!important;padding-top:18px!important;background:radial-gradient(circle at 12% 12%,#fff5d9 0 11%,transparent 11.5%),radial-gradient(circle at 88% 18%,#ecdfff 0 13%,transparent 13.5%),linear-gradient(180deg,#f7efe2 0%,#f1e8dc 42%,#e9e5f1 100%)!important;color:#2b2632}
.fast38-head{max-width:980px;margin:0 auto 18px;padding-inline:8px}.fast38-head h1{font-family:'Readex Pro',sans-serif;font-size:clamp(30px,5vw,48px);letter-spacing:-.03em}.fast38-head small{font-size:11px;color:#7c6e80}
.fast38-machine{width:min(920px,calc(100% - 20px));margin:0 auto}.fast38-machine-bar{position:relative;z-index:3;height:62px;border-radius:28px 28px 14px 14px;background:linear-gradient(180deg,#312b36,#17141c);box-shadow:0 9px 0 #0d0b11,0 18px 35px #352b3b30;color:#e8dece;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:0 18px;border:1px solid #504754}.fast38-machine-bar>b{text-align:center;font:800 11px/1 'DM Sans',sans-serif;letter-spacing:.17em}.fast38-reel{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle,#a59b88 0 16%,#3d3740 17% 36%,#0f0e12 37% 57%,#716a61 58% 64%,#17151b 65%);box-shadow:inset 0 0 0 1px #ffffff17}.fast38-reel.right{justify-self:end}
.fast38-paper{position:relative;min-height:420px;margin:-5px 18px 0;padding:34px 26px 26px;border-radius:0 0 34px 34px;background:linear-gradient(90deg,#f4ecd8 0 2%,#fffdf5 2% 98%,#f4ecd8 98%);box-shadow:0 16px 0 #c2b5a2,0 28px 48px #4e43351f;border-inline:1px solid #ded1bd;overflow:hidden}.fast38-paper:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0 7%,#d8a7a43f 7% 7.3%,transparent 7.3%),repeating-linear-gradient(0deg,transparent 0 44px,#b9b0a233 44px 45px)}.fast38-paper-rule{position:absolute;top:45px;bottom:22px;left:50%;width:1px;background:#9b8b7540;opacity:.4}
.fast38-window{position:relative;height:176px;overflow:hidden;border-radius:18px;background:#fffdf8e8;border:1px solid #d8cebf;box-shadow:inset 0 2px 12px #766a5713;display:flex;align-items:center;direction:ltr}.fast38-window:before,.fast38-window:after{content:'';position:absolute;top:0;bottom:0;width:48px;z-index:4;pointer-events:none}.fast38-window:before{left:0;background:linear-gradient(90deg,#fffdf8,transparent)}.fast38-window:after{right:0;background:linear-gradient(-90deg,#fffdf8,transparent)}
.fast38-track{min-width:max-content;padding-inline:46%;transition:transform .12s linear;transform:translateX(calc(var(--shift,0) * -1ch))}.fast38-overlay{white-space:pre;font:900 clamp(31px,5vw,48px)/1.4 'DM Sans',ui-monospace,monospace;letter-spacing:.01em;color:#17141a}.fast38-char{display:inline-block;min-width:.55ch}.fast38-char.pending{color:#17141a24;text-shadow:0 1px 0 #fff}.fast38-char.correct{color:#121014}.fast38-char.wrong{color:#d92f45;background:#ffe1e5;border-radius:3px}.fast38-char.fixed{color:#188b4d}.fast38-char.auto{color:#4c3d59}.fast38-caret{position:absolute;left:50%;top:26px;bottom:26px;width:2px;background:#684d78;z-index:5;box-shadow:0 0 0 3px #684d7813;animation:fast38Blink .8s steps(1) infinite}@keyframes fast38Blink{50%{opacity:.25}}
#fast38-input{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.fast38-tip{position:relative;z-index:2;margin:20px 2px 0;padding:12px 14px;border-radius:14px;background:#f4eee3;color:#6d6257;font-size:11px;font-weight:800;line-height:1.7}.fast38-bottom{width:min(920px,calc(100% - 20px));margin:22px auto 0;display:grid;grid-template-columns:auto minmax(220px,360px);gap:14px;align-items:center}.fast38-counter{display:flex;gap:6px;align-items:baseline;padding:11px 15px;border-radius:999px;background:#ffffffa8;border:1px solid #fff;color:#746877}.fast38-counter b{font:900 24px 'DM Sans',sans-serif;color:#3d3543}.fast38-bottom>.primary{width:100%;min-height:58px!important;border-radius:19px!important;background:linear-gradient(135deg,#4d4059,#796083)!important;box-shadow:0 7px 0 #332a3a!important}
.fast38-speech-controls{position:relative;z-index:2;margin-top:24px;padding:22px;border-radius:24px;background:linear-gradient(145deg,#f8f1e7,#efe7f4);border:1px solid #ded2dc;text-align:center}.fast38-mic{border:0;border-radius:999px;padding:13px 20px;background:#322b3a;color:#fff;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 6px 0 #1d1822}.fast38-mic.active{background:#b63d61;box-shadow:0 6px 0 #77243d,0 0 0 8px #df75951f}.fast38-speech-controls p{min-height:56px;margin:18px 0 8px;padding:12px 14px;border-radius:15px;background:#fff;color:#322b36;text-align:left;font:700 17px/1.6 'DM Sans',sans-serif}.fast38-speech-controls small{display:block;color:#786c78;font-size:10px;line-height:1.7;font-weight:800}
.lit38-final{max-width:900px!important;background:radial-gradient(circle at 20% 10%,#fff2be 0 10%,transparent 10.5%),linear-gradient(180deg,#f8f0ff,#eef9f4)!important}.lit38-final-card{width:min(620px,92vw);margin:34px auto;padding:34px 24px;border-radius:38px;background:linear-gradient(145deg,#fff8cf,#eadfff 55%,#dff4eb);box-shadow:0 14px 0 #c9b6d9,0 26px 42px #44364e1c;border:3px solid #fff;text-align:center}.lit38-final-card>span{display:inline-block;padding:7px 11px;border-radius:999px;background:#ffffffb5;color:#725884;font-size:10px;font-weight:900}.lit38-final-card>strong{display:block;margin:24px auto 15px;font:900 clamp(130px,35vw,240px)/.9 'DM Sans',sans-serif;color:#1b1720;text-shadow:0 7px 0 #ffffff8c}.lit38-final-card>p{max-width:460px;margin:0 auto 20px;color:#6d6171;line-height:1.8;font-weight:700}.lit38-final-card>small{display:block;min-height:30px;margin:15px 0;color:#594c62}.lit38-final-card>.primary{width:100%}
@media(max-width:600px){.fast38-page{padding-inline:8px!important}.fast38-machine{width:100%}.fast38-machine-bar{height:54px;border-radius:24px 24px 12px 12px;padding-inline:13px}.fast38-paper{margin-inline:7px;padding:22px 13px 18px;min-height:390px}.fast38-window{height:170px}.fast38-track{padding-inline:43%}.fast38-overlay{font-size:33px}.fast38-tip{font-size:10px}.fast38-bottom{grid-template-columns:1fr;width:100%}.fast38-counter{justify-self:start}.fast38-speech-controls{padding:17px}.lit38-final-card{padding:28px 16px;border-radius:31px}.lit38-final-card>strong{font-size:42vw}}


/* ===== literacy-request-audit-v39.css ===== */
/* v39: exact-request audit styling */
.fast38-window{background:repeating-linear-gradient(to bottom,#fffdf8 0 50px,#d8cfbf55 50px 51px)!important}
#fast38-input.fast39-input-overlay{position:absolute!important;inset:0!important;left:0!important;width:100%!important;height:100%!important;z-index:8!important;opacity:.015!important;background:transparent!important;border:0!important;outline:0!important;resize:none!important;color:transparent!important;caret-color:transparent!important;padding:0!important;margin:0!important;font-size:16px!important;line-height:1!important;-webkit-text-fill-color:transparent!important}
.fast38-window:focus-within{box-shadow:inset 0 0 0 2px #735783,0 0 0 5px #73578316}
.fast38-overlay{word-spacing:.04em}.fast38-char{transition:color .09s linear,background .09s linear}
.fast39-auto-punctuation{margin-top:12px;padding:9px 11px;border-radius:12px;background:#e8f5eb;color:#39724e;font:800 10px/1.6 'DM Sans',sans-serif;direction:ltr}
.lit38-final-card [data-lit36="mic"]{min-width:190px}
@media(max-width:600px){.fast38-window{height:184px}.fast39-auto-punctuation{font-size:9px}.lit38-final-card [data-lit36="mic"]{width:100%}}


/* ===== home-literacy-redesign-v40.css ===== */
/* v40: colorful home dashboard and playful letter/number flashcards. */
.home-v28.home-v40{max-width:1240px;padding:26px 18px 120px;position:relative}
.home-v40 .home-greeting{position:relative;overflow:hidden;grid-template-columns:minmax(0,1.15fr) 270px;gap:18px;padding:10px;border-radius:34px;background:linear-gradient(135deg,#302647 0%,#6d4e9b 48%,#e377a3 100%);box-shadow:0 14px 0 #d9c8e5,0 28px 48px #4a355a22}
.home-v40 .home-greeting-copy{position:relative;z-index:2;border:0;box-shadow:none;background:transparent;color:#fff;padding:28px 30px}
.home-v40 .home-greeting-copy>span{display:inline-flex;padding:7px 11px;border-radius:999px;background:#ffffff1e;color:#fff1c5;font-size:10px;letter-spacing:.02em}
.home-v40 .home-greeting-copy h1{color:#fff;margin:9px 0 8px;font-size:clamp(38px,5vw,64px);letter-spacing:-.035em}
.home-v40 .home-greeting-copy p{color:#f4edf8;max-width:620px;font-size:14px}
.home-v40 .home-status-mini{position:relative;z-index:2;border:1px solid #ffffff45;background:#ffffff17;backdrop-filter:blur(12px);margin:10px;border-radius:27px;box-shadow:inset 0 0 0 1px #ffffff13}
.home-v40 .home-status-mini strong{font-size:48px}.home-v40 .home-status-mini i{background:#ffffff2b}.home-v40 .home-status-mini i u{background:linear-gradient(90deg,#ffe474,#8ee7c0,#ff9bbb)}
.home-v40-orbit{position:absolute;border-radius:50%;border:2px solid #ffffff18;pointer-events:none}.home-v40-orbit.o1{width:290px;height:290px;right:-95px;top:-110px}.home-v40-orbit.o2{width:180px;height:180px;left:38%;bottom:-125px}.home-v40-star{position:absolute;color:#ffe783;z-index:1;font-size:28px;opacity:.8}.home-v40-star.s1{left:45%;top:21px;transform:rotate(18deg)}.home-v40-star.s2{left:39%;bottom:24px;font-size:17px;color:#b8f1d8}
.home-v40-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 6px}.home-v40-overview article{min-width:0;padding:15px 16px;border-radius:21px;background:#fff;border:1px solid #e8dfea;box-shadow:0 6px 0 #f0eaf4;display:flex;align-items:center;gap:12px}.home-v40-overview article>span{width:43px;height:43px;border-radius:15px;display:grid;place-items:center;background:#f1e8ff;color:#7855a0}.home-v40-overview article:nth-child(2)>span{background:#e9f7ef;color:#4c9a6c}.home-v40-overview article:nth-child(3)>span{background:#fff3cc;color:#a57919}.home-v40-overview div{min-width:0;display:grid;gap:2px}.home-v40-overview small{font-size:9px;color:#8c8192;font-weight:800}.home-v40-overview strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v40 .home-section{margin-top:30px;padding:24px;border-radius:31px;background:linear-gradient(180deg,#fff,#fbf8ff);border:1px solid #e8dfea;box-shadow:0 9px 0 #f0eaf4}.home-v40 .home-section-head{margin-bottom:18px}.home-v40 .home-section-head h2{font-size:clamp(26px,3vw,38px)}.home-v40 .home-actions-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.home-v40 .home-action{min-height:134px;border:0;border-radius:25px;padding:17px;grid-template-columns:1fr;align-content:space-between;box-shadow:0 7px 0 #e5d9eb;position:relative;overflow:hidden}.home-v40 .home-action>svg{position:absolute;inset-inline-end:15px;top:15px}.home-v40 .home-action-icon{width:54px;height:54px;border-radius:18px}.home-v40 .home-action strong{font-size:14px}.home-v40 .home-action small{font-size:9px}.home-v40 .home-action.primary{background:linear-gradient(145deg,#7250a2,#9a68c2);box-shadow:0 7px 0 #563b79}.home-v40 .home-action.chat{background:linear-gradient(145deg,#e9ddff,#f7efff)}.home-v40 .home-action.call{background:linear-gradient(145deg,#ffe6c8,#fff2df)}.home-v40 .home-action.review{background:linear-gradient(145deg,#def4e7,#edf9f1)}.home-v40 .home-action:nth-child(5){background:#fff1b9}.home-v40 .home-action:nth-child(6){background:#dff4ff}.home-v40 .home-action:nth-child(7){background:#ffe6ee}
.home-v40 .home-progress-card{border:0;border-radius:32px;box-shadow:0 9px 0 #ece6ef;background:linear-gradient(145deg,#ffffff,#fcf9ff)}

.lit36.lit40-learn-page{max-width:none;background:radial-gradient(circle at 8% 12%,#fff0a8 0 8%,transparent 8.5%),radial-gradient(circle at 91% 17%,#ccecff 0 10%,transparent 10.5%),radial-gradient(circle at 18% 82%,#d7f5e5 0 12%,transparent 12.5%),linear-gradient(180deg,#fff9ef 0%,#f5efff 50%,#eef9f4 100%);padding-top:22px}
.lit40-learn-page .lit36-head{max-width:900px;margin-inline:auto}.lit40-learn-page .lit36-head>button{background:#fff;border:1px solid #eadfed;box-shadow:0 5px 0 #ded0e7}.lit40-learn-page .lit36-head h1{font-size:clamp(32px,5vw,52px);letter-spacing:-.035em}.lit40-learn-page .lit36-progress{padding:10px 14px;border-radius:999px;background:#ffffffb8;box-shadow:0 5px 0 #e9e0ed}.lit40-learn-page .lit36-progress>i{background:#e9e1ec}.lit40-learn-page .lit36-progress>i>b{background:linear-gradient(90deg,#7655a5,#ff89ad,#ffd362)}
.lit40-card-caption{display:flex;align-items:center;justify-content:space-between;width:min(520px,92vw);padding:0 4px;color:#796b83}.lit40-card-caption b{font:900 12px 'DM Sans',sans-serif;padding:7px 11px;border-radius:999px;background:#fff;box-shadow:0 4px 0 #e7dce9}.lit40-card-caption span{font-size:10px;font-weight:900}
.lit40-flashcard{height:min(470px,61vh)!important;min-height:350px!important}.lit40-flashcard .lit36-face{border-radius:48px!important;border:4px solid #fff!important;overflow:hidden;box-shadow:0 21px 0 #cdb4df,0 34px 55px #47345c22!important}.lit40-flashcard .lit36-face.front{background:linear-gradient(145deg,#ffe7f0 0%,#eadfff 44%,#fff1a8 100%)!important}.lit40-learn-page.numbers .lit40-flashcard .lit36-face.front{background:linear-gradient(145deg,#dff5ff 0%,#dff4e9 44%,#fff1ad 100%)!important}.lit40-flashcard .lit36-face.back{background:linear-gradient(145deg,#ffffff 0%,#eefcff 45%,#efffe9 100%)!important;box-shadow:0 21px 0 #afd9ca,0 34px 55px #47345c22!important}.lit40-flashcard .lit36-face b{position:relative;z-index:3;font-size:clamp(120px,28vw,225px)!important;color:#251c33!important;text-shadow:0 7px 0 #ffffffa3;letter-spacing:-.07em!important}.lit40-flashcard .lit36-face.back b{font-size:clamp(62px,14vw,120px)!important;letter-spacing:-.04em!important}.lit40-flashcard .lit36-face small{position:relative;z-index:3;padding:8px 12px;border-radius:999px;background:#ffffffa6;color:#655771}.lit40-card-label{position:absolute;z-index:4;top:22px;inset-inline-start:22px;padding:8px 12px;border-radius:999px;background:#302647;color:#fff;font-size:9px;font-weight:900;letter-spacing:.02em}.lit40-card-label.alt{background:#37765d}.lit40-bubble{position:absolute;border-radius:50%;z-index:1}.lit40-bubble.b1{width:110px;height:110px;background:#ff8eb34a;right:-18px;top:54px}.lit40-bubble.b2{width:70px;height:70px;background:#82d9b95a;left:32px;bottom:38px}.lit40-bubble.b3{width:34px;height:34px;background:#ffe56f;right:56px;bottom:54px;box-shadow:0 0 0 10px #ffffff35}.lit40-squiggle{position:absolute;right:28px;bottom:25px;font:900 70px/1 'DM Sans';color:#8b6bab2a;transform:rotate(-10deg)}.lit40-learn-page .lit36-sound{background:linear-gradient(135deg,#332847,#72539a);box-shadow:0 7px 0 #20192e;padding:13px 20px}.lit40-learn-page .lit36-nav{max-width:520px;gap:10px}.lit40-learn-page .lit36-nav button{border-radius:19px;box-shadow:0 5px 0 #e4dbe8}.lit40-learn-page .lit36-nav .primary{box-shadow:0 6px 0 #573c74;background:linear-gradient(135deg,#7250a0,#a36cc2)}
@media(max-width:850px){.home-v40 .home-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-v40-overview{grid-template-columns:1fr 1fr}.home-v40-overview article:last-child{grid-column:1/-1}.home-v40 .home-greeting{grid-template-columns:1fr}.home-v40 .home-status-mini{margin-top:0}}
@media(max-width:520px){.home-v28.home-v40{padding-inline:12px}.home-v40 .home-greeting{border-radius:28px}.home-v40 .home-greeting-copy{padding:23px 20px}.home-v40 .home-greeting-copy h1{font-size:39px}.home-v40-overview{grid-template-columns:1fr}.home-v40-overview article:last-child{grid-column:auto}.home-v40 .home-section{padding:17px;border-radius:26px}.home-v40 .home-actions-grid{grid-template-columns:1fr 1fr}.home-v40 .home-action{min-height:124px;padding:14px}.home-v40 .home-action-icon{width:47px;height:47px}.lit40-card-caption{font-size:9px}.lit40-flashcard{height:405px!important}.lit40-flashcard .lit36-face{border-radius:34px!important}.lit40-card-label{top:16px;inset-inline-start:16px}}

/* ===== frontend/features/learning-experience.css ===== */
/* Learning experience v43. Loaded last so it can safely correct legacy presentation. */

/* Fast write/speak: caret is physically fixed at center; JS moves the paper under it. */
.fast38-track{
  transform:translateX(var(--fast-track-x,0px))!important;
  transition:transform 90ms linear!important;
}
.fast38-caret{left:50%!important;right:auto!important;transform:translateX(-1px)}
.fast38-page.fast38-speak #fast38-overlay .fast38-char.auto{display:none!important}
.fast38-page.fast38-speak .fast38-speech-controls.fast43-speech-controls{
  margin-top:22px;
  padding:16px;
  background:transparent;
  border:0;
  box-shadow:none;
}
.fast38-page.fast38-speak .fast38-speech-controls.fast43-speech-controls .fast38-mic{
  min-width:min(280px,88%);
  min-height:56px;
}
.fast38-bottom{grid-template-columns:auto auto minmax(220px,360px)!important}
.fast43-timer,.fast38-counter{
  min-height:52px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:10px 15px;
  border-radius:999px;
  background:#ffffffb8;
  border:1px solid #fff;
  color:var(--ui-text-muted);
  box-shadow:var(--ui-shadow-1);
}
.fast43-timer span{font-size:9px;font-weight:900;letter-spacing:.09em}
.fast43-timer b{font:900 20px/1 var(--ui-font-latin);color:#3d3543;direction:ltr;font-variant-numeric:tabular-nums}

/* Letters/numbers flashcards redesign. */
.lit43-flashcards{
  max-width:none!important;
  background:
    radial-gradient(circle at 10% 12%,#fff1a9 0 10%,transparent 10.5%),
    radial-gradient(circle at 91% 23%,#ccecff 0 13%,transparent 13.5%),
    linear-gradient(180deg,#fffaf3 0%,#f7f1ff 52%,#edf9f4 100%)!important;
}
.lit43-flashcards .lit36-progress{
  max-width:760px;
  padding:11px 15px;
  border-radius:999px;
  background:#ffffffc7;
  border:1px solid #fff;
  box-shadow:var(--ui-shadow-1);
}
.lit43-flashcards .lit36-progress>i{height:8px;background:#e9e2ee}
.lit43-flashcards .lit36-card-wrap{gap:22px}
.lit43-flashcards .lit36-flip{
  width:min(610px,92vw);
  height:clamp(390px,56vh,560px);
  min-height:390px;
}
.lit43-flashcards .lit36-face{
  border-radius:38px;
  border:3px solid #fff;
  overflow:hidden;
  box-shadow:0 15px 0 #c8b2db,0 30px 55px #49385d20;
  gap:22px;
}
.lit43-flashcards .lit36-face:before,
.lit43-flashcards .lit36-face:after{
  content:'';
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.lit43-flashcards .lit36-face:before{width:190px;height:190px;right:-72px;top:52px;background:#f1afd047}
.lit43-flashcards .lit36-face:after{width:145px;height:145px;left:-40px;bottom:-25px;background:#87d3b94d}
.lit43-flashcards .lit36-face.front{
  background:linear-gradient(145deg,#f7eaff 0%,#eee7ff 47%,#fff0b9 100%)!important;
}
.lit43-flashcards .lit36-face.back{
  background:linear-gradient(145deg,#e6f7ff 0%,#efffe9 54%,#fff2bd 100%)!important;
  box-shadow:0 15px 0 #afd5c7,0 30px 55px #49385d20;
}
.lit43-flashcards .lit36-face b{
  position:relative;
  z-index:1;
  font:900 clamp(130px,29vw,230px)/.82 var(--ui-font-latin)!important;
  letter-spacing:-.055em!important;
  text-shadow:0 9px 0 #ffffff9c;
}
.lit43-flashcards .lit36-face.back b{font-size:clamp(64px,15vw,120px)!important;line-height:1!important}
.lit43-flashcards .lit36-face small{
  position:relative;
  z-index:2;
  padding:10px 17px;
  border-radius:999px;
  background:#ffffffc9;
  color:#655674;
  font-size:12px;
  box-shadow:0 5px 18px #5a496519;
}
.lit43-flashcards .lit36-sound{
  min-width:220px;
  min-height:58px;
  justify-content:center;
  font-size:17px;
  background:linear-gradient(135deg,#46365f,#76539c);
  box-shadow:0 7px 0 #261d37;
}
.lit43-flashcards .lit36-nav{max-width:610px;margin-top:30px;gap:14px}
.lit43-flashcards .lit36-nav button{min-height:62px;border-radius:20px;font-size:17px;box-shadow:0 6px 0 #e2d8e9}
.lit43-flashcards .lit36-nav .primary{box-shadow:0 7px 0 #583d73}
.lit43-flashcards[data-lit43-deck="letters"] .lit36-face.front:after{background:#89d4bc55}
.lit43-flashcards[data-lit43-deck="numbers"] .lit36-face.front:after{background:#ffd56d66}

/* Mobile treasure map: reduce the empty gutter and keep the rail close to the cards. */
@media(max-width:700px){
  .treasure-ten-road:before,.treasure-levels-road:before{
    right:20px!important;
    width:6px!important;
  }
  .treasure-box-stop,.treasure-box-stop.zig-left,.treasure-box-stop.zig-right,
  .treasure-level-stop,.treasure-level-stop.left,.treasure-level-stop.right{
    padding-right:46px!important;
  }
  .treasure-box-path-dot{right:6px!important}
  .treasure-path-dot{right:5px!important}
}

/* Story media: show the entire source image instead of cropping it. */
.story-spread>figure{
  margin:0;
  min-width:0;
  background:#f5f8f4;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
}
.story-spread>figure>img{
  display:block;
  width:100%;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center;
  background:#f5f8f4;
}
.story-spread>figure>figcaption{
  align-self:flex-end;
  margin:10px 12px 12px;
  padding:7px 11px;
  border-radius:999px;
  background:#fff;
  color:#527664;
  font-size:9px;
  font-weight:900;
}
@media(max-width:700px){
  .story-spread{grid-template-columns:1fr!important}
  .story-spread>figure>img{max-height:70vh!important}
}

@media(max-width:600px){
  .fast38-bottom{grid-template-columns:1fr 1fr!important}
  .fast38-bottom>.primary{grid-column:1/-1}
  .fast43-timer,.fast38-counter{justify-content:center}
  .lit43-flashcards .lit36-flip{width:94vw;height:min(520px,58vh);min-height:410px}
  .lit43-flashcards .lit36-face{border-radius:32px}
  .lit43-flashcards .lit36-face b{font-size:clamp(120px,36vw,195px)!important}
  .lit43-flashcards .lit36-face.back b{font-size:clamp(58px,16vw,90px)!important}
  .lit43-flashcards .lit36-nav{width:94vw}
}


/* ===== frontend/features/literacy-pairs-v44.css ===== */
/* v44 paired uppercase/lowercase letter practice. */
.lit44-letter-pair{
  direction:ltr;
  font-family:var(--ui-font-latin)!important;
  letter-spacing:-.045em;
}
.lit36-shadow.lit44-letter-pair-shadow{
  direction:ltr;
  font-size:clamp(145px,38vw,310px)!important;
  letter-spacing:-.08em!important;
  white-space:nowrap;
}
.lit43-flashcards[data-lit43-deck="letters"] .lit36-face.back b{
  direction:ltr;
  letter-spacing:-.075em!important;
  white-space:nowrap;
}
@media(max-width:600px){
  .lit36-shadow.lit44-letter-pair-shadow{font-size:clamp(128px,34vw,230px)!important}
}


/* ===== frontend/features/progression-experience-v45.css ===== */
/* v45 progression, profile, fast practice, exams. */
.v45-locked,.v45-nav-locked{opacity:.42!important;filter:grayscale(.55);position:relative}.v45-nav-locked:after{content:'🔒';position:absolute;inset-inline-end:5px;top:5px;font-size:10px}
.v45-sheet-layer{position:fixed;inset:0;z-index:220;display:flex;align-items:flex-end;justify-content:center}.v45-sheet-backdrop{position:absolute;inset:0;border:0;background:#241d31a8;backdrop-filter:blur(5px)}.v45-sheet{position:relative;width:min(680px,100%);max-height:min(82dvh,760px);overflow:auto;border-radius:32px 32px 0 0;background:#fffdf9;padding:16px clamp(20px,5vw,38px) calc(28px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px #1e17263b}.v45-sheet-handle{width:52px;height:5px;border-radius:999px;background:#d8cfdc;margin:0 auto 22px}.v45-kicker{font-size:10px;font-weight:900;letter-spacing:.1em;color:#815f9f}.v45-sheet h2{margin:8px 0;font-size:clamp(26px,5vw,38px)}.v45-sheet>p{color:#776d7b;line-height:1.8;font-size:12px}.v45-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.v45-choice-grid button{min-height:140px;border:1px solid #e0d5e5;border-radius:24px;background:linear-gradient(145deg,#f7efff,#fff9e7);padding:22px;text-align:start;color:#3c3048}.v45-choice-grid button:last-child{background:linear-gradient(145deg,#eaf8f3,#eef4ff)}.v45-choice-grid b{display:block;font-size:23px}.v45-choice-grid small{display:block;margin-top:8px;line-height:1.7;color:#786e7d}

.v45-fast{min-height:100dvh;background:radial-gradient(circle at 10% 10%,#fff3a8 0 12%,transparent 12.5%),radial-gradient(circle at 92% 22%,#d9c8ff 0 15%,transparent 15.5%),linear-gradient(180deg,#fffaf1,#f7f3ff 58%,#ecf8f3);padding-bottom:calc(110px + env(safe-area-inset-bottom))}.v45-fast-select,.v45-write-challenge,.v45-speak-page{width:min(820px,calc(100% - 28px));margin:0 auto}.v45-fast-select-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:15px 0 20px}.v45-fast-select-top span{font-size:11px;font-weight:900;color:#71558c}.v45-fast-select-top p{margin:4px 0 0;color:#7e7482;font-size:11px}.v45-fast-select-top button{border:0;border-radius:999px;padding:11px 15px;background:#352b49;color:#fff;font-weight:900;display:flex;gap:7px;align-items:center}.v45-article-list{display:grid;gap:12px}.v45-article-list>button{width:100%;border:2px solid transparent;border-radius:22px;background:#fff;padding:16px;display:grid;grid-template-columns:50px 1fr;gap:14px;align-items:start;text-align:start;color:#332b40;box-shadow:0 5px 0 #e9e2ec}.v45-article-list>button.active{border-color:#805fa2;background:#f7f0ff;box-shadow:0 6px 0 #d4c0e3}.v45-article-list>button>span{width:46px;height:46px;border-radius:15px;background:#efe8f5;display:grid;place-items:center;font:900 11px 'DM Sans'}.v45-article-list strong{font-size:16px}.v45-article-list p{margin:7px 0 0;font:650 14px/1.6 'DM Sans',sans-serif;color:#6f6675;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.v45-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.v45-mode button{min-height:58px;border:1px solid #e2d9e6;border-radius:18px;background:#fff;color:#65546f;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px}.v45-mode button.active{background:#352c49;color:#fff;border-color:#352c49}.v45-start{width:100%;min-height:58px;border-radius:18px}
.v45-fast-metrics,.v45-speak-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0 16px}.v45-fast-metrics span,.v45-speak-actions>span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #e7dfe9;color:#786e7c;font-size:10px;font-weight:900}.v45-fast-metrics b,.v45-speak-actions b{font:900 17px 'DM Sans';color:#3a3140}.v45-write-paper{padding:28px;border-radius:26px;background:#17151e;color:#fff;box-shadow:0 10px 0 #2d2636}.v45-write-paper p{margin:0 0 20px;font:700 clamp(18px,3.5vw,27px)/1.75 'DM Sans',sans-serif}.v45-write-paper p:last-child{margin-bottom:0}.v45-write-challenge textarea{width:100%;min-height:190px;margin-top:22px;border:2px solid #ddd2e3;border-radius:22px;background:#fff;padding:19px;font:650 18px/1.75 'DM Sans',sans-serif;outline:0;resize:vertical}.v45-write-challenge textarea:focus{border-color:#8a68a8;box-shadow:0 0 0 4px #8a68a815}.v45-write-challenge>.primary{width:100%;margin-top:14px;min-height:56px}
.v45-speak-page{max-width:900px}.v45-speak-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;padding:15px 17px;border:1px solid #e3d9e7;border-radius:22px;margin-bottom:16px;box-shadow:0 7px 20px #4e3a5c10}.v45-live-dot{width:13px;height:13px;border-radius:50%;background:#45b67b;box-shadow:0 0 0 7px #45b67b22;animation:v45pulse 1.7s infinite}.v45-speak-top b{display:block;font-size:12px}.v45-speak-top small{display:block;margin-top:4px;color:#817783;font-size:9px}.v45-speak-top>strong{font:900 12px 'DM Sans';color:#72558d}.v45-speak-article{border-radius:30px;background:#fff;padding:clamp(24px,5vw,48px);border:2px solid #fff;box-shadow:0 12px 0 #d6c4e3,0 28px 55px #48385916}.v45-speak-article p{font:750 clamp(22px,4vw,34px)/1.8 'DM Sans',sans-serif;color:#282132;margin:0 0 26px}.v45-speak-article p:last-child{margin-bottom:0}.v45-speak-actions{margin-top:20px}.v45-speak-actions .primary{min-height:54px;min-width:190px}.v45-fast-result{width:min(620px,calc(100% - 28px));margin:40px auto;padding:44px 30px;border-radius:34px;text-align:center;background:#fff;box-shadow:0 14px 0 #dbc9e5,0 30px 60px #43364d1b;overflow:hidden;position:relative}.v45-fast-result:before,.v45-exam-result:before,.v45-box-result:before{content:'';position:absolute;width:240px;height:240px;border-radius:50%;right:-90px;top:-110px;background:#ffe26c55}.v45-fast-result>span,.v45-exam-result>span,.v45-result-label{display:inline-flex;padding:10px 18px;border-radius:999px;background:#352c49;color:#fff;font-weight:900;font-size:17px;position:relative}.v45-fast-result h2{font-size:30px;margin:20px 0}.v45-result-time{margin:24px auto;width:170px;padding:20px;border-radius:24px;background:#f6f0fb}.v45-result-time small{display:block;color:#887c8f}.v45-result-time strong{display:block;margin-top:5px;font:900 34px 'DM Sans'}.v45-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v45-result-actions button{min-height:52px;border:0;border-radius:17px;font-weight:900}.v45-fast-result.bad{background:#fff1f1}.v45-fast-result.good{background:#fff8dc}.v45-fast-result.very-good{background:#eef9f0}.v45-fast-result.excellent{background:#eef5ff}.v45-fast-result.incredible{background:#f7efff}.v45-fast-result.master{background:linear-gradient(145deg,#fff2ad,#f1e4ff)}
@keyframes v45pulse{50%{transform:scale(1.14);box-shadow:0 0 0 10px #45b67b12}}

.v45-content-list{display:grid;gap:9px;margin-top:18px}.v45-content-list button{border:1px solid #e2d7e6;border-radius:17px;background:#fff;padding:15px;display:flex;align-items:center;gap:12px;text-align:start;color:#46394f}.v45-content-list b{width:38px;height:38px;border-radius:12px;background:#f0e8f6;display:grid;place-items:center;font:900 10px 'DM Sans'}.v45-content-list span{font-weight:900}.v45-edit-sheet form{display:grid;gap:14px;margin-top:18px}.v45-edit-sheet label{display:grid;gap:7px;font-size:10px;font-weight:900;color:#716575}.v45-edit-sheet input,.v45-edit-sheet textarea{width:100%;border:1px solid #ddd1e2;border-radius:14px;background:#fff;padding:13px;font:inherit;outline:0}.v45-edit-sheet textarea{font-family:'DM Sans',sans-serif;line-height:1.6;direction:ltr;text-align:left}.v45-edit-sheet form>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v45-edit-sheet button{min-height:48px;border:0;border-radius:14px;font-weight:900}.v45-edit-sheet .danger{background:#ffe9eb;color:#a93347}.v45-edit-sheet .primary{background:#684d78;color:#fff}

.profile-v45{max-width:980px!important;padding:30px 18px 130px!important}.profile45-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;padding:30px;border-radius:34px;background:linear-gradient(135deg,#eadfff 0%,#fff2be 50%,#dff7eb 100%);box-shadow:0 10px 0 #e5d9eb}.profile45-hero:before{content:'';position:absolute;width:200px;height:200px;border-radius:50%;right:-90px;bottom:-110px;background:#ff86aa44}.profile45-avatar{position:relative;z-index:1;width:108px;height:108px;border-radius:34px;background:#352b49;color:#fff;display:grid;place-items:center;font:900 48px 'DM Sans';box-shadow:0 9px 0 #b89dcb}.profile45-hero>div:nth-child(2){position:relative;z-index:1}.profile45-hero span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#77568f}.profile45-hero h1{margin:5px 0;font-size:clamp(29px,5vw,45px)}.profile45-hero p{margin:0;color:#716778;line-height:1.7;font-size:12px}.profile45-level{position:relative;z-index:1;width:125px;height:125px;border-radius:31px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 25px #43334f15}.profile45-level small{font-size:8px}.profile45-level strong{font:900 40px 'DM Sans';color:#5b4176}.profile45-level span{font-size:9px;letter-spacing:0}.profile45-track{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:24px 0;padding:16px;border-radius:24px;background:#fff;box-shadow:0 5px 20px #4938580d}.profile45-track div{text-align:center;position:relative}.profile45-track b{display:block;font:900 12px 'DM Sans';color:#aaa1ad}.profile45-track i{display:block;height:7px;border-radius:999px;background:#e4dfe7;margin-top:7px}.profile45-track .done b,.profile45-track .current b{color:#604878}.profile45-track .done i{background:#57ae80}.profile45-track .current i{background:linear-gradient(90deg,#7654a5,#f087aa,#ffd66b);box-shadow:0 0 0 3px #7654a514}.profile45-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.profile45-grid article{padding:20px;border-radius:22px;background:#fff;border:1px solid #e7dfea}.profile45-grid small{display:block;color:#8c8290;font-size:9px}.profile45-grid strong{display:block;margin-top:6px;font-size:18px}.profile45-actions{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:18px}.profile45-actions button{min-height:75px;border:1px solid #e5dce8;border-radius:20px;background:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-align:start;color:#514659;padding:14px 17px}.profile45-actions b,.profile45-actions small{display:block}.profile45-actions small{font-size:9px;color:#8b808e;margin-top:3px}

.v45-exam-banner{position:relative;z-index:6;width:min(760px,calc(100% - 24px));margin:12px auto 18px;border-radius:26px;background:linear-gradient(135deg,#382d4d,#7655a5);color:#fff;padding:22px;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 10px 0 #2a213a}.v45-exam-banner span{font-size:9px;font-weight:900;letter-spacing:.12em;color:#eadcf6}.v45-exam-banner h2{margin:5px 0;font-size:21px}.v45-exam-banner p{margin:0;color:#ddd2e7;font-size:10px;line-height:1.6}.v45-exam-banner button{border:0;border-radius:16px;background:#ffd86b;color:#3e3150;padding:14px 18px;font-weight:900;white-space:nowrap}.v45-exam-blocked{opacity:.5}.v45-exam-layer{position:fixed;inset:0;z-index:240;background:#f7f3fb;overflow:auto;padding:18px}.v45-exam{width:min(900px,100%);margin:0 auto 60px}.v45-exam>header{position:sticky;top:0;z-index:4;padding:18px;border-radius:24px;background:#ffffffed;backdrop-filter:blur(12px);display:flex;justify-content:space-between;gap:15px;align-items:center;box-shadow:0 8px 25px #4c3a5d12}.v45-exam header span{font-size:9px;font-weight:900;letter-spacing:.1em;color:#805f9e}.v45-exam header h1{margin:2px 0;font-size:28px}.v45-exam header p{margin:0;font-size:10px;color:#807585}.v45-exam header button{border:0;border-radius:999px;background:#eee6f3;padding:10px 14px;color:#604b70;font-weight:900}.v45-exam form{display:grid;gap:13px;margin-top:18px}.v45-exam fieldset{border:1px solid #e0d6e4;border-radius:22px;background:#fff;padding:18px;margin:0}.v45-exam legend{width:100%;display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center;padding:0}.v45-exam legend>b{width:34px;height:34px;border-radius:11px;background:#f0e8f6;display:grid;place-items:center}.v45-exam legend>span{font-size:9px;color:#8c7e92}.v45-exam legend>strong{grid-column:1/-1;font-size:15px;line-height:1.6}.v45-exam fieldset>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.v45-exam label{border:1px solid #e3dae6;border-radius:14px;padding:11px;display:flex;gap:8px;align-items:center}.v45-written{width:100%;margin-top:12px;border:1px solid #ddd1e3;border-radius:13px;padding:12px}.v45-exam fieldset.correct{border-color:#58ae7d;background:#f1fbf5}.v45-exam fieldset.wrong{border-color:#d75d6d;background:#fff2f3}.v45-exam form>.primary{min-height:58px;border:0;border-radius:18px;background:#684d78;color:#fff;font-weight:900}.v45-exam-result{position:relative;overflow:hidden;width:min(600px,calc(100% - 24px));margin:10vh auto;padding:45px 28px;border-radius:34px;background:#fff;text-align:center;box-shadow:0 18px 55px #37294322}.v45-exam-result h1{font-size:34px;margin:22px 0 8px}.v45-exam-result p{color:#786d7d}.v45-exam-result>div{display:flex;justify-content:center;gap:10px;margin-top:24px}.v45-exam-result button{min-height:50px;border:0;border-radius:15px;padding:0 18px;font-weight:900}.v45-exam-result .primary{background:#684d78;color:#fff}

.course-result-card.v45-box-result{position:relative;overflow:hidden;min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff!important}.course-result-card.v45-box-result>h1{font-size:clamp(33px,6vw,55px);margin:24px 0 8px}.course-result-card.v45-box-result>p{color:#786e7d}.course-result-card.v45-box-result .course-result-actions{width:min(440px,100%);display:grid;grid-template-columns:1fr 1fr}.course-result-card.v45-box-result.bad{background:#fff0f1!important}.course-result-card.v45-box-result.good{background:#fff8db!important}.course-result-card.v45-box-result.very-good{background:#effaf2!important}.course-result-card.v45-box-result.excellent{background:#edf5ff!important}.course-result-card.v45-box-result.incredible{background:#f5edff!important}.course-result-card.v45-box-result.master{background:linear-gradient(145deg,#fff2ad,#eee2ff)!important}

@media(max-width:700px){.v45-choice-grid,.profile45-actions{grid-template-columns:1fr}.profile45-hero{grid-template-columns:auto 1fr;padding:20px;gap:14px}.profile45-avatar{width:78px;height:78px;border-radius:25px;font-size:34px}.profile45-level{grid-column:1/-1;width:100%;height:auto;min-height:90px;flex-direction:row;gap:15px;border-radius:22px}.profile45-grid{grid-template-columns:1fr 1fr}.v45-exam-banner{align-items:flex-start;flex-direction:column}.v45-exam-banner button{width:100%}.v45-exam fieldset>div{grid-template-columns:1fr}.v45-speak-top{grid-template-columns:auto 1fr}.v45-speak-top>strong{grid-column:1/-1}.v45-speak-actions{align-items:stretch;flex-direction:column}.v45-speak-actions .primary{width:100%}.v45-write-paper{padding:21px}.v45-write-paper p{font-size:18px}.v45-fast-select-top{align-items:flex-start;flex-direction:column}.v45-fast-select-top button{width:100%;justify-content:center}}


/* ===== frontend/features/assessment-literacy-v46.css ===== */
/* v46 literacy + assessment presentation. */
.lit36-face.front b,.lit36-face.back b{white-space:nowrap}
.lit36-face.back b[dir="rtl"]{font-family:var(--ui-font-ar);letter-spacing:0!important}
.lit43-flashcards[data-lit43-deck="letters"] .lit36-face.front b{font-size:clamp(118px,27vw,205px)!important;letter-spacing:-.07em!important}
.lit43-flashcards[data-lit43-deck="numbers"] .lit36-face.front b{font-size:clamp(54px,13vw,108px)!important;letter-spacing:-.04em!important}
.lit43-flashcards[data-lit43-deck="numbers"] .lit36-face.back b{font-size:clamp(54px,12vw,96px)!important}

.lit36-canvas-card:has(.lit46-draw-grid){padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;overflow:visible!important}
.lit46-draw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:min(920px,94vw);margin-inline:auto}
.lit46-draw-field{min-width:0;padding:14px;border-radius:28px;background:#fff;border:1px solid #e5dce8;box-shadow:0 9px 0 #d8c8e5,0 18px 32px #3e30551a}
.lit46-draw-field header{display:flex;align-items:center;gap:9px;padding:2px 4px 12px;color:#665873}
.lit46-draw-field header span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#eee5f8;color:#74559a;font:900 11px/1 var(--ui-font-latin)}
.lit46-draw-field header b{font-size:13px}
.lit46-draw-surface{position:relative;aspect-ratio:1;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#fffefa,#faf7ff);border:1px solid #eee6ef}
.lit46-draw-surface canvas{position:absolute;inset:0;width:100%!important;height:100%!important;touch-action:none;z-index:2}
.lit46-guide{position:absolute;inset:0;display:grid;place-items:center;z-index:1;pointer-events:none;color:#6e5a7b24;font:900 clamp(110px,20vw,210px)/1 var(--ui-font-latin)}
.lit46-guide-word{font-size:clamp(54px,9vw,100px);letter-spacing:-.04em;padding:14px;text-align:center;overflow-wrap:anywhere}

.v46-skip{border:1px dashed #cdbed7!important;background:#fffaf0!important;color:#745f6d!important}
.course-exam-player form,.watch-exam-player form,.story-exam-player form{position:relative}
.course-exam-player form:before,.watch-exam-player form:before,.story-exam-player form:before{content:'First wrong answer or skip stays wrong for this attempt';display:block;margin:0 0 14px;padding:10px 13px;border-radius:14px;background:#fff5d8;color:#695a52;font:800 10px/1.5 var(--ui-font-latin);direction:ltr}
[dir="rtl"] .course-exam-player form:before,[dir="rtl"] .watch-exam-player form:before,[dir="rtl"] .story-exam-player form:before{content:'أول إجابة خاطئة أو تخطي يبقى محسوباً كخطأ في هذه المحاولة';font-family:var(--ui-font-ar);direction:rtl}

.v46-exam-question-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #ece3ee}
.v46-exam-question-actions button{border:0;border-radius:12px;padding:9px 13px;background:#eee6f7;color:#5e4777;font-weight:900}
.v46-exam-question-actions button+button{background:#fff1d5;color:#705b3e}
.v46-exam-question-actions small{flex:1;min-width:190px;color:#817486;font-size:9px}
.v45-exam fieldset.v46-skipped{outline:2px dashed #d39b53;outline-offset:3px}

/* Story images must always show the full source image; no crop at any breakpoint. */
.story-spread>figure,.story-page-player .story-spread>figure{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#f5f8f4!important}
.story-spread>figure>img,.story-page-player .story-spread>figure>img{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;clip-path:none!important;transform:none!important}

@media(max-width:700px){
  .lit43-flashcards[data-lit43-deck="numbers"] .lit36-face.front b{font-size:clamp(48px,13vw,74px)!important}
  .lit46-draw-grid{grid-template-columns:1fr;width:94vw;gap:15px}
  .lit46-draw-field{border-radius:24px;padding:11px}
  .lit46-draw-surface{aspect-ratio:1.25/1;min-height:250px}
  .lit46-guide{font-size:clamp(100px,34vw,170px)}
  .lit46-guide-word{font-size:clamp(50px,17vw,86px)}
  .story-spread>figure>img,.story-page-player .story-spread>figure>img{max-height:none!important}
}


/* ===== frontend/features/access-admin-profile-v47.css ===== */
/* v47 access, onboarding, admin, profile */
.v47-admin-entry{width:100%;margin:10px 0 0;padding:13px 16px;border:1px solid #d9cde2;border-radius:16px;background:#f8f3fc;color:#5d4777;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px}
.v47-onboarding{margin:0 0 24px;padding:22px;border-radius:28px;background:linear-gradient(135deg,#fff8d8,#f3eaff 55%,#e6f7ef);border:1px solid #fff;box-shadow:0 12px 30px #49385d16}
.v47-onboarding>div:first-child span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#80629e}.v47-onboarding h2{margin:5px 0 7px}.v47-onboarding p{margin:0;color:#746b78}
.v47-step{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin-top:14px;padding:14px;border-radius:20px;background:#ffffffc9;border:1px solid #fff}.v47-step>b{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#eee5f8;color:#6c4d8d}.v47-step span{display:grid;gap:3px}.v47-step small{color:#8b818e}.v47-step button{border:0;border-radius:13px;padding:10px 15px;background:#6f4d96;color:white;font-weight:900}.v47-step.locked{opacity:.55}.v47-step.done{background:#eefaf3}.v47-step.done>b{background:#ccebd9;color:#347b58}.v47-step button:disabled{background:#ddd5df;color:#8f8792}
.v47-home-study-blocked{opacity:.42!important;filter:grayscale(.25)}.v47-nav-locked{opacity:.42;position:relative}.v47-nav-locked:after{content:'•';position:absolute;top:5px;right:8px;font-size:18px;color:#79589b}
.v47-unlock-layer,.v47-modal-layer{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:20px;background:#241b2d80;backdrop-filter:blur(8px)}
.v47-unlock-card{width:min(430px,92vw);padding:28px;border-radius:32px;text-align:center;background:linear-gradient(145deg,#fff9da,#f3e9ff 58%,#e5f7ee);border:2px solid #fff;box-shadow:0 28px 80px #22172d55}.v47-unlock-card>span{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 13px;border-radius:24px;background:#7853a0;color:white;font-size:34px;box-shadow:0 9px 0 #4c3567}.v47-unlock-card small{font-weight:900;letter-spacing:.1em;color:#8a70a4}.v47-unlock-card h2{font-size:28px;margin:8px 0}.v47-unlock-card p{color:#766c79;line-height:1.8}.v47-unlock-card button{border:0;border-radius:16px;padding:12px 28px;background:#382a4e;color:white;font-weight:900}
.v47-modal-backdrop{position:absolute;inset:0;border:0;background:transparent}.v47-admin-login{position:relative;width:min(420px,92vw);padding:25px;border-radius:28px;background:#fff;box-shadow:0 25px 70px #17101f66}.v47-admin-login>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#2f2440;color:#fff}.v47-admin-login h2{margin:14px 0 5px}.v47-admin-login p{color:#766c79}.v47-admin-login form{display:grid;gap:12px;margin-top:18px}.v47-admin-login label{display:grid;gap:6px;font-weight:800}.v47-admin-login input{padding:13px;border:1px solid #ded5e4;border-radius:14px}.v47-admin-login small{min-height:18px;color:#ad3f4e}.v47-admin-login .primary{border:0;border-radius:14px;padding:13px;background:#493660;color:#fff;font-weight:900}
.v47-admin-fab{position:fixed;right:22px;bottom:100px;z-index:9000;border:0;border-radius:999px;padding:13px 18px;background:#251b32;color:white;box-shadow:0 8px 0 #0f0b15,0 18px 36px #281b3a42;font-weight:900;display:flex;gap:8px;align-items:center}
.v47-admin-page{padding-bottom:120px}.v47-admin-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.v47-admin-head span{font:900 10px/1 var(--ui-font-latin);letter-spacing:.14em;color:#8d70a9}.v47-admin-head h1{margin:5px 0 8px}.v47-admin-head p{max-width:700px;color:#756b79}.v47-admin-head>button{border:1px solid #ded5e4;background:#fff;border-radius:14px;padding:11px 15px;font-weight:900}.v47-admin-stats,.v47-user-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.v47-admin-stats article,.v47-user-facts article{padding:18px;border-radius:20px;background:#fff;border:1px solid #eee7f1}.v47-admin-stats small,.v47-user-facts small{display:block;color:#8d8390}.v47-admin-stats strong,.v47-user-facts strong{display:block;margin-top:6px;font-size:20px}.v47-users{padding:18px;border-radius:26px;background:#fff;border:1px solid #eee7f1}.v47-users-head{display:flex;align-items:center;justify-content:space-between}.v47-users>button{width:100%;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px 4px;border:0;border-top:1px solid #f0eaf2;background:transparent;text-align:start}.v47-users>button div{display:grid;gap:3px}.v47-users>button small{color:#8a808d}.v47-users time{color:#978c9a;font-size:11px}.v47-user-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,#7855a0,#de8eaf);color:white;font:900 28px/1 var(--ui-font-latin)}.v47-user-avatar.small{width:42px;height:42px;border-radius:14px;font-size:16px}.v47-user-detail{display:flex;gap:18px;align-items:center;padding:22px;border-radius:28px;background:#fff;border:1px solid #eee7f1;margin-bottom:16px}.v47-user-detail small{font-family:monospace;color:#948a97}.v47-admin-error{padding:12px 15px;border-radius:14px;background:#ffe9ea;color:#9d3845}.v47-no-users,.v47-admin-empty{padding:32px;text-align:center;color:#817786}
.profile-v47{max-width:980px}.profile47-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:26px;border-radius:32px;background:linear-gradient(135deg,#fff,#f7f0ff);border:1px solid #fff;box-shadow:0 14px 35px #44335715}.profile47-image{width:112px;height:112px;border-radius:30px;overflow:hidden;background:linear-gradient(135deg,#7a58a0,#ef9cb7);display:grid;place-items:center;color:#fff;font:900 42px/1 var(--ui-font-latin);border:4px solid #fff;box-shadow:0 8px 0 #d4c1e1}.profile47-image img{width:100%;height:100%;object-fit:cover}.profile47-name span{font-size:10px;font-weight:900;letter-spacing:.12em;color:#886aa4}.profile47-name h1{margin:5px 0}.profile47-name p{margin:0;color:#817787}.profile47-card>button{border:0;border-radius:15px;padding:11px 15px;background:#4a365f;color:#fff;font-weight:900;display:flex;align-items:center;gap:7px}.profile47-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.profile47-facts article{padding:18px;border-radius:21px;background:#fff;border:1px solid #eee7f1}.profile47-facts small{color:#8b818e}.profile47-facts strong{display:block;margin-top:5px;font-size:22px}.profile47-edit{max-width:760px}.profile47-edit header{display:flex;align-items:center;gap:18px;margin-bottom:20px}.profile47-edit header button{border:0;background:#fff;padding:10px 14px;border-radius:14px}.profile47-edit form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px;border-radius:28px;background:#fff}.profile47-edit form>label{display:grid;gap:6px;font-weight:800}.profile47-edit input{padding:12px;border:1px solid #dfd6e3;border-radius:13px}.profile47-photo-edit{grid-column:1/-1;display:flex;align-items:center;gap:18px}.profile47-photo-edit label{padding:10px 14px;border-radius:14px;background:#f1e9f8;font-weight:900;cursor:pointer}.profile47-photo-edit input{display:none}.profile47-edit .primary{grid-column:1/-1;border:0;border-radius:15px;padding:13px;background:#4b3561;color:#fff;font-weight:900}
@media(max-width:700px){.v47-admin-stats,.v47-user-facts,.profile47-facts{grid-template-columns:1fr}.profile47-card{grid-template-columns:auto 1fr}.profile47-card>button{grid-column:1/-1;justify-content:center}.profile47-image{width:88px;height:88px;border-radius:24px}.profile47-edit form{grid-template-columns:1fr}.v47-users>button{grid-template-columns:auto 1fr auto}.v47-users time{display:none}.v47-admin-head{flex-direction:column}.v47-admin-fab{right:14px;bottom:92px}.v47-step{grid-template-columns:auto 1fr}.v47-step button{grid-column:1/-1}.profile47-photo-edit{flex-direction:column;align-items:flex-start}}


/* ===== frontend/features/social-auth-v50.css ===== */
.v50-social-layer{position:fixed;inset:0;z-index:1200;display:grid;align-items:end}.v50-social-backdrop{position:absolute;inset:0;border:0;background:rgba(25,20,36,.42);backdrop-filter:blur(8px)}.v50-social-sheet{position:relative;z-index:1;background:#fffdf9;border-radius:30px 30px 0 0;padding:16px 22px calc(26px + env(safe-area-inset-bottom));box-shadow:0 -18px 60px rgba(37,28,55,.18);max-width:640px;width:100%;margin:auto;color:#25213f}.v50-social-handle{width:52px;height:5px;border-radius:999px;background:#d9d4df;margin:0 auto 20px}.v50-social-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#eaf8ef;font-size:28px;margin-bottom:14px}.v50-social-sheet h2{margin:0 0 8px;font-size:1.45rem}.v50-social-sheet p{margin:0 0 18px;color:#767183;line-height:1.7}.v50-social-sheet form{display:grid;gap:12px}.v50-social-sheet label{display:grid;gap:8px;font-weight:700}.v50-social-sheet input{width:100%;border:2px solid #e0dde6;border-radius:18px;padding:15px 16px;font:inherit;background:#fff}.v50-social-sheet .primary,.v50-secondary{min-height:54px;border:0;border-radius:18px;font:inherit;font-weight:800}.v50-social-sheet .primary{background:#5d4387;color:#fff}.v50-secondary{background:#f2eef7;color:#4c3c68}.v50-social-message{min-height:20px;color:#b34f60}.v50-social-sheet button:disabled{opacity:.55}@media(min-width:700px){.v50-social-layer{align-items:center}.v50-social-sheet{border-radius:28px;padding:24px;margin:auto}.v50-social-backdrop{background:rgba(25,20,36,.34)}}

/* ===== frontend/features/literacy-responsive-v55.css ===== */
/* v55: purpose-built letter/number layouts for desktop, iPad, and mobile. */
.lit55-literacy{
  --lit55-ink:#251d31;
  --lit55-muted:#756a7e;
  --lit55-purple:#7653a4;
  --lit55-purple-dark:#50376e;
  --lit55-mint:#bfe9d6;
  --lit55-gold:#f8d875;
  --lit55-card:#fffdfb;
  width:100%;
  max-width:none!important;
  min-height:100svh;
  background:
    radial-gradient(circle at 8% 10%,#fff0a3 0 7rem,transparent 7.1rem),
    radial-gradient(circle at 94% 20%,#d9efff 0 10rem,transparent 10.1rem),
    linear-gradient(180deg,#fffaf4 0%,#f6f0ff 52%,#edf9f4 100%)!important;
}
.lit55-literacy .lit36-head{max-width:1320px;margin-inline:auto}
.lit55-literacy .lit36-head>button{min-height:46px;padding-inline:18px;background:#ffffffdc;border:1px solid #fff;box-shadow:0 5px 0 #e5d9ec}
.lit55-literacy .lit36-head h1{color:var(--lit55-ink);letter-spacing:-.035em}
.lit55-literacy .lit36-head small{display:inline-flex;padding:6px 10px;border-radius:999px;background:#ffffffb8;color:#735a8d}

/* Flashcard structure shared by all devices. */
.lit55-literacy.lit55-stage-learn .lit36-progress{margin-top:4px}
.lit55-literacy.lit55-stage-learn .lit36-card-wrap{position:relative}
.lit55-literacy.lit55-stage-learn .lit36-flip{max-width:100%}
.lit55-literacy.lit55-stage-learn .lit36-face{isolation:isolate}
.lit55-literacy.lit55-stage-learn .lit36-face b{font-variant-numeric:lining-nums tabular-nums}
.lit55-literacy.lit55-stage-learn .lit36-sound{transition:transform .18s ease,box-shadow .18s ease}
.lit55-literacy.lit55-stage-learn .lit36-sound:active{transform:translateY(4px);box-shadow:0 3px 0 #261d37}
.lit55-literacy .lit36-nav button{transition:transform .18s ease,box-shadow .18s ease}
.lit55-literacy .lit36-nav button:not(:disabled):active{transform:translateY(4px);box-shadow:0 2px 0 #ded3e7}

/* Drawing workspace: new hierarchy and action order. */
.lit55-literacy:is(.lit55-stage-trace,.lit55-stage-draw,.lit55-stage-hear-draw){padding-bottom:calc(150px + env(safe-area-inset-bottom))}
.lit55-literacy .lit36-canvas-card:has(.lit48-draw-grid){
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  display:block;
}
.lit55-literacy .lit48-draw-grid{width:100%;align-items:stretch}
.lit55-literacy .lit48-draw-field{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  background:linear-gradient(160deg,#fff 0%,#fffdf8 100%);
  border:1px solid #e6dce9;
  box-shadow:0 8px 0 #d8c9e3,0 20px 36px #41324e16;
}
.lit55-literacy .lit48-draw-field header{justify-content:flex-start;color:#584b63}
.lit55-literacy .lit48-draw-field header span{background:#ede4f7;color:#69488d}
.lit55-literacy .lit48-draw-surface{
  background:
    linear-gradient(#efe8f080 1px,transparent 1px),
    linear-gradient(90deg,#efe8f080 1px,transparent 1px),
    linear-gradient(180deg,#fffefa,#faf7ff);
  background-size:32px 32px,32px 32px,auto;
  box-shadow:inset 0 0 0 2px #fff;
}
.lit55-literacy .lit48-draw-surface:before,
.lit55-literacy .lit48-draw-surface:after{
  content:'';
  position:absolute;
  z-index:1;
  pointer-events:none;
  background:#d8cde05c;
}
.lit55-literacy .lit48-draw-surface:before{left:50%;top:0;bottom:0;width:1px}
.lit55-literacy .lit48-draw-surface:after{top:50%;left:0;right:0;height:1px}
.lit55-literacy .lit48-draw-surface canvas{cursor:crosshair}
.lit55-literacy .lit48-guide{color:#684e7929;-webkit-text-stroke:2px #684e7917}
.lit55-field-switch{display:none}
.lit55-literacy .lit36-draw-actions{
  width:min(1080px,100%);
  max-width:none;
  margin:24px auto 0;
  align-items:stretch;
}
.lit55-literacy .lit36-draw-actions button{
  min-height:58px;
  border:1px solid #e4d9e8;
  border-radius:18px;
  background:#fff;
  color:#5b4c64;
  box-shadow:0 5px 0 #dfd3e6;
  font-weight:900;
}
.lit55-literacy .lit36-draw-actions [data-v54-check-drawing]{
  order:2;
  border:0;
  color:#fff;
  background:linear-gradient(135deg,#7653a4,#9b6bc0);
  box-shadow:0 6px 0 #50376e;
}
.lit55-literacy .lit36-draw-actions [data-v54-check-drawing][data-state="correct"]{background:linear-gradient(135deg,#2d876b,#54aa87);box-shadow:0 6px 0 #246d58}
.lit55-literacy .lit36-draw-actions [data-v54-check-drawing][data-state="wrong"]{background:linear-gradient(135deg,#a85369,#d7788c);box-shadow:0 6px 0 #7d3d50}
.lit55-literacy .lit36-draw-actions [data-lit36="clear-draw"]{order:1}
.lit55-literacy .lit36-draw-actions [data-lit36="finish-draw"]{order:3;background:#2f2739;color:#fff;border:0;box-shadow:0 6px 0 #17121d}
.lit55-literacy:is(.lit55-stage-draw,.lit55-stage-hear-draw) .lit36-draw-actions:not(:has([data-v54-check-drawing][data-state="correct"])) [data-lit36="finish-draw"]{opacity:.48;filter:saturate(.6)}
.lit55-literacy .lit37-practice-tools{background:#fffdfbe8;backdrop-filter:blur(12px)}
.lit55-literacy .lit37-audio-only{max-width:1080px;margin:0 auto 20px;text-align:center}

/* Desktop / laptop: wide studio and two large square drawing fields. */
@media (min-width:1181px){
  .lit55-literacy{padding:32px clamp(32px,5vw,76px) 150px}
  .lit55-literacy .lit36-head{margin-bottom:18px}
  .lit55-literacy .lit36-head h1{font-size:44px}
  .lit55-literacy.lit55-stage-learn .lit36-progress{max-width:820px}
  .lit55-literacy.lit55-stage-learn .lit36-flip{width:650px;height:500px;min-height:500px}
  .lit55-literacy.lit55-stage-learn .lit36-face{border-radius:44px}
  .lit55-literacy.lit55-stage-learn .lit36-face b{font-size:220px!important}
  .lit55-literacy.lit55-stage-learn[data-lit55-mode="numbers"] .lit36-face.front b{font-size:104px!important}
  .lit55-literacy.lit55-stage-learn .lit36-nav{width:650px;max-width:650px}
  .lit55-literacy .lit37-practice-flip{width:min(1180px,calc(100vw - 96px));min-height:680px}
  .lit55-literacy .lit37-practice-face,.lit55-literacy .lit37-practice-back{border-radius:42px}
  .lit55-literacy .lit37-practice-back{padding:0 22px 22px}
  .lit55-literacy .lit37-practice-tools{margin:0 -22px 18px;padding:17px 22px}
  .lit55-literacy .lit48-draw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .lit55-literacy .lit48-draw-field{padding:16px;border-radius:30px}
  .lit55-literacy .lit48-draw-field header{min-height:48px;padding:2px 5px 13px}
  .lit55-literacy .lit48-draw-field header b{font-size:15px}
  .lit55-literacy .lit48-draw-surface{aspect-ratio:1;min-height:0;border-radius:24px}
  .lit55-literacy .lit48-guide{font-size:clamp(160px,17vw,260px)}
  .lit55-literacy .lit48-guide-word{font-size:clamp(64px,6vw,104px)}
  .lit55-literacy .lit36-draw-actions{grid-template-columns:180px minmax(300px,1fr) 180px;gap:14px}
}

/* iPad / tablet: portrait-safe two-panel workspace and reachable controls. */
@media (min-width:768px) and (max-width:1180px){
  .lit55-literacy{padding:26px clamp(22px,4vw,44px) 150px}
  .lit55-literacy .lit36-head{margin-bottom:16px}
  .lit55-literacy .lit36-head h1{font-size:clamp(34px,5vw,46px)}
  .lit55-literacy.lit55-stage-learn .lit36-progress{width:min(78vw,720px)}
  .lit55-literacy.lit55-stage-learn .lit36-flip{width:min(72vw,680px);height:min(56svh,540px);min-height:440px}
  .lit55-literacy.lit55-stage-learn .lit36-face{border-radius:40px}
  .lit55-literacy.lit55-stage-learn .lit36-face b{font-size:clamp(170px,25vw,225px)!important}
  .lit55-literacy.lit55-stage-learn[data-lit55-mode="numbers"] .lit36-face.front b{font-size:clamp(76px,12vw,112px)!important}
  .lit55-literacy.lit55-stage-learn .lit36-nav{width:min(72vw,680px);max-width:680px}
  .lit55-literacy .lit37-practice-flip{width:min(94vw,1000px);min-height:680px}
  .lit55-literacy .lit37-practice-face,.lit55-literacy .lit37-practice-back{border-radius:36px}
  .lit55-literacy .lit37-practice-back{padding:0 15px 16px}
  .lit55-literacy .lit37-practice-tools{margin:0 -15px 14px;padding:15px 17px}
  .lit55-literacy .lit48-draw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .lit55-literacy .lit48-draw-field{padding:11px;border-radius:24px}
  .lit55-literacy .lit48-draw-surface{aspect-ratio:1;border-radius:19px}
  .lit55-literacy .lit48-guide{font-size:clamp(126px,22vw,210px)}
  .lit55-literacy .lit48-guide-word{font-size:clamp(48px,8vw,88px)}
  .lit55-literacy .lit36-draw-actions{grid-template-columns:150px minmax(260px,1fr) 150px;gap:12px}
}

/* Mobile: one canvas at a time, thumb-reachable switcher and action dock. */
@media (max-width:767px){
  .lit55-literacy{padding:14px 12px calc(126px + env(safe-area-inset-bottom));overflow-x:hidden}
  .lit55-literacy .lit36-head{align-items:center;margin-bottom:12px;gap:10px}
  .lit55-literacy .lit36-head>button{min-width:44px;min-height:44px;padding:10px 12px;font-size:0}
  .lit55-literacy .lit36-head>button svg{width:20px;height:20px}
  .lit55-literacy .lit36-head>div{min-width:0}
  .lit55-literacy .lit36-head h1{font-size:clamp(25px,7vw,32px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lit55-literacy .lit36-head small{font-size:9px;padding:5px 8px}
  .lit55-literacy.lit55-stage-learn .lit36-progress{width:100%;margin:8px auto 14px;padding:9px 12px}
  .lit55-literacy.lit55-stage-learn .lit36-card-wrap{gap:14px}
  .lit55-literacy.lit55-stage-learn .lit36-flip{width:100%;height:clamp(350px,53svh,460px);min-height:350px}
  .lit55-literacy.lit55-stage-learn .lit36-face{border-radius:30px;box-shadow:0 10px 0 #c8b2db,0 20px 35px #49385d1c}
  .lit55-literacy.lit55-stage-learn .lit36-face b{font-size:clamp(132px,42vw,190px)!important}
  .lit55-literacy.lit55-stage-learn[data-lit55-mode="numbers"] .lit36-face.front b{font-size:clamp(58px,17vw,82px)!important}
  .lit55-literacy.lit55-stage-learn .lit36-face.back b{font-size:clamp(48px,13vw,72px)!important;max-width:90%;white-space:normal;text-align:center}
  .lit55-literacy.lit55-stage-learn .lit36-face small{font-size:10px;padding:8px 12px}
  .lit55-literacy.lit55-stage-learn .lit36-sound{width:min(78vw,300px);min-width:0;min-height:54px;font-size:15px}
  .lit55-literacy.lit55-stage-learn .lit36-nav{width:100%;margin:18px auto 0;gap:9px}
  .lit55-literacy.lit55-stage-learn .lit36-nav button{min-height:54px;border-radius:16px;font-size:14px}
  .lit55-literacy:is(.lit55-stage-trace,.lit55-stage-draw,.lit55-stage-hear-draw){padding-inline:10px}
  .lit55-literacy .lit37-practice-flip{width:100%;min-height:560px;margin-bottom:14px}
  .lit55-literacy .lit37-practice-face,.lit55-literacy .lit37-practice-back{border-radius:28px}
  .lit55-literacy .lit37-practice-face strong{font-size:clamp(150px,48vw,220px)}
  .lit55-literacy .lit37-practice-back{padding:0 9px 11px}
  .lit55-literacy .lit37-practice-tools{margin:0 -9px 10px;padding:11px 12px;align-items:center;flex-direction:row}
  .lit55-literacy .lit37-practice-tools>span{font-size:10px}
  .lit55-literacy .lit37-audio-only{margin-bottom:12px;padding:13px;border-radius:18px}
  .lit55-field-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 10px;padding:5px;border-radius:16px;background:#eae1ef}
  .lit55-field-switch button{min-height:42px;border:0;border-radius:12px;background:transparent;color:#6d5c76;font-size:11px;font-weight:900}
  .lit55-field-switch button.active{background:#fff;color:#51366d;box-shadow:0 3px 10px #4b38541a}
  .lit55-literacy .lit48-draw-grid{display:block}
  .lit55-literacy .lit48-draw-field{display:none;padding:9px;border-radius:21px;box-shadow:0 5px 0 #d8c9e3,0 12px 24px #41324e12}
  .lit55-literacy .lit48-draw-field.lit55-active-field{display:grid}
  .lit55-literacy .lit48-draw-field header{min-height:38px;padding:0 2px 8px}
  .lit55-literacy .lit48-draw-field header b{font-size:11px}
  .lit55-literacy .lit48-draw-surface{width:100%;aspect-ratio:1;border-radius:16px;background-size:24px 24px,24px 24px,auto}
  .lit55-literacy .lit48-guide{font-size:clamp(140px,48vw,210px)}
  .lit55-literacy .lit48-guide-word{font-size:clamp(50px,17vw,78px)}
  .lit55-literacy .lit36-draw-actions{
    position:sticky;
    z-index:12;
    bottom:calc(72px + env(safe-area-inset-bottom));
    grid-template-columns:1fr 1.25fr;
    gap:8px;
    margin:12px auto 0;
    padding:9px;
    border:1px solid #ffffffd9;
    border-radius:22px;
    background:#f9f5f0e8;
    box-shadow:0 14px 35px #3c2e4b24;
    backdrop-filter:blur(16px);
  }
  .lit55-literacy .lit36-draw-actions button{min-height:50px;border-radius:14px;font-size:12px;box-shadow:0 4px 0 #dfd3e6}
  .lit55-literacy .lit36-draw-actions [data-v54-check-drawing]{grid-column:1/-1;grid-row:1;min-height:54px;order:0}
  .lit55-literacy .lit36-draw-actions [data-lit36="clear-draw"]{grid-column:1;grid-row:2}
  .lit55-literacy .lit36-draw-actions [data-lit36="finish-draw"]{grid-column:2;grid-row:2}
}

@media (max-width:390px){
  .lit55-literacy{padding-inline:8px}
  .lit55-literacy.lit55-stage-learn .lit36-flip{height:clamp(330px,50svh,400px);min-height:330px}
  .lit55-literacy .lit37-practice-flip{min-height:520px}
  .lit55-literacy .lit36-draw-actions{bottom:calc(66px + env(safe-area-inset-bottom))}
}

@media (prefers-reduced-motion:reduce){
  .lit55-literacy .lit36-face,.lit55-literacy .lit37-practice-face,.lit55-literacy .lit37-practice-back{transition:none!important}
}


/* ===== frontend/features/course-structure-v57.css ===== */
/* v57 canonical course navigation and learning workspace. */
.c57-map,.c57-zone{--c57-ink:#282136;--c57-muted:#766d80;--c57-purple:#7550a2;--c57-purple2:#a978cc;--c57-gold:#f4c95d;--c57-mint:#6fc4a1;--c57-blue:#67aee6;min-height:100svh;color:var(--c57-ink);font-family:'Readex Pro',sans-serif}
.c57-map{padding:clamp(20px,4vw,52px) clamp(14px,5vw,72px) calc(120px + env(safe-area-inset-bottom));background:radial-gradient(circle at 6% 10%,#ffe78f 0 8rem,transparent 8.1rem),radial-gradient(circle at 94% 24%,#cfeaff 0 11rem,transparent 11.1rem),linear-gradient(180deg,#fffaf2,#f2edfb 55%,#eaf8f2)}
.c57-map button,.c57-zone button{font:inherit;cursor:pointer}.c57-map button:disabled,.c57-zone button:disabled{cursor:not-allowed}
.c57-map-hero{width:min(1240px,100%);margin:0 auto 26px;padding:clamp(24px,4vw,48px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:center;border:1px solid #ffffffd9;border-radius:38px;background:#ffffffc9;box-shadow:0 18px 55px #4b365217;backdrop-filter:blur(15px)}
.c57-map-hero>div>span,.c57-study>header>span,.c57-exam>header>span{font:900 10px 'DM Sans',sans-serif;letter-spacing:.15em;color:#8d64ad}.c57-map-hero h1{margin:10px 0;font-size:clamp(34px,5vw,64px);line-height:1.12;letter-spacing:-.04em}.c57-map-hero p{max-width:760px;margin:0;color:var(--c57-muted);font-size:12px;line-height:1.9}.c57-map-hero aside{width:150px;height:150px;border-radius:34px;display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#7653a4,#4e3768);color:#fff;box-shadow:0 11px 0 #3f2b57}.c57-map-hero aside strong{font:900 48px 'DM Sans',sans-serif}.c57-map-hero aside small{font-size:9px;color:#e8ddf2}
.c57-levels{width:min(1100px,100%);margin:auto;display:grid;gap:14px}.c57-level{width:100%;min-height:122px;padding:17px 20px;display:grid;grid-template-columns:60px 58px minmax(0,1fr) 72px;gap:17px;align-items:center;text-align:start;border:1px solid #e5dbe8;border-radius:26px;background:#fffefa;color:var(--c57-ink);box-shadow:0 7px 0 #dbcee5;transition:.18s}.c57-level:not(:disabled):hover{transform:translateY(-3px);border-color:#ad8bc6}.c57-level.locked{opacity:.48;box-shadow:none}.c57-level.current{background:#f8f1ff;border:2px solid #9a73bb}.c57-level.complete{background:#eff9f4;border-color:#8dc9ad;box-shadow:0 7px 0 #b7dfce}.c57-level-no{font:900 20px 'DM Sans',sans-serif;color:#8a6ba4}.c57-level-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:#ede3f5;color:#705094}.c57-level.current .c57-level-icon{background:#7653a4;color:#fff}.c57-level.complete .c57-level-icon{background:#5da884;color:#fff}.c57-level>span:nth-child(3){min-width:0}.c57-level small,.c57-level em{font-size:9px;color:#8a7e90;font-style:normal}.c57-level strong{display:block;margin:3px 0;font-size:20px}.c57-level i{display:block;height:7px;margin-top:10px;border-radius:99px;background:#ebe3ee;overflow:hidden}.c57-level i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7653a4,#d48bb2,#f1c75e)}.c57-level>b{font:900 20px 'DM Sans',sans-serif;color:#755494;text-align:center}
.c57-box-page{width:min(1240px,100%);margin:auto;padding:clamp(18px,3vw,34px);border:1px solid #ffffffde;border-radius:34px;background:#ffffffc9;box-shadow:0 18px 50px #4b365212}.c57-box-page>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:25px}.c57-box-page>header button{border:1px solid #ded2e5;border-radius:15px;padding:11px 14px;background:#fff;color:#634c76;display:flex;align-items:center;gap:7px;font-weight:800}.c57-box-page>header small{color:#8c709f;font-size:9px}.c57-box-page>header h2{margin:4px 0;font-size:28px}.c57-box-page>header>span{font-size:10px;color:#7e7285;background:#f1eaf4;padding:9px 12px;border-radius:99px}.c57-boxes{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px}.c57-box{min-height:132px;padding:10px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid #e0d8e3;border-radius:18px;background:#fff;color:#4f4456;box-shadow:0 4px 0 #e3dae7;transition:.15s}.c57-box:not(:disabled):hover{transform:translateY(-3px)}.c57-box>span{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#eee7f2;color:#765798;font:900 13px 'DM Sans',sans-serif}.c57-box>strong{font-size:11px}.c57-box>small{min-height:28px;text-align:center;font-size:7px;line-height:1.5;color:#8a7e8e}.c57-box>i{display:grid;grid-template-columns:repeat(6,1fr);gap:2px;width:100%}.c57-box>i b{height:4px;border-radius:9px;background:#e4dde6}.c57-box>i b.done{background:#65b08d}.c57-box>i b.active{background:#f0bd50}.c57-box.current{border:2px solid #8f68af;background:#f9f3fd}.c57-box.current>span{background:#7653a4;color:#fff}.c57-box.complete{border-color:#8bc7a9;background:#f0f9f5}.c57-box.complete>span{background:#58a47f;color:#fff}.c57-box.locked{opacity:.4;box-shadow:none}.c57-manage{position:fixed;z-index:20;left:20px;bottom:calc(88px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:7px;padding:12px 15px;border:0;border-radius:16px;background:#2f2739;color:#fff;box-shadow:0 6px 0 #17121d;font-weight:800}
.c57-manager{position:fixed;z-index:90;inset:0;display:grid;place-items:center;padding:20px}.c57-manager-shade{position:absolute;inset:0;border:0;background:#21192b99;backdrop-filter:blur(5px)}.c57-manager>section{position:relative;width:min(900px,100%);max-height:88svh;overflow:auto;padding:26px;border-radius:28px;background:#fff;color:var(--c57-ink);box-shadow:0 30px 90px #160e22aa}.c57-manager header{display:flex;justify-content:space-between;gap:15px;align-items:center}.c57-manager h2{margin:4px 0}.c57-manager header>button{width:42px;height:42px;border:0;border-radius:50%;font-size:26px}.c57-manager>section>p{color:var(--c57-muted);font-size:11px;line-height:1.8}.c57-schema-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.c57-schema-grid article{padding:17px;border:1px solid #e3d9e7;border-radius:19px;background:#fbf8fc}.c57-schema-grid strong,.c57-schema-grid small{display:block}.c57-schema-grid small{min-height:54px;margin:8px 0;color:#827889;font:700 8px/1.6 'DM Sans',sans-serif}.c57-schema-grid button{width:100%;padding:10px;border:0;border-radius:12px;background:#7653a4;color:#fff;font-weight:800}.c57-import{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:18px 0 8px;padding:17px;border:2px dashed #cdbbd9;border-radius:18px;background:#f9f4fc}.c57-import input{max-width:230px;font-size:10px}
.c57-zone{padding:18px clamp(12px,3vw,36px) calc(80px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#f7f2fb,#fffaf2 48%,#edf8f3)}.c57-zone-top{width:min(1400px,100%);margin:0 auto 16px;padding:11px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;border:1px solid #e2d9e7;border-radius:19px;background:#ffffffde;backdrop-filter:blur(12px)}.c57-zone-top>button{padding:10px 13px;display:flex;gap:7px;align-items:center;border:1px solid #ddd2e4;border-radius:13px;background:#fff;color:#654d78;font-weight:800}.c57-zone-top>div{text-align:center}.c57-zone-top small{display:block;color:#897d91;font-size:8px}.c57-zone-top strong{font-size:17px}.c57-zone-top>span{padding:8px 11px;border-radius:99px;background:#eee5f4;color:#6f5189;font-size:9px;font-weight:800}.c57-zone-grid{width:min(1400px,100%);margin:auto;display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}.c57-stage-nav{position:sticky;top:18px;padding:16px;border:1px solid #e2d9e5;border-radius:25px;background:#ffffffde;box-shadow:0 13px 35px #46325011;backdrop-filter:blur(12px)}.c57-stage-nav>header{padding:6px 6px 15px}.c57-stage-nav>header span{display:block;color:#8b7799;font-size:9px}.c57-stage-nav>header strong{font-size:20px}.c57-stage-nav>section{margin:7px 0;padding:6px;border-radius:17px}.c57-stage-nav>section.active{background:#f0e7f6}.c57-stage-nav>section.locked{opacity:.42}.c57-stage-nav>section>button{width:100%;display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;text-align:start;border:0;background:transparent;color:inherit;padding:6px}.c57-stage-nav>section>button>b{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#755595;font:900 11px 'DM Sans',sans-serif}.c57-stage-nav>section>button strong,.c57-stage-nav>section>button small{display:block}.c57-stage-nav>section>button strong{font-size:12px}.c57-stage-nav>section>button small{font-size:7px;color:#867a8b}.c57-stage-nav section>div{display:none;grid-template-columns:1fr 1fr;gap:5px;margin:5px}.c57-stage-nav section.active>div{display:grid}.c57-stage-nav section>div button{padding:8px 5px;border:1px solid #dfd5e4;border-radius:10px;background:#fff;color:#75657f;font-size:8px;font-weight:800}.c57-stage-nav section>div button.active{background:#7653a4;color:#fff;border-color:#7653a4}.c57-stage-nav section>div button.done{border-color:#75b798;color:#388263}.c57-workspace{min-width:0;min-height:720px;padding:clamp(18px,3vw,38px);border:1px solid #e3dae5;border-radius:30px;background:#fffdfb;box-shadow:0 16px 45px #45344e12}.c57-error{margin:0 0 15px;padding:12px 15px;border-radius:14px;background:#fff0f1;color:#9b4357;font-size:10px;line-height:1.6}
.c57-study>header,.c57-exam>header{text-align:center;max-width:760px;margin:0 auto 18px}.c57-study>header h1,.c57-exam>header h1{margin:7px 0;font-size:clamp(27px,4vw,45px);letter-spacing:-.03em}.c57-study>header p,.c57-exam>header p{margin:0;color:var(--c57-muted);font-size:11px;line-height:1.8}.c57-pager{max-width:760px;margin:0 auto 16px;display:grid;grid-template-columns:1fr auto;gap:5px;color:#84778b;font-size:9px}.c57-pager>b{font:900 12px 'DM Sans',sans-serif;color:#654b7a}.c57-pager>i{grid-column:1/-1;height:6px;border-radius:99px;background:#eee8f0;overflow:hidden}.c57-pager>i u{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7653a4,#d481a8,#f1c65a)}.c57-controls{max-width:760px;margin:18px auto 0;display:grid;grid-template-columns:1fr 1.5fr;gap:10px}.c57-controls button,.c57-question-next button,.c57-media-next{min-height:52px;border:1px solid #ded4e2;border-radius:15px;background:#fff;color:#675572;font-weight:900}.c57-controls .primary,.c57-question-next .primary,.c57-media-next.primary,.c57-ai-start .primary,.c57-summary .primary,.c57-question .primary{border:0;background:#2f2739;color:#fff;box-shadow:0 5px 0 #17121d}
.c57-word-card{--card-a:#7653a4;--card-b:#f7d96b;--card-ink:#30233d;position:relative;width:min(760px,100%);height:min(55svh,500px);min-height:390px;margin:auto;perspective:1200px;cursor:pointer;outline:none}.c57-word-card:focus-visible{filter:drop-shadow(0 0 0 #fff) drop-shadow(0 0 4px var(--card-a))}.c57-word-card.tone-2{--card-a:#e26d8f;--card-b:#ffd17b;--card-ink:#51233b}.c57-word-card.tone-3{--card-a:#218fa1;--card-b:#88e0bf;--card-ink:#173d49}.c57-word-card.tone-4{--card-a:#e3783d;--card-b:#ffe28a;--card-ink:#542d1e}.c57-word-card.tone-5{--card-a:#4e78c7;--card-b:#9dd9ff;--card-ink:#20365e}.c57-word-card.tone-6{--card-a:#7f63bd;--card-b:#f3a9cf;--card-ink:#392852}.c57-word-card>.front,.c57-word-card>.back{position:absolute;inset:0;padding:38px;border-radius:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;backface-visibility:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .2s;border:3px solid #ffffffb8;box-shadow:0 11px 0 color-mix(in srgb,var(--card-a) 72%,#34243e),0 26px 50px #47305425}.c57-word-card>.front{background:radial-gradient(circle at 12% 18%,#ffffff70 0 65px,transparent 66px),radial-gradient(circle at 88% 86%,var(--card-a) 0 85px,transparent 86px),linear-gradient(140deg,var(--card-b),#fff6cf 46%,#fff)}.c57-word-card>.back{background:radial-gradient(circle at 88% 17%,#ffffff70 0 72px,transparent 73px),radial-gradient(circle at 12% 88%,var(--card-b) 0 90px,transparent 91px),linear-gradient(140deg,#dff8ed,#fff 48%,color-mix(in srgb,var(--card-a) 24%,#fff));transform:rotateY(180deg)}.c57-word-card:hover>.front,.c57-word-card:hover>.back{box-shadow:0 14px 0 color-mix(in srgb,var(--card-a) 72%,#34243e),0 30px 55px #47305430}.c57-word-card.flipped>.front{transform:rotateY(180deg)}.c57-word-card.flipped>.back{transform:rotateY(360deg)}.c57-word-card small{font:900 11px 'DM Sans',sans-serif;letter-spacing:.2em;color:var(--card-ink)}.c57-word-card strong{max-width:90%;margin:20px 0 24px;font-size:clamp(55px,9vw,108px);line-height:1;text-align:center;color:var(--card-ink);text-wrap:balance}.c57-word-card .back strong{font-size:clamp(42px,7vw,82px)}.c57-word-card .c57-card-voice{position:relative;z-index:5;width:48px;height:48px;min-width:48px;min-height:48px;padding:0;display:grid;place-items:center;border:2px solid #ffffffc9;border-radius:50%;background:var(--card-a);color:#fff;box-shadow:0 5px 0 color-mix(in srgb,var(--card-a) 65%,#2b2032);transition:.15s}.c57-word-card .c57-card-voice:hover{transform:translateY(-2px)}.c57-word-card .c57-card-voice:active{transform:translateY(3px);box-shadow:0 2px 0 color-mix(in srgb,var(--card-a) 65%,#2b2032)}.c57-card-count{position:absolute;inset-block-start:22px;inset-inline-start:24px;padding:7px 11px;border-radius:99px;background:#ffffffb5;color:var(--card-ink);font:900 10px 'DM Sans',sans-serif}.c57-card-doodle{position:absolute;inset-block-start:24px;inset-inline-end:26px;color:var(--card-a);font:900 20px 'DM Sans',sans-serif;letter-spacing:.15em}.c57-word-card em{position:absolute;bottom:18px;padding:6px 11px;border-radius:99px;background:#ffffff9c;color:var(--card-ink);font-size:8px;font-style:normal;font-weight:900}
.c57-grammar-card{width:min(760px,100%);min-height:390px;margin:auto;padding:clamp(28px,6vw,65px);display:flex;flex-direction:column;justify-content:center;border:1px solid #ead8b5;border-radius:36px;background:radial-gradient(circle at 90% 12%,#ffe18f 0 70px,transparent 71px),linear-gradient(145deg,#fffdf8,#fff5df);box-shadow:0 10px 0 #ead6a9}.c57-grammar-card small{font-size:10px;color:#a16f22;font-weight:900}.c57-grammar-card p{font-size:clamp(17px,2vw,24px);line-height:1.9}.c57-grammar-card strong{padding:20px;border-radius:18px;background:#302a3b;color:#fff;font:800 clamp(17px,2.5vw,28px)/1.6 'DM Sans',sans-serif;text-align:center}
.c57-question{width:min(800px,100%);min-height:430px;margin:auto;padding:clamp(22px,4vw,42px);display:flex;flex-direction:column;justify-content:center;border:1px solid #e4d9e7;border-radius:32px;background:linear-gradient(145deg,#fff,#faf7fd);box-shadow:0 8px 0 #ddd0e5}.c57-question>small{text-align:center;color:#8969a0;font:900 9px 'DM Sans',sans-serif;letter-spacing:.12em}.c57-question>h2{max-width:700px;margin:14px auto 24px;text-align:center;font-size:clamp(20px,3vw,31px);line-height:1.6}.c57-draw-question,.c57-write-question,.c57-speak-question{display:flex;flex-direction:column;align-items:center;gap:14px}.c57-prompt{text-align:center}.c57-prompt small,.c57-write-question>small{font:900 9px 'DM Sans',sans-serif;color:#9674aa;letter-spacing:.14em}.c57-prompt strong,.c57-write-question>strong,.c57-speak-question>strong{display:block;margin:5px;font-size:clamp(32px,6vw,60px)}.c57-prompt p{margin:0;color:#817586;font-size:10px}.c57-draw-question canvas{width:100%;height:min(34svh,310px);border:2px solid #cdbbd8;border-radius:23px;touch-action:none;background:linear-gradient(#eee6f0 1px,transparent 1px),linear-gradient(90deg,#eee6f0 1px,transparent 1px),#fff;background-size:28px 28px;cursor:crosshair}.c57-draw-question>button,.c57-write-question>button{min-width:240px;min-height:50px;border-radius:14px}.c57-write-question label{width:100%;display:grid;gap:8px}.c57-write-question label span{font-size:10px;color:#786d7e}.c57-write-question input,.c57-correction input{width:100%;min-height:58px;padding:13px 16px;border:2px solid #d8cadf;border-radius:16px;background:#fff;font:700 18px 'Readex Pro',sans-serif}.c57-reveal{width:100%;padding:17px;border-radius:18px;text-align:center;background:#f1ebf5}.c57-reveal>span{display:block;font-size:8px;color:#807384}.c57-reveal>strong{display:block;margin:5px;font-size:28px}.c57-reveal>div{display:flex;justify-content:center;gap:8px;margin-top:10px}.c57-reveal button{padding:10px 15px;border:1px solid #d9cde0;border-radius:12px}.c57-speak-question{text-align:center}.c57-voice-orb{width:90px;height:90px;border-radius:30px;display:grid;place-items:center;background:linear-gradient(145deg,#7653a4,#a875c6);color:#fff;box-shadow:0 8px 0 #50366e}.c57-speak-question>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(520px,100%)}.c57-speak-question>div button{min-height:55px;border:1px solid #ddcfe5;border-radius:16px;background:#fff;display:flex;gap:8px;align-items:center;justify-content:center;font-weight:900}.c57-feedback{width:100%;padding:14px;border-radius:15px}.c57-feedback.correct{background:#e5f7ee;color:#247154}.c57-feedback.wrong{background:#fff0f1;color:#9b4056}.c57-question-next{width:min(800px,100%);margin:20px auto 0;display:flex;justify-content:flex-end}.c57-question-next button{min-width:230px}
.c57-options{display:grid;gap:9px}.c57-options button{min-height:54px;padding:12px 15px;border:1px solid #ded4e3;border-radius:15px;background:#fff;text-align:start;color:#514659;font-weight:800}.c57-options button.selected{border:2px solid #7653a4;background:#f3ebf8;color:#5f4079}.c57-built{min-height:72px;padding:12px;display:flex;gap:7px;flex-wrap:wrap;align-items:center;border:2px dashed #cab8d5;border-radius:17px;background:#faf7fc}.c57-built span{margin:auto;color:#887b8e;font-size:10px}.c57-built button,.c57-tokens button{padding:10px 12px;border:1px solid #d8cce0;border-radius:11px;background:#fff;color:#554560;font:800 13px 'DM Sans',sans-serif}.c57-tokens{margin-top:12px;display:flex;flex-wrap:wrap;gap:7px;justify-content:center}.c57-correction{display:grid;gap:8px}.c57-correction span{font-size:10px;color:#776b7e}.c57-ai-start,.c57-summary{width:min(720px,100%);min-height:520px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;border:1px solid #e2d6e7;border-radius:36px;background:radial-gradient(circle at 12% 15%,#ffe48e 0 65px,transparent 66px),radial-gradient(circle at 88% 82%,#b7e8d2 0 75px,transparent 76px),linear-gradient(145deg,#fff,#f8f2fc);box-shadow:0 10px 0 #d6c5e0}.c57-ai-start>span,.c57-summary>span{width:88px;height:88px;border-radius:29px;display:grid;place-items:center;background:#7653a4;color:#fff}.c57-ai-start h1,.c57-summary h1{margin:20px 0 9px;font-size:clamp(30px,5vw,54px)}.c57-ai-start p,.c57-summary p{max-width:560px;color:#786d7f;font-size:11px;line-height:1.9}.c57-ai-start button,.c57-summary button{min-width:260px;min-height:56px;margin-top:14px;border-radius:17px;font-weight:900}.c57-summary.pass>span{background:#4c9a76}.c57-summary.retry>span{background:#bd6b7e}
.c57-complete-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}.c57-complete-actions button{padding:0 18px;border:1px solid #dacde1;background:#fff;color:#65536f}.c57-complete-actions .primary{border:0;background:#2f2739;color:#fff}
.c57-video{width:min(900px,100%);margin:auto;aspect-ratio:16/9;border-radius:26px;overflow:hidden;background:#1d1822;box-shadow:0 9px 0 #cbbbd4}.c57-video iframe{width:100%;height:100%;border:0}.c57-media-next{display:block;min-width:300px;margin:24px auto 0;padding:0 20px}.c57-story{width:min(800px,100%);min-height:430px;margin:auto;padding:clamp(26px,5vw,55px);border:1px solid #ddcfb8;border-radius:32px;background:linear-gradient(90deg,#fffdfa,#fff8e9);box-shadow:0 9px 0 #e3d5bb}.c57-story>p{font:600 clamp(18px,2.5vw,26px)/2 'DM Sans',sans-serif}.c57-story aside{margin-top:22px;padding:16px;border-radius:15px;background:#f2ead9;color:#6f6353;font-size:11px;line-height:1.8}.c57-empty{width:min(800px,100%);margin:auto;padding:70px 20px;text-align:center;border:2px dashed #d9cedd;border-radius:25px;color:#897d8e}
@media (max-width:1100px){.c57-boxes{grid-template-columns:repeat(5,minmax(0,1fr))}.c57-zone-grid{grid-template-columns:230px minmax(0,1fr)}.c57-workspace{padding:24px}.c57-schema-grid{grid-template-columns:1fr}}
@media (max-width:767px){.c57-map{padding:12px 9px calc(105px + env(safe-area-inset-bottom))}.c57-map-hero{grid-template-columns:1fr;padding:23px;border-radius:27px}.c57-map-hero aside{width:100%;height:auto;padding:15px;border-radius:20px;display:flex;align-items:baseline;justify-content:center;gap:7px;box-shadow:0 6px 0 #3f2b57}.c57-map-hero aside strong{font-size:30px}.c57-level{grid-template-columns:42px 45px minmax(0,1fr);padding:12px;gap:10px;border-radius:20px}.c57-level>b{grid-column:3;font-size:13px;text-align:start}.c57-level-icon{width:43px;height:43px;border-radius:14px}.c57-level strong{font-size:15px}.c57-box-page{padding:14px 9px;border-radius:25px}.c57-box-page>header{grid-template-columns:auto 1fr}.c57-box-page>header>span{display:none}.c57-box-page>header h2{font-size:20px}.c57-boxes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.c57-box{min-height:122px}.c57-manage{left:10px;bottom:calc(78px + env(safe-area-inset-bottom));font-size:10px}.c57-manager{padding:8px}.c57-manager>section{padding:18px;border-radius:22px}.c57-schema-grid{grid-template-columns:1fr}.c57-import{align-items:flex-start;flex-direction:column}.c57-zone{padding:8px 7px calc(70px + env(safe-area-inset-bottom))}.c57-zone-top{grid-template-columns:auto 1fr;padding:8px}.c57-zone-top>button{width:43px;height:43px;padding:0;display:grid;place-items:center;font-size:0}.c57-zone-top>span{display:none}.c57-zone-grid{display:block}.c57-stage-nav{position:relative;top:0;margin-bottom:9px;padding:8px;display:flex;gap:7px;overflow-x:auto;border-radius:20px}.c57-stage-nav>header{display:none}.c57-stage-nav>section{flex:0 0 185px;margin:0}.c57-stage-nav section.active>div{display:grid}.c57-workspace{min-height:610px;padding:18px 10px;border-radius:24px}.c57-study>header h1,.c57-exam>header h1{font-size:27px}.c57-word-card{height:440px;min-height:440px}.c57-word-card>.front,.c57-word-card>.back{padding:24px 14px;border-radius:28px}.c57-word-card strong{font-size:61px}.c57-word-card .back strong{font-size:46px}.c57-controls{gap:7px}.c57-question{min-height:430px;padding:20px 12px;border-radius:24px}.c57-draw-question canvas{height:280px}.c57-speak-question>div{grid-template-columns:1fr}.c57-options button{font-size:11px}.c57-ai-start,.c57-summary{min-height:500px;padding:25px 16px;border-radius:27px}.c57-video{border-radius:19px}.c57-story{min-height:400px;padding:25px 19px;border-radius:24px}.c57-media-next{min-width:0;width:100%}}
@media (prefers-reduced-motion:reduce){.c57-word-card>.front,.c57-word-card>.back,.c57-level,.c57-box{transition:none!important}}


/* ===== frontend/features/admin-access-content-control-v97.css ===== */
/* v97: admin study content control visual system. */
.v97-content-button{display:flex!important;align-items:center;gap:12px;min-height:64px;padding:10px 14px!important;border-radius:20px!important;background:linear-gradient(135deg,#51366d,#6f5388)!important;color:#fff!important;box-shadow:0 14px 34px rgba(81,54,109,.22)!important;border:1px solid rgba(255,255,255,.18)!important;text-align:start!important}
.v97-content-button .v97-content-button-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:rgba(255,255,255,.14);flex:0 0 auto}
.v97-content-button .v97-content-button-icon svg{width:22px;height:22px}
.v97-content-button>span:nth-child(2){display:grid;gap:2px;min-width:0;flex:1}
.v97-content-button small{font-size:10px;letter-spacing:.12em;opacity:.7}
.v97-content-button strong{font-size:14px;line-height:1.2}
.v97-content-button>b{font-size:10px;font-weight:700;padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.13);white-space:nowrap}

.v97-content-control>section{width:min(960px,calc(100vw - 24px))!important;max-height:min(88vh,900px)!important;overflow:auto!important;padding:0!important;border-radius:30px!important;background:#fbf9f5!important;border:1px solid #e8e0ec!important;box-shadow:0 28px 90px rgba(42,25,55,.28)!important}
.v97-content-control .v97-cc-head{display:flex;gap:24px;align-items:flex-start;justify-content:space-between;padding:28px 28px 22px;background:linear-gradient(145deg,#4a315f,#6b4d80);color:#fff;border-radius:30px 30px 0 0}
.v97-content-control .v97-cc-head>div{max-width:680px}
.v97-content-control .v97-cc-kicker{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.14em;opacity:.72;margin-bottom:8px}
.v97-content-control .v97-cc-head h2{margin:0 0 8px;font-size:clamp(24px,4vw,34px);line-height:1.08;color:#fff}
.v97-content-control .v97-cc-head p{margin:0;max-width:620px;line-height:1.55;color:rgba(255,255,255,.78)}
.v97-content-control .v97-cc-close{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:14px;background:rgba(255,255,255,.12);color:#fff;font-size:27px;line-height:1;flex:0 0 auto}

.v97-cc-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 22px 6px}
.v97-cc-overview article{display:grid;gap:2px;padding:14px 16px;background:#fff;border:1px solid #eee7f2;border-radius:18px}
.v97-cc-overview strong{font-size:24px;color:#51366d;line-height:1}
.v97-cc-overview span{font-size:12px;color:#806e89}

.v97-cc-phases{display:grid;gap:10px;padding:16px 22px}
.v97-cc-phases article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:15px;align-items:center;padding:17px 18px;border-radius:20px;background:#fff;border:1px solid #ece5ef}
.v97-cc-step{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;background:#eee7f2;color:#51366d;font-weight:800}
.v97-cc-phases h3{margin:0 0 4px;color:#34223f;font-size:16px}
.v97-cc-phases p{margin:0;color:#806e89;font-size:12px;line-height:1.5}
.v97-cc-phases article>small{font-size:10px;font-weight:700;color:#6c5876;background:#f5f1f7;padding:7px 9px;border-radius:10px;max-width:220px;text-align:center}

.v97-cc-workbook{margin:2px 22px 18px;padding:18px;border-radius:22px;background:#f2ecf5;border:1px solid #dfd2e6}
.v97-cc-file{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.v97-cc-file>span{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#51366d;color:#fff;flex:0 0 auto}
.v97-cc-file svg{width:27px;height:27px}
.v97-cc-file>div{min-width:0}
.v97-cc-file small{display:block;font-size:9px;font-weight:800;letter-spacing:.11em;color:#806e89;margin-bottom:3px}
.v97-cc-file strong{display:block;color:#3e2855;font-size:15px;overflow:hidden;text-overflow:ellipsis}
.v97-cc-file p{margin:5px 0 0;color:#806e89;font-size:10px;line-height:1.4;word-break:break-word}
.v97-cc-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v97-cc-download,.v97-cc-import{min-height:48px;border-radius:15px;border:0;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.v97-cc-download{background:#51366d;color:#fff}
.v97-cc-import{background:#fff;color:#51366d;border:1px solid #d9cde1;position:relative;overflow:hidden}
.v97-cc-import input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.v97-cc-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 22px 22px;color:#806e89;font-size:11px;line-height:1.45}
.v97-cc-foot b{background:#eee7f2;color:#51366d;padding:6px 9px;border-radius:9px;white-space:nowrap}

@media(max-width:700px){
  .v97-content-control>section{width:calc(100vw - 12px)!important;max-height:92vh!important;border-radius:24px!important}
  .v97-content-control .v97-cc-head{padding:22px 18px 18px;border-radius:24px 24px 0 0}
  .v97-cc-overview{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 14px 4px}
  .v97-cc-phases{padding:12px 14px}
  .v97-cc-phases article{grid-template-columns:auto minmax(0,1fr);padding:14px}
  .v97-cc-phases article>small{grid-column:2;justify-self:start;max-width:100%;text-align:start}
  .v97-cc-workbook{margin:2px 14px 14px;padding:14px}
  .v97-cc-actions{grid-template-columns:1fr}
  .v97-cc-foot{padding:0 14px 18px}
}


/* ===== frontend/features/study-exam-redesign-v112.css ===== */
/* Build 112: playful, accessible Study exam controls. */

.v112-vocab-question{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:500px;
  border:1px solid #dfd2ea;
  background:
    radial-gradient(circle at 12% 14%,#ffe498 0 54px,transparent 55px),
    radial-gradient(circle at 91% 88%,#bcebd8 0 76px,transparent 77px),
    linear-gradient(145deg,#fffdfb 0%,#fbf6ff 54%,#f3fbf8 100%);
  box-shadow:0 10px 0 #d9c9e3,0 24px 52px #4c356916;
}
.v112-vocab-question:before,
.v112-vocab-question:after{
  content:"";
  position:absolute;
  z-index:-1;
  border:1px dashed #9872bb55;
  border-radius:50%;
  pointer-events:none;
}
.v112-vocab-question:before{width:160px;height:160px;inset:-82px auto auto -66px}
.v112-vocab-question:after{width:120px;height:120px;inset:auto -54px -58px auto;border-color:#4c9a7c55}

.v112-vocab-prompt{text-align:center;margin:0 auto 28px}
.v112-vocab-prompt small{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 13px;
  border-radius:999px;
  background:#efe6fa;
  color:#77509d;
  font:900 10px 'DM Sans',sans-serif;
  letter-spacing:.12em;
}
.v112-vocab-prompt small i{font-style:normal;color:#d4779d}
.v112-vocab-prompt h2{
  margin:20px 0 0;
  color:#292239;
  font:900 clamp(38px,7vw,66px)/1.25 'DM Sans','Readex Pro',sans-serif;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
}
.v112-vocab-write{
  width:min(640px,100%);
  margin:0 auto;
  gap:10px;
}
.v112-vocab-write>span{
  color:#6d6177;
  font-size:12px;
  font-weight:800;
}
.v112-vocab-write input{
  min-height:74px;
  border:2px solid #d4c1e0;
  border-radius:22px;
  background:#fff;
  color:#2d2539;
  padding:16px 20px;
  font:800 clamp(18px,3vw,28px) 'Readex Pro','DM Sans',sans-serif;
  box-shadow:0 7px 0 #e4d8eb;
  transition:border-color .18s,box-shadow .18s,transform .18s;
}
.v112-vocab-write input:focus{
  outline:0;
  border-color:#7b56a5;
  box-shadow:0 0 0 5px #7b56a51c,0 7px 0 #cdb7da;
  transform:translateY(-1px);
}

.v112-vocab-actions{
  width:min(800px,100%);
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
}
.v112-vocab-actions button{
  min-width:0;
  min-height:62px;
  border-radius:19px;
  font-size:16px;
  transition:transform .16s,box-shadow .16s,filter .16s;
}
.v112-vocab-actions button:hover{transform:translateY(-2px);filter:saturate(1.05)}
.v112-vocab-actions button:active{transform:translateY(2px)}
.v112-vocab-actions .primary{
  background:linear-gradient(135deg,#5f3d86,#342941);
  box-shadow:0 7px 0 #1d1724;
}
.v112-vocab-actions button:not(.primary){
  border:2px solid #b8dccd;
  background:#e9f8f1;
  color:#286950;
  box-shadow:0 6px 0 #cce7dc;
}

.v112-pronounce-card{
  width:min(660px,100%);
  margin:auto;
  padding:clamp(24px,5vw,48px);
  text-align:center;
  border:1px solid #ded0eb;
  border-radius:34px;
  background:
    radial-gradient(circle at 8% 8%,#ffe79b 0 42px,transparent 43px),
    radial-gradient(circle at 92% 88%,#b9ead8 0 56px,transparent 57px),
    linear-gradient(150deg,#fff 0%,#f6edff 48%,#effaf6 100%);
  box-shadow:0 9px 0 #d6c3e2;
}
.v112-pronounce-card>small{
  display:block;
  margin-top:22px;
  color:#8059a3;
  font:900 10px 'DM Sans',sans-serif;
  letter-spacing:.16em;
}
.v112-pronounce-card>h2{
  margin:10px 0 5px;
  color:#292139;
  font:900 clamp(42px,8vw,72px)/1.15 'DM Sans',sans-serif;
  letter-spacing:-.04em;
}
.v112-pronounce-card>p{
  margin:0 auto 24px;
  color:#756a7e;
  font-size:12px;
  line-height:1.8;
}
.v112-sound-stage{
  position:relative;
  width:146px;
  height:132px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  border-radius:42% 58% 53% 47%;
  color:#fff;
  background:linear-gradient(145deg,#7452aa,#b26da8 58%,#e8a45c);
  box-shadow:0 10px 0 #51366f,0 20px 38px #694c872e;
  transform:rotate(-3deg);
}
.v112-sound-stage span{
  position:absolute;
  inset:50% auto auto 50%;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:#ffffffeb;
  color:#6d4895;
  transform:translate(-50%,-50%) rotate(3deg);
  box-shadow:0 6px 18px #33213b2b;
}
.v112-sound-stage svg{width:29px;height:29px}
.v112-sound-stage i{
  width:5px;
  height:28px;
  border-radius:99px;
  background:#ffffff72;
  animation:v112-wave 1.25s ease-in-out infinite alternate;
}
.v112-sound-stage i:nth-child(2){height:48px;animation-delay:-.4s}
.v112-sound-stage i:nth-child(3){height:70px;animation-delay:-.8s}
.v112-sound-stage i:nth-child(4){height:46px;animation-delay:-.2s}
.v112-sound-stage i:nth-child(5){height:30px;animation-delay:-.65s}
.v112-pronounce-card.is-listening .v112-sound-stage{
  background:linear-gradient(145deg,#e46b8d,#f19b5a,#f3cc5f);
  animation:v112-pulse 1s ease-in-out infinite alternate;
}
.v112-speech-actions{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:12px;
}
.v112-speech-actions button{
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:2px solid #c9ded7;
  border-radius:21px;
  background:#edf9f5;
  color:#286c57;
  font:900 15px 'Readex Pro',sans-serif;
  box-shadow:0 6px 0 #d1e8df;
  transition:transform .16s,box-shadow .16s;
}
.v112-speech-actions button svg{width:25px;height:25px;flex:none}
.v112-speech-actions button.primary{
  border-color:#65438c;
  background:linear-gradient(135deg,#7651a5,#4d3769);
  color:#fff;
  box-shadow:0 6px 0 #312140;
}
.v112-speech-actions button:hover{transform:translateY(-2px)}
.v112-speech-actions button:active{transform:translateY(2px);box-shadow:0 3px 0 #c8dcd5}
.v112-speech-actions button.primary.is-listening{
  border-color:#dc6387;
  background:linear-gradient(135deg,#dc6387,#ee9360);
  box-shadow:0 6px 0 #9b3f5d;
}

.c57-options{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.c57-options button{
  position:relative;
  min-height:68px;
  padding:15px 18px;
  overflow:hidden;
  border:2px solid #dfd3e8;
  border-radius:20px;
  background:#fff;
  color:#40354d;
  text-align:start;
  font-size:14px;
  box-shadow:0 5px 0 #ece3f1;
  transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;
}
.c57-options button:nth-child(4n+1){background:#fff8df;border-color:#eed996;box-shadow:0 5px 0 #f3e7b9}
.c57-options button:nth-child(4n+2){background:#eef9f4;border-color:#b9dfcf;box-shadow:0 5px 0 #d4ebe1}
.c57-options button:nth-child(4n+3){background:#f5effc;border-color:#d7c2e8;box-shadow:0 5px 0 #e5d8ef}
.c57-options button:nth-child(4n+4){background:#fff0f3;border-color:#ecc5d0;box-shadow:0 5px 0 #f2d8df}
.c57-options button>span{display:block;width:100%;font:800 14px/1.65 'Readex Pro','DM Sans',sans-serif}
.c57-options button>b{display:none!important}
.c57-options button:hover{transform:translateY(-2px)}
.c57-options button:active{transform:translateY(2px);box-shadow:0 2px 0 #ddd1e5}
.c57-options button.selected{
  border-color:#714d9a;
  background:linear-gradient(145deg,#7652a6,#9a69b7);
  color:#fff;
  box-shadow:0 6px 0 #4e346b;
}
.c57-options button:focus-visible,
.v112-speech-actions button:focus-visible,
.v112-vocab-actions button:focus-visible{
  outline:4px solid #efb94e88;
  outline-offset:3px;
}

@keyframes v112-wave{to{transform:scaleY(.48);opacity:.55}}
@keyframes v112-pulse{to{transform:rotate(3deg) scale(1.045)}}

@media(max-width:767px){
  .v112-vocab-question{min-height:470px;padding:24px 16px}
  .v112-vocab-prompt{margin-bottom:23px}
  .v112-vocab-prompt h2{font-size:44px}
  .v112-vocab-write input{min-height:66px;border-radius:19px}
  .v112-vocab-actions{grid-template-columns:1fr 1fr;gap:8px}
  .v112-vocab-actions button{min-height:58px;font-size:14px}
  .v112-pronounce-card{padding:27px 17px;border-radius:27px}
  .v112-sound-stage{width:122px;height:111px}
  .v112-pronounce-card>h2{font-size:49px}
  .v112-speech-actions{grid-template-columns:1fr 1fr;gap:8px}
  .v112-speech-actions button{min-height:60px;padding:10px 8px;font-size:13px;border-radius:18px}
  .c57-options{grid-template-columns:1fr;gap:10px}
  .c57-options button{min-height:62px;padding:13px 16px;border-radius:18px}
}
@media(max-width:390px){
  .v112-vocab-actions{grid-template-columns:1fr}
  .v112-speech-actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .v112-sound-stage i,
  .v112-pronounce-card.is-listening .v112-sound-stage{animation:none}
  .v112-speech-actions button,
  .v112-vocab-actions button,
  .c57-options button{transition:none}
}


/* ===== study-treasure-path-v113.css ===== */
/* Build 113: vertical Study treasure path and active-box header redesign. */
.v113-map{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 5%,#ffe59a 0 85px,transparent 86px),
    radial-gradient(circle at 93% 18%,#bfeadd 0 125px,transparent 126px),
    linear-gradient(180deg,#fffaf1 0%,#f6efff 43%,#eaf9f3 100%);
}
.v113-map-sky{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.v113-map-sky i{position:absolute;width:14px;height:14px;border-radius:4px;background:#f4c35f;transform:rotate(22deg);opacity:.65}
.v113-map-sky i:nth-child(1){top:150px;left:7%}.v113-map-sky i:nth-child(2){top:310px;right:9%;background:#a477c5}
.v113-map-sky i:nth-child(3){top:720px;left:11%;background:#65b99a}.v113-map-sky i:nth-child(4){top:1050px;right:13%;background:#ef8e9f}

.v113-map-hero{
  width:min(1040px,100%);
  margin:0 auto 16px;
  padding:clamp(20px,4vw,40px);
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
  border:2px solid #fff;
  border-radius:36px;
  background:linear-gradient(135deg,#ffffffed,#fffaf0e8);
  box-shadow:0 9px 0 #e2d4e8,0 26px 60px #56416b17;
}
.v113-map-hero>button{
  align-self:start;
  min-height:46px;
  padding:10px 15px;
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid #d9cce1;
  border-radius:15px;
  background:#fff;
  color:#654b79;
  font-size:11px;
  font-weight:900;
  box-shadow:0 4px 0 #e5dce9;
}
.v113-map-hero>div>span{display:flex;align-items:center;gap:7px;color:#8b61ab;font:900 10px 'DM Sans',sans-serif;letter-spacing:.13em}
.v113-map-hero h1{margin:9px 0 5px;font-size:clamp(32px,5vw,58px);line-height:1.1;letter-spacing:-.04em}
.v113-map-hero p{max-width:690px;margin:0;color:#756b7c;font-size:11px;line-height:1.9}
.v113-map-hero aside{
  min-width:150px;
  padding:18px;
  display:grid;
  text-align:center;
  border-radius:26px;
  background:linear-gradient(145deg,#7651a4,#4d3768);
  color:#fff;
  box-shadow:0 7px 0 #39284d;
}
.v113-map-hero aside strong{font:900 35px 'DM Sans',sans-serif}.v113-map-hero aside strong small{font-size:15px;color:#e7dcee}
.v113-map-hero aside span{margin-top:4px;color:#efe7f5;font-size:8px}
.v113-legend{width:min(880px,calc(100% - 20px));margin:22px auto 8px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.v113-legend span{padding:9px 12px;display:flex;align-items:center;gap:6px;border:1px solid #e4d9e9;border-radius:999px;background:#fff;color:#6c5d75;font-size:9px;font-weight:900;box-shadow:0 3px 0 #e8dfec}
.v113-legend .review{background:#eefaf5;border-color:#b9dfcf;color:#307a60}.v113-legend .exam{background:#fff7dd;border-color:#ecd58a;color:#80631e}.v113-legend .final{background:#fff0f4;border-color:#efbccb;color:#9b3f60}

.v113-road{position:relative;width:min(900px,calc(100% - 18px));margin:0 auto;padding:42px 0 75px}
.v113-road:before{
  content:"";
  position:absolute;
  top:22px;
  bottom:54px;
  left:50%;
  width:11px;
  transform:translateX(-50%);
  border:3px solid #fff9;
  border-radius:999px;
  background:repeating-linear-gradient(to bottom,#8e68b0 0 17px,#f1c961 17px 31px,#68b99c 31px 47px,#fff 47px 54px);
  box-shadow:0 0 0 3px #d9cae4,0 0 30px #6d4d8a1c;
}
.v113-stop{position:relative;min-height:152px;display:flex;align-items:center}
.v113-stop.left{justify-content:flex-start;padding-right:17%}.v113-stop.right{justify-content:flex-end;padding-left:17%}
.v113-route-dot{position:absolute;z-index:3;left:50%;top:50%;width:28px;height:28px;transform:translate(-50%,-50%);border:7px solid #fff;border-radius:50%;background:#8f66af;box-shadow:0 0 0 3px #cbb8d9}
.v113-stop.complete .v113-route-dot{background:#58a985}.v113-stop.locked .v113-route-dot{background:#c9becd}
.v113-stop.v113-review .v113-route-dot{background:#4da982}.v113-stop.v113-exam .v113-route-dot{background:#e1a82e}.v113-stop.v113-final .v113-route-dot{background:#df6689}
.v113-node{
  position:relative;
  width:min(360px,42vw);
  min-height:116px;
  padding:16px;
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  overflow:hidden;
  border:2px solid #ded3e4;
  border-radius:26px;
  background:#fff;
  color:#342a40;
  text-align:start;
  box-shadow:0 7px 0 #dfd4e5,0 18px 34px #4f386510;
  transition:transform .18s,box-shadow .18s,filter .18s;
}
.v113-node:not(:disabled):hover{transform:translateY(-3px);filter:saturate(1.06)}.v113-node:not(:disabled):active{transform:translateY(3px);box-shadow:0 2px 0 #d8ccdf}
.v113-node-art{width:62px;height:62px;display:grid;place-items:center;border-radius:21px;background:linear-gradient(145deg,#7854a2,#a777c1);color:#fff;box-shadow:0 6px 0 #563b72}
.v113-node-copy{min-width:0}.v113-node-copy small{color:#906cad;font:900 8px 'DM Sans',sans-serif;letter-spacing:.13em}.v113-node-copy strong{display:block;margin:5px 0 3px;font-size:15px;line-height:1.35}.v113-node-copy em{display:block;color:#7a6e81;font-size:8px;font-style:normal;line-height:1.6}
.v113-node-badge{min-width:43px;min-height:43px;padding:6px;display:grid;place-content:center;text-align:center;border-radius:15px;background:#f1e9f6;color:#72528d;font:900 12px 'DM Sans',sans-serif}
.v113-node-badge b{font-size:16px}.v113-node-badge small{font-size:7px}
.v113-normal.current .v113-node{border-color:#9a72bb;background:linear-gradient(145deg,#fff,#faf4ff);box-shadow:0 8px 0 #cbb5d9,0 0 0 5px #a378c514}
.v113-normal.complete .v113-node{border-color:#9cd0ba;background:#f4fcf8;box-shadow:0 7px 0 #c7e4d8}.v113-normal.complete .v113-node-art{background:#5aaa87;box-shadow:0 6px 0 #39775d}
.v113-stop.locked .v113-node{opacity:.52;filter:grayscale(.6);box-shadow:0 3px 0 #ddd5e0}.v113-stop.locked .v113-node-art{background:#b7aebb;box-shadow:none}

.v113-special{min-height:188px}.v113-special .v113-node{width:min(430px,47vw);min-height:142px;border-radius:34px}
.v113-review .v113-node{border-color:#9fd4bd;background:radial-gradient(circle at 92% 15%,#c9f1df 0 45px,transparent 46px),linear-gradient(145deg,#f9fffc,#eaf9f2);box-shadow:0 9px 0 #b7ddcd,0 21px 42px #34795e1b}
.v113-review .v113-node-art{background:linear-gradient(145deg,#64c09d,#31856a);box-shadow:0 7px 0 #276b55}.v113-review .v113-node-copy small{color:#39866a}.v113-review .v113-node-badge{background:#d9f2e7;color:#277259}
.v113-exam .v113-node{border-color:#e8c766;background:radial-gradient(circle at 8% 85%,#ffeaa3 0 51px,transparent 52px),linear-gradient(145deg,#fffdf3,#fff3c9);box-shadow:0 9px 0 #e5ca79,0 21px 42px #8b68171b}
.v113-exam .v113-node-art{background:linear-gradient(145deg,#f0bc42,#d78924);box-shadow:0 7px 0 #9d641b}.v113-exam .v113-node-copy small{color:#9a6b14}.v113-exam .v113-node-badge{background:#ffe8a2;color:#855b10}
.v113-final{min-height:235px}.v113-final .v113-node{width:min(510px,53vw);min-height:174px;border:3px solid #e991ac;background:radial-gradient(circle at 88% 18%,#ffd36f 0 56px,transparent 57px),radial-gradient(circle at 8% 90%,#f8b3c7 0 68px,transparent 69px),linear-gradient(145deg,#fff8fa,#f8eaff);box-shadow:0 12px 0 #d77998,0 28px 58px #7e315228}
.v113-final .v113-node:before{content:"✦";position:absolute;top:8px;left:19px;color:#e6a936;font-size:25px}.v113-final .v113-node-art{width:76px;height:76px;border-radius:27px;background:linear-gradient(145deg,#e87298,#9d5caf);box-shadow:0 8px 0 #713f7d}.v113-final .v113-node-copy small{color:#b14d72}.v113-final .v113-node-copy strong{font-size:20px}.v113-final .v113-node-badge{background:#f6d7e3;color:#9c3f61}
.v113-finish{position:relative;z-index:2;width:max-content;margin:30px auto 0;padding:14px 19px;display:flex;align-items:center;gap:9px;border:2px solid #fff;border-radius:20px;background:#49345f;color:#fff;box-shadow:0 7px 0 #2d203b;font-size:11px}

/* Active Study box: replace the large plain upper region with a compact playful dashboard. */
.c57-zone{background:radial-gradient(circle at 8% 4%,#ffe59d 0 70px,transparent 71px),linear-gradient(180deg,#faf5ff,#fffaf3 46%,#eef9f4)}
.c57-zone-top{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:min(1320px,100%);
  margin:0 auto 14px;
  padding:18px 20px;
  grid-template-columns:auto minmax(0,1fr) auto;
  border:2px solid #fff;
  border-radius:30px;
  background:radial-gradient(circle at 84% 12%,#ffe184 0 48px,transparent 49px),linear-gradient(135deg,#7650a3,#9d69b7 56%,#df7e9f);
  color:#fff;
  box-shadow:0 8px 0 #5a3d76,0 20px 44px #4c315f25;
}
.c57-zone-top:after{content:"✦";position:absolute;z-index:-1;left:9%;bottom:-24px;color:#ffffff22;font-size:90px;transform:rotate(18deg)}
.c57-zone-top>button{min-width:112px;min-height:52px;border:2px solid #ffffff8f;border-radius:18px;background:#ffffffef;color:#604279;box-shadow:0 5px 0 #4f356a;justify-content:center;font-weight:900}
.c57-zone-top>div small{display:inline-flex;margin-bottom:5px;padding:5px 10px;border-radius:999px;background:#ffffff20;color:#fff;font-weight:800}
.c57-zone-top>div strong{font-size:clamp(22px,3vw,34px);color:#fff;text-shadow:0 2px 0 #51336e}
.c57-zone-top>span{min-width:110px;padding:11px 14px;border:2px solid #ffffff8c;border-radius:16px;background:#ffffff21;color:#fff;text-align:center;font-weight:900;box-shadow:none}
.c57-stage-nav{
  border:2px solid #fff;
  background:linear-gradient(180deg,#fff,#faf5ff);
  box-shadow:0 8px 0 #dfd3e6,0 20px 38px #4a365910;
}
.c57-stage-nav>header{padding:5px 7px 15px}.c57-stage-nav>header span{color:#8b67a5}.c57-stage-nav>header strong{font-size:18px}
.c57-stage-nav>section{overflow:hidden;border:2px solid #e4d9e9;border-radius:19px;background:#fff;box-shadow:0 4px 0 #eae2ee}
.c57-stage-nav>section:nth-of-type(1){background:#f6effc;border-color:#d8c3e8}.c57-stage-nav>section:nth-of-type(2){background:#eef9f4;border-color:#b9dfcf}.c57-stage-nav>section:nth-of-type(3){background:#fff7df;border-color:#ecd993}
.c57-stage-nav>section.active{border-color:#7854a2;box-shadow:0 5px 0 #bfa9cf,0 0 0 4px #8a64aa13}
.c57-stage-nav section>button{border-radius:15px;background:transparent}.c57-stage-nav section>button>b{border-radius:13px;background:#fff;color:#72528e;box-shadow:0 3px 0 #e3d8e8}
.c57-stage-nav section.active>button>b{background:#7652a2;color:#fff;box-shadow:0 3px 0 #4d3568}

/* Generated milestone player. */
.v113-challenge{min-height:100svh;padding:clamp(10px,3vw,36px) clamp(8px,4vw,55px) calc(95px + env(safe-area-inset-bottom));background:radial-gradient(circle at 7% 7%,#ffe39a 0 75px,transparent 76px),radial-gradient(circle at 94% 30%,#c5eddf 0 115px,transparent 116px),linear-gradient(180deg,#f8f1ff,#fffaf2 55%,#edf9f4);color:#30263b;font-family:'Readex Pro',sans-serif}
.v113-challenge button{font:inherit;cursor:pointer}.v113-challenge button:disabled{cursor:not-allowed}
.v113-challenge-top{width:min(1120px,100%);margin:0 auto 18px;padding:14px 17px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;border:2px solid #fff;border-radius:27px;background:linear-gradient(135deg,#7450a0,#a36ab6 58%,#df7c9c);color:#fff;box-shadow:0 7px 0 #50356b}
.v113-challenge-top>button{min-height:47px;padding:9px 14px;display:flex;align-items:center;gap:6px;border:0;border-radius:15px;background:#fff;color:#65457d;font-size:10px;font-weight:900;box-shadow:0 4px 0 #4c3364}
.v113-challenge-top small{display:block;color:#efe5f5;font-size:8px}.v113-challenge-top strong{display:block;margin-top:3px;font-size:19px}.v113-challenge-top>span{padding:9px 12px;border:1px solid #ffffff7d;border-radius:13px;background:#ffffff20;font-size:9px;font-weight:900}
.v113-review-study,.v113-exam-player,.v113-result,.v113-empty{width:min(850px,100%);margin:auto;padding:clamp(20px,4vw,42px);border:2px solid #fff;border-radius:36px;background:#fffdfb;box-shadow:0 10px 0 #ded2e5,0 28px 60px #49345c17}
.v113-review-study>header,.v113-exam-player>header{text-align:center}.v113-review-study>header>span,.v113-exam-player>header>span{color:#8c65a8;font:900 10px 'DM Sans',sans-serif;letter-spacing:.13em}.v113-review-study h1,.v113-exam-player h1{margin:10px 0 5px;font-size:clamp(29px,5vw,51px);line-height:1.2}.v113-review-study>header p,.v113-exam-player>header p{margin:0;color:#796e80;font-size:10px;line-height:1.8}
.v113-progress{margin:22px auto 18px;display:grid;gap:7px;color:#765685;font-size:10px;font-weight:900}.v113-progress i{height:8px;overflow:hidden;border-radius:99px;background:#ede6f0}.v113-progress b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6fbf9f,#8b60ad,#efbe4e)}
.v113-review-card{position:relative;min-height:310px;padding:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;border:3px solid #fff;border-radius:42px;background:radial-gradient(circle at 12% 15%,#ffe69b 0 48px,transparent 49px),radial-gradient(circle at 90% 88%,#bdebd9 0 70px,transparent 71px),linear-gradient(145deg,#f6edff,#fff9ed);box-shadow:0 10px 0 #cbb7d8}.v113-review-card small{color:#825fa0;font:900 9px 'DM Sans',sans-serif;letter-spacing:.14em}.v113-review-card strong{margin:20px 0 7px;font:900 clamp(45px,9vw,76px)/1.1 'DM Sans',sans-serif;letter-spacing:-.04em}.v113-review-card span{font-size:clamp(20px,4vw,35px);font-weight:800;color:#6c5978}.v113-review-card>i{position:absolute;right:25px;top:20px;color:#e8ac38;font-size:34px;font-style:normal}
.v113-challenge-actions{margin-top:22px;display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.v113-challenge-actions button,.v113-result button,.v113-empty button{min-height:58px;border:2px solid #dcd1e2;border-radius:18px;background:#fff;color:#6b5877;font-weight:900;box-shadow:0 5px 0 #e5dce9}.v113-challenge-actions .primary,.v113-result .primary{border-color:#5b3d79;background:linear-gradient(135deg,#7651a3,#50366b);color:#fff;box-shadow:0 6px 0 #342345}
.v113-answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v113-answer-grid button{min-height:76px;padding:14px 17px;border:2px solid #ddd2e3;border-radius:21px;background:#fff;color:#42354e;text-align:start;font-weight:800;box-shadow:0 6px 0 #e9e0ed;transition:.16s}.v113-answer-grid button:nth-child(4n+1){background:#fff8df;border-color:#ead58c}.v113-answer-grid button:nth-child(4n+2){background:#edf9f4;border-color:#addac7}.v113-answer-grid button:nth-child(4n+3){background:#f5effc;border-color:#d4bee5}.v113-answer-grid button:nth-child(4n+4){background:#fff0f4;border-color:#eebdcb}.v113-answer-grid button.selected{border-color:#7650a1;box-shadow:0 6px 0 #a98dbd,0 0 0 4px #7650a115}.v113-answer-grid button.correct{border-color:#4ba47f;background:#e7f8f0;color:#24664e}.v113-answer-grid button.wrong{border-color:#d3647e;background:#fff0f2;color:#9f3e58}
.v113-answer-feedback{margin-top:16px;padding:14px 16px;display:flex;justify-content:space-between;gap:12px;border-radius:17px;font-size:10px}.v113-answer-feedback.correct{background:#e9f8f1;color:#267157}.v113-answer-feedback.wrong{background:#fff0f2;color:#9d4058}
.v113-result,.v113-empty{min-height:530px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.v113-result>span,.v113-empty>span{width:100px;height:100px;display:grid;place-items:center;border-radius:34px;background:linear-gradient(145deg,#f4c75a,#e27191);color:#fff;box-shadow:0 8px 0 #ad526e}.v113-result>small{margin-top:20px;color:#8c64a8;font:900 10px 'DM Sans',sans-serif;letter-spacing:.15em}.v113-result h1{margin:8px 0;font:900 clamp(66px,12vw,112px) 'DM Sans',sans-serif;color:#6f4d8d}.v113-result p,.v113-empty p{color:#756b7c;font-size:11px}.v113-result>div{width:min(520px,100%);margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.v113-empty h1{margin:22px 0 5px;font-size:32px}.v113-empty button{margin-top:18px;padding:0 24px}

@media(max-width:767px){
  .v113-map{padding:10px 7px calc(105px + env(safe-area-inset-bottom))}
  .v113-map-hero{grid-template-columns:auto minmax(0,1fr);gap:11px;padding:16px 13px;border-radius:26px}.v113-map-hero>button{width:45px;min-width:45px;height:45px;padding:0;font-size:0}.v113-map-hero>button svg{margin:auto}.v113-map-hero aside{grid-column:1/-1;min-width:0;padding:11px;display:flex;align-items:baseline;justify-content:center;gap:7px;border-radius:18px}.v113-map-hero aside strong{font-size:27px}.v113-map-hero h1{font-size:30px}.v113-map-hero p{font-size:9px}
  .v113-road{width:100%;padding-top:29px}.v113-road:before{left:28px;transform:none;width:8px}.v113-stop,.v113-special,.v113-final{min-height:142px;justify-content:flex-start!important;padding:0 3px 0 58px!important}.v113-route-dot{left:32px;width:24px;height:24px;border-width:6px}.v113-node,.v113-special .v113-node,.v113-final .v113-node{width:100%;min-height:108px;padding:12px;grid-template-columns:53px minmax(0,1fr) auto;border-radius:23px}.v113-special .v113-node{min-height:125px}.v113-final .v113-node{min-height:145px}.v113-node-art{width:51px;height:51px;border-radius:17px}.v113-final .v113-node-art{width:58px;height:58px;border-radius:20px}.v113-node-copy strong,.v113-final .v113-node-copy strong{font-size:13px}.v113-node-copy em{font-size:7px}.v113-node-badge{min-width:38px;min-height:38px}.v113-legend{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.v113-legend span{flex:none}
  .c57-zone{padding:7px 6px calc(70px + env(safe-area-inset-bottom))}.c57-zone-top{padding:11px;grid-template-columns:auto minmax(0,1fr) auto;border-radius:23px}.c57-zone-top>button{width:46px;min-width:46px;height:46px;min-height:46px;padding:0;font-size:0;border-radius:15px}.c57-zone-top>button svg{margin:auto}.c57-zone-top>div small{font-size:7px}.c57-zone-top>div strong{font-size:21px}.c57-zone-top>span{min-width:0;padding:8px;font-size:8px;border-radius:13px}
  .c57-stage-nav{padding:7px;gap:7px;border-radius:22px}.c57-stage-nav>section{flex:0 0 174px}
  .v113-challenge{padding:8px 6px calc(80px + env(safe-area-inset-bottom))}.v113-challenge-top{grid-template-columns:auto minmax(0,1fr);padding:10px;border-radius:22px}.v113-challenge-top>button{width:44px;height:44px;padding:0;font-size:0}.v113-challenge-top>button svg{margin:auto}.v113-challenge-top>span{grid-column:2;justify-self:start;padding:5px 8px}.v113-challenge-top strong{font-size:14px}.v113-review-study,.v113-exam-player,.v113-result,.v113-empty{padding:20px 12px;border-radius:27px}.v113-review-card{min-height:285px;padding:20px;border-radius:30px}.v113-answer-grid{grid-template-columns:1fr;gap:9px}.v113-answer-grid button{min-height:62px;border-radius:18px}.v113-challenge-actions{gap:7px}.v113-challenge-actions button{min-height:54px;font-size:11px}.v113-answer-feedback{display:grid}.v113-result>div{grid-template-columns:1fr}
}
@media(max-width:390px){.v113-node{grid-template-columns:48px minmax(0,1fr)}.v113-node-badge{grid-column:1/-1;min-height:27px;display:flex;align-items:center;justify-content:center;gap:3px}.v113-challenge-actions{grid-template-columns:1fr}.c57-zone-top>span{display:none}}
@media(prefers-reduced-motion:reduce){.v113-node,.v113-answer-grid button{transition:none}}

