/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOOaBXso.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIMeaBXso.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOuaBXso.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIO-aBXso.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofINeaB.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOOaBXso.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIMeaBXso.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOuaBXso.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIO-aBXso.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofINeaB.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOOaBXso.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIMeaBXso.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOuaBXso.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIO-aBXso.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofINeaB.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOOaBXso.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIMeaBXso.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIOuaBXso.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofIO-aBXso.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(fonts/XRXV3I6Li01BKofINeaB.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--paper:#f9f8fc;--surface:white;--ink:#211836;--muted:#665e77;--violet:#603acc;--violet-dark:#4928a7;--light:#f0e9ff;--line:#eae5f1;--radius:23px;--shadow:0 12px 32px #34205609;font-family:"DM Sans","PingFang SC","Microsoft Yahei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #9a78ff}button{touch-action:manipulation}h1,h2,h3,p{margin:0}h1{font-size:clamp(32px,4.7vw,62px);font-weight:850;letter-spacing:-.065em;line-height:1.05}h2{font-size:25px;letter-spacing:-.035em}h3{font-size:18px;letter-spacing:-.02em}p{line-height:1.65}small{font-size:12px;color:var(--muted)}.skip{position:fixed;left:16px;top:-70px;padding:12px;background:white;z-index:30}.skip:focus{top:12px}.layout{display:grid;grid-template-columns:234px minmax(0,1fr);min-height:100vh}.sidebar{padding:32px 22px 22px;background:white;border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:4}.brand{display:flex;align-items:center;gap:11px;margin:0 0 52px 6px;font-family:Nunito,sans-serif;font-size:31px;font-weight:900;line-height:.93;letter-spacing:-.06em}.brand-sub{display:block;font:600 11px "DM Sans",sans-serif;letter-spacing:.13em;color:var(--muted);margin-top:7px}.logo{display:grid;place-items:center;width:44px;height:44px;background:#6942db;color:white;border-radius:15px;font-size:28px;box-shadow:0 5px 12px #6942db42}.nav-label{font-size:11px;font-weight:800;color:#716484;letter-spacing:.15em;margin:0 0 13px 10px}.nav{display:flex;flex-direction:column;gap:6px}.nav a{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:12px;font-size:14px;font-weight:650;color:#544a69}.nav a[aria-current="page"]{color:#5028bb;background:#f0e9ff;font-weight:800}.nav a:hover{background:#f6f0ff}.ico{display:inline-flex;width:19px;height:19px;flex-shrink:0;align-items:center;justify-content:center}.ico svg{width:100%;height:100%}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:10px;background:#f7f3ff;padding:13px;border-radius:15px;font-size:12px}.sidebar-bottom small{display:block;margin-top:3px}.mini{background:#e9ddff;color:#6541c3;display:grid;place-items:center;border-radius:10px;width:32px;height:32px;font-size:19px}.workspace{min-width:0}.bar{height:77px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,56px);gap:10px}.breadcrumb{display:flex;align-items:center;gap:11px;font-size:13px;color:var(--muted)}.breadcrumb strong{color:var(--ink)}#session{display:flex;align-items:center;gap:9px}.chip,.tag{display:inline-flex;align-items:center;gap:5px;border-radius:99px;background:var(--light);color:#502db3;padding:6px 11px;font-size:12px;font-weight:750;white-space:nowrap}.tag.mint{background:#e3f5ec;color:#196044}.tag.amber{background:#fff0d5;color:#7c4b06}.tag.grey{background:#f0edf3;color:#575063}.avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#e9ddff;color:#4f2a9a;font-weight:900}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:11px 16px;border:1px solid transparent;border-radius:12px;min-height:43px;background:var(--violet);color:white;font-weight:750;white-space:nowrap;font-size:14px}.btn:hover{background:var(--violet-dark)}.btn.secondary{background:#fff;color:#4c2ca0;border-color:#e3d9f3}.btn.secondary:hover{background:#f6efff}.btn.soft{color:#4d2caa;background:#f1eaff}.btn.soft:hover{background:#e9ddff}.btn.danger{background:#ad3655}.btn.small{min-height:35px;padding:6px 11px;font-size:12px}main{max-width:1480px;margin:auto;padding:34px clamp(20px,4vw,56px) 58px}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:12px;color:#572cba;letter-spacing:.09em}.hero{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;position:relative;isolation:isolate;min-height:304px;overflow:hidden;background:linear-gradient(110deg,#f0e7ff 2%,#e7d9ff 100%);border:1px solid #e8dcf8;border-radius:28px;padding:37px clamp(23px,4vw,49px)}.hero-copy{z-index:2}.hero h1{margin:13px 0 12px}.hero p{color:#53446a;font-size:15px;max-width:440px}.hero .actions{margin-top:23px}.hero-art{height:100%;position:relative;min-height:186px;display:grid;place-items:center}.hero-art:before,.hero-art:after{content:"";position:absolute;border:1px solid #a779df42;border-radius:50%;width:260px;height:260px;z-index:-1}.hero-art:after{width:318px;height:318px}.hero-art img{width:min(100%,400px);max-height:270px;object-fit:contain;filter:drop-shadow(0 12px 22px #7648c439)}.hero-art img[hidden]{display:none}.hero-art .fallback{font-size:96px;color:#7043d3;text-shadow:10px 14px #9269e34f}.hero-art:has(img:not([hidden])) .fallback{display:none}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.sections{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:23px;margin-top:31px}.section-head,.page-head,.row-between{display:flex;justify-content:space-between;align-items:center;gap:14px}.section-head{margin-bottom:14px}.section-head a{font-size:13px;font-weight:800;color:var(--violet)}.page-head{margin-bottom:23px;align-items:flex-end}.page-head h1{font-size:41px;margin:8px 0}.muted{color:var(--muted)}.panel,.task,.video-card,.tile,.empty{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel,.empty{padding:24px}.task{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:17px;margin-bottom:10px}.task:hover{border-color:#d9c8f5}.task p{font-size:13px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.tile{padding:18px;display:flex;align-items:center;gap:12px}.tile strong{font-size:24px}.tile small{display:block}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 24px}.glyph{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#5b30c4;background:#f0e8ff;flex-shrink:0}.glyph.mint{color:#237357;background:#e3f6ed}.glyph.peach{color:#a35c20;background:#fff0df}.progress{height:8px;background:#ede6f7;border-radius:99px;overflow:hidden;margin:15px 0}.progress span{display:block;height:100%;background:#7954de;border-radius:99px}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px}.video-card{overflow:hidden}.video-cover{display:grid;place-items:center;height:145px;background:linear-gradient(128deg,#e9e0ff,#f8f1ff);color:#5a32b9;overflow:hidden}.video-cover img{width:100%;height:145px;object-fit:cover;object-position:50% 36%}.video-cover .ico{width:36px;height:36px}.video-body{padding:16px}.video-body h3{margin:5px 0 12px}.media{width:100%;display:block;background:#211836;border-radius:15px;max-height:65vh}.practice{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(245px,1fr);gap:20px}.prompt{background:linear-gradient(145deg,#f5efff,#fcfaff);border:1px solid #eee3fc;border-radius:18px;padding:32px 16px;text-align:center;margin:16px 0;font-family:Nunito,sans-serif}.prompt strong{font-size:clamp(27px,5vw,48px);line-height:1.2}.prompt .muted{font:600 14px "DM Sans",sans-serif;margin-top:8px}.steps{display:flex;flex-wrap:wrap;gap:7px}.steps button{border:1px solid #e7def5;background:white;color:#4e367a;padding:8px 11px;border-radius:10px}.steps button[aria-current="step"]{background:#efe5ff;border-color:#c7adef}.stack>*+*{margin-top:14px}.word{display:inline-block;margin:3px 3px 3px 0;border-radius:7px;padding:3px 7px;background:#e5f4e9;color:#225f42}.word.retry{background:#fff0d6;color:#754300}.teacher-list{display:grid;gap:10px}.table-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px}.table-row p{font-size:13px;overflow-wrap:anywhere}.label{display:grid;gap:7px;margin-top:14px;font-size:14px;font-weight:700}.label input,.label textarea,.label select{width:100%;min-height:44px;padding:10px 11px;border:1px solid #dcd3e7;border-radius:10px;background:#fff;color:var(--ink)}.label textarea{min-height:85px;resize:vertical}.label span{color:var(--muted);font-weight:400;font-size:12px}.login{max-width:500px;margin:32px auto}.toast{position:fixed;z-index:20;right:22px;bottom:22px;background:#261b3e;color:#fff;padding:13px 18px;border-radius:12px;box-shadow:var(--shadow);max-width:90vw}.form-error{color:#a2274b;font-weight:650}dialog{border:none;border-radius:22px;padding:25px;width:min(540px,calc(100% - 26px));max-height:90vh;overflow:auto;color:var(--ink);box-shadow:0 18px 65px #20112f48}dialog::backdrop{background:#21173288}dialog h2{margin-bottom:8px}dialog .actions{margin-top:18px}audio{width:100%;height:40px}.notice{padding:11px 13px;border-radius:11px;background:#f4eefc;color:#544366;font-size:13px}.spacer{margin-top:18px}.hide{display:none!important}
@media(max-width:1050px){.layout{grid-template-columns:184px minmax(0,1fr)}.sidebar{padding-inline:15px}.sections,.practice{grid-template-columns:1fr}.hero{min-height:270px}.hero-art:after{width:230px;height:230px}.hero-art:before{width:188px;height:188px}}
@media(max-width:660px){.layout{display:block}.sidebar{height:auto;position:relative;padding:13px 15px 9px;border-bottom:1px solid var(--line)}.brand{margin:0 0 13px;font-size:25px}.logo{width:35px;height:35px;border-radius:11px;font-size:22px}.brand-sub{display:inline;margin:0 0 0 9px}.sidebar-bottom,.nav-label{display:none}.nav{flex-direction:row;overflow:auto;gap:2px}.nav a{flex-shrink:0;font-size:12px;padding:9px;gap:5px}.nav .ico{width:15px;height:15px}.bar{height:54px;padding-inline:15px}.breadcrumb>span{display:none}main{padding:17px 14px 36px}.hero{padding:22px 17px;grid-template-columns:1fr .46fr;min-height:235px}.hero h1{font-size:34px}.hero p{font-size:13px}.hero-art{min-height:100px}.hero-art:before{width:100px;height:100px}.hero-art:after{width:126px;height:126px}.hero-art .fallback{font-size:47px}.sections{margin-top:23px}.stats{gap:7px}.tile{padding:10px;gap:7px}.tile .glyph{display:none}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:33px}.panel{padding:16px}.table-row,.task{gap:9px}.task{padding:12px;grid-template-columns:37px minmax(0,1fr) auto}.task .glyph{width:35px;height:35px}.task h3{font-size:15px}.task .btn{font-size:12px;padding:7px 9px}.btn{padding-inline:12px}.avatar{display:none}}
@media(prefers-reduced-motion:no-preference){.btn,.task,.nav a{transition:background .16s,border .16s}}
