@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400..800&family=Hanken+Grotesk:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&display=swap";.mwweb{--accent:#F5503C;--accent-deep:#D63A28;--accent-soft:rgba(245,80,60,.1);--accent-grad:linear-gradient(150deg,#F96B53,#D43A28);--amber:#C2851C;--amber-soft:rgba(194,133,28,.14);--good:#1E8E55;--good-soft:rgba(30,142,85,.12);--info:#3B6FE0;--info-soft:rgba(59,111,224,.12);--graphite:#3A352D;--ink:#211F1B;--ink-2:#6A6358;--ink-3:#9A9387;--canvas:#F3EFE8;--canvas-glow:radial-gradient(1200px 600px at 78% -10%, rgba(245,80,60,.06), transparent 60%);--solid:#FCFBF8;--surface:rgba(255,255,255,.74);--line:rgba(255,255,255,.9);--hair:rgba(45,36,24,.1);--g-masc:#3B6FE0;--g-fem:#D63A28;--g-neut:#1E8E55;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--sh:0 1px 2px rgba(45,36,24,.05), 0 8px 24px rgba(45,36,24,.06);--sh-up:0 2px 6px rgba(45,36,24,.07), 0 18px 44px rgba(45,36,24,.12);--ease:cubic-bezier(.22,.61,.36,1);--font-display:"Bricolage Grotesque","Hanken Grotesk",system-ui,sans-serif;--font-sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;font-family:var(--font-sans);color:var(--ink);background-color:var(--canvas);background-image:var(--canvas-glow);background-attachment:fixed;-webkit-font-smoothing:antialiased}.mwweb *{box-sizing:border-box}.mwweb .shell{min-height:100%}.mwweb .side{height:100%}.mwweb .shell{display:grid;grid-template-columns:264px 1fr;min-height:100vh}.mwweb .shell.wide{grid-template-columns:296px 1fr}.mwweb .side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:6px;padding:22px 18px;background:var(--surface);border-right:1px solid var(--line);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%)}.mwweb .brand{display:flex;align-items:center;gap:9px;padding:6px 8px 16px}.mwweb .brand .mk{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.03em;color:var(--ink)}.mwweb .brand .mk .dot{color:var(--accent)}.mwweb .brand .badge{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--accent-deep);background:var(--accent-soft);border-radius:99px;padding:3px 8px}.mwweb .navlbl{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:14px 10px 6px}.mwweb .nav{display:flex;flex-direction:column;gap:2px}.mwweb .nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--r-sm);color:var(--ink-2);font-weight:600;font-size:14.5px;text-decoration:none;cursor:pointer;transition:background .14s var(--ease),color .14s var(--ease)}.mwweb .nav a .ic{width:20px;height:20px;flex:none;color:var(--ink-3)}.mwweb .nav a:hover{background:#fff9;color:var(--ink)}.mwweb .nav a.on{background:var(--accent);color:#fff;box-shadow:0 8px 20px #f5503c42}.mwweb .nav a.on .ic{color:#fff}.mwweb .nav a .pip{margin-left:auto;font-size:11px;font-weight:800;background:var(--accent-soft);color:var(--accent-deep);border-radius:99px;padding:1px 8px}.mwweb .nav a.on .pip{background:#ffffff40;color:#fff}.mwweb .side .grow{flex:1}.mwweb .userchip{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--r-md);background:var(--solid);border:1px solid var(--hair);box-shadow:var(--sh);cursor:pointer}.mwweb .userchip .av{width:38px;height:38px;border-radius:50%;flex:none;background:linear-gradient(140deg,#f96b53,#d43a28);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px}.mwweb .userchip .nm{font-weight:700;font-size:13.5px;line-height:1.1}.mwweb .userchip .role{font-size:11.5px;color:var(--ink-3)}.mwweb .classpick{display:flex;align-items:center;gap:10px;padding:9px 11px;margin:2px 0 6px;border-radius:var(--r-md);background:var(--solid);border:1px solid var(--hair);box-shadow:var(--sh);cursor:pointer;transition:border-color .14s var(--ease)}.mwweb .classpick:hover{border-color:var(--accent)}.mwweb .classpick .flag{width:30px;height:30px;border-radius:9px;flex:none;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;background:linear-gradient(140deg,#5c8dee,#3b6fe0)}.mwweb .classpick .cmeta{flex:1;min-width:0}.mwweb .classpick .cn{font-weight:700;font-size:13.5px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mwweb .classpick .cd{font-size:11px;color:var(--ink-3);margin-top:1px}.mwweb .classpick .cv{color:var(--ink-3);flex:none}.mwweb .classpick.compact{margin:0;padding:6px 10px 6px 6px}.mwweb .classpick.compact .flag{width:28px;height:28px}.mwweb .shell.top{display:block}.mwweb .topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:22px;padding:0 32px;height:64px;background:var(--surface);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%)}.mwweb .topbar .nav{flex-direction:row;gap:4px;margin-left:6px}.mwweb .topbar .nav a{padding:9px 14px}.mwweb .topbar .nav a .ic{display:none}.mwweb .topbar .grow{flex:1}.mwweb .topbar .iconbtn{width:40px;height:40px;border-radius:50%;border:1px solid var(--hair);background:var(--solid);box-shadow:var(--sh);display:flex;align-items:center;justify-content:center;color:var(--ink-2);cursor:pointer;position:relative}.mwweb .topbar .iconbtn .dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:2px solid var(--solid)}.mwweb .top-wrap{max-width:1180px;margin:0 auto;padding:30px 32px 56px}.mwweb .main{min-width:0;display:flex;flex-direction:column}.mwweb .page{padding:30px 36px 56px;max-width:1180px;width:100%;margin:0 auto}.mwweb .phead{display:flex;align-items:flex-end;gap:18px;margin-bottom:26px}.mwweb .phead .eyebrow{display:block;margin-bottom:6px}.mwweb .phead h1{font-family:var(--font-display);font-weight:800;font-size:32px;letter-spacing:-.02em;line-height:1.04}.mwweb .phead .sub{color:var(--ink-2);font-size:14px;margin-top:6px}.mwweb .phead .acts{margin-left:auto;display:flex;gap:10px;align-items:center}.mwweb .search{display:flex;align-items:center;gap:9px;background:var(--solid);border:1px solid var(--hair);border-radius:var(--r-pill);padding:9px 15px;box-shadow:var(--sh);min-width:220px;color:var(--ink-3)}.mwweb .search input{border:0;outline:0;background:none;font-family:var(--font-sans);font-size:14px;color:var(--ink);width:100%}.mwweb .btn{font-family:var(--font-sans);font-weight:700;font-size:14.5px;border-radius:var(--r-sm);padding:11px 18px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:transform .12s var(--ease)}.mwweb .btn:active{transform:translateY(1px)}.mwweb .btn .ic{width:17px;height:17px}.mwweb .btn-accent{background:var(--accent-grad);color:#fff;box-shadow:0 8px 20px #f5503c42}.mwweb .btn-ghost{background:var(--solid);color:var(--ink);border-color:var(--hair);box-shadow:var(--sh)}.mwweb .btn-soft{background:var(--accent-soft);color:var(--accent-deep)}.mwweb .btn-pill{border-radius:var(--r-pill)}.mwweb .card{background:var(--solid);border:1px solid var(--hair);border-radius:var(--r-lg);box-shadow:var(--sh)}.mwweb .card.pad{padding:22px}.mwweb .glass{background:var(--surface);border:1px solid var(--line);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);box-shadow:var(--sh);border-radius:var(--r-lg)}.mwweb .ctitle{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.01em}.mwweb .csub{font-size:12.5px;color:var(--ink-2);margin-top:3px}.mwweb .cmore{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--accent-deep);cursor:pointer;text-decoration:none}.mwweb .chead{display:flex;align-items:center;gap:10px;margin-bottom:14px}.mwweb .grid{display:grid;gap:18px}.mwweb .g-3{grid-template-columns:repeat(3,1fr)}.mwweb .g-2{grid-template-columns:repeat(2,1fr)}.mwweb .g-12{grid-template-columns:7fr 5fr}.mwweb .g-21{grid-template-columns:5fr 7fr}.mwweb .hero{position:relative;overflow:hidden;color:#fff;border-radius:var(--r-xl);padding:30px 32px;background:var(--accent-grad);box-shadow:var(--sh-up)}.mwweb .hero .flame{position:absolute;right:-12px;top:-18px;opacity:.16}.mwweb .hero .eyebrow{color:#ffffffd9}.mwweb .hero h2{font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:-.02em;margin:8px 0 4px}.mwweb .hero p{opacity:.92;font-size:14px;max-width:48ch}.mwweb .hero .row{display:flex;align-items:center;gap:14px;margin-top:20px}.mwweb .hero .btn-light{background:#fff;color:var(--accent-deep)}.mwweb .hero .mini{display:flex;align-items:center;gap:7px;font-weight:700;font-size:13px;opacity:.95}.mwweb .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mwweb .stat{background:var(--solid);border:1px solid var(--hair);border-radius:var(--r-md);padding:16px 18px;box-shadow:var(--sh)}.mwweb .stat .ic{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:11px}.mwweb .stat .n{font-family:var(--font-display);font-weight:800;font-size:27px;line-height:1}.mwweb .stat .l{font-size:12px;color:var(--ink-3);margin-top:3px;font-weight:600}.mwweb .rows{display:flex;flex-direction:column}.mwweb .lrow{display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--hair)}.mwweb .lrow:last-child{border:0}.mwweb .lrow .ic{width:42px;height:42px;border-radius:12px;background:var(--accent-soft);color:var(--accent-deep);display:flex;align-items:center;justify-content:center;flex:none}.mwweb .lrow .tx{flex:1;min-width:0}.mwweb .lrow .t{font-weight:700;font-size:14.5px}.mwweb .lrow .d{font-size:12.5px;color:var(--ink-2);margin-top:2px}.mwweb .lrow .chev{color:var(--ink-3);flex:none}.mwweb .bar{height:8px;background:#2d241814;border-radius:99px;overflow:hidden}.mwweb .bar .fl{height:100%;border-radius:99px;background:var(--graphite)}.mwweb .ringwrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.mwweb .ringwrap .pct{position:absolute;font-family:var(--font-display);font-weight:800;font-size:14px}.mwweb .chips{display:flex;gap:8px;flex-wrap:wrap}.mwweb .chip{border:1px solid var(--hair);background:var(--solid);border-radius:var(--r-pill);padding:7px 14px;font-weight:600;font-size:13px;cursor:pointer;box-shadow:var(--sh);color:var(--ink-2)}.mwweb .chip.on{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 6px 16px #f5503c3d}.mwweb .tabs{display:flex;gap:4px;background:var(--accent-soft);border-radius:var(--r-pill);padding:4px;width:max-content}.mwweb .tabs button{border:0;background:none;font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink-2);padding:8px 16px;border-radius:var(--r-pill);cursor:pointer}.mwweb .tabs button.on{background:#fff;color:var(--accent-deep);box-shadow:var(--sh)}.mwweb .badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:4px 10px;font-weight:800;font-size:11px}.mwweb .b-good{background:var(--good-soft);color:var(--good)}.mwweb .b-amber{background:var(--amber-soft);color:var(--amber)}.mwweb .b-accent{background:var(--accent-soft);color:var(--accent-deep)}.mwweb .b-info{background:var(--info-soft);color:var(--info)}.mwweb .b-flat{background:#2d24180f;color:var(--ink-2)}.mwweb .gdot{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block}.mwweb .lrow .ravatar{width:40px;height:40px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff}.mwweb .lrow .d .sep{color:var(--ink-3);margin:0 2px}.mwweb .tag-mini{display:inline-flex;align-items:center;gap:4px;border-radius:99px;padding:1px 8px;font-weight:800;font-size:10.5px;vertical-align:middle}.mwweb .tbl{width:100%;border-collapse:collapse;font-size:13.5px}.mwweb .tbl th{text-align:left;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);padding:0 14px 12px}.mwweb .tbl td{padding:13px 14px;border-top:1px solid var(--hair);vertical-align:middle}.mwweb .tbl tr:hover td{background:#ffffff80}.mwweb .tbl .who{display:flex;align-items:center;gap:11px}.mwweb .tbl .av{width:36px;height:36px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff}.mwweb .tbl .nm{font-weight:700;font-size:14px}.mwweb .tbl .sub{font-size:11.5px;color:var(--ink-3)}.mwweb .study{display:grid;grid-template-columns:1fr 360px;gap:0;min-height:100vh}.mwweb .study .reader{padding:38px 48px 80px;max-width:760px;margin:0 auto;width:100%}.mwweb .study .rail{position:sticky;top:0;height:100vh;overflow:auto;padding:26px;border-left:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%)}@media (max-width:1080px){.mwweb .shell,.mwweb .shell.wide{grid-template-columns:84px 1fr}.mwweb .side{padding:18px 12px}.mwweb .side .brand .mk,.mwweb .side .navlbl,.mwweb .nav a span.t,.mwweb .userchip .meta,.mwweb .nav a .pip{display:none}.mwweb .nav a{justify-content:center;padding:12px 0}.mwweb .classpick{justify-content:center;padding:8px}.mwweb .classpick .cmeta,.mwweb .classpick .cv{display:none}.mwweb .brand{justify-content:center}.mwweb .brand .badge{display:none}.mwweb .userchip{justify-content:center}.mwweb .g-3{grid-template-columns:1fr 1fr}.mwweb .g-12,.mwweb .g-21,.mwweb .g-2,.mwweb .study{grid-template-columns:1fr}.mwweb .study .rail{position:static;height:auto;border-left:0;border-top:1px solid var(--line)}}@media (max-width:720px){.mwweb .g-3,.mwweb .g-2,.mwweb .g-12,.mwweb .g-21,.mwweb .stats{grid-template-columns:1fr}.mwweb .page,.mwweb .top-wrap{padding:22px 18px 40px}.mwweb .phead{flex-wrap:wrap}}.mwweb .wback{width:40px;height:40px;border-radius:50%;border:1px solid var(--hair);background:var(--solid);box-shadow:var(--sh);display:flex;align-items:center;justify-content:center;color:var(--ink-2);cursor:pointer;flex:none}.mwweb .lessontop{display:flex;align-items:center;gap:16px;margin-bottom:6px}.mwweb .wseg{margin-left:auto;display:flex;gap:4px;background:var(--accent-soft);border-radius:var(--r-pill);padding:4px}.mwweb .wseg button{border:0;background:none;font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink-2);padding:8px 18px;border-radius:var(--r-pill);cursor:pointer}.mwweb .wseg button.on{background:#fff;color:var(--accent-deep);box-shadow:var(--sh)}.mwweb .prose{font-size:17px;line-height:1.7;color:var(--ink)}.mwweb .prose p{margin:0 0 16px}.mwweb .prose p:last-child{margin:0}.mwweb .dial{display:flex;flex-direction:column;gap:12px;margin:18px 0}.mwweb .turn{display:flex;gap:12px;align-items:flex-start}.mwweb .turn .who{width:34px;height:34px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff;margin-top:2px}.mwweb .turn .bubble{background:var(--solid);border:1px solid var(--hair);border-radius:var(--r-md);padding:13px 16px;box-shadow:var(--sh);font-size:15.5px;line-height:1.5}.mwweb .turn .bubble b{color:var(--accent-deep);font-weight:700;cursor:pointer;border-bottom:2px solid var(--accent-soft)}.mwweb .turn .bubble .tr{font-size:12.5px;color:var(--ink-3);margin-top:5px}.mwweb .vocab .vrow{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--hair)}.mwweb .vocab .vrow:last-child{border:0}.mwweb .vocab .w{font-weight:700;font-size:15px;display:flex;align-items:center;gap:8px}.mwweb .vocab .e{font-size:12.5px;color:var(--ink-2)}.mwweb .vocab .spk{margin-left:auto;width:34px;height:34px;border-radius:50%;border:1px solid var(--hair);background:var(--solid);display:flex;align-items:center;justify-content:center;color:var(--accent-deep);cursor:pointer;flex:none}.mwweb .footbar{position:sticky;bottom:0;display:flex;align-items:center;gap:14px;padding:16px 0;margin-top:14px;background:linear-gradient(transparent,var(--canvas) 40%)}.mwweb .runner{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:0 24px}.mwweb .runbar{width:100%;max-width:760px;display:flex;align-items:center;gap:16px;padding:22px 0 8px}.mwweb .runwrap{flex:1;width:100%;max-width:620px;display:flex;flex-direction:column;justify-content:center;padding:20px 0}.mwweb .beatk{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);justify-content:center}.mwweb .runinput{width:100%;max-width:420px;margin:18px auto 0;border:0;border-bottom:2.5px solid var(--accent);background:var(--solid);border-radius:12px 12px 0 0;padding:14px 16px;font-family:var(--font-display);font-weight:800;font-size:22px;text-align:center;color:var(--ink);outline:none}.mwweb .cullrow{display:flex;gap:10px;justify-content:center;margin-top:16px}.mwweb .cullrow button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hair);background:var(--solid);border-radius:99px;padding:8px 14px;font-size:12.5px;font-weight:700;color:var(--ink-2);cursor:pointer;box-shadow:var(--sh)}.mwweb .optcol{display:flex;flex-direction:column;gap:11px;max-width:440px;margin:24px auto 0;width:100%}.mwweb .runopt{display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px solid var(--hair);background:var(--solid);border-radius:15px;padding:16px;font-family:var(--font-display);font-weight:800;font-size:18px;color:var(--ink);cursor:pointer;box-shadow:var(--sh);transition:border-color .14s var(--ease)}.mwweb .runopt:hover{border-color:var(--accent)}.mwweb .runopt.ok{border-color:var(--good);background:var(--good-soft);color:var(--good)}.mwweb .fbslotw{display:inline-flex;align-items:center;justify-content:center;min-width:120px;padding:2px 14px;border-bottom:2.5px solid var(--accent);background:var(--accent-soft);border-radius:8px 8px 0 0;color:var(--accent-deep)}.mwweb .fbchipsw{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}.mwweb .fbchipw{padding:12px 19px;border-radius:13px;border:1.5px solid var(--hair);background:var(--solid);font-weight:800;font-size:16px;color:var(--ink);cursor:pointer;box-shadow:var(--sh)}.mwweb .fbchipw.used{opacity:.32;pointer-events:none}.mwweb .runta{width:100%;min-height:120px;border:1.5px solid var(--hair);border-radius:14px;background:var(--solid);padding:14px 16px;font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--ink);resize:none;margin:18px auto 0;display:block}.mwweb .runta:focus{outline:none;border-color:var(--accent)}.mwweb .verdict{border-radius:16px;padding:18px 20px;margin:22px auto 0;max-width:480px;border:1px solid var(--hair);background:var(--solid);box-shadow:var(--sh)}.mwweb .verdict.ok{background:var(--good-soft);border-color:transparent}.mwweb .verdict.no{background:var(--amber-soft);border-color:transparent}.mwweb .verdict .vl{display:flex;align-items:center;gap:7px;font-weight:800;font-size:14px;color:var(--ink)}.mwweb .verdict .ans{font-family:var(--font-display);font-weight:800;font-size:22px;margin-top:8px;display:flex;align-items:center;gap:8px}.mwweb .verdict .nr{font-size:13.5px;color:var(--ink-2);margin-top:8px;line-height:1.5}.mwweb .gchip{border:1.5px solid;border-radius:7px;padding:1px 7px;font-size:12px;font-weight:800}.mwweb .runfootw{width:100%;max-width:620px;padding:16px 0 28px;display:flex;justify-content:center;gap:10px}.mwweb .runbtn{font-size:15.5px;padding:14px 36px}.mwweb .whychip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--hair);background:var(--solid);border-radius:9px;padding:4px 10px;font-size:11.5px;font-weight:800;color:var(--accent-deep);cursor:pointer}.mwweb .wsover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;justify-content:flex-end}.mwweb .wscrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#211f1b57;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mwweb .wpanel{position:relative;width:min(440px,92vw);height:100vh;background:var(--solid);box-shadow:-18px 0 50px #211f1b38;display:flex;flex-direction:column;animation:slidein .26s cubic-bezier(.2,.9,.3,1)}@keyframes slidein{0%{transform:translate(100%)}to{transform:translate(0)}}.mwweb .wph{display:flex;align-items:flex-start;gap:12px;padding:22px 22px 16px;border-bottom:1px solid var(--hair)}.mwweb .wph>div:first-child{flex:1}.mwweb .wpbody{flex:1;overflow-y:auto;padding:18px 22px}.mwweb .wpbody p{font-size:14.5px;line-height:1.6;color:var(--ink-2);margin:0 0 14px}.mwweb .wpfoot{padding:14px 22px;border-top:1px solid var(--hair);display:flex;gap:10px}.mwweb .transbox{width:100%;min-height:120px;border:1.5px solid var(--hair);border-radius:14px;background:var(--surface);padding:14px 16px;font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--ink);resize:none}.mwweb .transbox:focus{outline:none;border-color:var(--accent);background:var(--solid)}.mwweb .fieldlbl{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-bottom:7px}.mwweb .seg2{display:inline-flex;gap:3px;background:var(--accent-soft);border-radius:var(--r-pill);padding:3px}.mwweb .seg2 button{border:0;background:none;font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--ink-2);padding:8px 14px;border-radius:var(--r-pill);cursor:pointer;white-space:nowrap}.mwweb .seg2 button.on{background:#fff;color:var(--accent-deep);box-shadow:var(--sh)}.mwweb .iconpill{width:36px;height:36px;border-radius:50%;border:1px solid var(--hair);background:var(--solid);display:flex;align-items:center;justify-content:center;color:var(--accent-deep);cursor:pointer;box-shadow:var(--sh)}.mwweb .miniselect{border:1px solid var(--hair);background:var(--solid);border-radius:10px;padding:8px 12px;font-family:var(--font-sans);font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer;box-shadow:var(--sh)}.mwweb .askthread{flex:1;min-height:300px;display:flex;flex-direction:column;gap:14px;padding:8px 0 16px}.mwweb .askmsg{display:flex;gap:10px;max-width:88%}.mwweb .askmsg.me{margin-left:auto;flex-direction:row-reverse}.mwweb .askmsg .aiav{width:30px;height:30px;border-radius:50%;flex:none;background:var(--accent-grad);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#fff}.mwweb .askmsg .bub{background:var(--solid);border:1px solid var(--hair);border-radius:16px;padding:13px 16px;font-size:14.5px;line-height:1.55;box-shadow:var(--sh)}.mwweb .askmsg.me .bub{background:var(--accent);color:#fff;border-color:transparent}.mwweb .askcompose{position:sticky;bottom:0;display:flex;gap:10px;padding:14px 0 18px;background:linear-gradient(transparent,var(--canvas) 30%)}.mwweb .askcompose input{flex:1;border:1.5px solid var(--hair);border-radius:var(--r-pill);background:var(--solid);padding:13px 18px;font-family:var(--font-sans);font-size:15px;color:var(--ink);box-shadow:var(--sh)}.mwweb .askcompose input:focus{outline:none;border-color:var(--accent)}.mwweb .micbtn{width:96px;height:96px;border-radius:50%;border:0;background:var(--accent-grad);box-shadow:0 12px 30px #f5503c57;display:flex;align-items:center;justify-content:center;cursor:pointer}.mwweb .micbtn.recording{animation:pulse 1.2s infinite}@keyframes pulse{0%,to{box-shadow:0 12px 30px #f5503c57}50%{box-shadow:0 12px 30px #f5503c57,0 0 0 14px #f5503c24}}.mwweb .playbtn{width:64px;height:64px;border-radius:50%;border:0;background:var(--accent-grad);box-shadow:0 8px 20px #f5503c42;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.mwweb .dropzone{border:1.5px dashed var(--hair);border-radius:14px;background:var(--surface);padding:34px;text-align:center;color:var(--ink-3);cursor:pointer}.mwweb .authpage{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;position:relative}.mwweb .authcard{width:100%;max-width:400px;padding:34px}.mwweb .wmbig{font-family:var(--font-display);font-weight:800;font-size:44px;letter-spacing:-.04em;color:var(--ink)}.mwweb .authinput{width:100%;border:1.5px solid var(--hair);border-radius:13px;background:var(--surface);padding:13px 15px;font-family:var(--font-sans);font-size:15.5px;color:var(--ink)}.mwweb .authinput:focus{outline:none;border-color:var(--accent);background:var(--solid)}.mwweb .teacherentry{position:absolute;bottom:24px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--hair);background:var(--solid);border-radius:99px;padding:9px 16px;font-weight:700;font-size:13px;color:var(--ink-2);cursor:pointer;box-shadow:var(--sh)}.mwweb .stepdotsw{display:flex;gap:6px;margin-bottom:14px}.mwweb .stepdotsw i{width:7px;height:7px;border-radius:50%;background:var(--hair)}.mwweb .stepdotsw i.on{background:var(--accent);width:22px;border-radius:4px}.mwweb .obtilew{display:flex;align-items:center;gap:13px;width:100%;border:1.5px solid var(--hair);background:var(--solid);border-radius:15px;padding:15px;cursor:pointer;margin-bottom:11px;box-shadow:var(--sh)}.mwweb .obtilew.on{border-color:var(--accent);background:var(--accent-soft)}.mwweb .obckw{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--hair);flex:none;display:flex;align-items:center;justify-content:center;color:transparent}.mwweb .obtilew.on .obckw{background:var(--accent);border-color:var(--accent);color:#fff}.mwweb .toggle2{width:46px;height:27px;border-radius:99px;border:0;background:#2d241829;position:relative;cursor:pointer;flex:none;transition:background .16s}.mwweb .toggle2.on{background:var(--accent)}.mwweb .toggle2 .kn{position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fff;transition:transform .16s;box-shadow:0 1px 3px #0003}.mwweb .toggle2.on .kn{transform:translate(19px)}.mwweb .gradeb{flex:1;border:1.5px solid var(--hair);background:var(--solid);border-radius:12px;padding:11px 0;font-weight:800;font-size:14px;cursor:pointer;color:var(--ink-2)}.mwweb .gradeb[data-on=true][data-g=good]{background:var(--good-soft);border-color:var(--good);color:var(--good)}.mwweb .gradeb[data-on=true][data-g=ok]{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.mwweb .gradeb[data-on=true][data-g=redo]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-deep)}@media (max-width:1080px){.mwweb .study .reader{padding:28px 24px 80px}.mwweb .runwrap{max-width:100%}}.mwweb .side .grow{flex:1;background:none;border:0;border-radius:0;box-shadow:0 0 #0000;padding:0;margin:0}.mwweb button{-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;color:inherit;background:none;border:0;padding:0;text-align:inherit;cursor:pointer}.mwweb .chatscrollw{flex:1;min-height:340px;display:flex;flex-direction:column;gap:10px;padding:4px 0 8px;overflow-y:auto}.mwweb .chatdayw{align-self:center;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--surface);border:1px solid var(--hair);border-radius:99px;padding:4px 12px;margin:2px 0 6px}.mwweb .mroww{display:flex;align-items:flex-end;gap:9px;max-width:74%}.mwweb .mroww.them{align-self:flex-start}.mwweb .mroww.me{align-self:flex-end;flex-direction:column;align-items:flex-end}.mwweb .mavw{width:30px;height:30px;border-radius:50%;background:var(--graphite);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex:none}.mwweb .msgw{border-radius:16px;padding:10px 14px 8px;font-size:14.5px;line-height:1.5;box-shadow:var(--sh)}.mwweb .msgw .whow{font-size:11px;font-weight:800;color:var(--ink-2);margin-bottom:3px;display:flex;align-items:center;gap:6px}.mwweb .msgw .whow .tpw{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-deep);border:1px solid var(--accent-soft);border-radius:99px;padding:1px 6px}.mwweb .msgw .tmw{display:block;font-size:10px;font-weight:600;margin-top:3px;text-align:right}.mwweb .msgw.them{background:var(--solid);border:1px solid var(--hair);border-bottom-left-radius:5px}.mwweb .msgw.them .tmw{color:var(--ink-3)}.mwweb .msgw.me{background:var(--accent);color:#fff;border-bottom-right-radius:5px;cursor:pointer}.mwweb .msgw.me .tmw{color:#ffffffb8}.mwweb .msgw a{color:inherit;text-decoration:underline}.mwweb .msgdelw{margin-top:5px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--hair);background:var(--solid);color:var(--accent-deep);border-radius:99px;padding:5px 11px;font-size:11.5px;font-weight:800;cursor:pointer}.mwweb .spinw{width:38px;height:38px;border-radius:50%;border:4px solid var(--accent-soft);border-top-color:var(--accent);animation:mw-spinw .8s linear infinite}@keyframes mw-spinw{to{transform:rotate(360deg)}}.mwweb .stepperw{display:flex;align-items:center;gap:2px;border:1px solid var(--hair);border-radius:99px;background:var(--surface);padding:2px}.mwweb .stepperw button{width:28px;height:28px;border-radius:50%;border:0;background:none;color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer}.mwweb .stepperw span{min-width:22px;text-align:center;font-weight:800;font-size:14px}.mwweb .side{overflow-y:auto;scrollbar-width:thin}@media (max-height:760px){.mwweb .side{padding:14px;gap:3px}.mwweb .brand{padding:4px 8px 10px}.mwweb .navlbl{padding:8px 10px 4px}.mwweb .nav a{padding:8px 12px;font-size:14px}.mwweb .userchip{padding:7px 8px}}.v2webroot{--sh-pop:0 22px 54px rgba(70,52,30,.2);--sh-up:0 18px 40px rgba(214,58,40,.3);--accent-grad:linear-gradient(150deg,#F96B53,#D43A28);--ease:cubic-bezier(.22,.61,.36,1);--r-xs:9px;--r-lg:22px;--r-xl:28px;--webw:720px}.v2webroot .shell{grid-template-columns:228px 1fr}.v2webroot .side{padding:22px 16px 18px;gap:2px;background:var(--surface);border-right:1px solid var(--line);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%)}.v2webroot .side .brand{padding:6px 8px 18px}.v2webroot .side .brand .mk{font-size:25px}.v2webroot .navlbl{padding:16px 12px 6px}.v2webroot .side .nav{gap:2px}.v2webroot .side .nav a{padding:10px 12px;border-radius:11px;font-size:14px;transition:background .14s var(--ease),color .14s var(--ease)}.v2webroot .side .nav a .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2webroot .side .nav a:hover{background:#2d24180e;color:var(--ink)}.v2webroot .side .nav a:hover .licon{color:var(--ink-2)}.v2webroot .side .nav a.on{background:var(--accent-soft);color:var(--accent-deep);font-weight:700;box-shadow:inset 0 0 0 1px #f5503c29}.v2webroot .side .nav a.on .licon{color:var(--accent)}.v2webroot .side .nav a.on:hover{background:var(--accent-tint)}.v2webroot .side .nav a:active{transform:translateY(1px)}.v2webroot .userchip{transition:transform .15s var(--ease),box-shadow .15s var(--ease),border-color .15s var(--ease)}.v2webroot .userchip:hover{transform:translateY(-1px);box-shadow:var(--sh-pop);border-color:#2d241829}.v2webroot .userchip .meta{min-width:0}.v2webroot .userchip .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2webroot .main{scroll-behavior:smooth;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(45,36,24,.22) transparent}.v2webroot .main::-webkit-scrollbar{width:10px}.v2webroot .main::-webkit-scrollbar-track{background:transparent}.v2webroot .main::-webkit-scrollbar-thumb{background:#2d24182e;border-radius:99px;border:3px solid transparent;background-clip:content-box}.v2webroot .main::-webkit-scrollbar-thumb:hover{background-color:#2d241852;background-clip:content-box}.v2webroot .main>.v2app{max-width:var(--webw);margin:0 auto}.v2webroot .v2app .pad{max-width:none;padding:34px 44px 64px}.v2webroot .v2app .pad.nobar{padding-bottom:64px}.v2webroot .v2app .runbody,.v2webroot .v2app .runfoot{max-width:none}.v2webroot .v2app img{max-width:100%}.v2webroot[data-kind=reviews],.v2webroot[data-kind=unit],.v2webroot[data-kind=capture],.v2webroot[data-kind=writing],.v2webroot[data-kind=speaking],.v2webroot[data-kind=listening]{--webw:620px}.v2webroot[data-kind=words],.v2webroot[data-kind=lesson],.v2webroot[data-kind=lessons],.v2webroot[data-kind=my_notes],.v2webroot[data-kind=class_materials],.v2webroot[data-kind=notifications],.v2webroot[data-kind=advanced]{--webw:900px}.v2webroot[data-kind=home],.v2webroot[data-kind=class],.v2webroot[data-kind=rewards],.v2webroot[data-kind=profile]{--webw:1040px}.v2webroot[data-kind=teacher_classes],.v2webroot[data-kind=teacher_class_detail],.v2webroot[data-kind=teacher_student_detail],.v2webroot[data-kind=teacher_today]{--webw:1080px}.v2webroot .v2app .nav{position:static;z-index:auto;background:none;border:0;-webkit-backdrop-filter:none;backdrop-filter:none;padding:34px 44px 8px;gap:14px}.v2webroot .v2app .nav .ttl{font-size:24px;letter-spacing:-.02em}.v2webroot .v2app .nav+.view .pad{padding-top:14px}.v2webroot[data-kind=words] .v2app .nav .back,.v2webroot[data-kind=translate] .v2app .nav .back,.v2webroot[data-kind=ask] .v2app .nav .back,.v2webroot[data-kind=class] .v2app .nav .back,.v2webroot[data-kind=rewards] .v2app .nav .back,.v2webroot[data-kind=notifications] .v2app .nav .back,.v2webroot[data-kind=profile] .v2app .nav .back,.v2webroot[data-kind=teacher_classes] .v2app .nav .back,.v2webroot[data-kind=teacher_today] .v2app .nav .back,.v2webroot .v2app .tabs,.v2webroot .v2-globaltabs{display:none}.v2webroot .v2app .runtop{padding:30px 44px 10px}.v2webroot .v2app .runbody{padding:12px 44px 26px}.v2webroot .v2app .runfoot{padding:16px 44px 30px}.v2webroot .v2app .rrow,.v2webroot .v2app .tile,.v2webroot .v2app .tool{cursor:pointer;transition:transform .15s var(--ease),box-shadow .15s var(--ease),border-color .15s var(--ease)}.v2webroot .v2app .rrow:hover,.v2webroot .v2app .tile:hover,.v2webroot .v2app .tool:hover{transform:translateY(-1px);box-shadow:0 2px 4px #46341e0f,0 14px 34px #46341e29}.v2webroot .v2app .srow{cursor:pointer;transition:background .14s var(--ease)}.v2webroot .v2app .srow:hover{background:#fff9}.v2webroot .v2app .btn{font-size:16px;padding:13px 0;cursor:pointer;transition:transform .13s var(--ease),box-shadow .13s var(--ease)}.v2webroot .v2app .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 12px 26px #d63a2852}.v2webroot .v2app .btn:not(:disabled):active{transform:translateY(0);box-shadow:0 6px 14px #d63a283d}.v2webroot .v2app .nav .back,.v2webroot .v2app .nav .act,.v2webroot .v2app .runtop .x{cursor:pointer;transition:transform .13s var(--ease),background .13s var(--ease),box-shadow .13s var(--ease)}.v2webroot .v2app .nav .back:hover,.v2webroot .v2app .nav .act:hover,.v2webroot .v2app .runtop .x:hover{background:#fff;transform:translateY(-1px);box-shadow:var(--sh)}.v2webroot .v2app .opt{transition:transform .13s var(--ease),border-color .13s var(--ease)}.v2webroot .v2app .opt:not(.ok):not(.no):hover{transform:translateY(-1px);border-color:#2d24183d}.v2webroot .v2app .tinput{font-size:16px}.v2webroot .v2app .opt{font-size:15px}.v2webroot :is(a,button,input,textarea,select,[role=button]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.v2webroot .v2app .tinput:focus-visible{outline:none}.v2webroot .v2app .done,.v2webroot .v2app .secintro{min-height:70vh;justify-content:center}.v2webroot .v2app .done{padding-top:40px}.v2webroot .v2app .done .tomo{max-width:460px}.v2webroot .v2app .done p{max-width:56ch}.v2webroot .v2app .secintro .btn{max-width:320px}.v2webroot .v2app .prose{max-width:70ch}@media (max-width:1080px){.v2webroot .shell{grid-template-columns:84px 1fr}.v2webroot .side{padding:18px 10px 14px;gap:2px}.v2webroot .side .brand{justify-content:center;padding:6px 0 14px}.v2webroot .side .brand .mk{font-size:20px}.v2webroot .side .brand .badge{display:none}.v2webroot .navlbl{padding:12px 0 4px;text-align:center;font-size:9.5px;letter-spacing:.06em}.v2webroot .side .nav a{justify-content:center;padding:12px 0}.v2webroot .side .nav a .t{display:none}.v2webroot .userchip{justify-content:center;padding:8px}.v2webroot .userchip .meta{display:none}.v2webroot .v2app .pad,.v2webroot .v2app .nav,.v2webroot .v2app .runtop,.v2webroot .v2app .runbody,.v2webroot .v2app .runfoot{padding-left:30px;padding-right:30px}}.v2webroot .side{overflow-y:auto;scrollbar-width:thin}.v2webroot[data-kind=home] .v2app .btn,.v2webroot[data-kind=reviews] .v2app .btn,.v2webroot[data-kind=rewards] .v2app .btn,.v2webroot[data-kind=notifications] .v2app .btn,.v2webroot[data-kind=profile] .v2app .btn,.v2webroot[data-kind=advanced] .v2app .btn{transition:transform .13s ease,box-shadow .13s ease,background .13s ease}.v2webroot[data-kind=home] .v2app .btn:hover:not(:disabled),.v2webroot[data-kind=reviews] .v2app .btn:hover:not(:disabled),.v2webroot[data-kind=rewards] .v2app .btn:hover:not(:disabled),.v2webroot[data-kind=notifications] .v2app .btn:hover:not(:disabled),.v2webroot[data-kind=profile] .v2app .btn:hover:not(:disabled),.v2webroot[data-kind=advanced] .v2app .btn:hover:not(:disabled){transform:translateY(-1px)}.v2webroot[data-kind=home] .v2app .btn:active:not(:disabled),.v2webroot[data-kind=reviews] .v2app .btn:active:not(:disabled),.v2webroot[data-kind=rewards] .v2app .btn:active:not(:disabled),.v2webroot[data-kind=notifications] .v2app .btn:active:not(:disabled),.v2webroot[data-kind=profile] .v2app .btn:active:not(:disabled),.v2webroot[data-kind=advanced] .v2app .btn:active:not(:disabled){transform:translateY(0)}.v2webroot[data-kind=rewards] .v2app .nav,.v2webroot[data-kind=notifications] .v2app .nav,.v2webroot[data-kind=advanced] .v2app .nav{max-width:940px;margin:0 auto;width:100%;padding:34px 44px 6px}.v2webroot[data-kind=rewards] .v2app .nav .ttl,.v2webroot[data-kind=notifications] .v2app .nav .ttl,.v2webroot[data-kind=advanced] .v2app .nav .ttl{font-size:27px;letter-spacing:-.02em}.v2webroot[data-kind=rewards] .v2app .nav .back,.v2webroot[data-kind=notifications] .v2app .nav .back{display:none}.v2webroot[data-kind=advanced] .v2app .nav .back{transition:background .13s ease,transform .13s ease}.v2webroot[data-kind=advanced] .v2app .nav .back:hover{background:var(--solid);transform:translateY(-1px)}.v2webroot[data-kind=notifications] .v2app .nav .act.wide{height:36px;transition:background .13s ease,color .13s ease}.v2webroot[data-kind=notifications] .v2app .nav .act.wide:hover{background:var(--solid);color:var(--ink)}.v2webroot[data-kind=home] .v2app .pad{max-width:1010px;margin:0 auto;padding:36px 44px 48px;display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.v2webroot[data-kind=home] .v2app .pad>*{min-width:0}.v2webroot[data-kind=home] .v2app .pad>.greet,.v2webroot[data-kind=home] .v2app .pad>.tools,.v2webroot[data-kind=home] .v2app .pad>.hero,.v2webroot[data-kind=home] .v2app .pad>.slab,.v2webroot[data-kind=home] .v2app .pad>.state-card{grid-column:1 / -1}.v2webroot[data-kind=home] .v2app .greet{margin-bottom:6px}.v2webroot[data-kind=home] .v2app .greet .hi{font-size:30px}.v2webroot[data-kind=home] .v2app .greet .sub{font-size:14px;margin-top:3px}.v2webroot[data-kind=home] .v2app .tools{margin-bottom:8px;gap:12px}.v2webroot[data-kind=home] .v2app .tool{flex-direction:row;justify-content:center;gap:10px;padding:15px 10px;transition:transform .14s ease,box-shadow .14s ease}.v2webroot[data-kind=home] .v2app .tool .l{font-size:13px}.v2webroot[data-kind=home] .v2app .tool:hover{transform:translateY(-1px);box-shadow:0 3px 6px #46341e12,0 16px 36px #46341e29}.v2webroot[data-kind=home] .v2app .hero{padding:28px 30px;border-radius:28px}.v2webroot[data-kind=home] .v2app .hero .big{font-size:34px;max-width:20ch}.v2webroot[data-kind=home] .v2app .hero .seq{margin-top:16px}.v2webroot[data-kind=home] .v2app .hero .sc{font-size:13px;padding:7px 13px}.v2webroot[data-kind=home] .v2app .hero .est{font-size:13.5px;margin-top:14px;max-width:66ch}.v2webroot[data-kind=home] .v2app .hero .ring{top:24px;right:26px}.v2webroot[data-kind=home] .v2app .hero .herofoot{margin-top:20px}.v2webroot[data-kind=home] .v2app .hero .herofoot .start{flex:0 0 auto;width:auto;padding:15px 40px;font-size:17px;transition:transform .13s ease,box-shadow .13s ease}.v2webroot[data-kind=home] .v2app .hero .herofoot .start:hover{transform:translateY(-1px);box-shadow:0 10px 26px #211f1b38}.v2webroot[data-kind=home] .v2app .hero .custbtn:hover{background:#ffffff42}.v2webroot[data-kind=home] .v2app .slab{margin:14px 4px 0}.v2webroot[data-kind=home] .v2app .rrow{margin-bottom:0;padding:15px 16px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot[data-kind=home] .v2app .rrow:hover{transform:translateY(-1px);border-color:#f5503c59;box-shadow:0 3px 6px #46341e12,0 16px 36px #46341e29}.v2webroot[data-kind=home] .v2app .rrow .tx .d{font-size:13px}.v2webroot[data-kind=home] .v2app .sover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:32px;flex-direction:row}.v2webroot[data-kind=home] .v2app .sover .scrim{position:absolute;top:0;right:0;bottom:0;left:0}.v2webroot[data-kind=home] .v2app .sover .panel.cust{position:relative;left:auto;right:auto;bottom:auto;width:100%;max-width:480px;max-height:min(680px,88vh);border-radius:24px;padding-bottom:16px;box-shadow:0 30px 80px #211f1b59;animation:v2webModalIn .22s cubic-bezier(.2,.9,.3,1)}@keyframes v2webModalIn{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.v2webroot[data-kind=home] .v2app .custrow{transition:background .12s ease}.v2webroot[data-kind=home] .v2app .custrow:hover{background:var(--surface-2)}.v2webroot[data-kind=home] .v2app .custhd .cx:hover{background:var(--solid);color:var(--ink)}.v2webroot[data-kind=reviews] .v2app .runtop{max-width:720px;width:100%;margin:0 auto;padding:30px 40px 10px}.v2webroot[data-kind=reviews] .v2app .runtop .ct{font-size:12.5px}.v2webroot[data-kind=reviews] .v2app .runtop .x{transition:background .13s ease}.v2webroot[data-kind=reviews] .v2app .runtop .x:hover{background:var(--solid);color:var(--ink)}.v2webroot[data-kind=reviews] .v2app .runbody{max-width:720px;width:100%;margin:0 auto;padding:clamp(16px,5vh,48px) 40px 60px}.v2webroot[data-kind=reviews] .v2app .prompt{font-size:33px;line-height:1.12;margin-top:12px}.v2webroot[data-kind=reviews] .v2app .rvhint{font-size:15px}.v2webroot[data-kind=reviews] .v2app .tinput{font-size:18px;padding:16px 18px;margin-top:24px;transition:border-color .13s ease,box-shadow .13s ease}.v2webroot[data-kind=reviews] .v2app .tinput:focus{border-color:var(--accent);box-shadow:var(--sh),0 0 0 4px var(--accent-soft)}.v2webroot[data-kind=reviews] .v2app .runbody>.btn{width:auto;align-self:flex-start;padding-left:34px;padding-right:34px;font-size:16px}.v2webroot[data-kind=reviews] .v2app .idkrow .btn{font-size:15.5px}.v2webroot[data-kind=reviews] .v2app .idkrow .sub{flex:0 1 260px}.v2webroot[data-kind=reviews] .v2app .verdict{padding:20px 24px;border-radius:18px;margin-top:22px}.v2webroot[data-kind=reviews] .v2app .verdict .vl{font-size:13.5px}.v2webroot[data-kind=reviews] .v2app .verdict .ans{font-size:27px;margin-top:6px}.v2webroot[data-kind=reviews] .v2app .verdict .nr{font-size:13.5px}.v2webroot[data-kind=reviews] .v2app .verdict .nr.why{font-size:14.5px}.v2webroot[data-kind=reviews] .v2app .askopen{transition:transform .13s ease,box-shadow .13s ease}.v2webroot[data-kind=reviews] .v2app .askopen:hover{transform:translateY(-1px)}.v2webroot[data-kind=reviews] .v2app .askbox{padding:14px}.v2webroot[data-kind=reviews] .v2app .asugg{transition:background .12s ease}.v2webroot[data-kind=reviews] .v2app .asugg:hover{background:var(--surface-2);color:var(--ink)}.v2webroot[data-kind=reviews] .v2app .stoprev:hover{color:var(--ink-2)}.v2webroot[data-kind=reviews] .v2app .secintro{min-height:calc(100vh - 120px);max-width:720px;margin:0 auto;padding:60px 40px}.v2webroot[data-kind=reviews] .v2app .secintro h2{font-size:30px}.v2webroot[data-kind=reviews] .v2app .secintro p{font-size:15.5px;max-width:44ch}.v2webroot[data-kind=reviews] .v2app .secintro .btn{max-width:320px}.v2webroot[data-kind=rewards] .v2app .pad{max-width:940px;margin:0 auto;padding:12px 44px 48px}.v2webroot[data-kind=rewards] .v2app .rew-hero{padding:30px 34px;border-radius:26px}.v2webroot[data-kind=rewards] .v2app .rew-hero .n{font-size:60px}.v2webroot[data-kind=rewards] .v2app .rew-hero .lab{font-size:14px;margin-top:6px}.v2webroot[data-kind=rewards] .v2app .rew-hero .streak7{max-width:460px;margin-top:22px}.v2webroot[data-kind=rewards] .v2app .rew-stats{gap:12px;margin:16px 0}.v2webroot[data-kind=rewards] .v2app .rew-stat{padding:18px 10px}.v2webroot[data-kind=rewards] .v2app .rew-stat .n{font-size:26px}.v2webroot[data-kind=rewards] .v2app .rew-stat .l{font-size:11.5px}.v2webroot[data-kind=rewards] .v2app .slab{margin:26px 4px 12px}.v2webroot[data-kind=rewards] .v2app .shop{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v2webroot[data-kind=rewards] .v2app .shopcard{padding:16px;min-width:0;transition:transform .14s ease,box-shadow .14s ease}.v2webroot[data-kind=rewards] .v2app .shopcard:hover{transform:translateY(-1px);box-shadow:0 3px 6px #46341e12,0 16px 36px #46341e29}.v2webroot[data-kind=rewards] .v2app .shopcard .buy{transition:transform .13s ease,box-shadow .13s ease}.v2webroot[data-kind=rewards] .v2app .shopcard .buy:hover:not(:disabled):not(.active){transform:translateY(-1px);box-shadow:0 8px 18px #d63a284d}.v2webroot[data-kind=rewards] .v2app .badges{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:12px}.v2webroot[data-kind=rewards] .v2app .badge{padding:18px 12px}.v2webroot[data-kind=rewards] .v2app .badge .bt{font-size:12.5px}.v2webroot[data-kind=rewards] .v2app .badge .bd{font-size:11px}.v2webroot[data-kind=notifications] .v2app .nav{max-width:900px}.v2webroot[data-kind=notifications] .v2app .pad{max-width:900px;margin:0 auto;padding:14px 44px 48px}.v2webroot[data-kind=notifications] .v2app .notif{max-width:720px;width:100%;padding:15px 16px;gap:14px;margin-bottom:10px;text-align:left;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot[data-kind=notifications] .v2app .notif:hover{transform:translateY(-1px);box-shadow:0 3px 6px #46341e12,0 16px 36px #46341e29}.v2webroot[data-kind=notifications] .v2app .notif .t{font-size:14.5px}.v2webroot[data-kind=notifications] .v2app .notif .d{font-size:13px;max-width:62ch}.v2webroot[data-kind=notifications] .v2app .notif .ngo{cursor:pointer;padding:4px;border-radius:50%;transition:color .12s ease,background .12s ease}.v2webroot[data-kind=notifications] .v2app .notif .ngo:hover{color:var(--accent-deep);background:var(--accent-soft)}.v2webroot[data-kind=notifications] .v2app .wbempty{max-width:720px;padding:48px 24px;font-size:14px}.v2webroot[data-kind=profile] .v2app .pad{max-width:920px;margin:0 auto;padding:38px 44px 48px;display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:start}.v2webroot[data-kind=profile] .v2app .pad>*{min-width:0}.v2webroot[data-kind=profile] .v2app .pad>.mehead,.v2webroot[data-kind=profile] .v2app .pad>.mestats,.v2webroot[data-kind=profile] .v2app .pad>.slab,.v2webroot[data-kind=profile] .v2app .pad>.rrow,.v2webroot[data-kind=profile] .v2app .pad>.mefoot{grid-column:1 / -1}.v2webroot[data-kind=profile] .v2app .mehead{flex-direction:row;align-items:center;text-align:left;gap:16px;padding-top:0}.v2webroot[data-kind=profile] .v2app .mehead .av{width:64px;height:64px;font-size:26px}.v2webroot[data-kind=profile] .v2app .mehead h2{font-size:27px}.v2webroot[data-kind=profile] .v2app .mehead .s{font-size:14px}.v2webroot[data-kind=profile] .v2app .mestats{margin:6px 0 4px;gap:12px}.v2webroot[data-kind=profile] .v2app .mestat{padding:18px 10px}.v2webroot[data-kind=profile] .v2app .mestat .n{font-size:26px}.v2webroot[data-kind=profile] .v2app .slab{margin:14px 4px 0}.v2webroot[data-kind=profile] .v2app .grp{margin-top:0}.v2webroot[data-kind=profile] .v2app .rrow{margin-bottom:0;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot[data-kind=profile] .v2app .rrow:hover{transform:translateY(-1px);border-color:#f5503c59;box-shadow:0 3px 6px #46341e12,0 16px 36px #46341e29}.v2webroot[data-kind=profile] .v2app .srow{transition:background .12s ease}.v2webroot[data-kind=profile] .v2app .srow:hover{background:#fff9}.v2webroot[data-kind=profile] .v2app .srow .l{font-size:14px}.v2webroot[data-kind=profile] .v2app .intensity button{transition:border-color .13s ease,background .13s ease}.v2webroot[data-kind=profile] .v2app .intensity button:hover{border-color:var(--accent)}.v2webroot[data-kind=profile] .v2app .mefoot{margin-top:22px}.v2webroot[data-kind=advanced] .v2app .nav{max-width:920px}.v2webroot[data-kind=advanced] .v2app .pad{max-width:920px;margin:0 auto;padding:14px 44px 48px;display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;align-items:start}.v2webroot[data-kind=advanced] .v2app .pad>*{min-width:0}.v2webroot[data-kind=advanced] .v2app .pad>.slab{grid-column:1 / -1}.v2webroot[data-kind=advanced] .v2app .slab{margin:14px 4px 0}.v2webroot[data-kind=advanced] .v2app .grp,.v2webroot[data-kind=advanced] .v2app .setblock{margin-top:0}.v2webroot[data-kind=advanced] .v2app .setblock{padding:16px}.v2webroot[data-kind=advanced] .v2app .srow{transition:background .12s ease}.v2webroot[data-kind=advanced] .v2app .srow:hover{background:#fff9}.v2webroot[data-kind=advanced] .v2app .srow.sub-row:hover{background:var(--surface-2)}.v2webroot[data-kind=advanced] .v2app .srow .l{font-size:14px}.v2webroot[data-kind=advanced] .v2app .seg4 button{transition:background .12s ease,color .12s ease}.v2webroot[data-kind=advanced] .v2app .seg4 button:not(.on):hover{color:var(--ink)}.v2webroot[data-kind=advanced] .v2app .stepper button{transition:background .12s ease,color .12s ease}.v2webroot[data-kind=advanced] .v2app .stepper button:hover{background:var(--solid);color:var(--ink)}.v2webroot[data-kind=advanced] .v2app .ivcell input{transition:border-color .13s ease,box-shadow .13s ease}.v2webroot[data-kind=advanced] .v2app .ivcell input:focus{box-shadow:0 0 0 3px var(--accent-soft)}@media (max-width: 1023px){.v2webroot[data-kind=home] .v2app .pad,.v2webroot[data-kind=profile] .v2app .pad,.v2webroot[data-kind=advanced] .v2app .pad{grid-template-columns:1fr;padding-left:32px;padding-right:32px}.v2webroot[data-kind=rewards] .v2app .shop{grid-template-columns:1fr}.v2webroot[data-kind=rewards] .v2app .pad,.v2webroot[data-kind=notifications] .v2app .pad,.v2webroot[data-kind=rewards] .v2app .nav,.v2webroot[data-kind=notifications] .v2app .nav,.v2webroot[data-kind=advanced] .v2app .nav,.v2webroot[data-kind=reviews] .v2app .runtop,.v2webroot[data-kind=reviews] .v2app .runbody,.v2webroot[data-kind=reviews] .v2app .secintro{padding-left:32px;padding-right:32px}.v2webroot[data-kind=reviews] .v2app .prompt{font-size:30px}}.v2webroot[data-kind=lesson]{--stw: 980px}.v2webroot[data-kind=lessons]{--stw: 1080px}.v2webroot[data-kind=concept]{--stw: 900px}.v2webroot[data-kind=words]{--stw: 1000px}.v2webroot[data-kind=my_notes]{--stw: 980px}.v2webroot[data-kind=note]{--stw: 760px}.v2webroot[data-kind=capture]{--stw: 860px}.v2webroot[data-kind=writing]{--stw: 680px}.v2webroot[data-kind=speaking]{--stw: 700px}.v2webroot[data-kind=unit],.v2webroot[data-kind=listening]{--stw: 720px}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking]) .v2app :is(.nav,.pad){max-width:var(--stw, 760px);margin-left:auto;margin-right:auto}.v2webroot:is([data-kind=unit],[data-kind=listening]) .v2app :is(.runtop,.runbody){max-width:var(--stw, 760px);margin-left:auto;margin-right:auto}.v2webroot:is([data-kind=lessons],[data-kind=words],[data-kind=my_notes],[data-kind=writing],[data-kind=speaking]) .v2app .nav{padding:30px 40px 2px}.v2webroot:is([data-kind=lessons],[data-kind=words],[data-kind=my_notes],[data-kind=writing],[data-kind=speaking]) .v2app .nav .back{display:none}.v2webroot:is([data-kind=lessons],[data-kind=words],[data-kind=my_notes],[data-kind=writing],[data-kind=speaking]) .v2app .nav .ttl{font-size:30px;letter-spacing:-.02em}.v2webroot:is([data-kind=note],[data-kind=capture]) .v2app .nav .ttl{font-size:22px}.v2webroot[data-kind=concept] .v2app .nav .ttl{font-size:20px}.v2webroot:is([data-kind=concept],[data-kind=note],[data-kind=capture]) .v2app .nav .back:hover,.v2webroot:is([data-kind=concept],[data-kind=note],[data-kind=capture]) .v2app .nav .act:hover{border-color:var(--accent);color:var(--accent)}.v2webroot[data-kind=lesson] .v2app .nav{display:none}.v2webroot[data-kind=lesson] .v2app .pad{padding-top:36px!important}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app :is(.tile,.pchoice,.mat,.mwrow,.notecard,.tickrow,.srccard,.notenew,.mwcap,.gref,.lstate:not(.on)){transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app :is(.tile,.pchoice,.mat,.mwrow,.notecard,.tickrow:not(.edit),.srccard,.notenew,.gref):hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));box-shadow:0 6px 18px #211f1b17}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app .mwcap:hover{transform:translateY(-1px);box-shadow:0 12px 26px #d63a284d}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app .btn:not(.sm){font-size:15.5px;padding:13px 20px;transition:transform .12s ease,box-shadow .14s ease,filter .14s ease}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app .btn:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.04)}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app .btn:not(:disabled):active{transform:translateY(0)}.v2webroot:is([data-kind=lesson],[data-kind=lessons],[data-kind=concept],[data-kind=words],[data-kind=my_notes],[data-kind=note],[data-kind=capture],[data-kind=writing],[data-kind=speaking],[data-kind=unit],[data-kind=listening]) .v2app .btn.ghost:not(:disabled):hover{border-color:var(--accent);filter:none}.v2webroot:is([data-kind=words],[data-kind=speaking]) .v2app .wbsort:not(.on):hover,.v2webroot:is([data-kind=capture],[data-kind=writing],[data-kind=speaking]) .v2app .dgzlek:hover,.v2webroot[data-kind=speaking] .v2app .spprompt .hear:hover{border-color:var(--accent)}.v2webroot[data-kind=words] .v2app .vrm:hover{color:var(--accent)}.v2webroot[data-kind=lesson] .v2app .pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.v2webroot[data-kind=lesson] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=lesson] .v2app .lhead{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 32px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh);padding:26px 28px 24px;margin-bottom:6px}.v2webroot[data-kind=lesson] .v2app .lhead>*{grid-column:1;min-width:0}.v2webroot[data-kind=lesson] .v2app .lhead h1{font-size:32px;margin-top:6px}.v2webroot[data-kind=lesson] .v2app .lhead .sum{font-size:15px;max-width:62ch}.v2webroot[data-kind=lesson] .v2app .lhead .lprog{grid-column:2;grid-row:1 / span 3;align-self:center;margin-top:0;min-width:280px}.v2webroot[data-kind=lesson] .v2app .lhead .lprog .b{min-width:130px;padding:14px 16px}.v2webroot[data-kind=lesson] .v2app .lhead .lstate{justify-self:start;margin-top:14px}.v2webroot[data-kind=lesson] .v2app .seg{width:max-content;margin:20px 0 14px}.v2webroot[data-kind=lesson] .v2app .seg button{flex:none;padding:9px 26px;font-size:14px}.v2webroot[data-kind=lesson] .v2app .seg button:not(.on):hover{color:var(--ink)}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.subhead){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;align-items:stretch}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.subhead)>*{min-width:0}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.subhead)>.subhead{grid-column:1 / -1}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.wkrow){display:block;column-count:2;column-gap:16px}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.wkrow)>.subhead{column-span:all}.v2webroot[data-kind=lesson] .v2app .wkrow{break-inside:avoid}.v2webroot[data-kind=lesson] .v2app .pad>.pchoice{grid-column:auto;margin-top:12px!important}.v2webroot[data-kind=lesson] .v2app .pad>.btn.ghost{grid-column:auto;margin-top:12px!important;width:100%}.v2webroot[data-kind=lesson] .v2app .pad>.tile{grid-column:auto}.v2webroot[data-kind=lesson] .v2app .exptoggle{margin-top:20px}.v2webroot[data-kind=lesson] .v2app .exptoggle:hover{color:var(--ink)}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.mat){grid-column:auto}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.matnote){grid-column:1 / -1}.v2webroot[data-kind=lesson] .v2app .pad>.mat{grid-column:auto}.v2webroot[data-kind=lesson] .v2app .matnote{padding:16px 20px;font-size:14.5px}.v2webroot[data-kind=lessons] .v2app .pad{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;align-items:stretch}.v2webroot[data-kind=lessons] .v2app .pad>*{min-width:0}.v2webroot[data-kind=lessons] .v2app .pad>:is(.wbempty,.kind){grid-column:1 / -1}.v2webroot[data-kind=lessons] .v2app .tile.lesn{margin-bottom:0;padding:16px}.v2webroot[data-kind=concept] .v2app .pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.v2webroot[data-kind=concept] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=concept] .v2app .cttl{font-size:30px}.v2webroot[data-kind=concept] .v2app .gloss{max-width:68ch;font-size:15px;line-height:1.7}.v2webroot[data-kind=concept] .v2app .para{border-radius:18px}.v2webroot[data-kind=concept] .v2app .para th,.v2webroot[data-kind=concept] .v2app .para td{padding:13px 18px;font-size:14.5px}.v2webroot[data-kind=concept] .v2app .para tr:hover td{background:#ffffff8c}.v2webroot[data-kind=concept] .v2app .exline{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.v2webroot[data-kind=concept] .v2app .exline .e{padding:14px 16px}.v2webroot[data-kind=concept] .v2app .pad>.vrow{grid-column:auto}.v2webroot[data-kind=concept] .v2app .pad>.btn{width:max-content;min-width:220px;justify-self:start;padding:13px 28px}.v2webroot[data-kind=words] .v2app .pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;align-items:start}.v2webroot[data-kind=words] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=words] .v2app .pad>.srch{grid-column:auto;margin-bottom:12px}.v2webroot[data-kind=words] .v2app .pad>.fchips{grid-column:auto;align-self:center;margin:0 0 12px;padding:0;overflow-x:visible;flex-wrap:wrap}.v2webroot[data-kind=words] .v2app .fchips .fchip{cursor:pointer}.v2webroot[data-kind=words] .v2app .fchips .fchip:not(.on):hover{border-color:var(--accent)}.v2webroot[data-kind=words] .v2app .notenew{padding:13px 0}.v2webroot[data-kind=words] .v2app .pad>.vrow{grid-column:auto}.v2webroot[data-kind=words] .v2app .pad>div[id^=lekgrp-]{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.v2webroot[data-kind=words] .v2app .pad>div[id^=lekgrp-]>*{min-width:0}.v2webroot[data-kind=words] .v2app .pad>div[id^=lekgrp-]>.subhead{grid-column:1 / -1}.v2webroot[data-kind=words] .v2app .lekjump button:hover{border-color:var(--accent);color:var(--ink)}.v2webroot[data-kind=my_notes] .v2app .pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;align-items:stretch}.v2webroot[data-kind=my_notes] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=my_notes] .v2app .pad>:is(.mwrow,.notecard){grid-column:auto}.v2webroot[data-kind=my_notes] .v2app .trsub{font-size:14px;max-width:70ch}.v2webroot[data-kind=my_notes] .v2app .mwcap{padding:18px 20px}.v2webroot[data-kind=my_notes] .v2app .capwords{padding:20px 22px}.v2webroot[data-kind=note] .v2app .pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.v2webroot[data-kind=note] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=note] .v2app .pad>.tickrow{grid-column:auto}.v2webroot[data-kind=note] .v2app .structcard{padding:22px 26px;font-size:14.5px}.v2webroot[data-kind=note] .v2app .structcard p,.v2webroot[data-kind=note] .v2app .structcard li{font-size:14.5px}.v2webroot[data-kind=note] .v2app .srcimg img{max-height:420px}.v2webroot[data-kind=note] .v2app .pad>.btn{max-width:460px;justify-self:start}.v2webroot[data-kind=note] .v2app .aisumm{padding:18px 20px}.v2webroot[data-kind=capture] .v2app .srcgrid{grid-template-columns:repeat(4,1fr);gap:14px}.v2webroot[data-kind=capture] .v2app .srccard{padding:24px 14px 22px}.v2webroot[data-kind=capture] .v2app .capta{min-height:220px;font-size:15.5px}.v2webroot[data-kind=capture] .v2app .trsub{font-size:14px;max-width:70ch}.v2webroot[data-kind=capture] .v2app .capkind button:not(.on):hover{border-color:var(--accent)}.v2webroot[data-kind=capture] .v2app .dgzadd:hover{border-color:var(--accent)}.v2webroot[data-kind=unit] .v2app .runbody{max-width:660px;min-height:calc(100vh - 140px);justify-content:center;overflow:visible;padding-bottom:48px}.v2webroot[data-kind=unit] .v2app .kind{justify-content:center}.v2webroot[data-kind=unit] .v2app .prompt{text-align:center;font-size:clamp(26px,3vw,34px);margin-top:12px}.v2webroot[data-kind=unit] .v2app .rvhint,.v2webroot[data-kind=unit] .v2app .qsrc,.v2webroot[data-kind=unit] .v2app .drillmeta{text-align:center}.v2webroot[data-kind=unit] .v2app .qsrc{justify-content:center;width:100%}.v2webroot[data-kind=unit] .v2app .xpflash{align-self:center}.v2webroot[data-kind=unit] .v2app .drillimg{max-height:260px}.v2webroot[data-kind=unit] .v2app .tinput{display:block;max-width:460px;margin-left:auto;margin-right:auto;text-align:center;font-size:19px;font-weight:700}.v2webroot[data-kind=unit] .v2app .opts{width:100%;max-width:480px;margin-left:auto;margin-right:auto}.v2webroot[data-kind=unit] .v2app .opt{justify-content:center;font-size:16.5px}.v2webroot[data-kind=unit] .v2app .opt .num{margin-right:-4px}.v2webroot:is([data-kind=unit],[data-kind=listening]) .v2app .opt{transition:transform .12s ease,border-color .14s ease,box-shadow .14s ease}.v2webroot:is([data-kind=unit],[data-kind=listening]) .v2app .opt:not(:disabled):hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 6px 18px #211f1b17}.v2webroot[data-kind=unit] .v2app .idkrow{width:100%;max-width:480px;margin-left:auto;margin-right:auto}.v2webroot[data-kind=unit] .v2app .verdict{width:100%;max-width:520px;margin-left:auto;margin-right:auto}.v2webroot[data-kind=unit] .v2app .runbody>.btn{max-width:460px;margin-left:auto;margin-right:auto}.v2webroot[data-kind=unit] .v2app .grefs{width:100%;max-width:480px;margin-left:auto;margin-right:auto}.v2webroot[data-kind=unit] .v2app .pwsent,.v2webroot[data-kind=unit] .v2app .cbank{justify-content:center}.v2webroot[data-kind=unit] .v2app .cbank .cw:not(:disabled):hover{border-color:var(--accent)}.v2webroot[data-kind=unit] .v2app .done{max-width:620px;margin:0 auto}.v2webroot:is([data-kind=unit],[data-kind=listening]) .v2app .runtop .x:hover{border-color:var(--accent);color:var(--accent)}.v2webroot[data-kind=listening] .v2app .runbody{max-width:700px;overflow:visible;padding-bottom:48px}.v2webroot[data-kind=listening] .v2app .lpcard{padding:22px 24px;margin-top:14px}.v2webroot[data-kind=listening] .v2app .lptx{max-height:340px}.v2webroot[data-kind=listening] .v2app .lpplay,.v2webroot[data-kind=listening] .v2app .lpcbtn{transition:transform .12s ease,border-color .14s ease}.v2webroot[data-kind=listening] .v2app .lpplay:hover{transform:translateY(-1px) scale(1.03)}.v2webroot[data-kind=listening] .v2app .lpcbtn:not(.on):hover{border-color:var(--accent);color:var(--ink)}.v2webroot[data-kind=listening] .v2app .prompt{font-size:26px}.v2webroot[data-kind=listening] .v2app .done{max-width:560px;margin:0 auto}.v2webroot[data-kind=writing] .v2app .wtask{padding:20px 24px}.v2webroot[data-kind=writing] .v2app .wtask .wt-prompt{font-size:19px}.v2webroot[data-kind=writing] .v2app .wtask .wreq{font-size:13.5px}.v2webroot[data-kind=writing] .v2app .capta.wtext{min-height:240px;font-size:15.5px}.v2webroot[data-kind=writing] .v2app .wsubmitted{padding:16px 20px}.v2webroot[data-kind=writing] .v2app .wgrade{padding:20px 22px}.v2webroot[data-kind=writing] .v2app .wgrade-md{font-size:14.5px}.v2webroot[data-kind=speaking] .v2app .spprompt{padding:30px 28px 26px}.v2webroot[data-kind=speaking] .v2app .spprompt .cz{font-size:30px}.v2webroot[data-kind=speaking] .v2app .spmic{margin-top:34px;transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=speaking] .v2app .spmic:not(:disabled):not(.scoring):hover{transform:translateY(-1px) scale(1.03);box-shadow:0 18px 36px #d63a285c}.v2webroot[data-kind=speaking] .v2app .spscore{padding:20px 22px}.v2webroot[data-kind=speaking] .v2app .secintro{min-height:calc(100vh - 220px)}@media (max-width: 1100px){.v2webroot[data-kind=capture] .v2app .srcgrid{grid-template-columns:1fr 1fr}}@media (max-width: 1023px){.v2webroot[data-kind=lesson] .v2app .pad,.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.subhead),.v2webroot[data-kind=concept] .v2app .pad,.v2webroot[data-kind=words] .v2app .pad,.v2webroot[data-kind=words] .v2app .pad>div[id^=lekgrp-],.v2webroot[data-kind=my_notes] .v2app .pad,.v2webroot[data-kind=note] .v2app .pad{grid-template-columns:1fr}.v2webroot[data-kind=lesson] .v2app .pad>div:has(>.wkrow){column-count:1}.v2webroot[data-kind=lesson] .v2app .lhead{grid-template-columns:1fr;padding:22px 22px 20px}.v2webroot[data-kind=lesson] .v2app .lhead .lprog{grid-column:1;grid-row:auto;margin-top:16px;min-width:0}.v2webroot[data-kind=lesson] .v2app .lhead h1{font-size:27px}.v2webroot:is([data-kind=lessons],[data-kind=words],[data-kind=my_notes],[data-kind=writing],[data-kind=speaking]) .v2app .nav .ttl{font-size:26px}}.v2webroot[data-kind=reviews]{--stw: 680px}.v2webroot[data-kind=reviews] .v2app .runtop,.v2webroot[data-kind=reviews] .v2app .runbody{max-width:var(--stw);margin-left:auto;margin-right:auto}.v2webroot:is([data-kind=reviews],[data-kind=unit]) .v2app .runtop{padding:22px 0 8px;gap:16px}.v2webroot:is([data-kind=reviews],[data-kind=unit]) .v2app .runtop .pb{height:8px}.v2webroot:is([data-kind=reviews],[data-kind=unit]) .v2app .runtop .ct{font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.v2webroot[data-kind=reviews] .v2app .runbody{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 120px);padding:20px 24px 40px}.v2webroot:is([data-kind=reviews],[data-kind=unit]) .v2app .prompt{font-size:34px;letter-spacing:-.01em;text-align:center}.v2webroot[data-kind=reviews] .v2app .tinput{max-width:440px;margin-left:auto;margin-right:auto;font-size:22px;text-align:center;padding:14px 16px}.v2webroot[data-kind=reviews] .v2app .schedchip{justify-content:center;margin-left:auto;margin-right:auto}.v2webroot[data-kind=reviews] .v2app .rvhint{text-align:center}.v2webroot[data-kind=reviews] .v2app .runbody .btn{font-size:15.5px;padding:14px 28px}.v2webroot[data-kind=reviews] .v2app .secintro{max-width:560px;margin-left:auto;margin-right:auto;min-height:calc(100vh - 80px);display:flex;flex-direction:column;justify-content:center}.v2webroot[data-kind=reviews] .v2app .runbody .kind{justify-content:center;text-align:center}.v2webroot[data-kind=reviews] .v2app .idkrow{justify-content:center}.v2webroot:is([data-kind=reviews],[data-kind=unit]) .v2app,.v2webroot:is([data-kind=reviews],[data-kind=unit]) .v2app .app{min-height:100vh}.v2webroot[data-kind=class] .main>.v2app{max-width:920px;margin:0 auto}.v2webroot[data-kind=class_people] .main>.v2app,.v2webroot[data-kind=class_materials] .main>.v2app{max-width:880px;margin:0 auto}.v2webroot[data-kind=class_chat] .main>.v2app{max-width:720px;margin:0 auto}.v2webroot[data-kind=translate] .main>.v2app{max-width:880px;margin:0 auto}.v2webroot[data-kind=ask] .main>.v2app{max-width:760px;margin:0 auto}.v2webroot[data-kind=help] .main>.v2app{max-width:760px;margin:0 auto}.v2webroot[data-kind=teacher_classes] .main>.v2app,.v2webroot[data-kind=teacher_today] .main>.v2app,.v2webroot[data-kind=teacher_class_detail] .main>.v2app,.v2webroot[data-kind=teacher_student_detail] .main>.v2app{max-width:1080px;margin:0 auto}.v2webroot[data-kind=class] .v2app .pad,.v2webroot[data-kind=class_people] .v2app .pad,.v2webroot[data-kind=class_materials] .v2app .pad,.v2webroot[data-kind=translate] .v2app .pad,.v2webroot[data-kind=ask] .v2app .pad,.v2webroot[data-kind=help] .v2app .pad,.v2webroot[data-kind=teacher_classes] .v2app .pad,.v2webroot[data-kind=teacher_today] .v2app .pad,.v2webroot[data-kind=teacher_class_detail] .v2app .pad,.v2webroot[data-kind=teacher_student_detail] .v2app .pad{max-width:none}.v2webroot[data-kind=translate] .v2app .nav,.v2webroot[data-kind=ask] .v2app .nav,.v2webroot[data-kind=class_people] .v2app .nav,.v2webroot[data-kind=class_materials] .v2app .nav,.v2webroot[data-kind=help] .v2app .nav{padding:30px 40px 6px}.v2webroot[data-kind=translate] .v2app .nav .back,.v2webroot[data-kind=ask] .v2app .nav .back,.v2webroot[data-kind=class_people] .v2app .nav .back,.v2webroot[data-kind=class_materials] .v2app .nav .back{display:none}.v2webroot[data-kind=translate] .v2app .nav .ttl,.v2webroot[data-kind=ask] .v2app .nav .ttl,.v2webroot[data-kind=class_people] .v2app .nav .ttl,.v2webroot[data-kind=class_materials] .v2app .nav .ttl{font-size:27px;letter-spacing:-.02em}.v2webroot[data-kind=help] .v2app .nav .ttl,.v2webroot[data-kind=teacher_class_detail] .v2app .nav .ttl,.v2webroot[data-kind=teacher_student_detail] .v2app .nav .ttl{font-size:22px;letter-spacing:-.015em}.v2webroot[data-kind=help] .v2app .nav .back,.v2webroot[data-kind=class_chat] .v2app .nav .back,.v2webroot[data-kind=teacher_class_detail] .v2app .nav .back,.v2webroot[data-kind=teacher_student_detail] .v2app .nav .back,.v2webroot[data-kind=translate] .v2app .nav .act,.v2webroot[data-kind=ask] .v2app .nav .act{transition:border-color .14s ease,background .14s ease,transform .12s ease;cursor:pointer}.v2webroot[data-kind=help] .v2app .nav .back:hover,.v2webroot[data-kind=class_chat] .v2app .nav .back:hover,.v2webroot[data-kind=teacher_class_detail] .v2app .nav .back:hover,.v2webroot[data-kind=teacher_student_detail] .v2app .nav .back:hover,.v2webroot[data-kind=translate] .v2app .nav .act:hover,.v2webroot[data-kind=ask] .v2app .nav .act:hover{border-color:var(--accent);background:#ffffffb3}@media (min-width: 1000px){.v2webroot[data-kind=class] .v2app .pad{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}.v2webroot[data-kind=class] .v2app .pad>*{min-width:0}.v2webroot[data-kind=class] .v2app .clspick,.v2webroot[data-kind=class] .v2app .idcard,.v2webroot[data-kind=class] .v2app .pad>.slab,.v2webroot[data-kind=class] .v2app .wbempty,.v2webroot[data-kind=class] .v2app .nudgelink{grid-column:1 / -1}.v2webroot[data-kind=class] .v2app .pad>.slab{margin:10px 4px -3px}.v2webroot[data-kind=class] .v2app .chatcard,.v2webroot[data-kind=class] .v2app .together,.v2webroot[data-kind=class] .v2app .matpeek{margin-top:0}.v2webroot[data-kind=class] .v2app .nudgelink{margin-top:8px}}.v2webroot[data-kind=class] .v2app .clspick{padding:0 2px 4px}.v2webroot[data-kind=class] .v2app .clspick .nm{font-size:26px}.v2webroot[data-kind=class] .v2app .idcard{padding:22px 24px}.v2webroot[data-kind=class] .v2app .hwcard,.v2webroot[data-kind=class] .v2app .hwnone{padding:18px 20px}.v2webroot[data-kind=class] .v2app .chatcard,.v2webroot[data-kind=class] .v2app .together,.v2webroot[data-kind=class] .v2app .matpeek{padding:16px 18px}.v2webroot[data-kind=class] .v2app .chatcard,.v2webroot[data-kind=class] .v2app .together,.v2webroot[data-kind=class] .v2app .matpeek,.v2webroot[data-kind=class] .v2app .joinbtn,.v2webroot[data-kind=class] .v2app .hwbtn{transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot[data-kind=class] .v2app .chatcard:hover,.v2webroot[data-kind=class] .v2app .together:hover,.v2webroot[data-kind=class] .v2app .matpeek:hover{transform:translateY(-1px);box-shadow:0 10px 26px #211f1b1a;border-color:var(--accent)}.v2webroot[data-kind=class] .v2app .joinbtn:hover,.v2webroot[data-kind=class] .v2app .hwbtn:hover{transform:translateY(-1px);box-shadow:0 12px 26px #d63a284d}.v2webroot[data-kind=class] .v2app .hwbtn{width:auto;padding:12px 28px;font-size:15px}.v2webroot[data-kind=class] .v2app .nudgelink:hover{color:var(--accent-deep, var(--accent))}@media (min-width: 1000px){.v2webroot[data-kind=class_people] .v2app .pad{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;align-content:start}.v2webroot[data-kind=class_people] .v2app .pad>*{min-width:0}.v2webroot[data-kind=class_people] .v2app .tgbanner,.v2webroot[data-kind=class_people] .v2app .matgrp,.v2webroot[data-kind=class_people] .v2app .tgnote,.v2webroot[data-kind=class_people] .v2app .wbempty,.v2webroot[data-kind=class_people] .v2app .tgbanner+.person{grid-column:1 / -1}.v2webroot[data-kind=class_people] .v2app .person{margin-bottom:0}.v2webroot[data-kind=class_people] .v2app .tgbanner{margin-bottom:4px}.v2webroot[data-kind=class_people] .v2app .matgrp{margin:12px 2px 0!important}.v2webroot[data-kind=class_people] .v2app .tgnote{margin-top:10px;max-width:70ch}}.v2webroot[data-kind=class_people] .v2app .tgbanner{padding:20px 22px}.v2webroot[data-kind=class_people] .v2app .person{padding:13px 16px}.v2webroot[data-kind=class_materials] .v2app .fchips{margin:0 0 16px;padding:0;flex-wrap:wrap;overflow:visible}.v2webroot[data-kind=class_materials] .v2app .fchip{transition:border-color .14s ease,background .14s ease}.v2webroot[data-kind=class_materials] .v2app .fchip:not(.on):hover{border-color:var(--accent);color:var(--ink)}@media (min-width: 1000px){.v2webroot[data-kind=class_materials] .v2app .pad>div:not([class]){display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;align-content:start;margin-bottom:20px}.v2webroot[data-kind=class_materials] .v2app .pad>div:not([class])>*{min-width:0}.v2webroot[data-kind=class_materials] .v2app .pad>div:not([class])>.matgrp{grid-column:1 / -1;margin:0 2px}.v2webroot[data-kind=class_materials] .v2app .pad>div:not([class])>div:not([class]){display:contents}.v2webroot[data-kind=class_materials] .v2app .pad .mat{margin-bottom:0}.v2webroot[data-kind=class_materials] .v2app .pad .matnote{grid-column:1 / -1;margin:-2px 0 2px}}.v2webroot[data-kind=class_materials] .v2app .mat{padding:14px 16px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot[data-kind=class_materials] .v2app .mat:hover{transform:translateY(-1px);box-shadow:0 10px 26px #211f1b1a;border-color:var(--accent)}.v2webroot[data-kind=class_materials] .v2app .matnote{padding:16px 20px}.v2webroot[data-kind=class_materials] .v2app .matnote>*{max-width:70ch}.v2webroot[data-kind=class_chat] .v2app .app{display:flex;flex-direction:column;height:100vh}.v2webroot[data-kind=class_chat] .v2app .nav{flex:none;padding:20px 24px 14px;border-bottom:1px solid var(--line)}.v2webroot[data-kind=class_chat] .v2app .chatwrap{flex:1;min-height:0}.v2webroot[data-kind=class_chat] .v2app .chatscroll{padding:20px 24px;gap:12px}.v2webroot[data-kind=class_chat] .v2app .mrow{max-width:70%}.v2webroot[data-kind=class_chat] .v2app .msg{font-size:14.5px}.v2webroot[data-kind=class_chat] .v2app .chatbar{padding:14px 24px 20px}.v2webroot[data-kind=class_chat] .v2app .chatbar input{font-size:14.5px;padding:12px 18px}.v2webroot[data-kind=class_chat] .v2app .chatbar .send{transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=class_chat] .v2app .chatbar .send:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 8px 18px #d63a2847}.v2webroot[data-kind=translate] .v2app .pad{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;align-content:start}.v2webroot[data-kind=translate] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=translate] .v2app .pad>.trres{grid-column:auto;margin-bottom:0}.v2webroot[data-kind=translate] .v2app .pad>.trdetect{margin:4px 2px -4px}.v2webroot[data-kind=translate] .v2app .trcard{padding:22px 24px}.v2webroot[data-kind=translate] .v2app .trtext{min-height:150px;font-size:16px}.v2webroot[data-kind=translate] .v2app .trsel{flex:0 1 280px;font-size:14px;cursor:pointer}.v2webroot[data-kind=translate] .v2app .trtoggles{max-width:620px}.v2webroot[data-kind=translate] .v2app .trcyc{transition:border-color .14s ease,background .14s ease}.v2webroot[data-kind=translate] .v2app .trcyc:hover{border-color:var(--accent)}.v2webroot[data-kind=translate] .v2app .trbtns{margin-top:18px}.v2webroot[data-kind=translate] .v2app .trbtns .btn{font-size:15.5px;padding:13px 26px;transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=translate] .v2app .trbtns .go{flex:0 0 auto;min-width:220px}.v2webroot[data-kind=translate] .v2app .trbtns .btn:not(:disabled):hover{transform:translateY(-1px)}.v2webroot[data-kind=translate] .v2app .trres{padding:18px 20px}.v2webroot[data-kind=translate] .v2app .trres .txt{font-size:20px}.v2webroot[data-kind=translate] .v2app .trres .cp{transition:border-color .14s ease,color .14s ease}.v2webroot[data-kind=translate] .v2app .trres .cp:hover{border-color:var(--accent);color:var(--ink)}.v2webroot[data-kind=translate] .v2app .trinfo{max-width:70ch}.v2webroot[data-kind=ask] .v2app .app{display:flex;flex-direction:column;height:100vh}.v2webroot[data-kind=ask] .v2app .nav{flex:none}.v2webroot[data-kind=ask] .v2app .view{flex:1;min-height:0;overflow-y:auto}.v2webroot[data-kind=ask] .v2app .askbar{position:static;flex:none;padding:14px 40px 20px;border-top:1px solid var(--line)}.v2webroot[data-kind=ask] .v2app .askbar textarea{font-size:15px;padding:12px 16px;max-height:140px}.v2webroot[data-kind=ask] .v2app .askbar .sb{transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=ask] .v2app .askbar .sb:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 8px 18px #d63a2847}.v2webroot[data-kind=ask] .v2app .askchips{flex-direction:row;flex-wrap:wrap;gap:10px}.v2webroot[data-kind=ask] .v2app .askchip{width:auto;padding:11px 16px;border-radius:99px;font-size:13.5px;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.v2webroot[data-kind=ask] .v2app .askchip:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 8px 20px #211f1b14}.v2webroot[data-kind=ask] .v2app .aska .amsg{font-size:15px;line-height:1.65}.v2webroot[data-kind=ask] .v2app .askq{font-size:14.5px}.v2webroot[data-kind=ask] .v2app .askrel a{transition:border-color .14s ease}.v2webroot[data-kind=ask] .v2app .askrel a:hover{border-color:var(--accent)}.v2webroot[data-kind=ask] .v2app .nav .act.wide{transition:border-color .14s ease,background .14s ease}.v2webroot[data-kind=ask] .v2app .nav .act.wide:hover{border-color:var(--accent);background:#ffffffb3}.v2webroot[data-kind=help] .v2app .hlead{font-size:14.5px;max-width:70ch}.v2webroot[data-kind=help] .v2app .htourbtn{width:auto;padding:12px 26px;font-size:15px;transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=help] .v2app .htourbtn:hover{transform:translateY(-1px);box-shadow:0 12px 26px #d63a284d}.v2webroot[data-kind=help] .v2app .hsearch{max-width:420px;padding:2px 14px}.v2webroot[data-kind=help] .v2app .hsechead{padding:14px 18px;transition:background .14s ease}.v2webroot[data-kind=help] .v2app .hsechead:hover{background:#ffffff8c}.v2webroot[data-kind=help] .v2app .hitems{padding:14px 20px 18px}.v2webroot[data-kind=help] .v2app .hqa-item .a{max-width:70ch}.v2webroot[data-kind=teacher_classes] .v2app .thead2,.v2webroot[data-kind=teacher_today] .v2app .thead2{padding:32px 40px 0}.v2webroot[data-kind=teacher_classes] .v2app .thead2 h1,.v2webroot[data-kind=teacher_today] .v2app .thead2 h1{font-size:31px;letter-spacing:-.02em}.v2webroot[data-kind=teacher_classes] .v2app .thead2 .brandmark,.v2webroot[data-kind=teacher_today] .v2app .thead2 .brandmark{display:none}.v2webroot[data-kind=teacher_classes] .v2app .thead2 .mode,.v2webroot[data-kind=teacher_today] .v2app .thead2 .mode,.v2webroot[data-kind=teacher_classes] .v2app .thead2 .tbell,.v2webroot[data-kind=teacher_today] .v2app .thead2 .tbell{cursor:pointer;transition:border-color .14s ease,background .14s ease}.v2webroot[data-kind=teacher_classes] .v2app .thead2 .tbell:hover,.v2webroot[data-kind=teacher_today] .v2app .thead2 .tbell:hover{border-color:var(--accent)}@media (min-width: 1000px){.v2webroot[data-kind=teacher_classes] .v2app .pad,.v2webroot[data-kind=teacher_today] .v2app .pad{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;align-content:start}.v2webroot[data-kind=teacher_classes] .v2app .pad>*,.v2webroot[data-kind=teacher_today] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=teacher_classes] .v2app .pad>.tcls,.v2webroot[data-kind=teacher_today] .v2app .pad>.tcls,.v2webroot[data-kind=teacher_classes] .v2app .pad>.rrow,.v2webroot[data-kind=teacher_today] .v2app .pad>.rrow{grid-column:auto;margin-bottom:0}.v2webroot[data-kind=teacher_classes] .v2app .pad>.slab,.v2webroot[data-kind=teacher_today] .v2app .pad>.slab{margin:10px 4px -3px}.v2webroot[data-kind=teacher_classes] .v2app .pad>.notenew,.v2webroot[data-kind=teacher_today] .v2app .pad>.notenew{margin:8px 0 0}}.v2webroot[data-kind=teacher_classes] .v2app .tcls,.v2webroot[data-kind=teacher_today] .v2app .tcls,.v2webroot[data-kind=teacher_classes] .v2app .rrow,.v2webroot[data-kind=teacher_today] .v2app .rrow{padding:16px 18px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.v2webroot[data-kind=teacher_classes] .v2app .tcls:hover,.v2webroot[data-kind=teacher_today] .v2app .tcls:hover,.v2webroot[data-kind=teacher_classes] .v2app .rrow:hover,.v2webroot[data-kind=teacher_today] .v2app .rrow:hover{transform:translateY(-1px);box-shadow:0 10px 26px #211f1b1a;border-color:var(--accent)}.v2webroot[data-kind=teacher_classes] .v2app .notenew,.v2webroot[data-kind=teacher_today] .v2app .notenew{transition:border-color .14s ease,background .14s ease}.v2webroot[data-kind=teacher_classes] .v2app .notenew:hover,.v2webroot[data-kind=teacher_today] .v2app .notenew:hover{border-color:var(--accent);background:var(--accent-soft)}@media (min-width: 1000px){.v2webroot[data-kind=teacher_class_detail] .v2app .pad{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 14px;align-content:start}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.classhdr{grid-column:span 4;margin-bottom:0}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.curlek{grid-column:span 2;margin-bottom:0}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.person,.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.asgn,.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.mat,.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.vrowt,.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.asgnform{grid-column:span 3;margin-bottom:0}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.asgnform{align-self:start;margin-top:0}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.slab{margin:10px 4px -3px}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.tnav{margin-bottom:2px}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.joincode{margin-top:4px}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.hwhead{margin:0 2px!important}}@media (min-width: 1000px) and (max-width: 1180px){.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.classhdr{grid-column:span 3}.v2webroot[data-kind=teacher_class_detail] .v2app .pad>.curlek{grid-column:span 3}}.v2webroot[data-kind=teacher_class_detail] .v2app .classhdr{padding:18px 20px}.v2webroot[data-kind=teacher_class_detail] .v2app .tnav{justify-content:flex-start;flex-wrap:wrap;overflow:visible;padding-bottom:0}.v2webroot[data-kind=teacher_class_detail] .v2app .tnavb{transition:border-color .14s ease,transform .12s ease}.v2webroot[data-kind=teacher_class_detail] .v2app .tnavb:not(.on):hover{border-color:var(--accent)}.v2webroot[data-kind=teacher_class_detail] .v2app .person{padding:13px 16px;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease;cursor:pointer}.v2webroot[data-kind=teacher_class_detail] .v2app .person:hover{transform:translateY(-1px);box-shadow:0 10px 26px #211f1b1a;border-color:var(--accent)}.v2webroot[data-kind=teacher_class_detail] .v2app .asgn,.v2webroot[data-kind=teacher_class_detail] .v2app .asgnform{padding:18px 20px}.v2webroot[data-kind=teacher_class_detail] .v2app .asgnform .fi{font-size:14px}.v2webroot[data-kind=teacher_class_detail] .v2app .asgnform .btn,.v2webroot[data-kind=teacher_class_detail] .v2app .pad .btn{font-size:15px;transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=teacher_class_detail] .v2app .pad .btn:not(:disabled):hover{transform:translateY(-1px)}.v2webroot[data-kind=teacher_class_detail] .v2app .curlek .step button{cursor:pointer;transition:border-color .14s ease}.v2webroot[data-kind=teacher_class_detail] .v2app .curlek .step button:hover{border-color:var(--accent)}.v2webroot[data-kind=teacher_class_detail] .v2app .tchat,.v2webroot[data-kind=teacher_class_detail] .v2app .tchatbar{max-width:760px}.v2webroot[data-kind=teacher_class_detail] .v2app .mrow{max-width:70%}.v2webroot[data-kind=teacher_student_detail] .v2app .mehead{flex-direction:row;align-items:center;text-align:left;gap:16px;padding:4px 2px 2px}.v2webroot[data-kind=teacher_student_detail] .v2app .mehead .av{width:56px;height:56px;font-size:22px;box-shadow:0 8px 18px #211f1b29}.v2webroot[data-kind=teacher_student_detail] .v2app .mehead h2{font-size:24px}.v2webroot[data-kind=teacher_student_detail] .v2app .mehead .s{font-size:13.5px}@media (min-width: 1000px){.v2webroot[data-kind=teacher_student_detail] .v2app .pad{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 14px;align-content:start}.v2webroot[data-kind=teacher_student_detail] .v2app .pad>*{grid-column:1 / -1;min-width:0}.v2webroot[data-kind=teacher_student_detail] .v2app .pad>.skbar,.v2webroot[data-kind=teacher_student_detail] .v2app .pad>.wkrow{grid-column:span 3;margin-bottom:0}.v2webroot[data-kind=teacher_student_detail] .v2app .pad>.slab{margin:10px 4px -3px}.v2webroot[data-kind=teacher_student_detail] .v2app .pad>.mestats{margin:4px 0 0;gap:14px}.v2webroot[data-kind=teacher_student_detail] .v2app .pad>.btn{width:auto;justify-self:start;padding:13px 26px;font-size:15px;margin-top:4px;transition:transform .12s ease,box-shadow .14s ease}.v2webroot[data-kind=teacher_student_detail] .v2app .pad>.btn:not(:disabled):hover{transform:translateY(-1px)}.v2webroot[data-kind=teacher_student_detail] .v2app .skbar{align-self:center;padding:4px 2px}}.v2webroot[data-kind=teacher_student_detail] .v2app .mestat{padding:18px 12px}.v2webroot[data-kind=teacher_student_detail] .v2app .mestat .n{font-size:26px}.v2webroot[data-kind=teacher_student_detail] .v2app .wkrow{padding:12px 15px}.v2webroot[data-kind=teacher_student_detail] .v2app .tbrief{padding:20px 22px}.v2webroot[data-kind=teacher_student_detail] .v2app .tbrief p{font-size:14px;max-width:75ch}.t-curlek .tt .a,.t-curlek .tt .b,.t-lekrow .kt .a,.t-lekrow .kt .b,.t-matrow .mid .tt,.t-matrow .mid .sub,.t-attach .mid .tt,.t-attach .mid .sub,.t-doneitem .tt,.t-modecard .lb .t,.t-modecard .lb .s,.t-sthead .nm{display:block}.t-srow .nm,.t-srow .sub{display:flex}.t-modecard{margin:8px 18px 0;border-radius:var(--r-lg);padding:15px 16px;display:flex;align-items:center;gap:13px;background:linear-gradient(135deg,#243a6e,#2452b5);color:#fff;box-shadow:var(--sh-sm)}.t-modecard .ic{width:42px;height:42px;border-radius:12px;background:#ffffff29;display:flex;align-items:center;justify-content:center;flex:none}.t-modecard .lb{flex:1}.t-modecard .lb .t{font-family:var(--font-display);font-weight:800;font-size:16px;line-height:1.15}.t-modecard .lb .s{font-size:12.5px;color:#ffffffd1;margin-top:2px}.t-modecard.on{background:linear-gradient(135deg,#1c6b3e,#2e9e5b)}.t-head{padding:12px 16px 6px;display:flex;align-items:flex-end;gap:12px}.t-head .hi{flex:1}.t-head .hi .g{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.01em;line-height:1.1}.t-head .hi .s{font-size:13px;color:var(--mluv-muted);margin-top:2px}.t-head .badge{display:inline-flex;align-items:center;gap:5px;background:var(--mluv-blue-50);color:var(--mluv-blue-700);border:1px solid var(--mluv-blue-100);border-radius:var(--r-pill);padding:5px 11px;font-weight:800;font-size:11.5px}.t-bell{position:relative;background:none;border:0;padding:5px;cursor:pointer;color:var(--mluv-slate);flex:none;display:inline-flex}.t-bell-bdg{position:absolute;top:-1px;right:-1px;min-width:16px;height:16px;border-radius:99px;background:var(--mluv-red-600);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.t-lv{border-radius:var(--r-pill);color:#fff;font-family:var(--font-display);font-weight:800;font-size:11px;padding:3px 9px;flex:none;letter-spacing:.01em}.t-clist{padding:6px 0 120px;display:flex;flex-direction:column;gap:12px}.t-classcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:15px 16px;box-shadow:var(--sh-xs);text-align:left;display:block;width:100%;position:relative}.t-classcard .top{display:flex;align-items:center;gap:9px}.t-classcard .cname{font-family:var(--font-display);font-weight:800;font-size:17.5px;letter-spacing:-.01em;flex:1;min-width:0}.t-classcard .today-dot{font-size:10.5px;font-weight:800;color:var(--mluv-green);background:var(--mluv-success-soft);border-radius:var(--r-pill);padding:3px 9px}.t-lekrow{display:flex;align-items:center;gap:8px;margin-top:11px;background:var(--mluv-cream);border-radius:var(--r-sm);padding:9px 11px}.t-lekrow .km{width:30px;height:30px;border-radius:9px;background:var(--mluv-ink);color:#fff;font-family:var(--font-display);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}.t-lekrow .kt{flex:1;min-width:0}.t-lekrow .kt .a{font-weight:700;font-size:14px;line-height:1.2}.t-lekrow .kt .b{font-size:12px;color:var(--mluv-muted)}.t-meta{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:11px}.t-meta .mi{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mluv-slate);font-weight:600}.t-meta .mi .lucide{width:15px;height:15px;color:var(--mluv-muted)}.t-meta .mi b{color:var(--mluv-ink)}.t-cardfoot{display:flex;align-items:center;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid var(--mluv-line-soft)}.t-avstack{display:flex}.t-avstack .av{width:26px;height:26px;border-radius:50%;border:2px solid var(--mluv-paper);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:10px;margin-left:-7px}.t-avstack .av:first-child{margin-left:0}.t-avstack .more{background:var(--mluv-line);color:var(--mluv-slate)}.t-cardfoot .nstud{font-size:12.5px;color:var(--mluv-muted);font-weight:700}.t-cardfoot .prog{margin-left:auto;display:flex;align-items:center;gap:8px}.t-cardfoot .prog .tk{width:64px;height:6px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.t-cardfoot .prog .tk .fl{height:100%;background:var(--mluv-green);border-radius:99px}.t-cardfoot .prog .pl{font-size:11.5px;font-weight:800;color:var(--mluv-slate);font-variant-numeric:tabular-nums}.t-fab{position:absolute;right:18px;bottom:90px;width:58px;height:58px;border-radius:50%;background:var(--mluv-red-600);border:0;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px #e031276b;z-index:5}.t-fab:active{background:var(--mluv-red-700)}.up-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:700;border-radius:20px;padding:2px 9px;white-space:nowrap;flex:none}.up-badge.done{background:#e8f5e9;color:#2e7d32}.up-badge.sug{background:#e3f2fd;color:#1565c0}.up-badge.shared{background:#e8f5e9;color:#2e7d32}.up-badge.fail{background:#ffebee;color:#c62828}.up-badge.none{background:var(--mluv-paper);color:var(--mluv-muted);border:1px solid var(--mluv-line)}.t-cdhead{padding:4px 0 0}.t-cdhead .eyebrow{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);display:flex;align-items:center;gap:8px}.t-cdhead h1{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.02em;line-height:1.1;margin:8px 0 0}.t-cdmeta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:9px}.t-cdmeta .mi{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--mluv-slate);font-weight:600}.t-cdmeta .mi .lucide{width:15px;height:15px;color:var(--mluv-muted)}.t-curlek{margin:15px 0 0;background:var(--mluv-ink);border-radius:var(--r-lg);padding:16px;color:#fff}.t-curlek .lab{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#ffffff8c}.t-curlek .row{display:flex;align-items:center;gap:13px;margin-top:8px}.t-curlek .km{width:46px;height:46px;border-radius:13px;background:var(--mluv-red-600);color:#fff;font-family:var(--font-display);font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center;flex:none}.t-curlek .tt{flex:1;min-width:0}.t-curlek .tt .a{font-family:var(--font-display);font-weight:800;font-size:17px;line-height:1.15}.t-curlek .tt .b{font-size:12.5px;color:#c9c9d0;margin-top:2px}.t-curlek .barwrap{margin-top:13px}.t-curlek .barwrap .l{display:flex;justify-content:space-between;font-size:12px;color:#c9c9d0;margin-bottom:6px}.t-curlek .barwrap .l b{color:#fff;font-variant-numeric:tabular-nums}.t-curlek .tk{height:8px;background:#ffffff29;border-radius:99px;overflow:hidden}.t-curlek .tk .fl{height:100%;background:var(--mluv-yellow);border-radius:99px}.t-curlek .curlek-edit{margin-top:15px;margin-left:0}.adv-hint{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:8px 13px;background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);border-radius:var(--r-pill);color:var(--mluv-blue-700);font-weight:800;font-size:12.5px}.t-srlist{padding:0;display:flex;flex-direction:column;gap:9px}.t-srow{display:flex;align-items:center;gap:12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 13px;text-align:left;width:100%;box-shadow:var(--sh-xs);cursor:pointer}.t-srow:hover{background:var(--mluv-paper-hover,#fafafa)}.t-srow-x{flex:none;width:32px;height:32px;border-radius:50%;background:transparent;border:0;color:var(--mluv-muted,#888);font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.t-srow-x:hover{background:var(--mluv-red-50,#fee);color:var(--mluv-red-600,#d32f2f)}.t-srow-x:disabled{opacity:.5;cursor:wait}.t-filepick{display:flex;align-items:center;gap:12px;padding:18px 16px;border:1.5px dashed var(--mluv-line,#ddd);border-radius:14px;background:var(--mluv-paper,#fff);cursor:pointer;margin-top:12px;transition:all .15s}.t-filepick:hover{border-color:var(--mluv-red-600,#d32f2f);background:var(--mluv-red-50,#fef5f5)}.t-filepick input[type=file]{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.t-filepick-icon{font-size:28px;line-height:1;flex:none}.t-filepick-lbl{flex:1;font-weight:600;font-size:15px;color:var(--mluv-slate,#222)}.t-filepick-hint{font-size:12px;color:var(--mluv-muted,#888);font-weight:500;flex:none}.t-av{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:14px;flex:none}.t-srow .mid{flex:1;min-width:0}.t-srow .nm{font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:7px}.t-srow .sub{font-size:11.5px;color:var(--mluv-muted);margin-top:1px}.t-srow .pbar{display:flex;align-items:center;gap:7px;margin-top:6px;width:100%}.t-srow .pbar .tk{flex:1;min-width:0;height:5px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.t-srow .pbar .tk .fl{height:100%;border-radius:99px}.t-srow .pbar .pl{font-size:11px;font-weight:800;color:var(--mluv-slate);font-variant-numeric:tabular-nums;min-width:30px;text-align:right}.t-stat{display:inline-flex;align-items:center;gap:4px;border-radius:var(--r-pill);font-weight:800;font-size:11px;padding:4px 9px;flex:none;white-space:nowrap}.t-stat.v_planu,.t-stat.on{background:var(--mluv-success-soft);color:#1c6b3e}.t-stat.napred,.t-stat.ahead{background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.t-stat.pozadu,.t-stat.behind{background:var(--mluv-warning-soft);color:#9a5a12}.t-stat .lucide{width:12px;height:12px}.t-sec{display:flex;align-items:center;justify-content:space-between;margin:18px 18px 10px}.t-sec .h{font-family:var(--font-display);font-weight:800;font-size:15px}.t-sec .h .c{color:var(--mluv-muted);font-family:var(--font-sans);font-weight:700;font-size:13px;margin-left:6px}.t-sec .act{display:inline-flex;align-items:center;gap:5px;color:var(--mluv-red-600);font-weight:800;font-size:12.5px;background:none;border:0;padding:4px}.t-sthead{padding:6px 18px 0;display:flex;align-items:center;gap:14px}.t-sthead .big{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-display);font-weight:800;font-size:24px;flex:none;box-shadow:var(--sh-sm)}.t-sthead .nm{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-.01em;line-height:1.1}.t-sthead .sub{font-size:12.5px;color:var(--mluv-muted);margin-top:3px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.t-stgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 18px 0}.t-stbox{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 10px;box-shadow:var(--sh-xs)}.t-stbox .n{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-.01em;line-height:1}.t-stbox .n.bad{color:var(--mluv-red-600)}.t-stbox .n.good{color:var(--mluv-green)}.t-stbox .l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-top:5px}.t-card{margin:16px 18px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 15px;box-shadow:var(--sh-xs)}.t-card .ch{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);margin-bottom:11px}.t-brk{display:flex;flex-direction:column;gap:11px}.t-brkrow .l{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:6px}.t-brkrow .l .v{color:var(--mluv-muted);font-weight:800;font-variant-numeric:tabular-nums}.t-brkrow .tk{height:7px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.t-brkrow .tk .fl{height:100%;border-radius:99px}.t-strug{display:flex;flex-direction:column;gap:10px}.t-strugrow{border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:11px 12px;background:var(--mluv-canvas)}.t-strugrow .top{display:flex;align-items:center;gap:8px}.t-strugrow .top .tt{flex:1;font-weight:700;font-size:13.5px}.t-strugrow .top .acc{font-weight:800;font-size:12px;font-variant-numeric:tabular-nums}.t-strugrow .dt{font-size:12px;color:var(--mluv-muted);margin-top:3px}.t-strugrow .tk{height:5px;background:var(--mluv-line);border-radius:99px;overflow:hidden;margin-top:8px}.t-strugrow .tk .fl{height:100%;border-radius:99px}.t-actrow{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.t-actrow:last-child{border-bottom:0}.t-actrow .dot{width:9px;height:9px;border-radius:50%;flex:none}.t-actrow .at{flex:1;font-size:13px;font-weight:600}.t-actrow .ar{font-size:12.5px;font-weight:800;color:var(--mluv-slate);font-variant-numeric:tabular-nums}.t-aibtn{display:flex;align-items:center;justify-content:center;gap:9px;width:calc(100% - 36px);margin:18px 18px 8px;border:0;border-radius:var(--r-sm);padding:15px 0;font-family:var(--font-sans);font-weight:800;font-size:15px;color:#fff;background:linear-gradient(90deg,#7a3e8e,#e03127)}.t-aibtn .lucide{width:18px;height:18px}.t-briefwrap{padding:6px 18px 24px}.t-briefcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-sm);overflow:hidden}.t-briefhead{background:linear-gradient(120deg,#3a1f44,#7a3e8e);color:#fff;padding:16px 17px}.t-briefhead .who{display:flex;align-items:center;gap:11px}.t-briefhead .who .big{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:16px;border:2px solid rgba(255,255,255,.4)}.t-briefhead .who .nm{font-family:var(--font-display);font-weight:800;font-size:18px}.t-briefhead .who .sub{font-size:11.5px;color:#fffc;margin-top:1px}.t-briefhead .tag{display:inline-flex;align-items:center;gap:6px;margin-top:12px;background:#ffffff29;border-radius:var(--r-pill);padding:5px 11px;font-size:11px;font-weight:700}.t-briefbody{padding:16px 17px}.t-briefbody .bh{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-plum);margin:14px 0 6px}.t-briefbody .bh:first-child{margin-top:0}.t-briefbody p{font-size:14px;line-height:1.55;margin:0;color:var(--mluv-ink)}.t-briefbody ul{margin:0;padding-left:18px}.t-briefbody li{font-size:13.5px;line-height:1.5;margin:4px 0}.t-briefbody li b{color:var(--mluv-ink)}.t-briefnote{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--mluv-muted);margin:14px 18px 0;line-height:1.4}.t-thinking{padding:60px 30px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.t-thinking .orb{width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,#7a3e8e,#e03127);display:flex;align-items:center;justify-content:center;animation:tpulse 1.3s ease-in-out infinite}@keyframes tpulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.08);opacity:1}}.t-thinking .tx{font-family:var(--font-display);font-weight:800;font-size:17px}.t-thinking .sx{font-size:13px;color:var(--mluv-muted)}.t-matlist{padding:0;display:flex;flex-direction:column;gap:9px}.t-matrow{display:flex;align-items:center;gap:12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 13px;box-shadow:var(--sh-xs)}.t-matrow .ic{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff}.t-matrow .ic.photo{background:var(--mluv-teal)}.t-matrow .ic.pdf{background:var(--mluv-red-600)}.t-matrow .mid{flex:1;min-width:0}.t-matrow .tt{font-weight:700;font-size:14px;line-height:1.2}.t-matrow .sub{font-size:11.5px;color:var(--mluv-muted);margin-top:2px}.t-matrow .badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:800;color:#1c6b3e;background:var(--mluv-success-soft);border-radius:var(--r-pill);padding:3px 8px;flex:none}.t-matrow .badge .lucide{width:12px;height:12px}.t-uploadbtn{display:flex;align-items:center;justify-content:center;gap:9px;width:calc(100% - 36px);margin:12px 18px 0;border:1.5px dashed var(--mluv-blue-500);border-radius:var(--r-md);padding:15px 0;background:var(--mluv-blue-50);color:var(--mluv-blue-700);font-family:var(--font-sans);font-weight:800;font-size:14.5px}.t-vlist{padding:0;display:flex;flex-direction:column;gap:0}.t-vrow{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--mluv-line-soft)}.t-vrow:last-child{border-bottom:0}.t-vrow .gdot{width:11px;height:11px;border-radius:50%;flex:none}.t-vrow .wt{flex:1;min-width:0}.t-vrow .cz{font-weight:700;font-size:15px}.t-vrow .cz .gloss{color:var(--mluv-muted);font-weight:500;font-size:13px;margin-left:6px}.t-vrow .nt{font-size:11.5px;color:var(--mluv-muted);margin-top:1px}.t-srbtn{border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-family:var(--font-sans);font-weight:800;font-size:11px;padding:5px 10px;display:inline-flex;align-items:center;gap:5px;flex:none}.t-srbtn.on{border-color:var(--mluv-green);background:var(--mluv-success-soft);color:#1c6b3e}.t-srbtn .lucide{width:13px;height:13px}.t-vshare{display:flex;align-items:center;gap:8px;margin:12px 18px 0;font-size:12px;color:var(--mluv-muted);background:var(--mluv-cream);border-radius:var(--r-sm);padding:10px 12px;line-height:1.4}.t-vshare .lucide{width:16px;height:16px;color:var(--mluv-green);flex:none}.t-segempty{padding:34px 24px;text-align:center;color:var(--mluv-muted)}.t-segempty .lucide{width:26px;height:26px;color:var(--mluv-faint)}.t-segempty .tt{font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--mluv-ink);margin:10px 0 4px}.t-segempty p{font-size:13px;line-height:1.5;margin:0}.t-up{padding:4px 0 0}.t-up .lead{font-size:13.5px;color:var(--mluv-slate);line-height:1.5;margin:4px 0 0}.t-attach{display:flex;align-items:center;gap:12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 12px;margin-top:10px;box-shadow:var(--sh-xs)}.t-attach .th{width:46px;height:46px;border-radius:10px;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;background:repeating-linear-gradient(135deg,#cfd8d8 0,#cfd8d8 7px,#c2cccc 7px,#c2cccc 14px)}.t-attach .th.pdf{background:var(--mluv-red-600)}.t-attach .mid{flex:1;min-width:0}.t-attach .tt{font-weight:700;font-size:13.5px}.t-attach .sub{font-size:11.5px;color:var(--mluv-muted);margin-top:1px}.t-attach .rm{border:0;background:none;color:var(--mluv-faint);padding:6px}.t-drop{display:flex;flex-direction:column;align-items:center;gap:6px;border:1.5px dashed var(--mluv-line);border-radius:var(--r-md);padding:18px;margin-top:10px;color:var(--mluv-muted);text-align:center}.t-drop .lucide{width:24px;height:24px;color:var(--mluv-faint)}.t-drop .tt{font-weight:800;font-size:13.5px;color:var(--mluv-slate)}.t-drop .sx{font-size:11.5px}.t-digbtn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:14px;border:0;border-radius:var(--r-sm);padding:15px 0;font-family:var(--font-sans);font-weight:800;font-size:15px;color:#fff;background:linear-gradient(90deg,#7a3e8e,#e03127)}.t-digbtn:disabled{background:var(--mluv-line);color:var(--mluv-faint)}.t-digbtn .lucide{width:18px;height:18px}.t-suglab{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-plum);margin:18px 0 8px}.t-suglab .lucide{width:15px;height:15px}.t-textarea{width:100%;box-sizing:border-box;min-height:168px;font-family:var(--font-sans);font-size:13.5px;line-height:1.55;padding:13px 14px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);color:var(--mluv-ink);resize:vertical}.t-textarea:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.t-edithint{font-size:11.5px;color:var(--mluv-muted);margin:6px 2px 0;display:flex;align-items:center;gap:6px}.t-edithint .lucide{width:13px;height:13px}.t-evlist{display:flex;flex-direction:column;gap:8px;margin-top:4px}.t-evrow{display:flex;align-items:center;gap:10px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:9px 11px}.t-evrow .gdot{width:10px;height:10px;border-radius:50%;flex:none}.t-evrow .cz{font-weight:700;font-size:14px}.t-evrow .en{font-size:12px;color:var(--mluv-muted);margin-left:6px}.t-evrow .x{margin-left:auto;border:0;background:none;color:var(--mluv-faint);padding:4px}.t-addword{display:flex;align-items:center;gap:6px;border:1.5px dashed var(--mluv-line);background:none;color:var(--mluv-muted);border-radius:var(--r-sm);padding:9px;font-weight:700;font-size:12.5px;justify-content:center;margin-top:2px}.t-done{padding:60px 28px 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.t-done .big{width:74px;height:74px;border-radius:22px;background:var(--mluv-success-soft);display:flex;align-items:center;justify-content:center}.t-done h2{font-family:var(--font-display);font-weight:800;font-size:22px;margin:4px 0 0}.t-done p{font-size:14px;color:var(--mluv-slate);line-height:1.5;margin:0;max-width:32ch}.t-donelist{width:100%;margin-top:8px;display:flex;flex-direction:column;gap:8px}.t-doneitem{display:flex;align-items:center;gap:10px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 13px;text-align:left}.t-doneitem .lucide{width:18px;height:18px;color:var(--mluv-green);flex:none}.t-doneitem .tt{font-size:13px;font-weight:600;line-height:1.35}.t-doneitem .tt b{color:var(--mluv-ink)}.t-form{padding:6px 18px 0;display:flex;flex-direction:column;gap:16px}.t-fld .fl{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);margin-bottom:8px}@media (min-width: 768px){.t-form.t-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;align-items:start;padding:0}.t-form.t-form-grid .full{grid-column:1 / -1}}.t-input{width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:15px;padding:13px 14px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink)}.t-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.t-chips{display:flex;flex-wrap:wrap;gap:8px}.t-chip{border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-family:var(--font-sans);font-weight:800;font-size:13px;padding:9px 14px}.t-chip.on{border-color:var(--mluv-ink);background:var(--mluv-ink);color:#fff}.t-chip.lv.on{border-color:transparent}.t-2col{display:flex;gap:10px}.t-2col>*{flex:1}.t-day{font-family:var(--font-display);font-weight:800;font-size:15px;margin:6px 18px 12px;display:flex;align-items:center;gap:8px}.t-day .cnt{font-family:var(--font-sans);font-weight:700;font-size:12.5px;color:var(--mluv-muted)}.t-tlist{padding:0 18px 24px;display:flex;flex-direction:column;gap:0}.t-trow{display:flex;gap:13px}.t-ttime{width:54px;flex:none;text-align:right;padding-top:14px}.t-ttime .h{font-family:var(--font-display);font-weight:800;font-size:15px}.t-ttime .d{font-size:11px;color:var(--mluv-muted)}.t-trail{display:flex;flex-direction:column;align-items:center;flex:none;width:18px}.t-trail .d{width:13px;height:13px;border-radius:50%;border:3px solid var(--mluv-paper);margin-top:15px;box-shadow:0 0 0 1px var(--mluv-line)}.t-trail .ln{flex:1;width:2px;background:var(--mluv-line)}.t-tcard{flex:1;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 14px;margin:9px 0 12px;box-shadow:var(--sh-xs);text-align:left}.t-tcard .top{display:flex;align-items:center;gap:8px}.t-tcard .cn{font-family:var(--font-display);font-weight:800;font-size:15.5px;flex:1;min-width:0}.t-tcard .sub{font-size:12.5px;color:var(--mluv-slate);margin-top:6px;display:flex;flex-wrap:wrap;gap:5px 13px}.t-tcard .sub .mi{display:flex;align-items:center;gap:5px}.t-tcard .sub .mi .lucide{width:14px;height:14px;color:var(--mluv-muted)}.t-tcard.now{border-color:var(--mluv-red-600);box-shadow:0 0 0 1px var(--mluv-red-600),var(--sh-sm)}.t-tcard .nowtag{font-size:9.5px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:var(--r-pill);padding:3px 8px;letter-spacing:.04em}.m-seg{display:flex;gap:4px;background:var(--c-bg-card, #f0f0f0);border-radius:var(--radius-lg,14px);padding:4px}.m-seg button{flex:1;padding:10px 8px;font-size:14px;font-weight:600;border:0;border-radius:var(--radius-md,10px);background:transparent;color:var(--c-muted, #888);cursor:pointer;transition:all .15s}.m-seg button.on{background:var(--c-brand, #d32f2f);color:#fff;box-shadow:0 2px 8px #d32f2f40}.m-seg.t-tabs5{gap:4px;background:transparent;padding:0;margin-left:0;margin-right:0}.m-seg.t-tabs5 button{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px;font-size:10.5px;font-weight:700;white-space:nowrap;line-height:1;background:transparent;color:var(--mluv-slate);border:0;border-radius:12px}.m-seg.t-tabs5 button.on{background:var(--mluv-ink);color:#fff;box-shadow:none}.m-seg.t-tabs5 button .lucide{width:18px;height:18px}.t-detailhead{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:4px 0}.t-detailhead .back{background:none;border:0;color:var(--mluv-red-600,#d32f2f);font:inherit;font-weight:700;font-size:var(--fs-body,17px);padding:4px 0;cursor:pointer;min-height:44px;white-space:nowrap}.t-detailhead .title{text-align:center;font-size:var(--fs-small,14px);color:var(--mluv-muted,#888);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.t-detailhead .gear{background:none;border:0;color:var(--mluv-muted,#888);font-size:20px;cursor:pointer;padding:4px 8px;min-height:44px;min-width:44px;line-height:1}.t-detailhead .gear:hover{color:var(--mluv-red-600,#d32f2f)}.t-detailhead .action{font-size:var(--fs-body,17px);color:var(--mluv-red-600,#d32f2f);background:none;border:0;padding:4px 0;cursor:pointer;font:inherit;font-weight:700}.tk .fl{display:block}.t-sched{display:flex;flex-direction:column;gap:8px;margin-top:10px}.t-schedrow{display:flex;align-items:center;gap:8px}.t-schedrow .d{width:32px;font-weight:700;font-size:13.5px;color:var(--mluv-slate);flex:none}.t-schedrow .dash{color:var(--mluv-muted)}.t-input.tt{width:auto;flex:0 1 auto;min-width:0}:root{--mluv-red-700: #B81E16;--mluv-red-600: #E03127;--mluv-red-500: #EA4A3F;--mluv-red-100: #FAD8D4;--mluv-red-50: #FDECEA;--mluv-blue-700: #1B3E8C;--mluv-blue-600: #2452B5;--mluv-blue-500: #2E63D6;--mluv-blue-100: #D6E0F8;--mluv-blue-50: #EAF0FC;--mluv-yellow: #F4B61F;--mluv-green: #2E9E5B;--mluv-teal: #149C9C;--mluv-plum: #7A3E8E;--mluv-orange: #E0801E;--gender-m: #2E63D6;--gender-m-soft: #EAF0FC;--gender-f: #E03127;--gender-f-soft: #FDECEA;--gender-n: #2E9E5B;--gender-n-soft: #E4F4EB;--cefr-a1: #2E9E5B;--cefr-a2: #149C9C;--cefr-b1: #2E63D6;--cefr-b2: #7A3E8E;--cefr-c1: #E0801E;--cefr-c2: #E03127;--mluv-success: #2E9E5B;--mluv-success-soft: #E4F4EB;--mluv-warning: #E0801E;--mluv-warning-soft: #FBEED9;--mluv-error: #E03127;--mluv-error-soft: #FDECEA;--mluv-info: #2452B5;--mluv-info-soft: #EAF0FC;--font-display: "Bricolage Grotesque", "Hanken Grotesk", system-ui, sans-serif;--font-sans: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--fs-display: 56px;--fs-h1: 40px;--fs-h2: 30px;--fs-h3: 23px;--fs-h4: 19px;--fs-body-lg: 18px;--fs-body: 16px;--fs-small: 14px;--fs-caption: 12.5px;--lh-tight: 1.08;--lh-snug: 1.25;--lh-normal: 1.5;--lh-relaxed: 1.65;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-pill: 999px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--sp-16: 64px;--sp-20: 80px;--sh-xs: 0 1px 2px rgba(26,26,34,.06);--sh-sm: 0 2px 6px rgba(26,26,34,.07);--sh-md: 0 6px 18px rgba(26,26,34,.09);--sh-lg: 0 16px 40px rgba(26,26,34,.12);--sh-focus: 0 0 0 3px rgba(46,99,214,.35)}:root[data-theme=light],:root{--mluv-ink: #1A1A22;--mluv-slate: #54565F;--mluv-muted: #8A8C95;--mluv-faint: #B6B7BE;--mluv-line: #E6E4DE;--mluv-line-soft:#EFEEE9;--mluv-paper: #FFFFFF;--mluv-canvas: #F7F5F0;--mluv-cream: #FBF7EE;--code-bg: var(--mluv-cream);--code-fg: var(--mluv-ink);color-scheme:light}:root[data-theme=dark]{--mluv-ink: #F4F2EC;--mluv-slate: #BFBFC5;--mluv-muted: #8E8E94;--mluv-faint: #4F4F55;--mluv-line: #2A2A30;--mluv-line-soft:#1F1F25;--mluv-paper: #18181D;--mluv-canvas: #0F0F13;--mluv-cream: #1E1B17;--mluv-red-50: #2B1614;--mluv-red-100: #391816;--mluv-blue-50: #131A2B;--mluv-blue-100: #182246;--mluv-success-soft: #122A1D;--mluv-warning-soft: #2A1F0E;--mluv-error-soft: #2B1614;--code-bg: #1F1F25;--code-fg: #F4F2EC;color-scheme:dark}:root{color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--mluv-canvas);color:var(--mluv-ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{color:inherit;-webkit-text-fill-color:currentColor}h1,.h1{font-family:var(--font-display);font-weight:800;font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:-.02em;color:var(--mluv-ink)}.display{font-family:var(--font-display);font-weight:800;font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:-.025em}h2,.h2{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h2);line-height:var(--lh-snug);letter-spacing:-.015em}h3,.h3{font-family:var(--font-display);font-weight:700;font-size:var(--fs-h3);line-height:var(--lh-snug);letter-spacing:-.01em}h4,.h4{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-h4);line-height:var(--lh-snug)}.lead{font-size:var(--fs-body-lg);line-height:var(--lh-relaxed);color:var(--mluv-slate)}.caption{font-size:var(--fs-caption);letter-spacing:.04em;text-transform:uppercase;font-weight:600;color:var(--mluv-muted)}.eyebrow{font-family:var(--font-sans);font-size:var(--fs-caption);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mluv-red-600)}.brand,.done-h1,.resume-h1,.concept-h1,.pattern-title,.production-h,.tile-value,.state-title{font-family:var(--font-display);letter-spacing:-.015em;color:var(--mluv-ink)}:root{--tabbar-h: 64px}.screen{position:relative;min-height:100dvh;display:flex;align-items:stretch;justify-content:center;padding:0;background:var(--mluv-canvas)}.screen-inner{width:100%;max-width:480px;padding:calc(16px + env(safe-area-inset-top)) 18px 36px;display:flex;flex-direction:column;gap:14px}.screen-with-tabbar .screen-inner,.screen-with-tabbar .home,.screen-with-tabbar .words-page,.screen-with-tabbar .profile-page{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 20px)}.tab-bar{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--mluv-paper);border-top:1px solid var(--mluv-line);padding:9px 8px calc(10px + env(safe-area-inset-bottom));z-index:50}.tab-bar-item{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:0;padding:6px 4px;color:var(--mluv-muted);font-family:inherit;font-size:11px;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}.tab-bar-item.on{color:var(--mluv-red-600)}.tab-bar-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;line-height:1}.tab-bar-icon svg{display:block}.tab-bar-label{letter-spacing:.01em}.tab-bar-badge{position:absolute;top:0;right:calc(50% - 22px);min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--mluv-red-600);color:#fff;font-size:10px;font-weight:800;line-height:18px;text-align:center}.session-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:4px 0}.session-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-red-600);font-size:14px;font-weight:800;cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:inherit}.session-title{text-align:center;font-size:var(--fs-small);color:var(--mluv-muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-spacer{width:32px}.session-progress{display:flex;align-items:center;gap:10px;padding:2px 4px 4px;font-variant-numeric:tabular-nums}.session-progress .progress-track{height:8px}.session-progress-n{font-size:13px;color:var(--mluv-muted);font-weight:700;min-width:56px}.session-progress-pct{font-size:13px;color:var(--mluv-green);font-weight:800;min-width:42px;text-align:right}.topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:4px 0}.topbar-title{text-align:center;font-size:var(--fs-small);color:var(--mluv-muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-spacer{width:60px}.btn-ghost{background:none;border:0;color:var(--mluv-red-600);font:inherit;font-weight:700;font-size:var(--fs-body);padding:8px 4px;cursor:pointer;-webkit-tap-highlight-color:transparent}.card{width:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:18px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--sh-xs)}.meta{display:flex;gap:8px;font-size:var(--fs-small);color:var(--mluv-muted);flex-wrap:wrap}.meta-sec{font-style:italic}.meta-progress{font-size:var(--fs-caption);color:var(--mluv-muted);text-align:center;padding:0 4px}.prompt{margin:6px 0 2px;font-family:var(--font-display);font-size:28px;font-weight:800;text-align:center;word-wrap:break-word;line-height:var(--lh-snug);letter-spacing:-.02em}.prompt-drill{font-size:23px}.drill-image{display:block;width:100%;max-width:320px;aspect-ratio:4 / 3;object-fit:cover;margin:4px auto 10px;border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-md, 0 2px 8px rgba(0,0,0,.12));background:var(--surface-2, #f0f0f0)}.hint{color:var(--mluv-muted);text-align:center;margin:0}.hint.err{color:var(--mluv-error)}.hint-sub{font-size:var(--fs-small);margin-top:-4px}form{display:flex;flex-direction:column;gap:12px}.answer{background:var(--mluv-paper);border:1.5px solid var(--mluv-line);color:var(--mluv-ink);border-radius:var(--r-sm);padding:14px 16px;font-size:var(--fs-body-lg);width:100%;outline:none;font-family:inherit}.answer:focus{border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.answer:disabled{opacity:.7}.btn{background:var(--mluv-paper);color:var(--mluv-ink);border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);padding:14px 16px;font-size:var(--fs-body);font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:var(--font-sans);transition:background .15s ease-out,border-color .15s ease-out,transform 80ms ease-out}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--mluv-red-600);border-color:var(--mluv-red-600);color:#fff}.btn.primary:hover{background:var(--mluv-red-700);border-color:var(--mluv-red-700)}.btn.ghost{background:var(--mluv-paper);border-color:var(--mluv-line);color:var(--mluv-ink)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn:disabled:active{transform:none}.verdict{padding:14px 16px;border-radius:var(--r-md);border:1.5px solid var(--mluv-line);display:flex;flex-direction:column;gap:4px;background:var(--mluv-paper)}.verdict.correct{border-color:var(--mluv-success);background:var(--mluv-success-soft)}.verdict.note{border-color:var(--mluv-warning);background:var(--mluv-warning-soft)}.verdict.wrong{border-color:var(--mluv-error);background:var(--mluv-error-soft)}.vlabel{font-weight:800;font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.04em}.verdict.correct .vlabel{color:#1c6b3e}.verdict.note .vlabel{color:var(--mluv-warning)}.verdict.wrong .vlabel{color:#9e231b}.vnote{font-size:var(--fs-small);color:var(--mluv-warning)}.correct{font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.01em}.alts{font-size:var(--fs-caption);color:var(--mluv-muted)}.home{width:100%;max-width:480px;padding:calc(env(safe-area-inset-top) + 18px) 18px 36px;display:flex;flex-direction:column;gap:12px}.home-head{display:flex;align-items:center;gap:12px;padding:0 0 6px}.home-hi{flex:1;min-width:0}.home-greet{font-family:var(--font-display);font-weight:800;font-size:24px;letter-spacing:-.02em;line-height:1.1;color:var(--mluv-ink)}.home-tagline{font-size:13px;color:var(--mluv-muted);margin-top:2px}.home-theme-chip{width:38px;height:38px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-ink);font-size:16px;font-family:inherit;box-shadow:var(--sh-xs);cursor:pointer;-webkit-tap-highlight-color:transparent}.continue-card{display:flex;align-items:center;gap:14px;width:100%;background:var(--mluv-ink);border:0;border-radius:var(--r-lg);padding:16px 18px;color:#fff;font-family:inherit;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;box-shadow:var(--sh-sm)}.continue-card:disabled{opacity:.62;cursor:default}.continue-play{width:48px;height:48px;border-radius:14px;background:var(--mluv-red-600);display:flex;align-items:center;justify-content:center;flex:none;font-size:20px;color:#fff}.continue-card:disabled .continue-play{background:var(--mluv-success)}.continue-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.continue-title{font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-.01em;line-height:1.15}.continue-sub{font-size:12.5px;color:#c9c9d0;line-height:1.35}.continue-chev{color:#fff9;font-size:22px;flex:none}.path-section-head{display:flex;align-items:baseline;justify-content:space-between;margin:18px 2px 4px}.path-section-title{font-family:var(--font-display);font-weight:800;font-size:16px;letter-spacing:-.01em;color:var(--mluv-ink)}.path-section-meta{font-size:12.5px;font-weight:700;color:var(--mluv-red-600)}.path-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.path-tile{display:flex;align-items:center;gap:13px;width:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 14px;cursor:pointer;font-family:inherit;color:var(--mluv-ink);text-align:left;box-shadow:var(--sh-xs);-webkit-tap-highlight-color:transparent;transition:transform .1s ease-out}.path-tile:active{transform:translateY(1px)}.path-tile-inactive{opacity:.85}.path-num{width:42px;height:42px;border-radius:13px;flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:18px;color:#fff}.path-num-active{background:var(--mluv-red-600)}.path-num-done{background:var(--mluv-green)}.path-num-inactive{background:var(--mluv-line);color:var(--mluv-muted)}.path-body{flex:1;min-width:0;display:flex;flex-direction:column}.path-cs{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.path-en{font-size:12.5px;color:var(--mluv-muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.path-level{border-radius:var(--r-pill);color:#fff;font-family:var(--font-display);font-weight:800;font-size:11px;padding:3px 9px;flex:none}.section-h{margin:18px 0 6px;font-family:var(--font-display);font-size:16px;font-weight:800;letter-spacing:-.01em;color:var(--mluv-ink)}.page-h1{margin:8px 2px 2px;font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.02em;line-height:1.12;color:var(--mluv-ink)}.page-sub{margin:0 2px 12px;font-size:14px;color:var(--mluv-muted)}.words-page{display:flex;flex-direction:column;padding-top:env(safe-area-inset-top)}.word-groups{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.word-group{display:flex;flex-direction:column;gap:10px}.word-group-head{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;grid-template-areas:"eyebrow eyebrow meta" "title   title   meta";align-items:center;gap:2px 12px;width:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;font-family:inherit;color:var(--mluv-ink);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;box-shadow:var(--sh-xs)}.word-group-head.open{background:var(--mluv-cream);border-color:var(--mluv-line)}.word-group-eyebrow{grid-area:eyebrow;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mluv-red-600)}.word-group-title{grid-area:title;font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-.01em;line-height:1.15;color:var(--mluv-ink)}.word-group-meta{grid-area:meta;display:flex;align-items:center;gap:8px;align-self:center}.word-group-count{font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--mluv-muted);min-width:22px;text-align:right}.word-group-chev{font-size:14px;color:var(--mluv-muted);width:16px;text-align:center}.word-list{list-style:none;padding:0;margin:0 0 4px;display:flex;flex-direction:column;gap:10px}.word-tile{display:flex;align-items:center;gap:13px;width:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 15px;cursor:pointer;font-family:inherit;color:var(--mluv-ink);text-align:left;box-shadow:var(--sh-xs);-webkit-tap-highlight-color:transparent}.word-tile-icon{width:42px;height:42px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-display);font-weight:800;font-size:18px}.word-tile-body{flex:1;min-width:0;display:flex;flex-direction:column}.word-tile-title{font-weight:700;font-size:15.5px}.word-tile-meta{font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.word-tile-count{font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--mluv-muted);flex:none}.profile-page{display:flex;flex-direction:column;padding-top:env(safe-area-inset-top)}.profile-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:8px 0 18px}.profile-avatar{width:84px;height:84px;border-radius:50%;background:var(--mluv-blue-600);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:34px;box-shadow:var(--sh-sm)}.profile-name{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.01em;margin-top:12px}.profile-sub{font-size:13.5px;color:var(--mluv-muted)}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:4px 0 0}.profile-stat{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 8px;text-align:center;box-shadow:var(--sh-xs)}.profile-stat-n{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-.01em}.profile-stat-l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-top:3px}.settings-group{margin:22px 0 0}.settings-h{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);margin:0 4px 8px}.settings-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-xs)}.settings-row{display:flex;align-items:center;gap:13px;padding:13px 15px;border:0;border-bottom:1px solid var(--mluv-line-soft);background:none;width:100%;text-align:left;font-family:inherit;color:var(--mluv-ink);cursor:pointer;-webkit-tap-highlight-color:transparent}.settings-row:last-child{border-bottom:0}.settings-row-static{cursor:default}.settings-ic{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff;font-weight:800;font-size:15px}.settings-lb{flex:1;font-size:15px;font-weight:600}.settings-val{font-size:14px;color:var(--mluv-muted)}.settings-chev{color:var(--mluv-faint);font-size:18px}.profile-version{text-align:center;font-size:12px;color:var(--mluv-faint);margin:18px 0 0}.signout-btn{display:block;width:100%;margin-top:10px;border:1.5px solid var(--mluv-red-100);background:var(--mluv-red-50);color:var(--mluv-red-600);font-family:var(--font-sans);font-weight:700;font-size:15px;border-radius:var(--r-sm);padding:13px;cursor:pointer;-webkit-tap-highlight-color:transparent}.signout-btn:disabled{opacity:.6;cursor:default}.signout-btn:hover{background:var(--mluv-red-100)}.lesson-summary-line{font-size:var(--fs-small);color:var(--mluv-slate);margin:0 4px;line-height:1.5}.lesson-state-card{display:flex;flex-direction:column;gap:11px;padding:14px;margin:8px 0 4px;background:var(--mluv-cream);border-radius:var(--r-md);border:1px solid var(--mluv-line)}.lesson-state-card.lesson-state-skipped{background:var(--mluv-cream);opacity:.8}.lesson-state-card.lesson-state-active{background:var(--mluv-ink);border-color:var(--mluv-ink);color:#fff}.lesson-state-card.lesson-state-active .lesson-state-hint{color:#fffc}.lesson-state-hint{font-size:var(--fs-small);line-height:1.5;color:var(--mluv-slate);margin:0}.lesson-state-buttons{display:flex;flex-wrap:wrap;gap:8px}.lesson-state-buttons .btn{flex:1 1 auto;min-height:42px;font-size:var(--fs-small);padding:11px 12px}.due-card{display:flex;align-items:center;gap:14px;width:100%;background:var(--mluv-ink);border:0;border-radius:var(--r-lg);padding:14px 16px;color:#fff;font-family:inherit;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;box-shadow:var(--sh-sm);margin:8px 0 4px}:root[data-theme=dark] .due-card{background:#26262d;box-shadow:0 1px 2px #00000080}:root[data-theme=dark] .continue,:root[data-theme=dark] .m-cont,:root[data-theme=dark] .m-statecard{background:#26262d}:root[data-theme=dark] .m-seg button.on{background:#3a3a44;border-color:#3a3a44}:root[data-theme=dark] .xp-toast-item{background:#2c2c34}:root[data-theme=dark] .final-exam-tile{background:linear-gradient(135deg,#2a2418,#221d12);color:var(--mluv-ink)}:root[data-theme=dark] .final-exam-passed{background:linear-gradient(135deg,#14271c,#102017)}.due-card:disabled{opacity:.62;cursor:default}.due-card-icon{width:44px;height:44px;border-radius:13px;background:#ffffff24;display:flex;align-items:center;justify-content:center;flex:none;font-size:22px}.due-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.due-card-title{font-family:var(--font-display);font-weight:800;font-size:20px;line-height:1.15;letter-spacing:-.01em;color:#fff}.due-card-n{font-size:22px}.due-card-sub{font-size:12.5px;color:#c9c9d0}.due-card-cta{flex:none;color:var(--mluv-red-500);font-weight:800;font-size:14px}.due-card:disabled .due-card-cta{color:#fff6}.lesson-state-buttons-loose{margin-top:4px}.lesson-progress-strip{display:flex;flex-direction:column;gap:11px;margin:12px 0 6px;padding:13px 15px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md)}.lesson-progress-row{display:flex;flex-direction:column;gap:6px}.lesson-progress-label{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--mluv-ink);font-weight:600}.lesson-progress-meta{font-size:var(--fs-caption);color:var(--mluv-muted);font-variant-numeric:tabular-nums;font-weight:700}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 4px}.tab{background:var(--mluv-paper);border:1.5px solid var(--mluv-line);color:var(--mluv-slate);border-radius:var(--r-sm);padding:11px;font-size:15px;font-weight:700;cursor:pointer;font-family:var(--font-sans)}.tab.active{background:var(--mluv-ink);border-color:var(--mluv-ink);color:#fff}.concept-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.concept-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px;text-align:left;cursor:pointer;font-family:inherit;color:var(--mluv-ink);display:flex;flex-direction:column;gap:4px;min-height:86px;box-shadow:var(--sh-xs)}.concept-card-kind{font-size:9.5px;color:var(--mluv-muted);background:var(--mluv-canvas);padding:2px 7px;border-radius:var(--r-pill);align-self:flex-start;letter-spacing:.08em;font-weight:800}.concept-card-title{font-size:14.5px;font-weight:700;line-height:1.25}.concept-card-meta{font-size:var(--fs-caption);color:var(--mluv-muted);margin-top:auto}.concept-card-read .concept-card-kind{color:var(--mluv-green);background:var(--mluv-success-soft)}.concept-card-check{display:inline-block;margin-left:6px;color:var(--mluv-green);font-weight:800}.concept-card-tour .concept-card-kind{color:#fff;background:var(--mluv-blue-600);letter-spacing:.06em}.concept-card-tour{border-color:var(--mluv-blue-100)}.concept-card-tour.concept-card-read .concept-card-kind{color:var(--mluv-green);background:var(--mluv-success-soft)}.practice-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.practice-tile{width:100%;display:flex;flex-direction:column;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;cursor:pointer;font-family:inherit;color:var(--mluv-ink);gap:4px;box-shadow:var(--sh-xs)}.practice-tile-title{font-size:15px;font-weight:700}.practice-tile-meta{font-size:13px;color:var(--mluv-slate);line-height:1.4}.practice-tile-cta{font-size:12.5px;color:var(--mluv-red-600);font-weight:700;margin-top:3px}.practice-tile-source{font-size:11px;color:var(--mluv-muted);font-style:italic;margin-top:2px}.book-tile{border-left:4px solid var(--mluv-red-600);padding-left:14px}.final-exam-tile{width:100%;background:linear-gradient(135deg,#fbf1e2,#f7e6cc);border:1.5px solid var(--mluv-yellow);border-radius:var(--r-md);padding:14px 15px;display:flex;flex-direction:column;gap:4px;text-align:left;font:inherit;color:var(--mluv-ink);cursor:pointer}.final-exam-tile .practice-tile-title{font-family:var(--font-display);font-size:16px;font-weight:800;letter-spacing:-.01em}.final-exam-tile .practice-tile-meta{color:var(--mluv-ink)}.final-exam-tile .practice-tile-cta{color:var(--mluv-orange);font-weight:800;margin-top:3px}.final-exam-passed{background:linear-gradient(135deg,#e4f4eb,#d6efe0);border-color:var(--mluv-green)}.final-exam-passed .practice-tile-cta{color:var(--mluv-green)}.final-exam-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:space-between}.final-exam-pill{font-size:11px;font-weight:800;padding:3px 9px;border-radius:var(--r-pill);background:var(--mluv-green);color:#fff;letter-spacing:.02em;white-space:nowrap}.final-exam-pill-tried{background:var(--mluv-warning-soft);color:var(--mluv-warning)}.exam-result-card{align-items:center;text-align:center;padding:32px 22px}.exam-passed{background:linear-gradient(135deg,var(--mluv-success-soft),#D6EFE0);border:1.5px solid var(--mluv-green)}.exam-failed{background:linear-gradient(135deg,var(--mluv-warning-soft),#F7E6CC);border:1.5px solid var(--mluv-warning)}.exam-result-badge{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:800;color:#fff;margin-top:4px}.exam-result-badge.ok{background:var(--mluv-green)}.exam-result-badge.no{background:var(--mluv-warning)}.practice-progress{display:flex;align-items:center;gap:8px;margin-top:5px;font-size:11px;color:var(--mluv-muted)}.progress-track{flex:1;height:5px;background:var(--mluv-line);border-radius:var(--r-pill);overflow:hidden}.progress-fill{display:block;height:100%;background:var(--mluv-green);border-radius:var(--r-pill);transition:width .22s ease-out}.progress-label{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}.concept-page{gap:18px}.concept-header{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.concept-kind-pill{font-size:10px;background:var(--mluv-red-600);color:#fff;padding:4px 10px;border-radius:var(--r-pill);letter-spacing:.08em;font-weight:800}.concept-h1{margin:8px 0 0;font-family:var(--font-display);font-size:25px;font-weight:800;line-height:1.14;letter-spacing:-.02em}.concept-h2{color:var(--mluv-muted);font-size:var(--fs-small);margin-top:3px}.concept-explanation{font-size:15px;line-height:1.55;margin:0}.tour-cta{width:100%;background:var(--mluv-blue-600);border-color:var(--mluv-blue-600);color:#fff}.tour-cta:hover{background:var(--mluv-blue-700);border-color:var(--mluv-blue-700)}.pattern-table-wrap{overflow-x:auto;border:1px solid var(--mluv-line);border-radius:var(--r-md)}.pattern-table{width:100%;border-collapse:collapse;font-size:14.5px}.pattern-table th,.pattern-table td{padding:8px 11px;border-bottom:1px solid var(--mluv-line-soft);text-align:left}.pattern-table thead th{font-size:11px;color:var(--mluv-muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--mluv-cream)}.pattern-table tbody th[scope=row]{font-weight:700;color:var(--mluv-slate);font-size:13px;white-space:nowrap;width:1%}.pattern-table tr:last-child td,.pattern-table tr:last-child th{border-bottom:0}.pattern-title{margin:0;font-size:19px;font-weight:800;letter-spacing:-.01em}.pattern-note{font-size:var(--fs-small);color:var(--mluv-muted);margin:0}.examples{display:flex;flex-direction:column;gap:6px}.examples-h{font-size:11.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.examples-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.examples-list li{display:flex;flex-direction:column;gap:1px;padding:7px 0;border-bottom:1px solid var(--mluv-line-soft)}.examples-list li:last-child{border-bottom:0}.ex-cs{font-weight:700;font-size:15px}.ex-en{font-size:13px;color:var(--mluv-muted)}.tips{display:flex;flex-direction:column;gap:6px;margin-top:4px;padding:13px 15px;background:var(--mluv-cream);border-radius:var(--r-md)}.tips-h{font-size:11.5px;color:var(--mluv-orange);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.tips-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.tips-list li{font-size:13.5px;line-height:1.5;padding-left:16px;position:relative}.tips-list li:before{content:"•";position:absolute;left:2px;color:var(--mluv-yellow);font-weight:800}.md-h{font-family:var(--font-display);font-size:16px;font-weight:800;margin:14px 0 4px;letter-spacing:-.01em}.md-p{font-size:15px;line-height:1.55;margin:0 0 10px}.md-p:last-child{margin-bottom:0}.md-ul{font-size:15px;line-height:1.55;margin:0 0 10px;padding-left:20px}.md-ul li{margin:3px 0}.read-button-row{display:flex;justify-content:center;margin-top:18px;padding-top:14px;border-top:1px solid var(--mluv-line)}.read-btn-done{color:var(--mluv-green);border-color:var(--mluv-green);background:var(--mluv-success-soft)}.vocab-group{display:flex;flex-direction:column;gap:6px}.vocab-group-h{font-size:11.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:800;margin:16px 0 4px}.vocab-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.vocab-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"cs   tags" "en   tags";gap:1px 10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.vocab-row-with-photo{grid-template-columns:72px 1fr auto;grid-template-areas:"photo cs   tags" "photo en   tags";align-items:center;gap:2px 12px;padding:10px 0}.vocab-photo{grid-area:photo;width:72px;height:72px;object-fit:cover;border-radius:10px;background:var(--mluv-cream);border:1px solid var(--mluv-line)}.vocab-row:last-child{border-bottom:0}.vocab-cs{grid-area:cs;font-size:16px;font-weight:700}.vocab-feminine{font-weight:500;color:var(--mluv-muted)}.vocab-en{grid-area:en;font-size:13px;color:var(--mluv-muted)}.vocab-tags{grid-area:tags;align-self:center;display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.tag{font-size:11px;background:var(--mluv-canvas);color:var(--mluv-muted);padding:3px 8px;border-radius:var(--r-pill);font-weight:800;letter-spacing:.04em;white-space:nowrap}.tag[data-gender=Ma],.tag[data-gender=Mi]{background:var(--gender-m);color:#fff}.tag[data-gender=F]{background:var(--gender-f);color:#fff}.tag[data-gender=N]{background:var(--gender-n);color:#fff}.tag-warn{background:var(--mluv-warning-soft);color:var(--mluv-warning)}.tag-ai{background:linear-gradient(90deg,var(--mluv-plum),var(--mluv-red-600));color:#fff;letter-spacing:.08em}.vocab-row-ai{background:color-mix(in srgb,var(--mluv-plum) 4%,transparent)}.vocab-extend{margin-top:16px;padding-top:14px;border-top:1px solid var(--mluv-line);display:flex;flex-direction:column;gap:8px}.vocab-extend .ai-extend-btn{width:100%}.vocab-extend-note{margin:0;font-size:12px;color:var(--mluv-muted);line-height:1.45}.settings-toggle{width:46px;height:27px;border-radius:var(--r-pill);border:0;background:var(--mluv-line);position:relative;flex:none;cursor:pointer;transition:background .18s ease;-webkit-tap-highlight-color:transparent}.settings-toggle.on{background:var(--mluv-green)}.settings-toggle:disabled{opacity:.6;cursor:default}.settings-toggle-kn{position:absolute;top:2.5px;left:2.5px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:var(--sh-xs);transition:left .18s ease}.settings-toggle.on .settings-toggle-kn{left:21.5px}.settings-row-hint{margin:0;padding:0 15px 13px;font-size:12.5px;line-height:1.5;color:var(--mluv-muted)}.ai-bucket-hint{margin:4px 0 8px;padding:11px 13px;font-size:13px;color:var(--mluv-slate);background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md);line-height:1.5}.vocab-group-h.ai-source{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--mluv-muted);font-weight:800}.graduate-btn{font-size:12px;padding:6px 12px;margin-top:6px;align-self:flex-start;color:var(--mluv-green);border-color:var(--mluv-green);background:var(--mluv-paper);font-weight:700;border-radius:var(--r-pill)}.graduate-btn:disabled{opacity:.55;cursor:default}.choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choose-btn{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;background:var(--mluv-paper);border:1.5px solid var(--mluv-line);color:var(--mluv-ink);border-radius:var(--r-md);padding:15px 16px;font-size:17px;font-weight:700;cursor:pointer;font-family:inherit;text-align:left;-webkit-tap-highlight-color:transparent}.choose-btn:active{transform:translateY(1px)}.choose-btn:disabled{cursor:default;transform:none}.choose-btn.correct{background:var(--mluv-success-soft);border-color:var(--mluv-success);color:#1c6b3e}.choose-btn.wrong{background:var(--mluv-error-soft);border-color:var(--mluv-error);color:#9e231b}.choose-num{font-size:11px;color:var(--mluv-muted);background:var(--mluv-canvas);width:22px;height:22px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;font-weight:800}.choose-text{white-space:normal;overflow-wrap:anywhere;line-height:1.25;min-width:0}.explain{font-size:16px;line-height:1.55}.explain code,.pattern-note code,.concept-explanation code,.md-p code,.md-ul code{background:var(--code-bg);color:var(--code-fg);padding:1px 6px;border-radius:5px;font-family:var(--font-mono);font-size:.92em;border:1px solid var(--mluv-line)}.drill-instructions{font-size:13px;color:var(--mluv-muted);text-align:center;padding-top:2px}.reading-text{background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow:hidden;margin-bottom:18px}.reading-text-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;background:none;border:0;font-family:inherit;color:var(--mluv-ink);cursor:pointer;-webkit-tap-highlight-color:transparent}.reading-text-eyebrow{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-orange)}.reading-text-chev{color:var(--mluv-muted);font-size:14px}.reading-text-body{padding:4px 14px 12px;font-size:14.5px;line-height:1.55;color:var(--mluv-ink)}.reading-text-body code{background:var(--code-bg);color:var(--code-fg);padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:.92em;border:1px solid var(--mluv-line)}.done-card{align-items:center;text-align:center;padding:28px 22px}.done-card-prominent{border:1.5px solid var(--mluv-yellow);background:linear-gradient(135deg,#fbf1e2,#f7e6cc);box-shadow:var(--sh-md)}.done-emoji{font-size:56px;margin-top:4px;line-height:1;color:var(--mluv-green)}.done-h1{font-family:var(--font-display);font-size:26px;margin:0;font-weight:800;letter-spacing:-.02em}.done-line{color:var(--mluv-muted);margin:0}.done-cta{width:100%;margin-top:4px}.done-card .btn,.done-card .ai-extend-btn{width:100%;box-sizing:border-box;margin-top:10px}.done-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;width:100%;margin-top:8px}.done-stats>div{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 8px;display:flex;flex-direction:column;gap:2px;align-items:center;box-shadow:var(--sh-xs)}.ds-n{font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.01em}.ds-l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700;margin-top:3px}.grammar-group{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.grammar-group-h{margin:8px 2px 0;font-size:12.5px;font-weight:800;color:var(--mluv-muted);letter-spacing:.03em}.next-review{font-size:12px;color:var(--mluv-muted);margin-top:2px}.followup-cta{width:100%;margin-top:6px;font-weight:700;font-size:13.5px;padding:11px;background:var(--mluv-paper);border:1.5px solid var(--mluv-line);color:var(--mluv-slate)}.followup{display:flex;flex-direction:column;gap:8px;margin-top:6px;padding:12px;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md)}.followup-head{display:flex;align-items:center;justify-content:space-between}.followup-h{font-size:11px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.followup-close{font-size:18px;padding:0 6px;line-height:1;color:var(--mluv-muted)}.followup-thread{display:flex;flex-direction:column;gap:7px}.followup-msg{font-size:13.5px;line-height:1.45;padding:9px 11px;border-radius:11px;white-space:pre-wrap;word-break:break-word;max-width:92%}.followup-msg.user{background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);margin-left:auto;color:var(--mluv-ink)}.followup-msg.assistant{background:var(--mluv-paper);border:1px solid var(--mluv-line);color:var(--mluv-ink)}.followup-msg code{background:var(--code-bg);color:var(--code-fg);padding:1px 4px;border-radius:4px;font-family:var(--font-mono);font-size:.9em}.followup-loading{color:var(--mluv-muted)}.followup-error{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--r-sm);background:var(--mluv-error-soft);border:1px solid color-mix(in srgb,var(--mluv-error) 30%,transparent);color:var(--mluv-error);font-size:13px;line-height:1.4}.followup-error-icon{font-weight:800;flex:none;line-height:1.4}.followup-error-msg{flex:1;word-break:break-word}.auth-screen{min-height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top) + 24px) 18px calc(env(safe-area-inset-bottom) + 24px);background:var(--mluv-canvas)}.auth-card{width:100%;max-width:380px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:28px 22px;box-shadow:var(--sh-md);display:flex;flex-direction:column;gap:18px}.auth-head{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding-bottom:6px}.auth-brand{font-family:var(--font-display);font-weight:900;font-size:38px;letter-spacing:-.03em;color:var(--mluv-red-600);display:inline-flex;align-items:baseline;gap:10px}.auth-brand-tag{font-family:var(--font-sans);font-weight:700;font-size:14px;letter-spacing:0;color:var(--mluv-muted)}.prow+.prow{border-top:1px solid var(--mluv-line-soft)}.auth-sub{font-size:14px;color:var(--mluv-muted);line-height:1.45}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field-label{font-size:12.5px;font-weight:700;color:var(--mluv-slate);letter-spacing:.02em}.auth-input{font-family:inherit;font-size:16px;line-height:1.4;padding:12px 14px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink);-webkit-tap-highlight-color:transparent}.auth-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.auth-input:disabled{opacity:.6}.auth-error{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;border-radius:var(--r-sm);background:var(--mluv-error-soft);border:1px solid color-mix(in srgb,var(--mluv-error) 30%,transparent);color:var(--mluv-error);font-size:13px;line-height:1.4}.auth-error-icon{font-weight:800;flex:none;line-height:1.4}.auth-submit{margin-top:4px;padding:14px;font-size:16px}.auth-toggle{text-align:center;font-size:13.5px;color:var(--mluv-muted);border-top:1px solid var(--mluv-line-soft);margin-top:4px;padding-top:14px}.btn-text-link{background:none;border:0;padding:0;font:inherit;color:var(--mluv-red-600);font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.btn-text-link:hover{color:var(--mluv-red-700)}.auth-splash{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--mluv-canvas)}.auth-splash-brand{font-family:var(--font-display);font-weight:800;font-size:32px;letter-spacing:-.02em;color:var(--mluv-red-600);animation:auth-splash-pulse 1.6s ease-in-out infinite}@keyframes auth-splash-pulse{0%,to{opacity:.55}50%{opacity:1}}.followup-form{display:grid;grid-template-columns:1fr auto;gap:7px}.followup-input{padding:10px 12px;font-size:14px;border:1px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper)}.followup-send{background:var(--mluv-blue-600);border-color:var(--mluv-blue-600);color:#fff;padding:10px 16px;font-size:14px}.followup-scope{font-size:11px;margin-top:2px;opacity:.8;color:var(--mluv-muted)}.cloze-card{display:flex;flex-direction:column;gap:14px}.cloze-body{font-size:16px;line-height:2.1;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px;white-space:pre-wrap}.cloze-text{color:var(--mluv-ink)}.cloze-slot{display:inline-block;min-width:80px;padding:3px 10px;margin:0 2px;border-radius:8px;border:2px dashed var(--mluv-line);background:var(--mluv-canvas);font:inherit;color:var(--mluv-muted);cursor:pointer;vertical-align:middle;font-style:italic}.cloze-slot-placeholder{color:var(--mluv-muted)}.cloze-slot.cloze-empty{border-style:dashed}.cloze-slot.cloze-filled{border-style:solid;border-color:var(--mluv-red-600);background:var(--mluv-red-50);color:var(--mluv-ink);font-weight:700;font-style:normal}.cloze-slot.cloze-correct{border-style:solid;border-color:var(--mluv-green);background:var(--mluv-success-soft);color:#1c6b3e;font-weight:700;font-style:normal}.cloze-slot.cloze-wrong{border-style:solid;border-color:var(--mluv-error);background:var(--mluv-error-soft);color:#9e231b;font-weight:700;font-style:normal}.cloze-bank{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;padding:12px;background:var(--mluv-cream);border-radius:var(--r-md)}.cloze-chip{padding:9px 15px;border-radius:var(--r-pill);border:2px solid var(--mluv-red-600);background:var(--mluv-paper);font:inherit;font-weight:700;font-size:14px;color:var(--mluv-ink);cursor:pointer;min-height:38px}.cloze-chip:disabled,.cloze-chip-used{opacity:.32;cursor:default}.cloze-feedback{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--mluv-cream);border-radius:var(--r-md)}.cloze-feedback-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:15px;padding:6px 0}.cloze-feedback-row.ok{color:#1c6b3e}.cloze-feedback-row.bad{color:#9e231b}.cloze-feedback-row.ok:before{content:"✓";color:#1c6b3e;font-weight:700;margin-right:4px}.cloze-feedback-row.bad:before{content:"✗";color:#9e231b;font-weight:700;margin-right:4px}.cloze-feedback-row.bad .cloze-feedback-given{text-decoration:line-through;opacity:.7}.cloze-feedback-i{font-weight:800;min-width:24px}.cloze-feedback-given{font-weight:700}.cloze-feedback-answer{color:var(--mluv-green);font-weight:800}.cloze-feedback-note{color:var(--mluv-muted);font-size:13px;flex-basis:100%}.pw-instruction{color:var(--mluv-slate);margin:2px 0 12px;font-size:15px}.pw-sentence{display:flex;flex-wrap:wrap;align-items:center;gap:3px 1px;font-size:21px;line-height:1.7;margin:6px 0 18px}.pw-token{padding:2px 1px;font-weight:600;color:var(--mluv-ink)}.pw-gap{min-width:28px;min-height:36px;padding:0 5px;border:2px dashed var(--mluv-faint);border-radius:9px;background:var(--mluv-canvas);color:var(--mluv-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font:inherit;vertical-align:middle;-webkit-tap-highlight-color:transparent;transition:background .12s,border-color .12s}.pw-gap:active{transform:translateY(1px)}.pw-gap-filled{border-style:solid;border-color:var(--mluv-red-600);background:var(--mluv-red-50);min-width:0}.pw-gap:disabled{cursor:default}.pw-chip-inline{color:var(--mluv-red-600);font-weight:800;padding:0 3px}.pw-caret{font-size:11px;opacity:.45}.ai-badge{display:inline-block;padding:2px 8px;margin-left:6px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(90deg,var(--mluv-plum),var(--mluv-red-600));color:#fff;border-radius:var(--r-pill)}.ai-extend-btn{margin-top:6px;background:linear-gradient(90deg,var(--mluv-plum),var(--mluv-red-600));color:#fff;border:0;padding:14px 18px;border-radius:var(--r-sm);font:inherit;font-weight:700;font-size:15px;cursor:pointer}.ai-extend-btn:disabled{opacity:.6;cursor:default}.resume-card{display:flex;flex-direction:column;gap:13px;align-items:center;text-align:center;padding:28px 22px;margin-top:8px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);box-shadow:var(--sh-sm)}.resume-h1{margin:0;font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.01em}.resume-line{margin:0;font-size:14.5px;color:var(--mluv-slate)}.resume-line strong{color:var(--mluv-ink)}.resume-btn{width:100%;min-height:48px;font-size:15px}.grammar-refs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}.grammar-ref-chip{display:inline-flex;align-items:baseline;gap:6px;padding:6px 11px;font-size:12px;line-height:1.2;color:var(--mluv-ink);background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-pill);text-decoration:none;-webkit-tap-highlight-color:transparent}.grammar-ref-chip:active{background:var(--mluv-line)}.grammar-ref-arrow{font-size:11px;opacity:.8}.grammar-ref-title{font-weight:700}.grammar-ref-cs{opacity:.7;font-weight:500}.production-card{display:flex;flex-direction:column;gap:12px}.production-h{margin:0;font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:-.01em}.production-task{margin:0;font-size:15px;line-height:1.5;color:var(--mluv-ink)}.production-task-cs{margin:0;font-size:14px;color:var(--mluv-muted);line-height:1.5}.production-criteria-pre{padding:11px 13px;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md)}.production-criteria-pre-h{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mluv-muted);margin-bottom:6px;font-weight:800}.production-criteria-pre-list{margin:0;padding-left:20px;font-size:14px;line-height:1.5}.production-criteria-pre-list li{margin:2px 0}.production-length-hint{margin:0;font-size:12px;color:var(--mluv-muted);font-style:italic}.production-textarea{font-family:var(--font-sans);font-size:16px;line-height:1.5;padding:13px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink);resize:vertical;min-height:140px}.production-textarea:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.production-criteria{list-style:none;padding:0;margin:0}.production-criteria .criterion{display:flex;align-items:flex-start;gap:9px;padding:9px 11px;border-radius:var(--r-sm);margin:4px 0;font-size:14px}.production-criteria .criterion.ok{background:var(--mluv-success-soft);color:#1c6b3e}.production-criteria .criterion.bad{background:var(--mluv-error-soft);color:#9e231b}.criterion-icon{font-weight:800;line-height:1.4}.criterion-text{color:var(--mluv-ink)}.production-correction{padding:11px 13px;background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);border-radius:var(--r-md)}.production-correction-h{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--mluv-muted);margin-bottom:4px;font-weight:800}.production-correction-text{margin:0;font-size:15px;line-height:1.5;font-style:italic;color:var(--mluv-ink)}.production-actions{display:flex;gap:8px}.production-actions .btn{flex:1}.danger-zone-hidden{display:flex;justify-content:center;margin:20px 0 12px}.btn-text-faint{background:none;border:0;color:var(--mluv-muted);font-size:12px;padding:6px 10px;cursor:pointer;font-family:inherit}.btn-text-faint:hover{color:var(--mluv-ink)}.danger-zone{margin-top:22px;padding:16px;background:var(--mluv-error-soft);border:1.5px solid var(--mluv-red-100);border-radius:var(--r-md)}.danger-zone-h{color:var(--mluv-error);margin-top:0;font-family:var(--font-display)}.danger-zone-hint{font-size:12.5px;color:var(--mluv-slate);margin:4px 0 12px;line-height:1.5}.danger-zone-buttons{display:flex;flex-direction:column;gap:8px}.danger-btn{text-align:left}.danger-confirm{display:flex;flex-direction:column;gap:10px}.danger-confirm-q{margin:0;font-size:14px;font-weight:700;color:var(--mluv-error)}.danger-btn-confirm{background:var(--mluv-error);border-color:var(--mluv-error);color:#fff}.danger-btn-confirm:hover{background:var(--mluv-red-700);border-color:var(--mluv-red-700)}.drow .b .t.gdoc-t{display:flex;align-items:center;min-width:0}.gdoc-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.gdoc-pill{margin-left:8px;flex:none;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:11px;font-weight:800;color:#1a56c4;background:#e8f0fe;border-radius:var(--r-pill);padding:2px 8px}.lekgroup{margin-bottom:18px}.mf-lekgroup{margin-bottom:4px}.leksum{display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.leksum::-webkit-details-marker{display:none}.leksum .lekn{margin-left:auto;font-size:11px;font-weight:700;color:var(--mluv-faint);text-transform:none;letter-spacing:0}.leksum .lekchev{transition:transform .18s ease}details[open]>.leksum .lekchev{transform:rotate(180deg)}.runfoot-btns{display:flex;align-items:center;gap:8px}.submit-retry{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;background:var(--mluv-error-soft);border:1px solid var(--mluv-red-100);color:var(--mluv-error);border-radius:var(--r-sm);padding:10px 12px;font-size:13.5px;font-weight:600}.submit-retry .btn{flex:none}.csel{position:relative}.csel-btn{width:100%;display:flex;align-items:center;gap:8px;justify-content:space-between;background:var(--mluv-paper);border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);padding:10px 12px;font:inherit;font-size:14.5px;color:var(--mluv-ink);cursor:pointer;text-align:left}.csel-btn:hover{border-color:var(--mluv-faint)}.csel-ph{color:var(--mluv-muted)}.csel-val{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csel-chev{transition:transform .15s ease;flex:none}.csel-chev.open{transform:rotate(180deg)}.csel-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:5px;max-height:280px;overflow-y:auto}.csel-opt{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;background:none;border:0;border-radius:var(--r-sm);padding:9px 11px;font:inherit;font-size:14px;color:var(--mluv-ink);cursor:pointer;text-align:left}.csel-opt:hover{background:var(--mluv-cream)}.csel-opt.on{color:var(--mluv-red-600);font-weight:700}.pwcard{padding:0!important;overflow:hidden}.pwhead{display:flex;align-items:center;gap:13px;width:100%;border:0;background:none;text-align:left;padding:16px 18px;cursor:pointer}.pwhead-ic{width:40px;height:40px;border-radius:11px;background:var(--mluv-cream);border:1px solid var(--mluv-line);display:flex;align-items:center;justify-content:center;flex:none}.pwhead-t{flex:1;min-width:0}.pwhead-t .n{display:block;font-weight:700;font-size:15px}.pwhead-t .s{display:block;font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.pwform{display:flex;flex-direction:column;gap:10px;padding:0 18px 18px}.pwform .t-input{width:100%;box-sizing:border-box}.pwmsg{font-size:13px;margin:0}.pwmsg.ok{color:var(--mluv-green)}.pwmsg.err{color:var(--mluv-error)}.auth-note{background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);color:var(--mluv-blue-700);border-radius:var(--r-sm);padding:11px 13px;font-size:13px;line-height:1.5}.classhere{display:inline-flex;align-items:center;gap:4px;margin-top:5px;font-size:11px;font-weight:800;letter-spacing:.01em;color:var(--mluv-blue-700);background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);border-radius:var(--r-pill);padding:2px 9px}.unit.class-here,.m-unit.class-here{border-color:var(--mluv-blue-500, #3b82f6)}.t-vocab-add{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.t-vocab-add .t-input{width:100%;box-sizing:border-box}.t-vocab-add-row{display:flex;gap:8px;align-items:stretch}.t-vocab-add-row .csel{flex:1}.t-vocab-add-row .btn{flex:none}.t-vocab-bulk{display:flex;align-items:center;gap:10px;margin:10px 0;padding:8px 12px;background:var(--mluv-red-50);border:1px solid var(--mluv-red-100);border-radius:var(--r-md);font-size:13px;font-weight:700}.t-vocab-bulk>span:first-child{flex:1}.md-tablewrap{overflow-x:auto;margin:8px 0 14px;-webkit-overflow-scrolling:touch}.md-table{width:100%;border-collapse:collapse;font-size:14px;border:1px solid var(--mluv-line);border-radius:var(--r-sm);overflow:hidden}.md-table th,.md-table td{border:1px solid var(--mluv-line);padding:7px 11px;text-align:left;vertical-align:top;line-height:1.45}.md-table thead th{background:var(--mluv-cream);font-weight:800;font-size:12.5px;letter-spacing:.01em;white-space:nowrap}.md-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--mluv-cream) 45%,transparent)}.md-table code{font-size:13px}.notebody{margin-top:8px;font-size:14px;line-height:1.7;color:var(--mluv-ink)}.notebody p,.mf-note .nb p{margin:0 0 8px}.notebody p:last-child,.mf-note .nb p:last-child{margin-bottom:0}.md-list{margin:4px 0 10px;padding-left:20px}.md-list:last-child{margin-bottom:0}.md-list li{margin:3px 0;line-height:1.55}.mf-note .nb .md-list{padding-left:18px}.trres-text p{margin:0 0 9px}.trres-text p:last-child{margin-bottom:0}.trres-text .md-list{margin:4px 0 9px;padding-left:20px}.trres-text .md-list li{margin:2px 0}.nudge-btn{display:inline-flex;align-items:center;gap:6px;width:auto;margin-top:10px;padding:6px 11px;border:1px dashed var(--mluv-blue-100);background:var(--mluv-blue-50);color:var(--mluv-blue-700);border-radius:var(--r-pill);font-weight:700;font-size:12px;line-height:1.2;cursor:pointer}.nudge-btn:hover:not(:disabled){border-color:var(--mluv-blue-500)}.nudge-btn:disabled{cursor:default}.nudge-sent-row{display:inline-flex;align-items:center;gap:10px;margin-top:10px}.nudge-sent{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#1c6b3e;background:var(--mluv-success-soft);border-radius:var(--r-pill);padding:6px 11px}.nudge-undo{background:none;border:0;padding:2px;font-size:11.5px;font-weight:700;color:var(--mluv-red-600);text-decoration:underline;cursor:pointer}.nudge-undo:disabled{opacity:.5;cursor:default}.speakbtn{display:inline-flex;align-items:center;justify-content:center;flex:none;vertical-align:middle;border-radius:50%;border:1px solid var(--mluv-blue-100);background:var(--mluv-blue-50);color:var(--mluv-blue-700);cursor:pointer;padding:0;transition:transform .1s,background .12s}.cz .speakbtn,.vlemma+.speakbtn{margin-left:6px}.speakbtn:hover{background:var(--mluv-blue-100)}.speakbtn:active{transform:scale(.9)}.rv-goal{margin:18px 18px 0;background:var(--mluv-ink);border-radius:var(--r-xl);padding:24px 22px;color:#fff;box-shadow:var(--sh-md);text-align:center}.rv-goal .lab{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffffff80}.rv-goal .nums{display:flex;align-items:center;justify-content:center;gap:18px;margin:14px 0 4px}.rv-goal .nums .n{font-family:var(--font-display);font-weight:800;font-size:46px;letter-spacing:-.02em;line-height:1}.rv-goal .nums .n .u{display:block;font-family:var(--font-sans);font-size:12px;font-weight:700;color:#c9c9d0;letter-spacing:0;text-transform:none;margin-top:6px}.rv-goal .nums .x{font-size:22px;color:#ffffff4d;font-weight:300}.rv-goal .est{font-size:13px;color:#c9c9d0;margin-top:10px}.rv-start{display:block;width:calc(100% - 36px);margin:16px 18px 0;border:0;border-radius:var(--r-pill);background:var(--mluv-red-600);color:#fff;font-family:var(--font-sans);font-weight:800;font-size:17px;padding:16px 0;box-shadow:0 6px 16px #e0312752;cursor:pointer}.rv-sub{text-align:center;font-size:12.5px;color:var(--mluv-muted);margin:12px 18px 0;line-height:1.5}.rv-shead{display:flex;align-items:center;gap:13px;padding:8px 18px}.rv-ring{--p:0;width:42px;height:42px;border-radius:50%;flex:none;background:conic-gradient(var(--mluv-green) calc(var(--p)*1%),var(--mluv-line) 0);display:flex;align-items:center;justify-content:center}.rv-ring .inner{width:32px;height:32px;border-radius:50%;background:var(--mluv-canvas);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:12px}.rv-shead .ct{flex:1}.rv-shead .ct .t{font-weight:800;font-size:15px}.rv-shead .ct .s{font-size:12px;color:var(--mluv-muted);margin-top:1px}.rv-done{padding:48px 28px 0;text-align:center;display:flex;flex-direction:column;align-items:center}.rv-done .ck{width:84px;height:84px;border-radius:50%;background:var(--mluv-success-soft);display:flex;align-items:center;justify-content:center;color:var(--mluv-green);box-shadow:0 0 0 8px #2e9e5b14}.rv-done h2{font-family:var(--font-display);font-weight:800;font-size:26px;margin:18px 0 0}.rv-done p{font-size:14.5px;color:var(--mluv-slate);margin:8px 0 0;line-height:1.5}.rv-tom{margin:22px 0 0;width:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:15px;display:flex;align-items:center;gap:12px;text-align:left;box-shadow:var(--sh-xs)}.rv-tom .ic{width:40px;height:40px;border-radius:12px;background:var(--mluv-blue-50);color:var(--mluv-blue-600);display:flex;align-items:center;justify-content:center;flex:none}.rv-tom .t{font-weight:700;font-size:14px}.rv-tom .d{font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.rv-more{margin:16px 0 0;width:100%;border:1.5px solid var(--mluv-line);background:none;color:var(--mluv-slate);font-family:var(--font-sans);font-weight:700;font-size:14.5px;border-radius:var(--r-pill);padding:13px 0;cursor:pointer}.rv-int{display:flex;gap:8px;margin-top:14px}.rv-int button{flex:1;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:12px 6px 11px;text-align:center;cursor:pointer}.rv-int button.on{border-color:var(--mluv-red-600);background:var(--mluv-red-50)}.rv-int .iv{font-family:var(--font-display);font-weight:800;font-size:16px}.rv-int .il{font-size:11px;color:var(--mluv-muted);margin-top:3px;font-weight:700}.rv-int button.on .il{color:var(--mluv-red-600)}.rv-intfoot{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--mluv-muted);margin-top:12px}.rv-intfoot b{color:var(--mluv-ink)}.ts-tile{display:flex;align-items:center;gap:13px;width:calc(100% - 36px);margin:12px 18px 0;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 15px;box-shadow:var(--sh-xs);cursor:pointer}.ts-tile .ic{width:44px;height:44px;border-radius:13px;background:var(--mluv-warning-soft);color:var(--mluv-warning);display:flex;align-items:center;justify-content:center;flex:none}.ts-tile .tx{flex:1;min-width:0}.ts-tile .tx .t{font-weight:700;font-size:15px}.ts-tile .tx .d{font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.ts-tile .cnt{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--mluv-warning)}.ts-row{display:flex;align-items:center;gap:13px;width:calc(100% - 36px);margin:0 18px 9px;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 14px;box-shadow:var(--sh-xs);cursor:pointer}.app:not(.lay-narrow) .ts-row{width:100%;margin:0 0 9px}.ts-row .tx{flex:1;min-width:0}.ts-row .tx .cz{font-weight:700;font-size:16px}.ts-row .tx .en{font-size:13px;color:var(--mluv-muted);margin-top:1px}.ts-missed{font-size:11.5px;font-weight:800;color:var(--mluv-error);background:var(--mluv-error-soft);border-radius:var(--r-pill);padding:4px 10px;flex:none;white-space:nowrap}.ts-drill{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 36px);margin:14px 18px 0;border:0;border-radius:var(--r-pill);background:var(--mluv-red-600);color:#fff;font-family:var(--font-sans);font-weight:800;font-size:16px;padding:15px 0;box-shadow:0 6px 16px #e031274d;cursor:pointer}.app:not(.lay-narrow) .ts-drill{width:auto;min-width:240px;margin-inline:0;padding-inline:28px}.beatwrap{padding:28px 40px 44px;max-width:980px;margin:0 auto;width:100%}.beatwrap .runtop{margin-bottom:18px}.beatwrap .drilltag{margin-bottom:20px}.drilltag.listen{background:#e3f2f2;color:var(--mluv-teal)}.drilltag.speak{background:var(--mluv-error-soft);color:var(--mluv-red-600)}.lp-card{margin:14px 18px 0;background:var(--mluv-ink);border-radius:var(--r-lg);padding:18px 18px 16px;color:#fff;box-shadow:var(--sh-md)}.lp-card .toprow{display:flex;align-items:center;gap:14px}.lp-play{width:62px;height:62px;border-radius:50%;background:var(--mluv-red-600);border:0;color:#fff;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 6px 18px #e0312766;cursor:pointer}.lp-play:active{transform:scale(.96)}.lp-meta{flex:1;min-width:0}.lp-meta .lab{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffffff80}.lp-meta .ti{font-family:var(--font-display);font-weight:800;font-size:17px;margin-top:3px;line-height:1.15}.lp-meta .sp{font-size:12px;color:#c9c9d0;margin-top:2px}.lp-ctrls{display:flex;align-items:center;gap:9px;margin-top:14px;flex-wrap:wrap}.lp-cbtn{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.2);background:#ffffff12;color:#fff;border-radius:var(--r-pill);font-family:var(--font-sans);font-weight:700;font-size:13px;padding:9px 14px;cursor:pointer}.lp-cbtn.on{background:var(--mluv-yellow);border-color:var(--mluv-yellow);color:#3a2c05}.lp-cbtn.icon{padding:9px 11px}.lp-cbtn.tx-toggle{margin-left:auto}.lp-transcript{margin-top:14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:13px 14px}.lp-line{display:flex;gap:10px;align-items:flex-start;padding:6px 0}.lp-line .spk{width:26px;height:26px;border-radius:50%;background:#ffffff21;border:0;color:#fff;display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer}.lp-line .who{font-size:11px;font-weight:800;color:var(--mluv-yellow)}.lp-line .cz{font-size:14px;line-height:1.4}.lp-line .en{font-size:12px;color:#b6b4ad;margin-top:1px}.lp-qhead{display:flex;align-items:center;gap:9px;margin:20px 18px 4px}.lp-qhead .qn{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted)}.lp-qhead .rehear{margin-left:auto;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-blue-700);border-radius:var(--r-pill);font-weight:700;font-size:12px;padding:5px 11px;cursor:pointer}.lp-grid{display:grid;grid-template-columns:340px 1fr;gap:34px;align-items:start}.lay-mid .lp-grid,.lay-narrow .lp-grid{grid-template-columns:1fr}.lp-card.desk{margin:0;position:sticky;top:0}.lp-card.desk .lp-play{width:68px;height:68px}.lp-qcol .qhint{color:var(--mluv-muted);font-size:14px;font-weight:700}.lp-qcol .qprompt{font-size:26px;margin:8px 0 18px}.lp-qcol .opt{font-size:16px;padding:15px 17px;cursor:pointer}@keyframes sppulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.7);opacity:0}}@keyframes spbar{0%,to{height:10px}50%{height:34px}}@keyframes spspin{to{transform:rotate(360deg)}}.sp-prompt{margin:14px 18px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-xs)}.sp-prompt .lab{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted)}.sp-prompt .cz{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.01em;line-height:1.18;margin-top:8px}.sp-prompt .en{font-size:14px;color:var(--mluv-slate);margin-top:6px}.sp-prompt .hear,.spk-card .hear{display:inline-flex;align-items:center;gap:7px;margin-top:14px;border:1.5px solid var(--mluv-blue-100);background:var(--mluv-blue-50);color:var(--mluv-blue-700);border-radius:var(--r-pill);font-weight:700;font-size:13.5px;padding:9px 15px;cursor:pointer}.sp-stage{display:flex;flex-direction:column;align-items:center;gap:12px;margin:26px 18px 0}.sp-mic{width:104px;height:104px;border-radius:50%;background:var(--mluv-red-600);border:0;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 30px #e0312766;position:relative}.sp-mic.rec{background:var(--mluv-red-700)}.sp-mic.rec:before,.sp-mic.rec:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--mluv-red-600);animation:sppulse 1.6s ease-out infinite}.sp-mic.rec:after{animation-delay:.8s}.sp-hint{font-size:13.5px;color:var(--mluv-muted);text-align:center;line-height:1.5;max-width:30ch}.sp-spin{width:46px;height:46px;border-radius:50%;border:4px solid var(--mluv-line);border-top-color:var(--mluv-blue-600);animation:spspin .8s linear infinite}.sp-perm{margin:24px 18px 0;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:9px}.sp-perm .ic{width:54px;height:54px;border-radius:16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);display:flex;align-items:center;justify-content:center;color:var(--mluv-red-600)}.sp-perm h3{font-family:var(--font-display);font-weight:800;font-size:18px;margin:2px 0 0}.sp-perm p{font-size:13.5px;color:var(--mluv-slate);margin:0;line-height:1.5;max-width:32ch}.sp-perm .revinput{max-width:320px}.sp-result{margin:18px 18px 0}.sp-verdict{display:flex;align-items:center;gap:10px;border-radius:var(--r-md);padding:13px 15px;font-weight:800}.sp-verdict.ok{background:var(--mluv-success-soft);color:#1c6b3e}.sp-verdict.amber{background:var(--mluv-warning-soft);color:#9a5a12}.sp-verdict.no{background:var(--mluv-error-soft);color:#9e231b}.sp-verdict .chip{margin-left:auto;font-size:12px;font-weight:800;border-radius:var(--r-pill);padding:4px 11px;color:#fff}.sp-verdict.ok .chip{background:var(--mluv-green)}.sp-verdict.amber .chip{background:var(--mluv-warning)}.sp-verdict.no .chip{background:var(--mluv-error)}.sp-scores{margin-top:14px;display:flex;flex-direction:column;gap:9px}.sp-bar{display:flex;align-items:center;gap:10px}.sp-bar .l{flex:0 0 96px;font-size:12px;font-weight:700;color:var(--mluv-slate)}.sp-bar .tk{flex:1;height:7px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.sp-bar .tk .fl{height:100%;border-radius:99px}.sp-bar b{flex:0 0 28px;text-align:right;font-size:12.5px;font-variant-numeric:tabular-nums}.sp-cmp{margin-top:12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow:hidden}.sp-cmp .row{padding:12px 15px;border-bottom:1px solid var(--mluv-line-soft)}.sp-cmp .row:last-child{border-bottom:0}.sp-cmp .rl{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);margin-bottom:4px}.sp-cmp .said{font-size:17px;font-weight:700}.sp-cmp .said .miss{color:var(--mluv-error);text-decoration:underline wavy var(--mluv-error);text-underline-offset:3px}.sp-coach{display:flex;gap:10px;align-items:flex-start;margin-top:12px;background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);border-radius:var(--r-md);padding:13px 14px}.sp-coach .ic{width:30px;height:30px;border-radius:9px;background:var(--mluv-blue-600);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.sp-coach .tx{font-size:13.5px;line-height:1.5;color:var(--mluv-ink)}.sp-coach .tx b{color:var(--mluv-blue-700)}.sp-resbtns{display:flex;gap:10px;margin-top:14px}.sp-resbtns button{flex:1;border-radius:var(--r-sm);font-family:var(--font-sans);font-weight:800;font-size:15px;padding:13px 0;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.sp-resbtns button.pri{background:var(--mluv-red-600);border-color:var(--mluv-red-600);color:#fff}.sp-skip{display:block;width:100%;text-align:center;margin-top:12px;background:none;border:0;color:var(--mluv-muted);font-weight:700;font-size:13.5px;cursor:pointer}.spk-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:stretch}.lay-mid .spk-grid,.lay-narrow .spk-grid{grid-template-columns:1fr}.spk-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:26px;box-shadow:var(--sh-xs);display:flex;flex-direction:column}.spk-card .lab{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted)}.spk-card .cz{font-family:var(--font-display);font-weight:800;font-size:32px;letter-spacing:-.01em;line-height:1.16;margin-top:10px}.spk-card .hear{align-self:flex-start}.spk-right{background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:24px 26px;display:flex;flex-direction:column;min-height:360px}.spk-right .rlab{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted)}.spk-rec{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px}.spk-rec .sp-mic{width:120px;height:120px}.sk-wrap{width:100%}.sk-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 26px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:18px 20px;box-shadow:var(--sh-xs)}.lay-narrow .sk-grid{grid-template-columns:1fr}.sk-bar .l{display:flex;justify-content:space-between;align-items:baseline;font-size:13.5px;font-weight:700;margin-bottom:6px}.sk-bar .l .v{font-family:var(--font-display);font-weight:800;color:var(--mluv-slate)}.sk-bar .tk{height:9px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.sk-bar .tk .fl{height:100%;border-radius:99px}.sk-divider{grid-column:1 / -1;height:1px;background:var(--mluv-line-soft);margin:3px 0}.sk-gap{display:flex;align-items:flex-start;gap:13px;background:var(--mluv-ink);border-radius:var(--r-md);padding:15px 17px;color:#fff;margin-top:14px}.sk-gap .ic{width:38px;height:38px;border-radius:11px;background:#ffffff21;display:flex;align-items:center;justify-content:center;flex:none;color:var(--mluv-yellow)}.sk-gap .tx .lab{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffffff80}.sk-gap .tx .body{font-size:14px;margin-top:4px;line-height:1.5}.sk-gap .tx .body b{color:var(--mluv-yellow)}.sk-place{display:flex;align-items:center;gap:14px;background:linear-gradient(100deg,var(--mluv-blue-50),var(--mluv-paper));border:1px solid var(--mluv-blue-100);border-radius:var(--r-md);padding:15px 17px;margin-top:14px;max-width:760px;cursor:pointer}.sk-place .ic{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#2452b5,#149c9c);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.sk-place .tx{flex:1}.sk-place .tx .t{font-family:var(--font-display);font-weight:800;font-size:16px}.sk-place .tx .d{font-size:12.5px;color:var(--mluv-slate);margin-top:2px}.sk-place .go{font-size:12px;font-weight:800;color:#fff;background:var(--mluv-blue-600);border-radius:var(--r-pill);padding:7px 14px;flex:none}@media (max-width: 767px){.sk-grid{grid-template-columns:1fr;gap:11px;padding:15px 16px}}.classbrief-cta{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:1px solid var(--mluv-blue-100);background:linear-gradient(100deg,var(--mluv-blue-50),var(--mluv-paper));border-radius:var(--r-md);padding:14px 16px;cursor:pointer}.classbrief-cta:hover{border-color:var(--mluv-blue-500)}.classbrief-cta .ic{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#7a3e8e,#2452b5);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.classbrief-cta .ic .lucide{width:21px;height:21px}.classbrief-cta .tx{flex:1;min-width:0}.classbrief-cta .tx .t{font-family:var(--font-display);font-weight:800;font-size:15.5px}.classbrief-cta .tx .d{font-size:12.5px;color:var(--mluv-muted);margin-top:2px;line-height:1.35}.classbrief-cta>.lucide{width:18px;height:18px;color:var(--mluv-blue-600);flex:none}.invitecard{display:flex;align-items:center;gap:14px;border:1px solid var(--mluv-line);background:linear-gradient(100deg,var(--mluv-cream),var(--mluv-paper));border-radius:var(--r-md);padding:14px 16px;margin-bottom:10px}.invitecard .ic{width:44px;height:44px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--mluv-ink)}.invitecard .mid{flex:1;min-width:0}.invitecard .mid .lab{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted)}.invitecard .mid .code{font-family:var(--font-mono, ui-monospace, monospace);font-weight:700;font-size:22px;letter-spacing:.12em;color:var(--mluv-ink);margin:2px 0 3px}.invitecard .mid .exp{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--mluv-muted)}.invitecard .acts{display:flex;gap:8px;flex:none}@media (max-width: 520px){.invitecard{flex-wrap:wrap}.invitecard .acts{width:100%}}.card.state-card{display:flex;flex-direction:column}.state-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:36px 22px;margin:12px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}.state-icon{font-size:30px;line-height:1;width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-lg);background:var(--mluv-cream);border:1px solid var(--mluv-line)}.state-title{font-family:var(--font-display);font-size:19px;font-weight:800;letter-spacing:-.01em;color:var(--mluv-ink)}.state-message{font-size:14px;line-height:1.5;color:var(--mluv-muted);max-width:30ch}.state-actions{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:8px}.state-actions .btn{width:100%}.state-error .state-icon{background:var(--mluv-error-soft);border-color:var(--mluv-red-100);color:var(--mluv-error)}.state-empty .state-icon{background:var(--mluv-success-soft);border-color:var(--mluv-success);color:var(--mluv-green)}.state-loading{align-items:stretch;gap:14px;padding:20px}.state-loading-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mluv-muted);text-align:left;font-weight:800}.skeleton-stack{display:flex;flex-direction:column;gap:10px;width:100%}.skeleton-bar{display:block;height:14px;border-radius:7px;background:linear-gradient(100deg,var(--mluv-line-soft) 30%,var(--mluv-cream) 50%,var(--mluv-line-soft) 70%);background-size:200% 100%;animation:skeleton-shimmer 1.3s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skeleton-bar{animation:none}}.aa-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:80px;height:6px;border-radius:3px;background:var(--c-border, #ddd);outline:none}.aa-slider:disabled{opacity:.3}.aa-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:28px;border-radius:50%;background:var(--c-brand, #d32f2f);cursor:pointer;border:none}.aa-delay{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;min-width:36px;color:var(--c-text, #111)}.streak-pill{display:inline-flex;align-items:center;gap:3px;font-size:13px;font-weight:700;padding:3px 10px;border-radius:99px;min-width:32px;min-height:32px}.streak-pill.off{color:var(--c-muted,#999);background:var(--c-bg-card,#f0f0f0)}.streak-pill.pending{color:#e0892b;background:#e0892b21}.streak-pill.on{color:var(--c-brand,#d32f2f);background:var(--mluv-red-50,#fef2f2)}.xp-pill{display:inline-flex;align-items:center;gap:3px;font-size:13px;font-weight:700;padding:3px 10px;border-radius:99px;min-height:32px;color:#b8901a;background:#caa52024}.goal-ring{display:inline-flex;align-items:center;flex:none;margin-left:2px}.tab-bar-item{min-width:0}.tab-bar-label{font-size:10px}.tc-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.tc-card{display:block;width:100%;text-align:left;padding:14px 16px;border:1.5px solid var(--c-border, #ddd);border-radius:var(--radius-lg, 16px);background:var(--c-bg-card, #fafafa);cursor:pointer}.tc-name{font-size:17px;font-weight:700}.tc-meta{font-size:13px;color:var(--c-muted, #888);margin-top:4px}.tc-create{display:flex;flex-direction:column;gap:8px}.tc-input{padding:10px 14px;font-size:16px;border:1.5px solid var(--c-border, #ddd);border-radius:var(--radius-md, 10px);background:var(--c-bg, #fff);color:var(--c-text, #111);outline:none}.tcd-name{font-size:22px;font-weight:800;margin-bottom:4px}.tcd-meta{font-size:14px;color:var(--c-muted, #888);margin:0 0 8px}.tcd-chip{display:inline-block;padding:4px 12px;font-size:13px;font-weight:600;background:var(--c-brand, #d32f2f);color:#fff;border-radius:99px;margin-bottom:16px}.tcd-section{font-size:16px;font-weight:700;margin:16px 0 8px}.tcd-roster{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.tcd-row{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid var(--c-border, #eee)}.tcd-row-info{flex:1}.tcd-row-name{font-size:16px;font-weight:600}.tcd-row-email{font-size:13px;color:var(--c-muted, #888)}.tcd-remove{background:none;border:none;font-size:18px;color:var(--c-muted, #999);cursor:pointer;padding:8px 12px;min-width:44px;min-height:44px}.tcd-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tcd-err{font-size:13px;color:var(--c-brand, #d32f2f);width:100%;margin-top:4px}.tcd-stats-row{display:flex;gap:8px;margin-bottom:16px}.tcd-stat{flex:1;text-align:center;padding:12px 8px;background:var(--c-bg-card, #fafafa);border-radius:var(--radius-md, 10px);font-size:13px;color:var(--c-muted, #888)}.tcd-stat-n{display:block;font-size:20px;font-weight:800;color:var(--c-text, #111)}.tcd-brief{margin-top:16px;padding:14px;background:var(--c-bg-card, #fafafa);border-radius:var(--radius-md, 10px)}.tcd-brief-body{font-size:14px;line-height:1.5}.tcd-brief-footer{margin-top:10px;font-size:12px;color:var(--c-muted, #999)}.tr-screen{padding:8px 0 28px}.tr-title{font-family:var(--font-display);font-size:22px;font-weight:800;margin:0 0 6px;text-align:center;letter-spacing:-.02em;color:var(--mluv-ink)}.tr-intro{font-size:13.5px;line-height:1.5;color:var(--mluv-slate);text-align:center;margin:0 auto 16px;max-width:30em}.tr-intro strong{color:var(--mluv-ink);font-weight:700;white-space:nowrap}.tr-third-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.tr-third-lbl{font-size:12px;font-weight:700;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.04em}.tr-sel{flex:1;padding:10px 12px;font-size:15px;font-family:inherit;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);color:var(--mluv-ink);outline:none}.tr-input{width:100%;box-sizing:border-box;min-height:72px;padding:14px 16px;font-size:17px;font-family:inherit;border:2px solid var(--mluv-line);border-radius:var(--r-lg);background:var(--mluv-paper);color:var(--mluv-ink);resize:vertical;line-height:1.4;outline:none;transition:border-color .15s}.tr-input:focus{border-color:var(--mluv-red-600)}.tr-input-meta{display:flex;justify-content:space-between;align-items:center;margin:8px 2px 12px;font-size:13px;color:var(--mluv-muted)}.tr-opts-toggle{background:none;border:0;font:inherit;font-size:13px;font-weight:700;color:var(--mluv-slate);cursor:pointer;padding:2px 0}.tr-count{font-variant-numeric:tabular-nums}.tr-controls{display:flex;flex-direction:column;gap:10px;padding:14px;margin-bottom:14px;background:var(--mluv-cream);border-radius:var(--r-md)}.tr-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tr-lbl{font-size:12px;font-weight:700;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.04em;min-width:76px}.tr-toggle-group{display:flex;gap:6px;flex-wrap:wrap}.tr-toggle{padding:7px 13px;font-size:13px;font-weight:700;font-family:inherit;border:1.5px solid var(--mluv-line);border-radius:var(--r-pill);background:var(--mluv-paper);color:var(--mluv-slate);cursor:pointer;transition:all .12s;white-space:nowrap}.tr-toggle.on{background:var(--mluv-red-600);color:#fff;border-color:var(--mluv-red-600)}.tr-submit{display:block;width:100%;box-sizing:border-box;padding:14px 24px;font-size:16px;font-weight:800;font-family:inherit;border:none;border-radius:var(--r-sm);background:var(--mluv-red-600);color:#fff;cursor:pointer;transition:background .15s,opacity .15s}.tr-submit:hover{background:var(--mluv-red-700)}.tr-submit:disabled{opacity:.4;cursor:default}.tr-err{text-align:center;color:var(--mluv-red-600);font-size:14px;margin-top:12px}.tr-results{display:flex;flex-direction:column;gap:12px;margin-top:16px}.tr-detected{font-size:13px;color:var(--mluv-muted);text-align:center;margin:0 0 2px}.tr-detected strong{color:var(--mluv-ink)}.tr-result-card{padding:14px 16px;border:1.5px solid var(--mluv-line);border-radius:var(--r-lg);background:var(--mluv-paper);box-shadow:var(--sh-sm)}.tr-result-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tr-result-lang{font-size:12px;font-weight:800;color:var(--mluv-red-600);text-transform:uppercase;letter-spacing:.05em}.tr-copy{font-size:13px;font-weight:600;font-family:inherit;background:var(--mluv-canvas);border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);padding:5px 11px;cursor:pointer;color:var(--mluv-ink)}.tr-result-text{font-size:18px;font-weight:600;line-height:1.45;color:var(--mluv-ink);word-wrap:break-word}.ask-screen{padding:12px 0 24px}.ask-input{width:100%;min-height:72px;padding:14px 16px;font-size:17px;font-family:inherit;border:2px solid var(--c-border, #ddd);border-radius:var(--radius-lg, 16px);background:var(--c-bg, #fff);color:var(--c-text, #111);resize:vertical;line-height:var(--lh-snug);outline:none;transition:border-color .15s}.ask-input:focus{border-color:var(--c-brand, #d32f2f)}.ask-input-meta{display:flex;justify-content:space-between;align-items:center;margin:6px 4px 16px;font-size:13px;color:var(--c-muted, #888)}.ask-submit{padding:10px 24px;font-size:16px;font-weight:700;border:none;border-radius:99px;background:var(--c-brand, #d32f2f);color:#fff;cursor:pointer;transition:opacity .15s}.ask-submit:disabled{opacity:.4;cursor:default}.ask-quota{text-align:center;padding:32px 16px}.ask-quota-h{font-size:20px;font-weight:700;margin-bottom:6px}.ask-quota-sub{font-size:15px;color:var(--c-muted, #888)}.ask-title{font-size:20px;font-weight:800;margin:0 0 12px;text-align:center;letter-spacing:-.01em}.ask-clear{font-size:13px;color:var(--c-muted, #888);background:none;border:none;padding:2px 6px;cursor:pointer;text-decoration:underline}.ask-disclaimer{padding:6px 8px;margin:16px 0 0;background:#fef9e7;border-radius:var(--radius-sm, 6px);font-size:12px;color:#7d6600;line-height:var(--lh-snug)}.ask-body{font-size:15px;line-height:var(--lh-relaxed);margin-bottom:16px}.ask-body p{margin:6px 0}.ask-body ul{padding-left:20px;margin:6px 0}.ask-body strong{color:var(--c-brand, #d32f2f)}.ask-related-h{font-size:14px;font-weight:700;margin:8px 0 6px;color:var(--c-muted, #666);text-transform:uppercase;letter-spacing:.04em}.ask-chip-row{display:flex;flex-wrap:wrap;gap:8px}.ask-chip{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;font-size:15px;font-weight:600;border:1.5px solid var(--c-border, #ddd);border-radius:99px;background:var(--c-bg-card, #fafafa);color:var(--c-text, #111);cursor:pointer;min-height:44px;transition:background .12s,border-color .12s}.ask-chip:hover{background:var(--c-bg-hover, #f0f0f0)}.ask-chip:active{background:var(--c-bg-active, #e8e8e8)}.ask-chip-lesson{font-size:12px;font-weight:500;padding:2px 7px;border-radius:99px;background:var(--c-brand, #d32f2f);color:#fff}.ask-nochips{font-size:13px;color:var(--c-muted, #999);margin-top:6px;font-style:italic}.card-schedule-chip{font-size:12px;color:var(--c-muted, #888);margin-top:8px;padding:4px 10px;border-radius:var(--radius-sm, 6px);background:var(--c-bg-card, #f8f8f8);display:inline-block}.class-note-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px;box-shadow:var(--sh-xs)}.class-note-meta{font-size:12px;color:var(--mluv-muted);font-weight:600;margin-bottom:8px}.class-note-body p{font-size:14.5px;line-height:1.55;margin:0 0 8px}.class-note-body p:last-child{margin-bottom:0}.class-vocab-row{padding:10px 0;display:flex;align-items:center;gap:12px}.class-vocab-row .vlemma{flex:0 0 130px;font-weight:700;font-size:15px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-vocab-row .vtrans{flex:1;min-width:0;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-vocab-row .vpos{flex:none;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.class-vocab-text{flex:1;min-width:0}.class-vocab-lemma{font-weight:700;font-size:15px;display:block}.class-vocab-trans{font-size:13px;color:var(--mluv-muted)}.class-vocab-add{flex:none;font-size:12px;padding:6px 10px}.add-all-btn{width:100%;text-align:center;font-weight:700;font-size:13px;margin-bottom:8px;color:var(--mluv-red-600);border-color:var(--mluv-red-200)}.add-all-btn:disabled{opacity:.5}.class-card{background:linear-gradient(180deg,var(--mluv-blue-50, #eff6ff),var(--mluv-paper));border:1px solid var(--mluv-blue-200, #bfdbfe);border-radius:var(--r-lg, 14px);padding:14px 14px 8px;box-shadow:var(--sh-xs);margin-bottom:10px}.class-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.class-card-badge{display:inline-block;background:var(--mluv-blue-600, #2563eb);color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;padding:3px 8px;border-radius:99px}.class-card-meta{font-size:12px;color:var(--mluv-muted);font-weight:600}.class-vocab-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.class-summary{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:0;box-shadow:var(--sh-xs);overflow:hidden}.class-summary+.class-summary{margin-top:8px}.class-summary>summary{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.class-summary>summary::-webkit-details-marker{display:none}.class-summary-title{font-weight:700;font-size:15px;flex:none}.class-summary-meta{flex:1;font-size:12px;color:var(--mluv-muted);font-weight:600}.class-summary-chev{font-size:16px;color:var(--mluv-muted);transition:transform .15s}.class-summary[open] .class-summary-chev{transform:rotate(180deg)}.class-summary-body{padding:0 16px 14px;border-top:1px solid var(--mluv-line)}.class-summary-body p{font-size:14.5px;line-height:1.55;margin:10px 0}.class-summary-body p:last-child{margin-bottom:0}.class-header{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.class-header .page-h1{margin-bottom:2px}.class-header-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.class-lesson-chip{display:inline-block;padding:3px 10px;border-radius:var(--r-pill);background:var(--mluv-red-600);color:#fff;font-size:12px;font-weight:700}.class-level-chip{display:inline-block;padding:3px 10px;border-radius:var(--r-pill);background:var(--mluv-blue-600);color:#fff;font-size:12px;font-weight:700}.class-teacher{font-size:13px;color:var(--mluv-muted);font-weight:600}.class-info-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:16px;box-shadow:var(--sh-sm);display:flex;flex-direction:column;gap:6px}.cic-eyebrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--mluv-muted);font-weight:600}.cic-lv{display:inline-block;padding:2px 8px;border-radius:var(--r-pill);color:#fff;font-size:11px;font-weight:800}.cic-name{margin:0;font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.01em;line-height:1.15}.cic-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--mluv-muted)}.cic-mi{white-space:nowrap}.cic-lesson{margin-top:4px}.cic-lesson-chip{display:inline-block;padding:4px 12px;border-radius:var(--r-pill);background:var(--mluv-red-50);color:var(--mluv-red-700);font-size:13px;font-weight:600}.cic-teacher{font-size:13px;color:var(--mluv-muted);margin-top:4px}.class-section,.lb-list{display:flex;flex-direction:column;gap:6px}.lb-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);box-shadow:var(--sh-xs)}.lb-row-self{border-color:var(--mluv-red-200);background:var(--mluv-red-50)}.lb-row-pinned{border-style:dashed}.lb-rank{font-family:var(--font-display);font-size:15px;font-weight:800;color:var(--mluv-muted);min-width:36px}.lb-avatar{width:36px;height:36px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:15px}.lb-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.lb-name{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px}.lb-you-tag{font-size:11px;color:var(--mluv-red-600);font-weight:600}.lb-pbar{display:flex;align-items:center;gap:6px}.lb-pbar .progress-track{flex:1;max-width:140px;height:5px}.lb-pbar-pct{font-size:11px;color:var(--mluv-muted);font-weight:700;font-variant-numeric:tabular-nums}.lb-score{font-family:var(--font-display);font-size:18px;font-weight:800;color:var(--mluv-ink);min-width:38px;text-align:right}.lb-divider{text-align:center;font-size:12px;color:var(--mluv-muted);padding:4px 0}.chat-section{margin-top:8px}.chat-list{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto;padding:4px 0}.chat-msg{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md)}.chat-msg-teacher{border-color:var(--mluv-blue-200);background:var(--mluv-blue-50)}.chat-msg-avatar{width:30px;height:30px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:12px}.chat-msg-body{flex:1;min-width:0}.chat-msg-head{display:flex;align-items:center;gap:6px;margin-bottom:3px}.chat-msg-name{font-weight:700;font-size:13px}.chat-msg-teacher-pill{display:inline-block;padding:1px 6px;border-radius:var(--r-pill);background:var(--mluv-blue-600);color:#fff;font-size:9px;font-weight:800;letter-spacing:.04em}.chat-msg-time{font-size:11px;color:var(--mluv-muted);margin-left:auto}.chat-msg-text{font-size:14px;line-height:1.45;word-break:break-word}.chat-msg-del{background:none;border:0;color:var(--mluv-muted);font-size:10px;padding:4px;cursor:pointer;opacity:0;transition:opacity .12s;min-width:24px;min-height:24px}.chat-msg:hover .chat-msg-del{opacity:.5}.chat-msg-del:hover{opacity:1!important;color:var(--mluv-error)}.chat-composer{display:flex;gap:8px;margin-top:10px;align-items:flex-end}.chat-input{flex:1;font-family:inherit;font-size:14px;line-height:1.4;padding:10px 12px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);color:var(--mluv-ink);resize:none;outline:none;min-height:40px;max-height:80px}.chat-input:focus{border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.chat-send{flex:none;padding:10px 16px;font-size:14px}.chat-err{padding:6px 10px;background:var(--mluv-error-soft);border:1px solid color-mix(in srgb,var(--mluv-error) 30%,transparent);border-radius:var(--r-sm);color:var(--mluv-error);font-size:13px;margin-top:6px}.materials-section{display:flex;flex-direction:column;gap:8px}.mat-chip-strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.mat-chip{flex:none;padding:6px 14px;border-radius:var(--r-pill);border:1.5px solid var(--mluv-line);background:var(--mluv-paper);font-family:inherit;font-size:13px;font-weight:700;color:var(--mluv-muted);cursor:pointer;white-space:nowrap}.mat-chip.on{background:var(--mluv-red-600);border-color:var(--mluv-red-600);color:#fff}.mat-items{display:flex;flex-direction:column;gap:6px}.mat-empty{font-size:13px;color:var(--mluv-muted);padding:12px 0;text-align:center}.mat-file-card{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);text-decoration:none;color:var(--mluv-ink);font-size:14px;box-shadow:var(--sh-xs);width:100%;text-align:left;font-family:inherit;cursor:pointer}.mat-file-icon{font-size:18px}.mat-file-name{flex:1;font-weight:600}.mat-file-dl{font-size:12px;color:var(--mluv-red-600);font-weight:700}.chat-nav-btn{width:100%;text-align:center;font-size:15px;margin-top:4px}.xp-toast-stack{position:fixed;top:80px;right:14px;z-index:100;display:flex;flex-direction:column;gap:8px;pointer-events:none}.xp-toast-item{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--mluv-ink,#1a1a2e);color:#fff;border-radius:var(--r-pill);font-weight:800;font-size:14px;animation:xp-toast-down 1.2s ease-out forwards}.xp-toast-star{color:gold;font-size:16px}.xp-toast-amount{white-space:nowrap}@keyframes xp-toast-down{0%{opacity:0;transform:translateY(-28px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1}to{opacity:0;transform:translateY(16px)}}.rewards-streak{text-align:center;padding:16px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);margin-bottom:10px}.rewards-streak-big{font-family:var(--font-display);font-size:40px;font-weight:800;color:var(--mluv-red-600)}.rewards-streak-sub{font-size:14px;color:var(--mluv-muted);margin-top:4px}.rewards-calendar{display:flex;gap:6px;justify-content:center;margin-top:12px}.rewards-cal-day{display:flex;flex-direction:column;align-items:center;gap:2px;width:32px}.rewards-cal-label{font-size:10px;color:var(--mluv-muted);font-weight:700}.rewards-cal-dot{font-size:12px}.rewards-cal-day.on .rewards-cal-dot{color:var(--mluv-red-600)}.rewards-cal-day.off .rewards-cal-dot{color:var(--mluv-line)}.rewards-xp-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.rewards-xp-card{text-align:center;padding:12px 8px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md)}.rewards-xp-n{font-family:var(--font-display);font-size:22px;font-weight:800}.rewards-xp-l{font-size:11px;color:var(--mluv-muted)}.rewards-badges{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.rewards-badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:var(--r-md);border:1px solid var(--mluv-line);background:var(--mluv-paper)}.rewards-badge.locked{opacity:.4}.rewards-badge-icon{font-size:24px}.rewards-badge-label{font-size:11px;font-weight:600;text-align:center}.rewards-events{display:flex;flex-direction:column;gap:4px}.rewards-event-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;border-bottom:1px solid var(--mluv-line-soft)}.rewards-event-type{flex:1}.rewards-event-xp{font-weight:800;color:var(--mluv-green)}.rewards-event-ts{font-size:11px;color:var(--mluv-muted)}.unit-complete-card{align-items:center;text-align:center;padding:28px 22px}.unit-complete-emoji{font-size:56px;line-height:1}.unit-complete-xp-ring{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--mluv-red-600),var(--mluv-plum));display:flex;align-items:center;justify-content:center;margin:12px auto;color:#fff}.unit-complete-xp-n{font-family:var(--font-display);font-size:20px;font-weight:800}.unit-complete-milestones{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:4px;font-size:14px}.unit-complete-milestones li{display:flex;justify-content:space-between;align-items:center;padding:6px 4px;border-bottom:1px dashed var(--mluv-line)}.unit-complete-milestones li:last-child{border-bottom:0}.milestone-label{font-weight:600}.milestone-xp{font-weight:800;color:var(--mluv-red-600);font-variant-numeric:tabular-nums}.flag-btn{position:absolute;top:6px;right:6px;background:transparent;border:0;font-size:16px;cursor:pointer;padding:4px 6px;border-radius:6px;line-height:1;color:#c0392b;z-index:2}.flag-btn:hover{background:#c0392b1a}.flag-btn.flagged{color:var(--mluv-green)}.flag-composer{margin-top:8px;padding:10px;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:8px}.flag-textarea{width:100%;font:inherit;font-size:13px;padding:8px;border:1px solid var(--mluv-line);border-radius:6px;resize:vertical;box-sizing:border-box}.flag-composer-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}.rewards-goalcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:14px;padding:14px 16px;margin:12px 0;box-shadow:0 1px 2px #0000000a}.rewards-goalcard-h{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--mluv-ink)}.rewards-goalcard-icon{font-size:18px;line-height:1}.rewards-goalcard-sub{margin:6px 0 12px;font-size:13px;color:var(--mluv-muted)}.rewards-goalopts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}@media (min-width: 640px){.rewards-goalopts{grid-template-columns:repeat(4,1fr)}}.rewards-goalopt{position:relative;background:var(--mluv-paper);border:1.5px solid var(--mluv-line);border-radius:12px;padding:10px 8px;text-align:left;cursor:pointer;transition:border-color .12s,background .12s}.rewards-goalopt:hover{border-color:var(--mluv-red-100)}.rewards-goalopt.on{border-color:var(--mluv-red-600);background:var(--mluv-red-50)}.rewards-goalopt-v{font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--mluv-ink)}.rewards-goalopt-l{font-size:11px;color:var(--mluv-muted);margin-top:2px}.rewards-goalopt-ck{position:absolute;top:6px;right:8px;width:18px;height:18px;border-radius:50%;background:var(--mluv-red-600);color:#fff;font-size:11px;line-height:18px;text-align:center;font-weight:800}.rewards-goalprog-track{margin-top:14px;height:6px;background:var(--mluv-line-soft);border-radius:99px;overflow:hidden}.rewards-goalprog-fill{height:100%;background:var(--mluv-red-600);transition:width .25s}.rewards-goalprog-l{margin-top:6px;font-size:12px;color:var(--mluv-slate)}.notif-group{margin-bottom:10px}.notif-grouphead{font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted);margin:4px 2px 8px}.notif-list{display:flex;flex-direction:column;gap:8px}.notif-row{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;transition:box-shadow .15s,transform .15s,border-color .15s;cursor:pointer;font:inherit;box-sizing:border-box}.notif-row:hover{box-shadow:var(--sh-sm);transform:translateY(-1px)}.notif-row:active{transform:translateY(1px)}.notif-row.unread{border-color:var(--mluv-blue-100);background:var(--mluv-blue-50)}.notif-ic{width:40px;height:40px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;font-size:19px;line-height:1;color:#fff}.notif-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notif-t{font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:8px}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--mluv-red-600);flex:none}.notif-b{font-size:13px;color:var(--mluv-slate);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.notif-w{font-size:11.5px;color:var(--mluv-muted);margin-top:2px;font-family:var(--font-mono)}.notif-action{flex:none;font-size:12px;font-weight:800;color:#fff;background:var(--mluv-plum);border-radius:var(--r-pill);padding:5px 11px;text-decoration:none;white-space:nowrap;border:0;cursor:pointer}.notif-chev{color:var(--mluv-faint);font-size:20px;flex:none;line-height:1}.notif-markall{font-size:13px;font-weight:700;color:var(--mluv-blue-700);background:none;border:0;cursor:pointer;white-space:nowrap;padding:0;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.notif-empty{display:flex;flex-direction:column;align-items:center;padding:48px 16px;color:var(--mluv-muted);text-align:center}.notif-empty-orb{width:64px;height:64px;border-radius:50%;background:var(--mluv-blue-50);display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:30px;line-height:1;color:var(--mluv-ink)}.notif-empty h2{font-size:18px;margin:0 0 6px;color:var(--mluv-ink)}.notif-empty p{font-size:14px;color:var(--mluv-muted);margin:0;max-width:28em}.notif-bell{width:36px;height:36px;border:0;background:none;color:var(--mluv-slate);cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0}.notif-bell:active{transform:translateY(1px)}.notif-bell-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;border-radius:99px;background:var(--mluv-red-600);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px;box-sizing:border-box;border:2px solid var(--mluv-canvas);line-height:1;pointer-events:none}.fv-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:999;padding:16px}.fv-card{background:var(--mluv-paper);border-radius:var(--r-lg);width:min(620px,94vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--sh-lg)}.fv-head{display:flex;align-items:center;padding:14px 20px;justify-content:space-between;gap:12px;border-bottom:1px solid var(--mluv-line)}.fv-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.1rem;font-family:var(--font-display);color:var(--mluv-ink);margin:0}.fv-x{background:none;border:none;font-size:1.3rem;color:var(--mluv-slate);cursor:pointer;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-md)}.fv-x:hover{background:var(--mluv-line-soft)}.fv-sub{padding:6px 20px 0;font-size:12.5px;color:var(--mluv-muted);font-family:var(--font-mono)}.fv-stage{padding:18px 20px;overflow:auto;flex:1;background:var(--mluv-canvas)}.fv-img{display:block;max-width:100%;object-fit:contain;margin:0 auto}.fv-frame{width:100%;min-height:70vh;border:none;background:var(--mluv-canvas)}.fv-text{color:var(--mluv-ink);font-size:.95rem;line-height:1.5}.fv-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--mluv-muted);padding:40px 16px}.fv-fallback-glyph{font-size:3rem;margin-bottom:8px}.fv-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 20px;border-top:1px solid var(--mluv-line);background:var(--mluv-paper)}.fv-foot-meta{color:var(--mluv-muted);font-size:.9rem}.fv-dl{color:var(--mluv-ink);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:4px}.fv-dl:hover{color:var(--mluv-red-600)}.gdoc-section{display:flex;flex-direction:column;gap:16px;padding:0 0 24px}.gdoc-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.gdoc-section-h{font-size:1.2rem;font-weight:600;color:var(--mluv-ink);margin:0}.gdoc-list{display:flex;flex-direction:column;gap:14px}.gdoc-autosync{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--mluv-muted)}.gdoc-autosync .csel{width:180px}.gdoc-autosync .csel-btn{padding:6px 10px;font-size:13px;text-transform:none;letter-spacing:0}.gdoc-muted{color:var(--mluv-muted);font-size:.9rem}.gdoc-card{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px}.gdoc-card-glyph{font-size:1.5rem;line-height:1.4;-webkit-user-select:none;user-select:none}.gdoc-card-main{flex:1;min-width:0}.gdoc-card-title{font-weight:600;color:var(--mluv-ink);margin-bottom:4px;word-break:break-word}.gdoc-card-meta{font-size:.85rem;color:var(--mluv-muted)}.gdoc-card-actions{display:flex;gap:8px;flex-wrap:wrap;width:100%;margin-top:10px}.gdoc-sug-grammar-h{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--mluv-muted);margin:14px 0 6px}.gdoc-sug-gram{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border:1px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper)}.gdoc-sug-note{font-size:12.5px;color:var(--mluv-slate)}.gdoc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.gdoc-modal{position:relative;background:var(--mluv-paper);border-radius:var(--r-lg);box-shadow:var(--sh-lg);width:100%;max-width:480px;max-height:calc(100dvh - 24px);padding:24px;display:flex;flex-direction:column;gap:20px}.gdoc-modal-x{position:absolute;top:12px;right:12px;background:transparent;border:none;font-size:1.2rem;cursor:pointer;color:var(--mluv-slate);line-height:1;padding:4px}.gdoc-modal-head{font-size:1.25rem;font-weight:600;color:var(--mluv-ink)}.gdoc-modal-body{display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0;flex:1 1 auto}.gdoc-lead{color:var(--mluv-slate);font-size:.95rem;margin:0}.gdoc-input{width:100%;padding:10px 12px;border:1px solid var(--mluv-line);border-radius:var(--r-md);font-size:.95rem;background:var(--mluv-paper);color:var(--mluv-ink);outline:none}.gdoc-input::placeholder{color:var(--mluv-muted)}.gdoc-input.err{border-color:var(--mluv-red-600)}.gdoc-err{color:var(--mluv-red-600);font-size:.85rem;margin-top:-4px}.gdoc-label{font-weight:500;color:var(--mluv-ink);font-size:.95rem}.gdoc-chips{display:flex;flex-wrap:wrap;gap:8px}.gdoc-chip{padding:6px 16px;border:1px solid var(--mluv-line);border-radius:var(--r-pill);background:var(--mluv-paper);color:var(--mluv-ink);font-size:.9rem;cursor:pointer;transition:.15s ease}.gdoc-chip.on{background:var(--mluv-blue-600);color:#fff;border-color:var(--mluv-blue-600)}.gdoc-note{color:var(--mluv-muted);font-size:.8rem;margin:0}.gdoc-modal-foot{display:flex;justify-content:flex-end;gap:8px}.up-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:4px 0 14px;padding:12px 14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);font-size:13.5px;color:var(--mluv-slate)}.up-bar b{font-size:16px;color:var(--mluv-ink);margin-right:3px}.up-link{background:none;border:none;color:var(--mluv-blue-600);font:inherit;font-weight:500;text-decoration:underline;cursor:pointer;padding:0}.up-toggle{display:inline-flex;align-items:center;gap:8px;background:none;border:0;font:inherit;font-size:13px;font-weight:600;color:var(--mluv-slate);cursor:pointer;padding:0}.up-toggle-track{width:34px;height:20px;border-radius:var(--r-pill);background:var(--mluv-line);position:relative;transition:background .15s ease;flex:none}.up-toggle.on .up-toggle-track{background:var(--mluv-green)}.up-toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s ease}.up-toggle.on .up-toggle-knob{transform:translate(14px)}.up-attn{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--mluv-orange);border-radius:var(--r-md);padding:10px 14px;margin-bottom:14px;font-size:13.5px;color:var(--mluv-slate)}.up-attn b{color:var(--mluv-orange);font-weight:700}.up-day-h{display:flex;justify-content:space-between;align-items:center;margin:16px 0 6px;font-size:14px;font-weight:600;color:var(--mluv-ink)}.up-day-h-chip{font-size:11px;font-weight:600;padding:2px 8px;border-radius:var(--r-pill);background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.up-row{display:flex;align-items:center;gap:12px;width:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 13px;margin-bottom:8px}.up-rowmain{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;background:none;border:0;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit}.up-glyph{width:36px;height:36px;border-radius:50%;background:var(--mluv-blue-50);color:var(--mluv-blue-700);display:flex;align-items:center;justify-content:center;font-size:18px;flex:none}.up-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.up-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mluv-ink)}.up-meta{font-size:12px;color:var(--mluv-slate)}.up-summary{font-size:12px;color:var(--mluv-slate);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.up-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}.up-ctrls{display:flex;align-items:center;gap:6px}.up-lessel{font-size:12px;font-weight:600;border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:4px 8px;background:var(--mluv-paper);color:var(--mluv-slate);cursor:pointer;max-width:120px}.up-lessel.uncat{color:var(--mluv-orange);border-color:var(--mluv-orange)}.up-del{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--mluv-line);background:var(--mluv-paper);cursor:pointer;flex:none;padding:0}.up-del:hover{background:var(--mluv-red-50);border-color:var(--mluv-red-600)}.up-catbtn{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--mluv-slate);border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:5px 10px;cursor:pointer;max-width:180px}.up-catbtn:hover{border-color:var(--mluv-faint)}.up-catbtn.uncat{color:var(--mluv-orange);border-color:var(--mluv-orange)}.up-catbtn>span:first-child,.up-catbtn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-ovl{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#1412186b;display:flex;align-items:center;justify-content:center;padding:20px}.up-sheet{width:100%;max-width:460px;max-height:80vh;overflow-y:auto;background:var(--mluv-paper);border-radius:var(--r-lg);box-shadow:var(--sh-lg, 0 18px 50px rgba(0,0,0,.25));padding:18px 20px 22px}.up-sheet-h{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);font-weight:800;font-size:17px}.up-sheet-x{border:0;background:none;cursor:pointer;color:var(--mluv-muted);display:inline-flex;padding:4px;border-radius:8px}.up-sheet-x:hover{background:var(--mluv-cream)}.up-sheet-name{font-size:13px;color:var(--mluv-muted);margin:2px 0 14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-sheet-lbl{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--mluv-muted);margin:12px 0 8px}.up-sheet-classes{display:flex;flex-wrap:wrap;gap:8px}.up-classchip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);padding:7px 13px;cursor:pointer}.up-classchip .lv{font-size:10px;font-weight:800;color:#fff;background:var(--mluv-teal);border-radius:var(--r-pill);padding:1px 6px}.up-classchip.on{border-color:var(--mluv-blue-600);background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.up-sheet-lessons{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.up-lekchip{font-size:13px;font-weight:700;color:var(--mluv-slate);border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:9px;padding:9px 0;cursor:pointer;text-align:center}.up-lekchip:hover{border-color:var(--mluv-blue-600);color:var(--mluv-blue-700)}.up-lekchip.on{border-color:var(--mluv-blue-600);background:var(--mluv-blue-600);color:#fff}.up-lekchip.cur{border-color:var(--mluv-blue-600)}.up-lekchip:first-child{grid-column:1 / -1;border-radius:var(--r-pill)}.up-tag{font-size:12px;font-weight:700;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:4px 9px;color:var(--mluv-slate)}.up-tag.uncat{color:var(--mluv-orange);border-color:var(--mluv-orange);background:transparent}.up-badge{display:inline-flex;font-size:11px;font-weight:700;border-radius:var(--r-pill);padding:3px 9px}.up-badge.shared{background:var(--mluv-green);color:#fff}.up-badge.sug,.up-badge.done{background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.up-badge.fail{background:var(--mluv-red-600);color:#fff}.up-badge.none{background:var(--mluv-paper);border:1px solid var(--mluv-line);color:var(--mluv-muted)}.gdoc-review-cta{width:100%;margin-top:10px}.gdoc-syncmsg{font-size:13px;color:var(--mluv-muted);margin:8px 2px 0}.gdoc-sug-list{display:flex;flex-direction:column;gap:6px;margin-top:10px}.gdoc-sug-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);cursor:pointer}.gdoc-sug-row.on{border-color:var(--mluv-blue-600);background:var(--mluv-blue-50)}.gdoc-sug-row.known{opacity:.62}.gdoc-sug-known{margin-left:auto;flex:none;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--mluv-muted);background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:2px 8px;white-space:nowrap}.gdoc-sug-head{display:flex;align-items:flex-start;gap:12px}.gdoc-sug-head .btn{flex:none}.gdoc-sug-cz{font-weight:700;color:var(--mluv-ink)}.gdoc-sug-en{color:var(--mluv-slate);margin-left:auto;font-size:13.5px}.coin-g{display:inline-block;width:.95em;height:.95em;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe88a,#e8b923 55%,#b8860b);box-shadow:inset 0 0 0 1.5px #fff6,inset 0 -2px 3px #00000038;vertical-align:-.12em;margin-right:2px}.tm-list{display:flex;flex-direction:column;gap:8px}.tm-card{display:flex;flex-direction:row;gap:12px;align-items:center;padding:11px 13px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);font:inherit;cursor:pointer;text-align:left;box-shadow:none;transition:box-shadow .2s ease}.tm-card:hover{box-shadow:var(--sh-sm)}.tm-ic{width:40px;height:40px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:19px;color:#fff;flex-shrink:0}.tm-mid{flex:1;min-width:0;display:flex;flex-direction:column}.tm-tt{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-sub{font-size:12.5px;color:var(--mluv-muted)}.tm-badge{display:inline-flex;align-items:center;font-size:11px;font-weight:700;border-radius:var(--r-pill);padding:3px 9px;white-space:nowrap}.tm-badge.ok{background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.tm-badge.idx{color:var(--mluv-slate);background:var(--mluv-canvas)}.tm-badge.bad{color:var(--mluv-red-600);background:transparent;border:1px solid var(--mluv-red-600)}.tm-badge.wait{color:var(--mluv-muted);background:var(--mluv-canvas)}.tm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--mluv-muted);text-align:center}.tm-empty-glyph{font-size:30px;margin-bottom:10px}.tm-empty p{max-width:36ch;margin:0 auto;line-height:1.5}@media (min-width: 768px){.tp{position:relative}.card{display:block;flex-direction:row}.tp-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--mluv-muted);padding:40px;text-align:center;gap:10px}}.chatview{display:flex;flex-direction:column;flex:1;min-height:0}.chatview-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column-reverse;gap:12px;padding:14px 16px}.chatview-empty{margin:auto;text-align:center;color:var(--mluv-muted);font-size:13.5px}.chatview-err{margin:auto;text-align:center;color:var(--mluv-error, #c0392b);font-size:13px}.chatview-msg{display:flex;gap:9px}.chatview-msg.mine{flex-direction:row-reverse}.chatview-msg .av{width:30px;height:30px;border-radius:50%;color:#fff;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;flex:none}.chatview-msg .bub{max-width:74%}.chatview-msg .meta{display:flex;align-items:center;gap:6px;font-size:11px;margin-bottom:3px;color:var(--mluv-muted)}.chatview-msg.mine .meta{flex-direction:row-reverse}.chatview-msg .meta b{color:var(--mluv-ink);font-weight:700}.chatview-msg .meta .lek{font-size:8.5px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:var(--r-pill);padding:1px 6px;letter-spacing:.04em}.chatview-msg .meta .del{border:0;background:none;cursor:pointer;color:var(--mluv-faint);padding:0;display:inline-flex}.chatview-msg .bd{background:var(--mluv-cream);border-radius:14px;padding:9px 13px;font-size:14px;line-height:1.45;word-break:break-word}.chatview-msg.mine .bd{background:var(--mluv-blue-600);color:#fff}.chatview-msg .bd a.chatlink{color:inherit;-webkit-text-fill-color:currentColor;text-decoration:underline;font-weight:600}.chatview-foot{flex:none;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--mluv-line);background:var(--mluv-paper)}.chatview-compose{display:flex;flex-direction:row;align-items:center;gap:8px}.chatview-compose input{flex:1;min-width:0;border:1.5px solid var(--mluv-line);border-radius:var(--r-pill);padding:11px 16px;font-size:14px;font-family:var(--font-sans);background:var(--mluv-paper);color:var(--mluv-ink)}.chatview-compose input:focus{outline:none;border-color:var(--mluv-blue-500)}.chatview-compose button{width:42px;height:42px;border-radius:50%;background:var(--mluv-blue-600);border:0;display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer}.chatview-compose button:disabled{background:var(--mluv-line);cursor:default}.screen-with-tabbar .chatview-foot{padding-bottom:calc(10px + var(--tabbar-h) + env(safe-area-inset-bottom))}.ndismiss{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;color:var(--mluv-muted);flex:none;cursor:pointer}.ndismiss:hover{background:var(--mluv-red-50);color:var(--mluv-red-600)}.mf-notif .ndismiss{margin-left:4px}.mf-meetlink{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:11px 16px;border-radius:var(--r-md);background:var(--mluv-blue-600);color:#fff;font-weight:700;font-size:14.5px;text-decoration:none;box-sizing:border-box}.mf-meetlink:hover{background:var(--mluv-blue-700)}.qsource{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--mluv-faint);font-weight:700;margin:-20px 0 22px}.tarea{width:100%;box-sizing:border-box;min-height:180px;font-family:var(--font-sans);font-size:14.5px;line-height:1.6;padding:15px 16px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);color:var(--mluv-ink);resize:vertical}.tarea:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.hw-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:16px;box-shadow:var(--sh-sm)}.hw-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:14px;font-weight:700;color:var(--mluv-red-700);border:1px solid var(--mluv-line);background:var(--mluv-cream);border-radius:var(--r-pill);padding:8px 14px;text-decoration:none}.hw-card .top{display:flex;align-items:center;gap:10px}.hw-card .eyebrow{font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--mluv-red-600)}.hw-card .duechip{margin-left:auto;font-size:11px;font-weight:800;border-radius:var(--r-pill);padding:4px 10px;background:var(--mluv-cream);color:var(--mluv-slate);white-space:nowrap}.hw-card .duechip.warn{background:var(--mluv-warning-soft);color:#9a5a12}.hw-card .duechip.over{background:var(--mluv-error-soft);color:#9e231b}.hw-card .duechip.is-done{background:var(--mluv-success-soft);color:#1c6b3e}.hw-card h3{font-family:var(--font-display);font-weight:800;font-size:18px;margin:10px 0 0;letter-spacing:-.01em}.hw-card .note{font-size:13px;color:var(--mluv-slate);margin:7px 0 0;line-height:1.5;background:var(--mluv-cream);border-radius:var(--r-sm);padding:9px 11px}.hw-card .note .by{font-weight:700;color:var(--mluv-ink)}.hw-submitted{display:flex;align-items:center;gap:10px;margin-top:13px;background:var(--mluv-success-soft);border-radius:var(--r-md);padding:12px 14px}.hw-submitted svg{color:var(--mluv-green);flex:none}.hw-submitted .tx{font-size:13.5px;color:#1c6b3e;font-weight:700;line-height:1.4}.hw-feedback{margin-top:13px;border:1px solid var(--mluv-blue-100);background:var(--mluv-blue-50);border-radius:var(--r-md);padding:13px 14px}.hw-feedback .fh{display:flex;align-items:center;gap:9px}.hw-feedback .fh .av{width:30px;height:30px;border-radius:50%;background:var(--mluv-plum);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}.hw-feedback .fh .nm{font-weight:700;font-size:13px}.hw-feedback .fh .gr{margin-left:auto;font-size:11px;font-weight:800;color:#fff;background:var(--mluv-green);border-radius:var(--r-pill);padding:3px 10px}.hw-feedback .fb{font-size:13.5px;color:var(--mluv-ink);line-height:1.5;margin-top:9px}.hw-feedback .fb p{margin:0 0 6px}.hw-feedback .fb p:last-child{margin-bottom:0}.hw-ta{width:100%;box-sizing:border-box;min-height:110px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 14px;font-family:var(--font-sans);font-size:15px;line-height:1.6;resize:vertical;color:var(--mluv-ink);background:var(--mluv-paper)}.hw-ta:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.hw-wc{font-size:11.5px;color:var(--mluv-muted);text-align:right;margin:6px 0 10px}.hw-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;border:0;border-radius:var(--r-sm);background:var(--mluv-red-600);color:#fff;font-family:var(--font-sans);font-weight:800;font-size:15.5px;padding:14px 0;cursor:pointer}.hw-btn:hover{background:var(--mluv-red-700)}.hw-btn.ghost{background:var(--mluv-paper);border:1.5px solid var(--mluv-line);color:var(--mluv-ink)}.hw-btn.ghost:hover{background:var(--mluv-cream)}.hw-btn:disabled{opacity:.6;cursor:default}.hwr-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px 17px;box-shadow:var(--sh-xs);margin-bottom:12px}.hwr-card .top{display:flex;align-items:center;gap:12px}.hwr-card .ic{width:40px;height:40px;border-radius:11px;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.hwr-card .ic.task{background:var(--mluv-plum)}.hwr-card .ic.book{background:var(--mluv-orange)}.hwr-card .ic.app{background:var(--mluv-blue-600)}.hwr-card .tt{flex:1;min-width:0;font-weight:700;font-size:15px}.hwr-card .tt .s{display:block;font-size:12px;color:var(--mluv-muted);font-weight:500;margin-top:2px}.hwr-card .res{flex:none;font-size:12px;font-weight:800;border-radius:var(--r-pill);padding:5px 11px}.hwr-card .res.ok{color:#1c6b3e;background:var(--mluv-success-soft)}.hwr-card .res.self{color:var(--mluv-slate);background:var(--mluv-cream)}.hwr-quote{margin-top:13px;background:var(--mluv-cream);border-radius:var(--r-sm);padding:13px 15px;font-size:14px;line-height:1.6;color:var(--mluv-ink)}.hwr-quote p{margin:0 0 6px}.hwr-quote p:last-child{margin-bottom:0}.hwr-fbcard{background:linear-gradient(120deg,var(--mluv-blue-50),#fff);border:1px solid var(--mluv-blue-100);border-radius:var(--r-md);padding:16px 17px;margin-top:10px}.hwr-fbcard .h{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:800;font-size:15px;margin-bottom:10px}.grow{display:flex;align-items:center;gap:13px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;margin-bottom:9px;text-align:left;width:100%;cursor:pointer;font-family:var(--font-sans)}.grow:hover{border-color:var(--mluv-faint)}.grow .ck{width:24px;height:24px;border-radius:50%;border:2px solid var(--mluv-line);display:flex;align-items:center;justify-content:center;flex:none}.grow .ck.read{background:var(--mluv-green);border-color:var(--mluv-green)}.grow .b{flex:1;min-width:0}.grow .b .t{font-weight:700;font-size:14.5px}.grow .b .cs{font-size:12.5px;color:var(--mluv-muted)}.grow .tour{font-size:11px;font-weight:800;color:var(--mluv-plum);background:#f3e9f6;border-radius:var(--r-pill);padding:3px 9px;flex:none}.pubtr{--tabbar-h: 0px;min-height:100dvh;display:flex;flex-direction:column;background:var(--mluv-canvas)}.pubtr-head{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px calc(12px + env(safe-area-inset-top,0px));padding-top:calc(12px + env(safe-area-inset-top,0px));background:color-mix(in srgb,var(--mluv-canvas) 88%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--mluv-line)}.pubtr-brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none}.pubtr-brand img{display:block;border-radius:7px}.pubtr-brand .wm{font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--mluv-ink)}.pubtr-brand .dot{color:var(--mluv-red-600)}.pubtr-link{font-size:13.5px;font-weight:700;color:var(--mluv-red-600);text-decoration:none;padding:7px 12px;border-radius:var(--r-pill);border:1px solid var(--mluv-line);background:var(--mluv-paper);white-space:nowrap}.pubtr-link:active{transform:scale(.97)}.pubtr-body{flex:1;min-height:0;display:flex;flex-direction:column}.pubtr-body>.page{margin:0 auto}.ipw{position:fixed;left:0;right:0;bottom:0;z-index:200;display:flex;justify-content:center;padding:0 12px calc(14px + env(safe-area-inset-bottom,0px));pointer-events:none;animation:ipw-rise .28s cubic-bezier(.16,.84,.44,1) both}@keyframes ipw-rise{0%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}.ipw-card{pointer-events:auto;position:relative;width:100%;max-width:440px;display:flex;align-items:center;gap:13px;padding:14px 15px;border-radius:18px;background:var(--mluv-paper);border:1px solid var(--mluv-line);box-shadow:0 12px 38px #0000002e,0 2px 8px #00000014}.ipw-x{position:absolute;top:8px;right:8px;width:26px;height:26px;display:grid;place-items:center;border:none;background:transparent;color:var(--mluv-muted);border-radius:8px;cursor:pointer}.ipw-x:active{background:var(--mluv-line-soft)}.ipw-icon{flex:none;width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:var(--mluv-red-50)}.ipw-icon img{display:block;border-radius:10px}.ipw-body{flex:1;min-width:0;padding-right:18px}.ipw-title{font-weight:800;font-size:15px;color:var(--mluv-ink);letter-spacing:-.01em}.ipw-sub{font-size:12.5px;line-height:1.45;color:var(--mluv-muted);margin-top:2px}.ipw-ios{display:inline-flex;align-items:center;gap:3px;font-weight:700;color:var(--mluv-ink);white-space:nowrap}.ipw-go{flex:none;display:inline-flex;align-items:center;gap:6px;padding:11px 15px;border:none;border-radius:var(--r-pill);background:var(--mluv-red-600);color:#fff;font-weight:800;font-size:14px;cursor:pointer}.ipw-go:active{transform:scale(.97)}.m-mynotes{display:flex;align-items:center;gap:12px;margin:4px 18px 14px;padding:13px 14px;width:calc(100% - 36px);box-sizing:border-box;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);text-align:left;cursor:pointer}.m-mynotes:active{transform:scale(.99)}.m-mynotes .ic{flex:none;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--mluv-red-600)}.m-mynotes .tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.m-mynotes .tx b{font-size:15px;font-weight:800;color:var(--mluv-ink)}.m-mynotes .tx i{font-style:normal;font-size:12.5px;color:var(--mluv-muted);line-height:1.35}.m-mynotes>svg{color:var(--mluv-faint);flex:none}.snote-intro{font-size:13.5px;line-height:1.5;color:var(--mluv-muted);margin:4px 0 12px}.card.snote-upload{display:flex;flex-direction:column;gap:14px}.snote-uprow{display:flex;gap:10px}.snote-uprow .btn{flex:1}.snote-notes{width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:15px;line-height:1.5;padding:11px 12px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-canvas);color:var(--mluv-ink);resize:vertical}.snote-notes:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.snote-title{width:100%;box-sizing:border-box;font-size:18px;font-weight:800;padding:10px 2px;border:none;border-bottom:1.5px solid var(--mluv-line);background:transparent;color:var(--mluv-ink);margin-bottom:6px}.snote-title:focus{outline:none;border-color:var(--mluv-blue-500)}.snote-sec{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted);margin:18px 0 8px}.snote-vrow{display:flex;align-items:center;gap:7px;padding:5px 6px}.snote-vrow.dup{opacity:.55}.snote-vrow.dup input{background:var(--mluv-canvas);color:var(--mluv-muted)}.snote-vbadge{flex:none;font-size:10px;font-weight:800;border-radius:var(--r-pill);padding:2px 7px;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.snote-vbadge.have{background:var(--mluv-line-soft,#eceae6);color:var(--mluv-muted)}.snote-vbadge.lib{background:#eef3fe;color:var(--mluv-blue-700)}.snote-vrow input{flex:1;min-width:0;font-size:14.5px;padding:8px 10px;border:1px solid var(--mluv-line);border-radius:9px;background:var(--mluv-canvas);color:var(--mluv-ink)}.snote-vrow input.cz{font-weight:700;font-family:var(--font-display)}.snote-vrow input:focus{outline:none;border-color:var(--mluv-blue-500)}.snote-vrow button{flex:none;width:30px;height:30px;display:grid;place-items:center;border:none;background:transparent;color:var(--mluv-muted);border-radius:8px;cursor:pointer}.snote-vrow button:active{background:var(--mluv-line-soft)}.snote-addrow{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px;margin-top:4px;border:1px dashed var(--mluv-line);background:transparent;border-radius:9px;color:var(--mluv-red-600);font-weight:700;font-size:13.5px;cursor:pointer}.snote-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}.snote-actions .btn{width:100%}.snote-toast{font-size:13.5px;color:var(--mluv-ink);background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:10px;padding:10px 12px;margin-top:12px}.snote-item{display:flex;align-items:center;gap:8px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);margin-bottom:9px}.snote-item .b{flex:1;min-width:0;text-align:left;background:none;border:none;padding:12px 14px;cursor:pointer}.snote-item .b .t{font-weight:700;font-size:15px;color:var(--mluv-ink)}.snote-item .b .s{font-size:12.5px;color:var(--mluv-muted);margin-top:2px}.snote-item .x{flex:none;width:36px;height:100%;min-height:44px;display:grid;place-items:center;border:none;background:transparent;color:var(--mluv-faint);cursor:pointer}.snote-item .badge{font-size:11px;font-weight:800;padding:1px 7px;border-radius:var(--r-pill);margin-left:6px}.snote-item .badge.ok{background:#e7f5ec;color:var(--mluv-green)}.snote-item .badge.sh{background:#eef2fb;color:var(--mluv-blue-500)}.snote-sharer{font-size:14px;color:var(--mluv-ink);display:flex;align-items:center;gap:6px;margin:4px 0 2px}.snote-prow{display:flex;align-items:center;gap:10px;padding:9px 11px;border-bottom:1px solid var(--mluv-line-soft)}.snote-prow:last-child{border-bottom:0}.snote-prow .cz{font-weight:700;font-family:var(--font-display);font-size:15px;color:var(--mluv-ink)}.snote-prow .en{flex:1;color:var(--mluv-muted);font-size:14px}.snote-prow .tag{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--mluv-muted);background:var(--mluv-line-soft);padding:2px 7px;border-radius:var(--r-pill)}.snote-prow.have .cz,.snote-prow.have .en{opacity:.45}.snote-wide{max-width:none}.clp-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;background:#14121e73;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.clp-card{background:var(--mluv-paper);border-radius:var(--r-xl, 20px);padding:28px 24px;max-width:380px;width:100%;text-align:center;box-shadow:0 24px 70px #00000059}.clp-badge{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--mluv-blue-600),var(--mluv-blue-700));display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.clp-card h2{font-family:var(--font-display);font-weight:800;font-size:22px;margin:0 0 8px}.clp-card p{font-size:14.5px;line-height:1.55;color:var(--mluv-slate);margin:0 0 18px}.clp-add{width:100%}.clp-later{display:block;width:100%;margin-top:10px;background:none;border:0;color:var(--mluv-muted);font-weight:700;font-size:14px;padding:8px;cursor:pointer}.rv-poschip{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--mluv-slate);background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:3px 10px;width:fit-content;margin:8px auto 0;text-align:center}.rv-typohint{display:flex;align-items:center;gap:7px;margin-top:10px;padding:9px 12px;background:var(--mluv-amber-100,#fef3c7);color:var(--mluv-amber-700,#b45309);border-radius:var(--r-md,12px);font-size:13.5px;font-weight:700;line-height:1.35}.rv-typohint .lucide{flex:none}.rv-cull{display:flex;justify-content:center;gap:20px;margin:16px 0 0;flex-wrap:wrap}.rv-cull-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:0;color:var(--mluv-muted);font-size:12.5px;font-weight:700;cursor:pointer;padding:5px 6px;-webkit-tap-highlight-color:transparent}.rv-cull-btn:active{color:var(--mluv-ink)}.rv-cull-btn .lucide{width:14px;height:14px}.snote-seg{display:flex;gap:4px;background:var(--mluv-canvas);border-radius:var(--r-pill);padding:3px;width:fit-content;margin-bottom:4px}.snote-seg button{border:none;background:transparent;padding:6px 18px;border-radius:var(--r-pill);font-weight:700;font-size:13px;color:var(--mluv-muted);cursor:pointer}.snote-seg button.on{background:var(--mluv-paper);color:var(--mluv-ink);box-shadow:var(--sh-xs)}.snote-optrow{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:13px;color:var(--mluv-muted)}.snote-optrow label{display:inline-flex;align-items:center;gap:6px}.mpair{display:flex;gap:4px;background:var(--mluv-line-soft);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:3px;margin:0 18px 12px}.mpair-b{flex:1;border:none;background:transparent;padding:9px 0;border-radius:var(--r-pill);font-weight:800;font-size:14px;color:var(--mluv-muted);cursor:pointer}.mpair-b.on{background:var(--mluv-paper);color:var(--mluv-ink);box-shadow:var(--sh-xs)}.mw-seg{display:flex;gap:4px;background:var(--mluv-line-soft);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:3px;width:fit-content;margin:0 0 14px}.mw-seg button{border:none;background:transparent;padding:7px 20px;border-radius:var(--r-pill);font-weight:700;font-size:13.5px;color:var(--mluv-muted);cursor:pointer}.mw-seg button.on{background:var(--mluv-paper);color:var(--mluv-ink);box-shadow:var(--sh-xs)}.mw-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;background:var(--mluv-line-soft);border:1px solid var(--mluv-line);border-radius:13px;padding:11px 12px}.mw-filters label{display:flex;flex-direction:column;gap:4px;font-size:10.5px;font-weight:800;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.04em;flex:1 1 30%;min-width:90px}.mw-filters select{font-size:13.5px;padding:8px 9px;border-radius:9px;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-ink);width:100%}.mw-count{font-size:12.5px;font-weight:700;color:var(--mluv-muted);margin:4px 0 10px}.mw-list{display:flex;flex-direction:column;gap:7px}.mw-row{display:flex;align-items:center;gap:10px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:11px;padding:10px 12px}.mw-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.mw-lemma{font-weight:800;font-size:15px;color:var(--mluv-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mw-trans{font-size:13px;color:var(--mluv-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mw-meta{display:flex;align-items:center;gap:5px;flex:none}.mw-chip{font-size:10.5px;font-weight:800;color:#fff;border-radius:20px;padding:2px 8px;white-space:nowrap}.mw-chip.lk{background:var(--mluv-ink)}.mw-x{flex:none;width:32px;height:32px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.mw-x:disabled{opacity:.4}.mw-empty{text-align:center;color:var(--mluv-muted);padding:34px 18px;display:flex;flex-direction:column;align-items:center;gap:10px}.mw-empty p{font-size:13.5px;max-width:260px;margin:0}.snote-optrow select{font-size:13.5px;padding:6px 8px;border:1px solid var(--mluv-line);border-radius:9px;background:var(--mluv-canvas);color:var(--mluv-ink)}.snote-optrow .ck{cursor:pointer}.snote-optrow .ck input{width:16px;height:16px;accent-color:var(--mluv-red-600)}.mywork{margin-top:14px}.mywork .cap{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted);margin:0 0 8px}.mywork-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 13px;margin-bottom:8px;cursor:pointer;color:var(--mluv-ink)}.mywork-row .t{flex:1;min-width:0;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mywork-row>svg:last-child{color:var(--mluv-faint)}.mywork-badge{font-size:10.5px;font-weight:800;color:var(--mluv-blue-500);background:var(--mluv-blue-50);padding:2px 7px;border-radius:var(--r-pill)}.snote-fb{font-size:14px;line-height:1.55}.mywork-card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 13px;margin-bottom:9px}.mywork-head{display:flex;align-items:center;gap:9px}.mywork-head .t{flex:1;min-width:0;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--mluv-ink)}.mywork-edit{flex:none;width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--mluv-line);background:var(--mluv-canvas);border-radius:8px;color:var(--mluv-slate);cursor:pointer}.mywork-body{font-size:13.5px;line-height:1.55;color:var(--mluv-ink);margin-top:8px}.mywork-fb{margin-top:8px;font-size:13px}.mywork-fb summary{font-weight:700;font-size:12px;color:var(--mluv-blue-500);cursor:pointer}.terms{font-size:14.5px;line-height:1.6;color:var(--mluv-ink);max-width:620px;padding-top:6px}.terms .lead{font-size:15px;color:var(--mluv-slate);margin-bottom:6px}.terms h3{font-family:var(--font-display);font-weight:800;font-size:16px;margin:20px 0 6px}.terms ul{padding-left:20px;margin:6px 0}.terms li{margin:4px 0}.terms .warn{background:var(--mluv-warning-soft,#fdf2e2);border:1px solid var(--mluv-line);border-radius:10px;padding:11px 13px}.termsgate{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--mluv-canvas)}.tg-card{max-width:460px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:18px;padding:24px 22px;box-shadow:var(--sh-md,0 10px 30px rgba(0,0,0,.12))}.tg-brand{font-family:var(--font-display);font-weight:800;font-size:22px}.tg-brand span{color:var(--mluv-red-600)}.tg-card h2{font-family:var(--font-display);font-weight:800;font-size:20px;margin:8px 0 6px}.tg-card p{font-size:14px;color:var(--mluv-slate);line-height:1.5;margin:6px 0}.tg-card ul{font-size:13.5px;line-height:1.5;color:var(--mluv-ink);padding-left:18px;margin:10px 0}.tg-card li{margin:6px 0}.tg-card .tg-note{font-size:12px;color:var(--mluv-muted)}.trinfo{border:none;background:none;color:var(--mluv-muted);cursor:pointer;padding:0 0 0 5px;display:inline-flex;vertical-align:-2px}.trinfo:active{color:var(--mluv-ink)}.trinfo-pop{background:var(--mluv-blue-50,#eef2fb);border:1px solid var(--mluv-line);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5;color:var(--mluv-ink);margin-top:10px}.snote-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.snote-badges .badge{white-space:nowrap;font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:var(--r-pill);line-height:1.4}.snote-badges .badge.lk{background:var(--mluv-blue-50,#eef2fb);color:var(--mluv-blue-500)}.snote-badges .badge.ai{background:#f3e9f6;color:var(--mluv-plum,#8e44ad)}.snote-badges .badge.sub{background:var(--mluv-warning-soft,#fdf2e2);color:var(--mluv-orange)}.snote-badges .badge.rev,.snote-badges .badge.ok{background:#e7f5ec;color:var(--mluv-green)}.snote-badges .badge.sh{background:#eef2fb;color:var(--mluv-blue-500)}.hwr-row{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:12px;padding:11px 13px;margin-bottom:8px;cursor:pointer}.hwr-row:active{transform:scale(.995)}.hwr-row .tt{flex:1;min-width:0;font-weight:700;font-size:14px;color:var(--mluv-ink);display:flex;flex-direction:column}.hwr-row .tt .s{font-weight:500;font-size:11.5px;color:var(--mluv-muted)}.hwr-row .res{font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:var(--r-pill);white-space:nowrap}.hwr-row .res.ok{background:#e7f5ec;color:var(--mluv-green)}.hwr-row .res.self{background:var(--mluv-warning-soft,#fdf2e2);color:var(--mluv-orange)}.tsub-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:6px 0 4px}.tsub-head .who{font-family:var(--font-display);font-weight:800;font-size:20px;color:var(--mluv-ink)}.tsub-head .hw{font-size:13.5px;color:var(--mluv-muted)}.tsub-head .badge{font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:var(--r-pill);background:#e7f5ec;color:var(--mluv-green)}.snote-title-wrap{display:flex;align-items:center;gap:6px;border-bottom:1.5px solid var(--mluv-line);margin-bottom:6px}.snote-title-wrap .snote-title{flex:1;border:none;border-bottom:none;margin-bottom:0}.snote-title-wrap:focus-within{border-color:var(--mluv-blue-500)}.snote-notes-tall{min-height:220px}.snote-subnote{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;padding:9px 12px;border-radius:var(--r-md)}.snote-subnote.ok{background:#e7f5ec;color:var(--mluv-green)}.tsub-ai{margin:14px 0 4px;border:1px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-blue-50,#eef3fe);padding:10px 12px}.tsub-ai>summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--mluv-blue-700);display:flex;align-items:center;gap:7px;list-style:none}.tsub-ai>summary::-webkit-details-marker{display:none}.snote-optrow select{max-width:min(62vw,260px)}.snote-addrow{margin-top:9px}.snote-vrow{margin-bottom:2px}.snote-resizehint{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--mluv-muted);margin:7px 2px 2px;font-weight:600}.snote-notes-tall{resize:vertical}.nudge-wrap{display:flex;flex-direction:column;gap:6px;align-items:flex-start;margin-top:6px}.nudge-hint{display:flex;align-items:flex-start;gap:6px;font-size:11.5px;line-height:1.45;color:var(--mluv-muted);max-width:340px}.help-lead{font-size:14px;color:var(--mluv-muted);line-height:1.5;margin:2px 0 14px}.help-search{display:flex;align-items:center;gap:8px;background:var(--mluv-canvas);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:9px 12px;margin-bottom:14px}.help-search input{flex:1;border:0;background:transparent;font-size:15px;color:var(--mluv-ink);outline:none}.help-clear{border:0;background:transparent;color:var(--mluv-muted);display:grid;place-items:center;cursor:pointer;padding:2px}.help-empty{font-size:14px;color:var(--mluv-muted);padding:8px 2px}.help-sec{border:1px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);margin-bottom:10px;overflow:hidden}.help-sec.open{box-shadow:var(--sh-xs)}.help-sechead{display:flex;align-items:center;gap:12px;width:100%;border:0;background:none;text-align:left;padding:13px 14px;cursor:pointer;color:var(--mluv-ink)}.help-sechead .ic{width:32px;height:32px;border-radius:9px;background:var(--mluv-blue-50,#eef3fe);color:var(--mluv-blue-600);display:grid;place-items:center;flex:none}.help-sechead .tt{flex:1;font-weight:700;font-size:15px}.help-items{padding:2px 14px 12px}.help-qa{padding:10px 0;border-top:1px solid var(--mluv-line-soft,#f0eee9)}.help-qa .q{font-weight:700;font-size:14px;color:var(--mluv-ink);margin-bottom:3px}.help-qa .a{font-size:13.5px;line-height:1.5;color:var(--mluv-slate)}.help-foot{font-size:13px;color:var(--mluv-muted);line-height:1.5;margin:16px 2px 4px}.help-tour-btn{width:100%;justify-content:center;margin-bottom:16px}.tour-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#1412109e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:22px;padding-bottom:calc(22px + env(safe-area-inset-bottom))}.tour-card{position:relative;width:100%;max-width:360px;background:var(--mluv-paper);border-radius:22px;box-shadow:0 20px 60px #00000059;padding:26px 22px 20px;text-align:center;animation:tourpop .22s ease}@keyframes tourpop{0%{transform:scale(.94);opacity:.4}to{transform:scale(1);opacity:1}}.tour-skip{position:absolute;top:12px;right:14px;border:0;background:none;color:var(--mluv-muted);font-size:13.5px;font-weight:700;cursor:pointer;min-height:24px}.tour-ic{width:72px;height:72px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin:6px auto 16px;box-shadow:var(--sh-sm)}.tour-title{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--mluv-ink);margin-bottom:8px}.tour-body{font-size:14.5px;line-height:1.55;color:var(--mluv-slate);margin-bottom:18px}.tour-dots{display:flex;gap:7px;justify-content:center;margin-bottom:18px}.tour-dot{width:7px;height:7px;border-radius:50%;background:var(--mluv-line);cursor:pointer;transition:.18s}.tour-dot.on{background:var(--mluv-blue-600);width:20px;border-radius:4px}.tour-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.tour-nav .btn{min-width:104px;justify-content:center}.rv-backlog{display:flex;gap:11px;align-items:flex-start;background:var(--mluv-warning-soft,#fdf3e6);border:1px solid var(--mluv-orange,#e0801e);border-radius:var(--r-md);padding:13px 15px;margin:0 0 16px}.rv-backlog .t{font-weight:800;font-size:14.5px;color:var(--mluv-ink)}.rv-backlog .d{font-size:12.5px;line-height:1.45;color:var(--mluv-slate);margin-top:3px}.snote-fctoggle{flex:none;width:34px;height:32px;display:grid;place-items:center;border:none;background:transparent;border-radius:8px;cursor:pointer}.snote-fctoggle:active{background:var(--mluv-line-soft)}.snote-fctoggle.on{background:#e7f5ec}.snote-vx{flex:none;width:28px;height:30px;display:grid;place-items:center;border:none;background:transparent;color:var(--mluv-faint);border-radius:8px;cursor:pointer}.snote-addrow.primary{border-style:solid;border-color:var(--mluv-blue-500);color:var(--mluv-blue-700);font-weight:800}.words-search{display:flex;align-items:center;gap:9px;background:var(--mluv-paper);border:1.5px solid var(--mluv-line);border-radius:var(--r-pill);padding:9px 14px;margin:6px 0 4px}.words-search input{flex:1;min-width:0;border:none;background:transparent;font-size:15px;color:var(--mluv-ink);outline:none}.words-search button{border:none;background:transparent;color:var(--mluv-muted);display:flex;cursor:pointer;padding:2px}.words-hits{display:flex;flex-direction:column;gap:2px;padding-top:6px}.words-hit{display:flex;flex-direction:column;gap:1px;padding:10px 4px;border-bottom:1px solid var(--mluv-line-soft,#eee)}.words-hit .cz{font-weight:800;font-size:15.5px;color:var(--mluv-ink);font-family:var(--font-display)}.words-hit .en{font-size:13.5px;color:var(--mluv-slate)}.words-hit .meta{font-size:11.5px;color:var(--mluv-muted);font-weight:600}.mw-row.sel{background:var(--mluv-blue-50,#eef3fe)}.mw-delbar{position:sticky;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 8px);display:flex;justify-content:center;padding:10px 0;z-index:5}.mw-delbar .btn{box-shadow:var(--sh-md,0 6px 18px rgba(0,0,0,.18))}.md-code{font-weight:700;color:var(--mluv-ink);background:var(--mluv-cream,#fbf7ee);border:1px solid var(--mluv-line);border-radius:5px;padding:0 5px}.hg-wrap,.hc-wrap{max-width:560px;margin:0 auto;padding:18px 18px 40px;display:flex;flex-direction:column;gap:14px}.hg-greet{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--mluv-ink)}.hg-streak{font-size:15px;font-weight:800;color:var(--mluv-orange)}.hg-hero{display:flex;align-items:center;gap:16px;width:100%;text-align:left;border:0;cursor:pointer;background:linear-gradient(135deg,var(--mluv-red-600),var(--mluv-plum, #9b2d6f));color:#fff;border-radius:var(--r-xl, 20px);padding:22px 20px;box-shadow:var(--sh-md, 0 10px 30px rgba(0,0,0,.18))}.hg-hero-ic{width:52px;height:52px;border-radius:15px;background:#ffffff2e;display:flex;align-items:center;justify-content:center;flex:none}.hg-hero-tx{flex:1;min-width:0}.hg-hero-tx .t{font-family:var(--font-display);font-weight:800;font-size:21px;line-height:1.15}.hg-hero-tx .s{font-size:13.5px;opacity:.9;margin-top:3px}.hg-second,.hg-class{display:flex;align-items:center;gap:9px;width:100%;text-align:left;cursor:pointer;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md, 14px);padding:13px 15px;font-size:14px;font-weight:600;color:var(--mluv-ink)}.hg-second span,.hg-class span{flex:1;min-width:0}.hg-quickrow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:2px}.hg-quick{display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 4px;cursor:pointer;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:13px;font-size:12px;font-weight:700;color:var(--mluv-slate)}.hg-all{margin-top:6px}.hg-all>summary{cursor:pointer;font-weight:700;font-size:13.5px;color:var(--mluv-slate);padding:8px 2px;list-style:none}.hg-all>summary::-webkit-details-marker{display:none}.hg-lesslist,.hc-lesslist{display:flex;flex-direction:column;gap:6px;margin-top:6px}.hg-lessrow,.hc-lessrow{display:flex;align-items:center;gap:11px;width:100%;text-align:left;cursor:pointer;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:12px;padding:10px 12px}.hg-lessnum,.hc-lessnum{width:30px;height:30px;border-radius:9px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--mluv-cream);color:var(--mluv-slate);font-weight:800;font-size:13px}.hg-lessnum.active,.hc-lessnum.active{background:var(--mluv-red-600);color:#fff}.hg-lessnum.done,.hc-lessnum.done{background:var(--mluv-green);color:#fff}.hg-lesstx,.hc-lesstx{flex:1;min-width:0;font-size:14px;font-weight:600;color:var(--mluv-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hg-here,.hc-here{color:var(--mluv-blue-700);font-weight:700}.hg-lessdue,.hc-lessdue{font-size:11.5px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:99px;padding:2px 8px;flex:none}.hc-head{display:flex;align-items:center;justify-content:space-between}.hc-greet{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--mluv-ink)}.hc-stat{display:flex;align-items:center;gap:10px}.hc-streak{font-size:15px;font-weight:800;color:var(--mluv-orange)}.hc-goal{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:var(--mluv-slate)}.hc-goalbar{width:46px;height:7px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.hc-goalbar span{display:block;height:100%;background:var(--mluv-green);border-radius:99px}.hc-cards{display:flex;flex-direction:column;gap:11px}.hc-card{display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg, 16px);padding:15px 16px;box-shadow:var(--sh-xs)}.hc-card-ic{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex:none}.hc-card-tx{flex:1;min-width:0}.hc-card-tx .t{font-family:var(--font-display);font-weight:800;font-size:16.5px;display:flex;align-items:center;gap:8px}.hc-card-tx .s{font-size:13px;color:var(--mluv-slate);margin-top:2px}.hc-badge{font-size:12px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:99px;padding:1px 9px}.hc-quick{display:flex;gap:8px;margin-top:2px}.hc-quick button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 6px;cursor:pointer;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:12px;font-size:12.5px;font-weight:700;color:var(--mluv-slate)}.hc-drawer{margin-top:6px}.hc-drawer>summary{cursor:pointer;font-weight:700;font-size:13.5px;color:var(--mluv-slate);padding:8px 2px;list-style:none}.hc-drawer>summary::-webkit-details-marker{display:none}@media (min-width: 768px){*{box-sizing:border-box}html,body{margin:0;height:100%}button,input,textarea{font-family:inherit}button{cursor:pointer}img{display:block}.app{display:flex;height:100%;width:100%;background:var(--mluv-canvas);color:var(--mluv-ink);font-family:var(--font-sans);overflow:hidden}.sb{flex:none;width:248px;background:var(--mluv-paper);border-right:1px solid var(--mluv-line);display:flex;flex-direction:column;padding:18px 14px;gap:3px;transition:width .18s ease}.lay-mid .sb,.lay-narrow .sb{width:74px;padding:18px 12px;align-items:center}.sb .brand{display:flex;align-items:baseline;gap:8px;padding:4px 8px 16px;cursor:pointer}.sb .brand .wm{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.03em;color:var(--mluv-ink);line-height:1}.sb .brand .tagline{font-size:12px;font-weight:600;color:var(--mluv-red-600)}.lay-mid .sb .brand .tagline,.lay-narrow .sb .brand .tagline{display:none}.lay-mid .sb .brand,.lay-narrow .sb .brand{padding:4px 0 16px;justify-content:center}.sb .brand .bn{font-family:var(--font-display);font-weight:800;font-size:15px;line-height:1.04;white-space:nowrap}.sb .brand .bn .r{color:var(--mluv-red-600)}.lay-mid .sb .brand .bn,.lay-narrow .sb .brand .bn{display:none}.sb-brand-sm{padding:2px 8px 10px}.sb-brand-sm .wm{font-size:19px}.lay-mid .sb-brand-sm,.lay-narrow .sb-brand-sm{padding:2px 0 10px}.bookpick{position:relative;margin-bottom:14px}.bookpick-cur{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:9px 11px;box-shadow:var(--sh-xs)}.bookpick-cur:hover{border-color:var(--mluv-faint)}.bookpick .flag{width:34px;height:34px;border-radius:10px;flex:none;display:flex;align-items:center;justify-content:center;font-size:18px;background:color-mix(in srgb,var(--bk,var(--mluv-red-600)) 14%,#fff);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--bk,var(--mluv-red-600)) 30%,transparent)}.bookpick .meta{flex:1;min-width:0}.bookpick .meta .t{display:block;font-family:var(--font-display);font-weight:800;font-size:13.5px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bookpick .meta .s{display:block;font-size:11px;color:var(--mluv-muted);margin-top:1px}.lay-mid .bookpick .meta,.lay-narrow .bookpick .meta,.lay-mid .bookpick-cur>.lucide,.lay-narrow .bookpick-cur>.lucide{display:none}.lay-mid .bookpick-cur,.lay-narrow .bookpick-cur{padding:7px;justify-content:center}.bookpick-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:7px;max-height:380px;overflow-y:auto}.lay-mid .bookpick-menu,.lay-narrow .bookpick-menu{left:0;width:248px}.bookpick-sec{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-faint);padding:8px 9px 5px}.bookpick-i{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;background:none;border-radius:var(--r-sm);padding:8px 9px}.bookpick-i:hover{background:var(--mluv-canvas)}.bookpick-i.on{background:var(--mluv-red-50)}.bookpick-i .meta{flex:1;min-width:0}.bookpick-i .meta .t{display:block;font-weight:700;font-size:13px;line-height:1.15}.bookpick-i .meta .s{display:block;font-size:11px;color:var(--mluv-muted);margin-top:1px}.bookpick-i.add .meta .t{color:var(--mluv-slate)}.flag-inline{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;background:var(--mluv-cream);font-size:13px;vertical-align:-4px;margin-right:2px}.classswitch{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.classswitch-i{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:7px 14px 7px 8px;font-weight:700;font-size:13.5px;color:var(--mluv-slate)}.classswitch-i:hover{border-color:var(--mluv-faint)}.classswitch-i.on{border-color:var(--mluv-ink);background:var(--mluv-ink);color:#fff}.classswitch-i .fl{width:24px;height:24px;border-radius:7px;background:#00000017;color:var(--mluv-slate);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:13px}.classswitch-i.on .fl{background:#ffffffeb;color:var(--mluv-ink)}.classswitch-add{display:inline-flex;align-items:center;gap:6px;border:1.5px dashed var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:7px 14px;font-weight:700;font-size:13.5px;color:var(--mluv-slate)}.classswitch-add:hover{border-color:var(--mluv-red-600);color:var(--mluv-red-600)}.joinmodal{background:var(--mluv-paper);border-radius:var(--r-lg);box-shadow:var(--sh-lg);width:100%;max-width:440px;display:flex;flex-direction:column;overflow:hidden}.joinbody{padding:22px}.joinlead{font-size:14.5px;color:var(--mluv-slate);margin:0 0 16px;line-height:1.5}.codeinput{width:100%;box-sizing:border-box;font-family:var(--font-mono);font-size:32px;font-weight:700;text-align:center;letter-spacing:.34em;padding:16px 14px 16px 18px;border:2px solid var(--mluv-line);border-radius:var(--r-md);color:var(--mluv-ink);background:var(--mluv-canvas)}.codeinput:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.codeinput.err{border-color:var(--mluv-error)}.codedots{display:flex;justify-content:center;gap:8px;margin-top:12px}.codedots .cd{width:9px;height:9px;border-radius:50%;background:var(--mluv-line)}.codedots .cd.on{background:var(--mluv-blue-600)}.joinfound{display:flex;align-items:center;gap:12px;background:var(--mluv-success-soft);border:1px solid color-mix(in srgb,var(--mluv-green) 30%,transparent);border-radius:var(--r-md);padding:13px 14px;margin-top:18px}.joinfound .fl{width:40px;height:40px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--mluv-paper)}.joinfound .meta{flex:1;min-width:0}.joinfound .meta .t{font-family:var(--font-display);font-weight:800;font-size:15px}.joinfound .meta .s{font-size:12px;color:var(--mluv-slate);margin-top:2px}.joinerr{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mluv-red-700);background:var(--mluv-error-soft);border-radius:var(--r-sm);padding:11px 13px;margin-top:16px;line-height:1.4}.joinfoot{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--mluv-line);background:var(--mluv-cream)}.invitecard{display:flex;align-items:center;gap:14px;border:1px solid var(--mluv-line);background:linear-gradient(100deg,var(--mluv-cream),var(--mluv-paper));border-radius:var(--r-md);padding:14px 16px;margin-bottom:10px}.invitecard .ic{width:44px;height:44px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--mluv-ink)}.invitecard .mid{flex:1;min-width:0}.invitecard .mid .lab{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted)}.invitecard .mid .code{font-family:var(--font-mono);font-weight:700;font-size:22px;letter-spacing:.12em;color:var(--mluv-ink);margin:2px 0 3px}.invitecard .mid .exp{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--mluv-muted)}.invitecard .acts{display:flex;gap:8px;flex:none}@media (max-width:520px){.invitecard{flex-wrap:wrap}.invitecard .acts{width:100%}}.td-titlerow{display:flex;align-items:center;gap:14px}.td-titlerow h1{flex:1;min-width:0}.td-gear{display:inline-flex;align-items:center;gap:7px;flex:none;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-sm);padding:9px 14px;font-weight:700;font-size:13.5px;color:var(--mluv-slate);box-shadow:var(--sh-xs)}.td-gear:hover{border-color:var(--mluv-faint);color:var(--mluv-ink)}.set-sec{border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-lg);padding:18px 20px;margin-bottom:16px;box-shadow:var(--sh-xs)}.set-sec.danger{border-color:color-mix(in srgb,var(--mluv-red-600) 30%,var(--mluv-line))}.set-h{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:800;font-size:15px;margin-bottom:14px}.set-count{font-family:var(--font-sans);font-weight:800;font-size:12px;color:var(--mluv-muted);background:var(--mluv-cream);border-radius:var(--r-pill);padding:2px 9px;margin-left:2px}.lockedfield{display:flex;align-items:center;gap:8px;border:1.5px dashed var(--mluv-line);background:var(--mluv-cream);border-radius:var(--r-sm);padding:12px 14px;font-weight:600;color:var(--mluv-slate);font-size:14.5px}.rosterlist{display:flex;flex-direction:column}.rosterrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--mluv-line-soft)}.rosterrow:last-child{border-bottom:0}.rosterrow .rmeta{flex:1;min-width:0}.rosterrow .rmeta .n{font-weight:700;font-size:14px;display:block}.rosterrow .rmeta .s{font-size:12px;color:var(--mluv-muted);display:block;margin-top:1px}.roster-x{width:34px;height:34px;border-radius:9px;border:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;flex:none}.roster-x:hover{border-color:var(--mluv-red-600);background:var(--mluv-error-soft)}.rconfirm{display:flex;gap:8px;flex:none}.btn-danger{background:var(--mluv-red-600);color:#fff;border-color:transparent}.btn-danger:hover{background:var(--mluv-red-700)}.btn-danger-out{background:var(--mluv-paper);color:var(--mluv-red-600);border:1.5px solid color-mix(in srgb,var(--mluv-red-600) 40%,transparent)}.btn-danger-out:hover{background:var(--mluv-error-soft)}.dangerrow{display:flex;align-items:center;gap:14px}.dangerrow .dt{font-weight:700;font-size:14px}.dangerrow .dd{font-size:12.5px;color:var(--mluv-muted);margin-top:2px}.dangerrow>div:first-child{flex:1}.dangerrow.confirm{background:var(--mluv-error-soft);border-radius:var(--r-sm);padding:12px 14px}.nav-i{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:var(--r-sm);font-size:14.5px;font-weight:600;color:var(--mluv-slate);position:relative;border:0;background:none;width:100%;text-align:left}.nav-i:hover{background:var(--mluv-canvas);color:var(--mluv-ink)}.nav-i.on{background:var(--mluv-red-50);color:var(--mluv-red-600)}.nav-i .lucide{width:20px;height:20px;flex:none}.nav-i .lbl{white-space:nowrap}.nav-i .badge{margin-left:auto;background:var(--mluv-red-600);color:#fff;font-size:11px;font-weight:800;border-radius:var(--r-pill);min-width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0 6px}.lay-mid .nav-i,.lay-narrow .nav-i{justify-content:center;padding:11px 0;width:46px;height:46px;gap:0}.lay-mid .nav-i .lbl,.lay-narrow .nav-i .lbl{display:none}.lay-mid .nav-i .badge,.lay-narrow .nav-i .badge{position:absolute;top:5px;right:5px;margin:0;min-width:17px;height:17px;font-size:10px}.sb .sb-sec{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-faint);padding:14px 13px 6px}.lay-mid .sb .sb-sec,.lay-narrow .sb .sb-sec{display:none}.sb .sb-div{height:1px;background:var(--mluv-line-soft);margin:10px 6px}.sb-foot{margin-top:auto;display:flex;align-items:center;gap:11px;padding:12px 10px 4px;border-top:1px solid var(--mluv-line-soft);cursor:pointer}.sb-foot .av{width:36px;height:36px;border-radius:50%;background:var(--mluv-red-600);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex:none}.sb-foot .who .nm{font-weight:700;font-size:14px;line-height:1.15}.sb-foot .who .lv{color:var(--mluv-muted);font-size:12px}.lay-mid .sb-foot .who,.lay-narrow .sb-foot .who{display:none}.lay-mid .sb-foot,.lay-narrow .sb-foot{justify-content:center;padding:12px 0 4px}.sb-teacher{margin-top:8px;display:flex;align-items:center;gap:9px;background:linear-gradient(135deg,#243a6e,#2452b5);color:#fff;border:0;border-radius:var(--r-md);padding:11px 12px;width:100%;font-weight:700;font-size:13px}.sb-teacher.on{background:linear-gradient(135deg,#1c6b3e,#2e9e5b)}.sb-teacher .lucide{width:18px;height:18px;flex:none}.sb-teacher .lbl{flex:1;text-align:left;white-space:nowrap}.lay-mid .sb-teacher .lbl,.lay-narrow .sb-teacher .lbl{display:none}.lay-mid .sb-teacher,.lay-narrow .sb-teacher{justify-content:center;padding:11px 0}.content{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.page{width:100%;max-width:1120px;margin:0 auto;padding:34px 44px 80px}.lay-mid .page{padding:28px 32px 70px}.lay-narrow .page{padding:22px 20px 64px}.phead{display:flex;align-items:flex-end;gap:18px;margin-bottom:26px}.phead>div:first-child{flex:1 1 auto;min-width:0}.phead .right{flex:none}.phead .h1{font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:-.02em;margin:0;line-height:1.05}.lay-narrow .phead .h1{font-size:25px}.phead .sub{color:var(--mluv-muted);font-size:14.5px;margin-top:5px}.phead .right{margin-left:auto;display:flex;align-items:center;gap:12px}.streak{display:flex;align-items:center;gap:7px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:8px 14px;font-weight:800;font-size:14px;white-space:nowrap}.streak .lucide{width:17px;height:17px;color:var(--mluv-orange)}.btn{font-weight:700;font-size:14.5px;border-radius:var(--r-sm);padding:11px 20px;border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn .lucide{width:17px;height:17px}.btn-primary{background:var(--mluv-red-600);color:#fff}.btn-primary:hover{background:var(--mluv-red-700)}.btn-blue{background:var(--mluv-blue-600);color:#fff}.btn-blue:hover{background:var(--mluv-blue-700)}.btn-green{background:var(--mluv-green);color:#fff}.btn-ghost{background:var(--mluv-paper);color:var(--mluv-slate);border-color:var(--mluv-line)}.btn-ghost:hover{border-color:var(--mluv-faint);color:var(--mluv-ink)}.btn-ai{background:linear-gradient(90deg,#7a3e8e,#e03127);color:#fff}.btn:disabled{background:var(--mluv-cream);color:var(--mluv-muted);cursor:not-allowed;border-color:var(--mluv-line)}.btn-sm{padding:8px 14px;font-size:13px}.lvtag{border-radius:var(--r-pill);color:#fff;font-family:var(--font-display);font-weight:800;font-size:12px;padding:3px 10px;display:inline-block;letter-spacing:.01em}.gdot{width:11px;height:11px;border-radius:50%;flex:none;display:inline-block}.gtag{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);font-weight:700;font-size:12px;padding:4px 11px;color:#fff}.muted{color:var(--mluv-muted)}.hgrid{display:grid;grid-template-columns:1.55fr 1fr;gap:22px;align-items:start}.lay-narrow .hgrid{grid-template-columns:1fr}.col{display:flex;flex-direction:column;gap:18px}.continue{display:flex;align-items:center;gap:20px;background:var(--mluv-ink);border-radius:var(--r-xl);padding:24px 26px;color:#fff}.continue .play{width:54px;height:54px;border-radius:15px;background:var(--mluv-red-600);display:flex;align-items:center;justify-content:center;flex:none}.continue .ct{flex:1;min-width:0}.continue .ct .k{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#ffffff80}.continue h3{font-family:var(--font-display);font-weight:800;font-size:21px;margin:3px 0 0;letter-spacing:-.01em}.continue p{margin:4px 0 0;color:#c9c9d0;font-size:13.5px}.continue .arr{margin-left:8px;flex:none;color:#ffffff8c}.reviewcard{display:flex;align-items:center;gap:16px;background:var(--mluv-blue-700);border-radius:var(--r-xl);padding:22px 24px;color:#fff;cursor:pointer}.reviewcard .n{font-family:var(--font-display);font-weight:800;font-size:40px;line-height:1;letter-spacing:-.02em}.reviewcard .tx{flex:1}.reviewcard .tx .t{font-family:var(--font-display);font-weight:800;font-size:18px}.reviewcard .tx .d{font-size:13px;color:#ffffffc7;margin-top:2px}.card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}.card.pad{padding:20px 22px}.cardttl{font-family:var(--font-display);font-weight:800;font-size:16px;margin:0 0 2px;display:flex;align-items:center;gap:9px}.sec-title{font-family:var(--font-display);font-weight:800;font-size:18px;margin:30px 0 14px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.sec-title .lk{font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--mluv-muted)}.path{display:flex;flex-direction:column;gap:10px}.unit{display:flex;align-items:center;gap:15px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px;box-shadow:var(--sh-xs);text-align:left;width:100%}.unit:hover:not(.locked){border-color:var(--mluv-faint);transform:translateY(-1px);box-shadow:var(--sh-sm);transition:.14s}.unit.locked{opacity:.55}.unit .num{width:42px;height:42px;border-radius:12px;color:#fff;font-family:var(--font-display);font-weight:800;font-size:17px;display:flex;align-items:center;justify-content:center;flex:none}.unit .body{flex:1;min-width:0}.unit .body .ti{font-family:var(--font-display);font-weight:800;font-size:16px;line-height:1.15}.unit .body .en{font-size:13px;color:var(--mluv-muted);margin-top:2px}.unit .meta{display:flex;align-items:center;gap:12px;flex:none}.unit .duebadge{font-size:11.5px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:var(--r-pill);padding:3px 9px}.unit .prog{width:78px;flex:none}.unit .prog .tk{height:6px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.unit .prog .tk .fl{height:100%;background:var(--mluv-green);border-radius:99px}.unit .prog .pl{font-size:11px;color:var(--mluv-muted);font-weight:700;text-align:right;margin-top:3px}.goalw .top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.goalw .top .lab{font-weight:700;font-size:14px}.goalw .top .xp{font-size:13px;color:var(--mluv-muted);font-weight:700;font-variant-numeric:tabular-nums}.track{height:9px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.track .fl{height:100%;background:var(--mluv-yellow);border-radius:99px}.statrow{display:flex;gap:10px;margin-top:14px}.statrow .b{flex:1;background:var(--mluv-cream);border-radius:var(--r-sm);padding:11px 12px;text-align:center}.statrow .b .n{font-family:var(--font-display);font-weight:800;font-size:20px;line-height:1}.statrow .b .l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-top:5px}.miniclass{display:flex;align-items:center;gap:12px}.miniclass .ic{width:40px;height:40px;border-radius:11px;background:var(--mluv-blue-50);color:var(--mluv-blue-700);display:flex;align-items:center;justify-content:center;flex:none}.miniclass .tt{flex:1;min-width:0}.miniclass .tt .a{font-weight:700;font-size:14px}.miniclass .tt .b{font-size:12px;color:var(--mluv-muted)}.backlink{display:inline-flex;align-items:center;gap:6px;color:var(--mluv-red-600);font-weight:700;font-size:14px;border:0;background:none;padding:4px 0;margin-bottom:8px;white-space:nowrap}.backlink .lucide{width:17px;height:17px}.lesplit{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}.lay-narrow .lesplit{grid-template-columns:1fr}.app:not(.lay-narrow) .clb-info{grid-column:1;grid-row:1}.app:not(.lay-narrow) .clb-side{grid-column:2;grid-row:1}.app:not(.lay-narrow) .clb-board{grid-column:1 / -1;grid-row:2}.app:not(.lay-narrow) .clb-hw{grid-column:1 / -1;grid-row:3}.matwrap{max-width:100%}.app:not(.lay-narrow) .matcols{max-width:640px}.seg{display:inline-flex;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:4px;gap:3px;margin:6px 0 20px}.seg button{border:0;background:none;font-weight:700;font-size:14px;color:var(--mluv-slate);padding:8px 20px;border-radius:var(--r-pill)}.seg button.on{background:var(--mluv-paper);color:var(--mluv-ink);box-shadow:var(--sh-xs)}.unitlist{display:flex;flex-direction:column;gap:11px}.drow{display:flex;align-items:center;gap:14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px;box-shadow:var(--sh-xs);text-align:left;width:100%}.drow:hover{border-color:var(--mluv-faint);box-shadow:var(--sh-sm);transition:.14s}.drow .ring{width:42px;height:42px;flex:none;position:relative;display:flex;align-items:center;justify-content:center}.drow .ring .pct{font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.drow .b{flex:1;min-width:0}.drow .b .t{font-family:var(--font-display);font-weight:800;font-size:15.5px}.drow .b .d{font-size:13px;color:var(--mluv-muted);margin-top:2px}.drow .b .src{font-size:11.5px;color:var(--mluv-blue-600);font-weight:700;margin-top:4px}.drow .go{flex:none;color:var(--mluv-faint)}.grpcat{font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted);margin:18px 0 9px}.grow{display:flex;align-items:center;gap:13px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;margin-bottom:9px;text-align:left;width:100%}.grow:hover{border-color:var(--mluv-faint)}.grow .ck{width:24px;height:24px;border-radius:50%;border:2px solid var(--mluv-line);display:flex;align-items:center;justify-content:center;flex:none}.grow .ck.read{background:var(--mluv-green);border-color:var(--mluv-green)}.grow .b{flex:1}.grow .b .t{font-weight:700;font-size:14.5px}.grow .b .cs{font-size:12.5px;color:var(--mluv-muted)}.grow .tour{font-size:11px;font-weight:800;color:var(--mluv-plum);background:#f3e9f6;border-radius:var(--r-pill);padding:3px 9px;flex:none}.lesstate{background:var(--mluv-ink);border-radius:var(--r-lg);padding:18px;color:#fff}.lesstate .lab{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffffff80}.lesstate .lv{font-family:var(--font-display);font-weight:800;font-size:22px;margin-top:6px;display:flex;align-items:center;gap:10px}.barrow{margin-top:14px}.barrow .l{display:flex;justify-content:space-between;font-size:12.5px;margin-bottom:6px;color:var(--mluv-slate)}.barrow .l b{font-variant-numeric:tabular-nums}.barrow .tk{height:7px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.barrow .tk .fl{height:100%;border-radius:99px}.drawer{border:1px solid var(--mluv-blue-100);border-radius:var(--r-md);overflow:hidden;margin-bottom:11px;background:var(--mluv-blue-50)}.drawer .dh{display:flex;align-items:center;gap:11px;padding:13px 15px;width:100%;border:0;background:none;text-align:left}.drawer .dh .ic{width:34px;height:34px;border-radius:10px;background:var(--mluv-blue-600);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.drawer .dh .t{flex:1;font-weight:700;font-size:14.5px}.drawer .dh .t .s{font-size:12px;color:var(--mluv-muted);font-weight:600}.drawer .dbody{padding:0 15px 15px;font-size:14px;line-height:1.6;color:var(--mluv-ink)}.drawer .dbody .vrow{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--mluv-blue-100)}.drawer .dbody .vrow .cz{font-weight:700}.drawer .dbody .vrow .en{color:var(--mluv-muted);font-size:13px}.drawer .dbody .vrow .add{margin-left:auto;border:1.5px solid var(--mluv-blue-500);background:var(--mluv-paper);color:var(--mluv-blue-700);border-radius:var(--r-pill);font-weight:800;font-size:11.5px;padding:5px 11px}.drawer .dbody .vrow .add.on{border-color:var(--mluv-green);background:var(--mluv-success-soft);color:#1c6b3e}.runner{max-width:680px;margin:0 auto;width:100%}.runtop{display:flex;align-items:center;gap:16px;margin-bottom:30px}.runtop .x{width:38px;height:38px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;color:var(--mluv-slate);flex:none}.pbar{flex:1;height:10px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.pbar .fl{height:100%;background:var(--mluv-green);border-radius:99px;transition:width .35s ease}.runtop .ct{font-weight:800;font-size:13px;color:var(--mluv-muted);font-variant-numeric:tabular-nums;flex:none}.qhint{color:var(--mluv-muted);font-size:15px;font-weight:600}.qprompt{font-family:var(--font-display);font-weight:800;font-size:32px;letter-spacing:-.01em;margin:10px 0 28px;line-height:1.25}.opt{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--mluv-paper);border:2px solid var(--mluv-line);border-radius:var(--r-md);padding:17px 18px;margin-bottom:12px;font-size:17px;font-weight:600;transition:.12s}.opt:hover{border-color:var(--mluv-faint)}.opt.sel{border-color:var(--mluv-blue-500);background:var(--mluv-blue-50)}.opt.ok{border-color:var(--mluv-success);background:var(--mluv-success-soft);color:#1c6b3e}.opt.no{border-color:var(--mluv-error);background:var(--mluv-error-soft);color:#9e231b}.opt .mk{margin-left:auto;font-weight:800}.feedback{border-radius:var(--r-md);padding:17px 18px;margin-top:8px;font-size:14.5px;line-height:1.55;display:flex;gap:11px;align-items:flex-start}.feedback.ok{background:var(--mluv-success-soft);color:#1c6b3e}.feedback.no{background:var(--mluv-error-soft);color:#9e231b}.feedback b{font-weight:800}.runfoot{display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:12px}.cloze{font-size:21px;line-height:2.1;font-weight:600}.cloze .slot{display:inline-flex;align-items:center;justify-content:center;min-width:84px;height:38px;border-bottom:3px solid var(--mluv-blue-500);margin:0 4px;color:var(--mluv-blue-700);font-weight:800;vertical-align:middle;cursor:pointer;background:var(--mluv-blue-50);border-radius:6px 6px 0 0;padding:0 8px}.cloze .slot.empty{color:var(--mluv-faint);border-bottom-color:var(--mluv-line);background:transparent}.bank{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.bank .w{border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:10px 18px;font-weight:700;font-size:16px}.bank .w:hover{border-color:var(--mluv-blue-500);color:var(--mluv-blue-700)}.bank .w.used{opacity:.35;pointer-events:none}.done{max-width:520px;margin:30px auto;text-align:center;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);padding:46px 40px;box-shadow:var(--sh-sm)}.done .ring{width:120px;height:120px;margin:0 auto 8px}.done .big{font-family:var(--font-display);font-weight:800;font-size:46px;color:var(--mluv-green);letter-spacing:-.02em}.done h2{font-family:var(--font-display);font-weight:800;font-size:26px;margin:8px 0 6px}.done p{color:var(--mluv-muted);font-size:14.5px;margin:0 0 24px}.revstage{max-width:620px;margin:0 auto;width:100%}.revtop{display:flex;align-items:center;gap:14px;margin-bottom:8px}.revtop .acc{margin-left:auto;font-weight:800;font-size:14px;color:var(--mluv-slate)}.revcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);box-shadow:var(--sh-sm);padding:40px 36px;text-align:center;margin-top:22px}.revcard .dir{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted)}.revcard .word{font-family:var(--font-display);font-weight:800;font-size:44px;letter-spacing:-.01em;margin:10px 0 4px}.revcard .gloss{font-size:14px;color:var(--mluv-muted)}.revinput{width:100%;box-sizing:border-box;font-size:20px;text-align:center;padding:16px;border:2px solid var(--mluv-line);border-radius:var(--r-md);margin-top:26px;font-weight:600}.revinput:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.verdict{border-radius:var(--r-md);padding:18px 20px;margin-top:18px;text-align:left}.verdict.ok{background:var(--mluv-success-soft)}.verdict.no{background:var(--mluv-error-soft)}.verdict .vh{display:flex;align-items:center;gap:9px;font-weight:800;font-size:15px}.verdict.ok .vh{color:#1c6b3e}.verdict.no .vh{color:#9e231b}.verdict .ans{font-size:15px;margin-top:8px}.verdict .ans b{font-weight:800}.verdict .note{font-size:13.5px;color:var(--mluv-slate);margin-top:6px;line-height:1.5}.fsrs{font-size:12.5px;color:var(--mluv-muted);margin-top:10px;display:flex;align-items:center;gap:6px}.askbtn{margin-top:12px;border:1px dashed var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-sm);padding:11px;width:100%;font-weight:700;font-size:13.5px;display:flex;align-items:center;justify-content:center;gap:8px}.chatq{margin-top:12px;display:flex;flex-direction:column;gap:10px}.bubble{border-radius:var(--r-md);padding:12px 15px;font-size:14px;line-height:1.5;max-width:85%}.bubble.me{background:var(--mluv-blue-600);color:#fff;align-self:flex-end}.bubble.ai{background:var(--mluv-cream);color:var(--mluv-ink);align-self:flex-start}.emptyst{text-align:center;padding:70px 30px;max-width:460px;margin:0 auto}.emptyst .orb{width:80px;height:80px;border-radius:24px;background:var(--mluv-success-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.emptyst h2{font-family:var(--font-display);font-weight:800;font-size:24px;margin:0 0 8px}.emptyst p{color:var(--mluv-muted);font-size:15px;line-height:1.55;margin:0 0 22px}.bankgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}.banktile{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-xs);text-align:left}.banktile:hover{transform:translateY(-2px);box-shadow:var(--sh-md);transition:.14s}.banktile .ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:13px}.banktile h4{font-family:var(--font-display);font-weight:800;font-size:16px;margin:0}.banktile .c{font-size:12.5px;color:var(--mluv-muted);font-weight:700;margin-top:5px}.vtable{width:100%;border-collapse:collapse;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);overflow:hidden}.vtable th{text-align:left;font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);padding:13px 16px;background:var(--mluv-cream);border-bottom:1px solid var(--mluv-line)}.vtable td{padding:13px 16px;border-bottom:1px solid var(--mluv-line-soft);font-size:15px}.vtable tr:last-child td{border-bottom:0}.vtable .cz{font-weight:700}.vtable .gcell{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:12.5px}.gbadge{font-family:var(--font-mono);font-weight:700;font-size:11px;color:#fff;border-radius:5px;padding:2px 7px}.concept{display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start}.lay-narrow .concept{grid-template-columns:1fr}.prose{font-size:15.5px;line-height:1.7;color:var(--mluv-ink)}.prose h2{font-family:var(--font-display);font-weight:800;font-size:19px;margin:24px 0 8px;letter-spacing:-.01em}.prose h2:first-child{margin-top:0}.prose p{margin:0 0 12px}.prose code{background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:5px;padding:1px 6px;font-family:var(--font-mono);font-size:13.5px;color:var(--mluv-red-700)}.prose ul{margin:0 0 12px;padding-left:20px}.prose li{margin:5px 0}.ptable-wrap{overflow-x:auto;margin:6px 0 18px}.ptable{width:100%;border-collapse:collapse;border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow:hidden}.ptable th{background:var(--mluv-ink);color:#fff;font-size:12.5px;font-weight:700;padding:10px 13px;text-align:left}.ptable td{padding:10px 13px;border-bottom:1px solid var(--mluv-line-soft);font-size:14.5px}.ptable td:first-child{font-weight:800;color:var(--mluv-muted);font-size:12.5px}.ptable .cz{font-weight:700;font-family:var(--font-display)}.exrow{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--mluv-line-soft)}.exrow .cs{font-weight:700;font-size:15px}.exrow .en{color:var(--mluv-muted);font-size:14px}.tipcard{background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px 18px}.tipcard .th{font-weight:800;font-size:13px;display:flex;align-items:center;gap:8px;margin-bottom:10px}.tipcard ul{margin:0;padding-left:18px}.tipcard li{font-size:13.5px;line-height:1.5;margin:7px 0}.ringsvg{transform:rotate(-90deg)}.askbox{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-xs);padding:16px}.askinput{width:100%;box-sizing:border-box;border:0;resize:vertical;font-family:var(--font-sans);font-size:16px;line-height:1.55;color:var(--mluv-ink);background:transparent;min-height:78px}.askinput:focus{outline:none}.askfoot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--mluv-line-soft);padding-top:12px;margin-top:6px}.askchip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);padding:9px 15px;font-weight:600;font-size:13.5px;text-align:left}.askchip:hover{border-color:var(--mluv-plum);color:var(--mluv-ink)}.askchip.rel{border-color:var(--mluv-blue-100);background:var(--mluv-blue-50);color:var(--mluv-blue-700);font-weight:700}.askchip.rel .ll{background:var(--mluv-blue-600);color:#fff;border-radius:var(--r-pill);font-size:10.5px;font-weight:800;padding:2px 7px;margin-left:7px}.askanswer{margin-top:20px}.askanswer.flush{margin-top:0}.askbody{font-size:15.5px;line-height:1.7;color:var(--mluv-ink)}.askbody p{margin:0 0 12px}.askdisc{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mluv-muted);background:var(--mluv-cream);border-radius:var(--r-sm);padding:11px 13px;margin-top:18px;line-height:1.4}.trsplit{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.trsplit.ask{grid-template-columns:minmax(300px,420px) minmax(0,1fr)}.lay-narrow .trsplit{grid-template-columns:1fr}.trrow{display:flex;align-items:center;gap:12px;margin-bottom:4px}.trlbl{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);min-width:84px}.trsel{flex:1;font-family:var(--font-sans);font-size:14.5px;font-weight:600;padding:10px 12px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink)}.trinput{width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:16px;line-height:1.55;padding:13px 14px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-canvas);color:var(--mluv-ink);resize:vertical;margin-top:12px}.trinput:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.trtoggles{display:flex;gap:6px;flex-wrap:wrap}.trtog{display:inline-flex;align-items:center;gap:4px;line-height:1;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-weight:700;font-size:13px;padding:7px 13px}.trtog.on{border-color:var(--mluv-ink);background:var(--mluv-ink);color:#fff}.trtog-sym{display:inline-block;font-size:1.05em;line-height:1;transform:translateY(-1px)}.trdetected{font-size:13px;color:var(--mluv-muted);margin-bottom:12px}.trres{margin-bottom:12px}.trres-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.trres-lang{font-weight:800;font-size:14px}.trcopy{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-weight:700;font-size:12px;padding:5px 11px}.trcopy:hover{border-color:var(--mluv-faint);color:var(--mluv-ink)}.trres-text{font-size:17px;line-height:1.5;color:var(--mluv-ink)}.rwgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.lay-narrow .rwgrid{grid-template-columns:1fr}.rwstreak{text-align:center}.rwstreak .big{font-family:var(--font-display);font-weight:800;font-size:44px;letter-spacing:-.02em;line-height:1}.rwstreak .sub{color:var(--mluv-muted);font-size:13.5px;margin-top:4px}.rwcal{display:flex;justify-content:center;gap:10px;margin-top:16px}.rwcald{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--mluv-faint)}.rwcald.on{color:var(--mluv-red-600)}.rwcald.vac{color:var(--mluv-green)}.rwcald .dl{font-size:11px;font-weight:700;color:var(--mluv-muted)}.rwcald .dd{font-size:15px}.rwxp{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.rwxpc{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 8px;text-align:center;box-shadow:var(--sh-xs)}.rwxpc .n{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.01em;line-height:1}.rwxpc .l{font-size:10px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.02em;font-weight:700;margin-top:6px}.lay-mid .rwxp,.lay-narrow .rwxp{display:flex;flex-wrap:wrap;justify-content:center}.lay-mid .rwxp>*,.lay-narrow .rwxp>*{flex:0 0 calc(33.333% - 6px)}.rwshop{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--mluv-line-soft)}.rwshop:last-child{border-bottom:0}.rwshop .ic{font-size:24px;flex:none}.rwshop .mid{flex:1;min-width:0}.rwshop .mid .t{font-weight:700;font-size:14.5px;display:block}.rwshop .mid .d{font-size:12.5px;color:var(--mluv-muted);display:block}.rwshop .mid .own{font-size:11.5px;color:var(--mluv-green);font-weight:700;margin-top:2px;display:block}.rwshop .mid .own.on{color:var(--mluv-orange)}.rwbadges{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.rwbadge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;border:1px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);text-align:center;min-width:0}.rwbadge.locked{opacity:.4}.rwbadge .bi{font-size:26px}.rwbadge .bl{font-size:11px;font-weight:700;color:var(--mluv-slate);line-height:1.2;max-width:100%;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.rwevent{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.rwevent:last-child{border-bottom:0}.rwevent .ts{font-size:11.5px;color:var(--mluv-muted);font-weight:700;min-width:54px}.rwevent .ty{flex:1;font-size:13.5px;font-weight:600}.rwevent .xp{font-size:13px;font-weight:800;color:var(--mluv-green);font-variant-numeric:tabular-nums}.xp-toast-stack{position:fixed;top:84px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;z-index:100}.xp-toast-item{display:inline-flex;align-items:center;gap:8px;background:var(--mluv-ink);color:#fff;border-radius:var(--r-pill);padding:8px 16px;font-weight:800;font-size:15px;box-shadow:var(--sh-md);opacity:0;animation:xpfloat 1.7s cubic-bezier(.2,.7,.3,1) forwards}.xp-toast-star{color:var(--mluv-yellow);font-size:16px;animation:xpspin .6s ease-out}.xp-toast-amount{font-variant-numeric:tabular-nums}@keyframes xpfloat{0%{opacity:0;transform:translateY(14px) scale(.8)}18%{opacity:1;transform:translateY(0) scale(1.06)}30%{transform:scale(1)}72%{opacity:1;transform:translateY(-6px)}to{opacity:0;transform:translateY(-30px)}}@keyframes xpspin{0%{transform:rotate(-120deg) scale(.4)}to{transform:rotate(0) scale(1)}}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:1}.confetti-pc{position:absolute;top:-16px;display:block;opacity:0;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.3,.6,.5,1);animation-iteration-count:1;animation-fill-mode:forwards}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-10px) translate(0) rotate(0)}8%{opacity:1}to{opacity:0;transform:translateY(440px) translate(var(--drift)) rotate(var(--rot))}}@media (prefers-reduced-motion: reduce){.confetti{display:none}.xp-toast-item{animation-duration:.01s}}.uc-wrap{position:relative;max-width:520px;margin:10px auto;width:100%}.uc-card{position:relative;z-index:2;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);box-shadow:var(--sh-lg);padding:38px 36px;text-align:center}.uc-emoji{font-size:52px;animation:uc-pop .6s cubic-bezier(.2,1.4,.4,1)}@keyframes uc-pop{0%{transform:scale(0) rotate(-25deg)}70%{transform:scale(1.2) rotate(8deg)}to{transform:scale(1) rotate(0)}}.uc-h1{font-family:var(--font-display);font-weight:800;font-size:28px;letter-spacing:-.02em;margin:6px 0 2px}.uc-title{color:var(--mluv-muted);font-size:14.5px;margin:0 0 8px}.uc-rings{display:flex;align-items:center;justify-content:center;gap:26px;margin:18px 0 6px}.uc-ring{position:relative;width:128px;height:128px}.uc-ring-fl{transition:stroke-dashoffset 1s ease-out .15s}.uc-ring-lbl{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.uc-ring-lbl .n{font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:-.02em;color:var(--mluv-ink);line-height:1;font-variant-numeric:tabular-nums}.uc-ring-lbl .u{font-size:12px;font-weight:800;color:var(--mluv-muted);letter-spacing:.06em;margin-top:3px}.uc-coins{display:flex;flex-direction:column;align-items:center;justify-content:center}.uc-coins .n{font-family:var(--font-display);font-weight:800;font-size:30px;color:#b8901a;line-height:1}.uc-coins .l{font-size:12px;color:var(--mluv-muted);margin-top:6px}.uc-miles{list-style:none;margin:14px 0 4px;padding:0;display:flex;flex-direction:column;gap:1px;text-align:left}.uc-miles li{display:flex;align-items:center;justify-content:space-between;padding:9px 2px;border-bottom:1px solid var(--mluv-line-soft);opacity:0;animation:uc-rise .45s ease-out forwards}.uc-miles li:last-child{border-bottom:0}.uc-miles .ml{font-size:14px;font-weight:600;color:var(--mluv-slate)}.uc-miles .mx{font-size:13.5px;font-weight:800;color:var(--mluv-green);font-variant-numeric:tabular-nums}@keyframes uc-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.uc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 22px}.uc-stats>div{background:var(--mluv-cream);border-radius:var(--r-sm);padding:13px 8px}.uc-stats .n{display:block;font-family:var(--font-display);font-weight:800;font-size:20px;letter-spacing:-.01em}.uc-stats .l{display:block;font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-top:5px}.uc-cta{display:flex;gap:12px;justify-content:center}.drilltag{display:inline-flex;align-items:center;gap:7px;background:#f3e9f6;color:var(--mluv-plum);border-radius:var(--r-pill);font-weight:800;font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;padding:5px 12px;margin-bottom:18px}.produce-input{width:100%;box-sizing:border-box;font-size:22px;font-weight:600;text-align:center;padding:16px;border:2px solid var(--mluv-line);border-radius:var(--r-md);font-family:var(--font-sans);color:var(--mluv-ink)}.produce-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.fillsentence{font-size:26px;line-height:1.7;font-weight:600;display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:6px 0 4px}.fillgap{font-size:24px;font-weight:800;text-align:center;border:0;border-bottom:3px solid var(--mluv-blue-500);background:var(--mluv-blue-50);border-radius:6px 6px 0 0;padding:2px 8px;color:var(--mluv-blue-700);font-family:var(--font-sans)}.fillgap:focus{outline:none}.fillgap.ok{border-bottom-color:var(--mluv-success);background:var(--mluv-success-soft);color:#1c6b3e}.fillgap.no{border-bottom-color:var(--mluv-error);background:var(--mluv-error-soft);color:#9e231b}.production-input{width:100%;box-sizing:border-box;font-size:17px;line-height:1.6;padding:15px 16px;border:2px solid var(--mluv-line);border-radius:var(--r-md);font-family:var(--font-sans);color:var(--mluv-ink);resize:vertical}.production-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.notiflist{display:flex;flex-direction:column;gap:8px}.notifrow{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;transition:box-shadow .15s,transform .15s,border-color .15s}.notifrow:hover{box-shadow:var(--sh-sm);transform:translateY(-1px)}.notifrow.unread{border-color:var(--mluv-blue-100);background:linear-gradient(0deg,var(--mluv-paper),var(--mluv-paper)) padding-box,var(--mluv-blue-50)}.notifrow .nic{width:40px;height:40px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center}.notifrow .ntx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notifrow .nt{font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:8px}.notifrow .ndot{width:8px;height:8px;border-radius:50%;background:var(--mluv-red-600);flex:none}.notifrow .nb{font-size:13px;color:var(--mluv-slate);line-height:1.45;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notifrow .nw{font-size:11.5px;color:var(--mluv-muted);margin-top:2px;font-family:var(--font-mono)}.notifrow .naction{flex:none;font-size:12px;font-weight:800;color:#fff;background:var(--mluv-plum);border-radius:var(--r-pill);padding:5px 11px}.nav-i .badge.dot{min-width:8px;width:8px;height:8px;padding:0;border-radius:50%}.fileviewer{background:var(--mluv-paper);border-radius:var(--r-lg);width:min(620px,94vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--sh-lg)}.fv-sub{padding:2px 20px 0;font-size:12.5px;color:var(--mluv-muted);font-family:var(--font-mono)}.fv-stage{padding:18px 20px;overflow:auto;flex:1;background:var(--mluv-canvas)}.fv-doc{background:#fff;border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:26px 30px;box-shadow:var(--sh-xs);max-width:560px;margin:0 auto;min-height:240px}.fv-doc.gdoc{padding:0;overflow:hidden}.fv-doc.pdf{position:relative}.fv-pageh{font-family:var(--font-display);font-weight:800;font-size:18px;margin-bottom:16px}.fv-line{height:9px;border-radius:5px;background:var(--mluv-line);margin:10px 0}.fv-pagenav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px;color:var(--mluv-muted);font-size:13px;font-family:var(--font-mono)}.fv-photo{background:linear-gradient(135deg,#2b2b38,#454559);border-radius:var(--r-md);min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#fff;max-width:520px;margin:0 auto}.fv-photocap{font-family:var(--font-mono);font-size:12.5px;opacity:.9}.fv-photonote{font-size:13px;opacity:.7}.fv-vocab{background:#fff;border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:8px 16px;max-width:520px;margin:0 auto}.fv-vrow{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--mluv-line-soft);font-size:15px}.fv-vrow:last-child{border-bottom:0}.fv-vrow .gdot{width:11px;height:11px;border-radius:50%;flex:none}.fv-vrow .cz{font-weight:700}.fv-vrow .en{color:var(--mluv-slate);margin-left:auto}.fv-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 20px;border-top:1px solid var(--mluv-line);background:var(--mluv-paper)}.fv-foot .fv-meta{font-size:12.5px;color:var(--mluv-muted);display:inline-flex;align-items:center;gap:6px}.mdish{font-size:14.5px;line-height:1.6;color:var(--mluv-ink)}.mdish.mono{font-family:var(--font-mono);font-size:13px}.mdish.mono .md-h1,.mdish.mono .md-h2{font-family:var(--font-sans)}.md-h1{font-family:var(--font-display);font-weight:800;font-size:21px;margin:2px 0 10px}.md-h2{font-weight:800;font-size:15px;margin:16px 0 6px;color:var(--mluv-slate);text-transform:uppercase;letter-spacing:.04em}.md-p{margin:7px 0}.md-li{margin:5px 0 5px 4px;padding-left:16px;position:relative}.md-li:before{content:"";position:absolute;left:2px;top:9px;width:5px;height:5px;border-radius:50%;background:var(--mluv-red-600)}.gdoc-glyph{width:22px;height:22px;border-radius:5px;background:#1a73e8;display:inline-flex;align-items:center;justify-content:center;flex:none}.gdoc-bar{display:flex;align-items:center;gap:8px;background:#e8f0fe;color:#1a56c4;font-size:12px;font-weight:700;padding:10px 18px;border-bottom:1px solid #d2e3fc}.gdoc-bar .gdoc-glyph{width:18px;height:18px}.fv-doc.gdoc .mdish{padding:24px 28px}.sugrow{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid var(--mluv-line);border-radius:var(--r-sm);margin-bottom:8px;background:var(--mluv-paper)}.sugrow .gdot{width:11px;height:11px;border-radius:50%;flex:none}.sugrow .cz{font-weight:700;font-size:15px;flex:1}.sugrow .cz .en{font-weight:500;color:var(--mluv-slate);margin-left:10px}.sugrow.rej{opacity:.5}.sugrow.rej .cz{text-decoration:line-through}.suggrow{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--mluv-line);border-radius:var(--r-sm);margin-bottom:8px;background:var(--mluv-paper)}.suggrow .gtx{flex:1}.suggrow .gtx .t{font-weight:700;font-size:14.5px}.suggrow .gtx .cs{font-size:13px;color:var(--mluv-slate);margin-top:2px}.suggrow.rej{opacity:.5}.sugacts{display:flex;align-items:center;gap:7px;flex:none}.sugbtn{width:32px;height:32px;border-radius:9px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;color:var(--mluv-slate)}.sugbtn.ok.on{background:var(--mluv-success-soft);border-color:var(--mluv-green);color:#1c6b3e}.sugbtn.no:hover{background:var(--mluv-error-soft);border-color:var(--mluv-error);color:#9e231b}.goalpick{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.goalopt{flex:1;min-width:120px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:14px 12px;text-align:left;transition:.15s}.goalopt:hover{border-color:var(--mluv-blue-100)}.goalopt.on{border-color:var(--mluv-red-600);background:var(--mluv-red-50);box-shadow:0 0 0 2px var(--mluv-red-100) inset}.goalopt .gv{font-family:var(--font-display);font-weight:800;font-size:22px}.goalopt .gl{font-size:12.5px;color:var(--mluv-slate);margin-top:2px}.goalopt.on .gl{color:var(--mluv-red-700)}.chat-compose{display:flex;gap:10px;margin:0 0 14px}.gdoccard{border:1px solid #d2e3fc;background:linear-gradient(0deg,#fff,#fff) padding-box,#f5f9ff;border-radius:var(--r-md);padding:15px 16px;margin-bottom:16px;max-width:760px}.gd-top{display:flex;align-items:center;gap:13px}.gd-meta{flex:1;min-width:0}.gd-meta .gd-t{font-weight:700;font-size:15px}.gd-meta .gd-s{font-size:12.5px;color:var(--mluv-muted);margin-top:2px}.gd-actions{display:flex;align-items:center;gap:12px;margin-top:13px;padding-top:13px;border-top:1px solid #e1ecfd;flex-wrap:wrap}.gd-review{display:flex;align-items:center;gap:11px;width:100%;margin-top:13px;padding:12px 14px;border:0;border-radius:var(--r-sm);background:color-mix(in srgb,var(--mluv-plum) 8%,#fff);text-align:left}.gd-review:hover{background:color-mix(in srgb,var(--mluv-plum) 14%,#fff)}.gd-review .ic{width:30px;height:30px;border-radius:8px;background:var(--mluv-plum);display:flex;align-items:center;justify-content:center;flex:none}.gd-review .tx{flex:1;font-size:13.5px;color:var(--mluv-ink)}.upcard.gdoc-link{display:flex;align-items:center;justify-content:center;gap:9px}.gdoc-pill{margin-left:8px;font-size:11px;font-weight:800;color:#1a56c4;background:#e8f0fe;border-radius:var(--r-pill);padding:2px 8px;vertical-align:middle}.uploadbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:4px 0 16px;padding:12px 16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md)}.ub-stat{font-size:13.5px;color:var(--mluv-slate)}.ub-stat b{font-family:var(--font-display);font-size:17px;color:var(--mluv-ink);margin-right:3px}.ub-auto{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--mluv-muted)}.ub-auto.on{color:var(--mluv-plum)}.ub-link{border:0;background:none;color:var(--mluv-blue-600);font-weight:700;font-size:12.5px;text-decoration:underline;text-underline-offset:2px}.uday{margin-bottom:6px}.uday-h{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;padding:10px 2px;text-align:left}.uday-h .d{font-weight:800;font-size:14px}.uday-h .c{font-size:11.5px;font-weight:700;color:var(--mluv-muted);background:var(--mluv-line-soft);border-radius:var(--r-pill);padding:1px 8px}.ulist{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.urow{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 14px;cursor:pointer;transition:box-shadow .15s,transform .15s}.urow:hover{box-shadow:var(--sh-sm);transform:translateY(-1px)}.uic{width:40px;height:40px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center}.uic.big{width:52px;height:52px;border-radius:14px}.umid{min-width:0;width:200px;flex:none}.umid .un{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.umid .us{font-size:12px;color:var(--mluv-muted);font-family:var(--font-mono)}.utags{flex:1}.uind{display:flex;align-items:center;gap:6px;flex:none}.ubadge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;border-radius:var(--r-pill);padding:3px 9px}.ubadge.sug{background:color-mix(in srgb,var(--mluv-plum) 12%,#fff);color:var(--mluv-plum)}.ubadge.done{background:var(--mluv-success-soft);color:#1c6b3e}.ubadge.none{background:var(--mluv-line-soft);color:var(--mluv-muted)}.ubadge.shared{background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.utag-wrap{position:relative;display:inline-block}.utag{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:5px 10px;color:var(--mluv-slate)}.utag.uncat{color:var(--mluv-warning);border-color:#f0d9b0;background:var(--mluv-warning-soft)}.utag-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:280px;max-height:300px;overflow:auto;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:6px}.utag-sec{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);padding:8px 10px 4px}.utag-i{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;border-radius:var(--r-sm);padding:9px 10px;font-size:13px}.utag-i:hover{background:var(--mluv-canvas)}.utag-i.on{font-weight:700}.utag-i .check,.utag-i svg{margin-left:auto}.utag-i.clear{color:var(--mluv-muted);border-top:1px solid var(--mluv-line-soft);margin-top:4px;border-radius:0}.ud-head{display:flex;align-items:center;gap:15px;margin:8px 0 18px}.ud-meta{flex:1;min-width:0}.ud-meta h1{font-family:var(--font-display);font-weight:800;font-size:24px;margin:0}.ud-sub{font-size:13px;color:var(--mluv-muted);margin-top:3px}.ud-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;align-items:start}.lay-narrow .ud-grid{grid-template-columns:1fr}.ud-side{display:flex;flex-direction:column;gap:14px}.ud-sug{margin-top:22px}.usug{display:flex;align-items:center;gap:11px;padding:10px 13px;border:1px solid var(--mluv-line);border-radius:var(--r-sm);margin-bottom:8px;background:var(--mluv-paper)}.usug.off{opacity:.5}.usug .gdot{width:11px;height:11px;border-radius:50%;flex:none}.usug .cz{font-weight:700;font-size:15px;flex:1}.usug .cz .en{font-weight:500;color:var(--mluv-slate);margin-left:10px}.usug .gtx{flex:1}.usug .gtx .t{font-weight:700;font-size:14px}.usug .gtx .cs{font-size:12.5px;color:var(--mluv-slate);margin-top:1px}.usel{width:24px;height:24px;border-radius:7px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;flex:none}.usel.on{background:var(--mluv-green);border-color:var(--mluv-green)}.uedit{border:0;background:none;flex:none;padding:4px}.ued{display:flex;gap:6px;align-items:center;flex:1}.ued input{border:1.5px solid var(--mluv-line);border-radius:var(--r-xs);padding:6px 9px;font-size:14px;font-family:var(--font-sans);width:120px}.ued input:focus{outline:none;border-color:var(--mluv-blue-500)}.clsup{border:1px solid color-mix(in srgb,var(--mluv-plum) 22%,#fff);background:color-mix(in srgb,var(--mluv-plum) 5%,#fff);border-radius:var(--r-md);padding:14px;margin-bottom:16px;max-width:760px}.clsup-h{display:flex;align-items:center;gap:8px;font-weight:800;font-size:13.5px;margin-bottom:10px}.clsup-row{display:flex;align-items:center;gap:12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:10px 12px;margin-bottom:8px}.clsup-row:last-child{margin-bottom:0}.clsup-row .mid{flex:1;min-width:0}.clsup-row .mid .t{font-weight:700;font-size:13.5px}.clsup-row .mid .s{font-size:12px;color:var(--mluv-muted);display:block;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}.clsup-row .mid .sg{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--mluv-plum);font-weight:700;margin-top:3px}}@media (min-width: 768px){.tp{display:flex;height:100%;width:100%;overflow:hidden}.tp-list{flex:none;width:360px;border-right:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;flex-direction:column;overflow:hidden}.lay-mid .tp-list{width:288px}.tp-detail{flex:1;min-width:0;overflow-y:auto;background:var(--mluv-canvas)}.tp-listhead{padding:24px 22px 14px;border-bottom:1px solid var(--mluv-line-soft)}.tp-listhead h1{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.02em;margin:0}.tp-listhead .sub{color:var(--mluv-muted);font-size:13px;margin-top:3px}.tp-listscroll{flex:1;overflow-y:auto;padding:12px}.lay-narrow .tp-list{width:100%;border-right:0}.lay-narrow .tp.has-detail .tp-list{display:none}.lay-narrow .tp:not(.has-detail) .tp-detail{display:none}.cli{display:block;width:100%;text-align:left;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:14px 15px;margin-bottom:10px;box-shadow:var(--sh-xs)}.cli:hover{border-color:var(--mluv-faint)}.cli.on{border-color:var(--mluv-red-600);box-shadow:0 0 0 1px var(--mluv-red-600)}.cli .top{display:flex;align-items:center;gap:8px}.cli .nm{font-family:var(--font-display);font-weight:800;font-size:16px;flex:1;min-width:0;letter-spacing:-.01em}.cli .today{font-size:10px;font-weight:800;color:#fff;background:var(--mluv-green);border-radius:var(--r-pill);padding:3px 8px}.cli .lek{font-size:13px;color:var(--mluv-slate);margin-top:6px;font-weight:600}.cli .clibook{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mluv-muted);font-weight:600;margin-top:5px}.cli .clibook .fl{width:18px;height:18px;border-radius:5px;background:var(--mluv-cream);display:flex;align-items:center;justify-content:center;font-size:11px}.book-lock{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;color:var(--mluv-muted);background:var(--mluv-cream);border-radius:var(--r-pill);padding:2px 8px;text-transform:none;letter-spacing:0;margin-left:4px}.book-lock .lucide{width:11px;height:11px}.fieldnote{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mluv-muted);margin-top:8px;line-height:1.4}.fieldnote .lucide{flex:none}.bookselect{font-weight:600;cursor:pointer}.cli .meta{display:flex;gap:14px;margin-top:8px;font-size:12px;color:var(--mluv-muted)}.cli .meta .mi{display:flex;align-items:center;gap:5px}.cli .meta .mi .lucide{width:13px;height:13px}.cli .foot{display:flex;align-items:center;gap:9px;margin-top:11px;padding-top:10px;border-top:1px solid var(--mluv-line-soft)}.cli .avs{display:flex}.cli .avs .a{width:24px;height:24px;border-radius:50%;border:2px solid var(--mluv-paper);margin-left:-7px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:9px}.cli .avs .a:first-child{margin-left:0}.cli .pl{margin-left:auto;font-size:11.5px;font-weight:800;color:var(--mluv-slate);font-variant-numeric:tabular-nums}.tp-fab{position:absolute;left:0;bottom:0;width:360px;padding:14px;border-top:1px solid var(--mluv-line-soft);background:var(--mluv-paper)}.lay-mid .tp-fab{width:288px}.td-head{padding:28px 36px 0}.lay-narrow .td-head{padding:18px 20px 0}.td-eyebrow{display:flex;align-items:center;gap:9px;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted)}.td-head h1{font-family:var(--font-display);font-weight:800;font-size:28px;letter-spacing:-.02em;margin:10px 0 0}.td-meta{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:10px}.td-meta .mi{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--mluv-slate);font-weight:600}.td-meta .mi .lucide{width:15px;height:15px;color:var(--mluv-muted)}.td-body{padding:0 36px 60px}.lay-narrow .td-body{padding:0 20px 50px}.td-backbar{display:none}.lay-narrow .td-backbar{display:flex;align-items:center;gap:8px;padding:14px 20px 0}.curlek{display:flex;align-items:center;gap:16px;background:var(--mluv-ink);border-radius:var(--r-lg);padding:18px 20px;color:#fff;margin-top:20px}.curlek .km{width:50px;height:50px;border-radius:14px;background:var(--mluv-red-600);color:#fff;font-family:var(--font-display);font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center;flex:none}.curlek .tt{flex:1;min-width:0}.curlek .tt .lab,.curlek .tt .a,.curlek .tt .b{display:block}.curlek .tt .lab{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffffff80}.curlek .tt .a{font-family:var(--font-display);font-weight:800;font-size:18px;margin-top:3px}.curlek .tt .b{font-size:12.5px;color:#c9c9d0;margin-top:2px}.curlek .av{flex:none;width:160px}.curlek .av .l{display:flex;justify-content:space-between;font-size:12px;color:#c9c9d0;margin-bottom:6px}.curlek .av .l b{color:#fff}.curlek .av .tk{height:8px;background:#ffffff2e;border-radius:99px;overflow:hidden}.curlek .av .tk .fl{height:100%;background:var(--mluv-yellow);border-radius:99px}.lay-narrow .curlek,.lay-mid .curlek{flex-wrap:wrap}.lay-narrow .curlek .av,.lay-mid .curlek .av{width:100%}.sttable{display:flex;flex-direction:column;gap:9px}.strow{display:flex;align-items:center;gap:14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;box-shadow:var(--sh-xs);text-align:left;width:100%}.strow:hover{border-color:var(--mluv-faint);box-shadow:var(--sh-sm);transition:.14s}.av-c{width:40px;height:40px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex:none}.strow .nm{flex:1;min-width:0}.strow .nm .n{font-weight:700;font-size:15px;display:flex;align-items:center;gap:9px}.strow .nm .s{font-size:12.5px;color:var(--mluv-muted);margin-top:2px}.strow .pcol{width:150px;flex:none}.lay-mid .strow .pcol{width:108px}.lay-narrow .strow .pcol{display:none}.strow .pcol .tk{height:6px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.strow .pcol .l{display:flex;justify-content:space-between;font-size:11px;color:var(--mluv-muted);font-weight:700;margin-bottom:5px}.stat{display:inline-flex;align-items:center;gap:4px;border-radius:var(--r-pill);font-weight:800;font-size:10px;padding:3px 8px;flex:none}.stat .lucide{width:11px;height:11px}.stat.napred,.stat.ahead{background:var(--mluv-blue-50);color:var(--mluv-blue-700)}.stat.v_planu,.stat.on{background:var(--mluv-success-soft);color:#1c6b3e}.stat.pozadu,.stat.behind{background:var(--mluv-warning-soft);color:#9a5a12}.matgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.matcard{display:flex;align-items:center;gap:13px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 15px;box-shadow:var(--sh-xs)}.matcard .ic{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex:none}.matcard .mid{flex:1;min-width:0}.matcard .tt{font-weight:700;font-size:14.5px}.matcard .sub{font-size:12px;color:var(--mluv-muted);margin-top:2px}.matcard .badge{font-size:10px;font-weight:800;color:#1c6b3e;background:var(--mluv-success-soft);border-radius:var(--r-pill);padding:3px 8px;display:inline-flex;align-items:center;gap:4px;flex:none}.matcard .badge .lucide{width:12px;height:12px}.upcard{border:1.5px dashed var(--mluv-blue-500);background:var(--mluv-blue-50);color:var(--mluv-blue-700);border-radius:var(--r-md);padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-weight:800;font-size:14px;text-align:center}.upcard .lucide{width:24px;height:24px}.stdhead{display:flex;align-items:center;gap:16px}.stdhead .big{width:64px;height:64px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:25px;flex:none}.stdhead .nm{font-family:var(--font-display);font-weight:800;font-size:24px;letter-spacing:-.01em}.stdhead .sub{font-size:13px;color:var(--mluv-muted);margin-top:3px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.stgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin-top:22px}.lay-mid .stgrid,.lay-narrow .stgrid{grid-template-columns:repeat(3,1fr)}.stbox{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 12px;box-shadow:var(--sh-xs)}.stbox .n{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.01em;line-height:1}.stbox .n.bad{color:var(--mluv-red-600)}.stbox .n.good{color:var(--mluv-green)}.stbox .l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-top:6px}.std2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;align-items:start}.lay-narrow .std2{grid-template-columns:1fr}.brkrow{margin-bottom:13px}.brkrow .l{display:flex;justify-content:space-between;font-size:13.5px;font-weight:600;margin-bottom:6px}.brkrow .l .v{color:var(--mluv-muted);font-weight:800}.brkrow .tk{height:7px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.brkrow .tk .fl{height:100%;border-radius:99px}.strug{border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:12px 13px;margin-bottom:9px;background:var(--mluv-canvas)}.strug .top{display:flex;align-items:center;gap:8px}.strug .top .tt{flex:1;font-weight:700;font-size:13.5px}.strug .top .acc{font-weight:800;font-size:12px}.strug .dt{font-size:12.5px;color:var(--mluv-muted);margin-top:3px}.strug .tk{height:5px;background:var(--mluv-line);border-radius:99px;overflow:hidden;margin-top:8px}.strug .tk .fl{height:100%;border-radius:99px}.actrow{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.actrow:last-child{border-bottom:0}.actrow .dot{width:9px;height:9px;border-radius:50%;flex:none}.actrow .at{flex:1;font-size:13.5px;font-weight:600}.actrow .ar{font-size:12.5px;font-weight:800;color:var(--mluv-slate);font-variant-numeric:tabular-nums}.briefcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-sm);overflow:hidden;max-width:680px}.briefhead{background:linear-gradient(120deg,#3a1f44,#7a3e8e);color:#fff;padding:20px 22px}.briefhead .who{display:flex;align-items:center;gap:13px}.briefhead .big{width:46px;height:46px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;border:2px solid rgba(255,255,255,.4)}.briefhead .nm{font-family:var(--font-display);font-weight:800;font-size:19px}.briefhead .sb2{font-size:12px;color:#fffc;margin-top:1px}.briefhead .tag{display:inline-flex;align-items:center;gap:6px;margin-top:14px;background:#ffffff29;border-radius:var(--r-pill);padding:5px 12px;font-size:11.5px;font-weight:700}.briefbody{padding:20px 22px}.briefbody .bh{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-plum);margin:18px 0 7px}.briefbody .bh:first-child{margin-top:0}.briefbody p{font-size:14.5px;line-height:1.6;margin:0;color:var(--mluv-ink)}.briefbody ul{margin:0;padding-left:20px}.briefbody li{font-size:14px;line-height:1.55;margin:5px 0}.thinking{padding:80px 30px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:15px}.thinking .orb{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,#7a3e8e,#e03127);display:flex;align-items:center;justify-content:center;animation:tpulse 1.3s ease-in-out infinite}@keyframes tpulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.08);opacity:1}}.thinking .tx{font-family:var(--font-display);font-weight:800;font-size:18px}.thinking .sx{font-size:13.5px;color:var(--mluv-muted)}.flowwrap{max-width:680px}.attach{display:flex;align-items:center;gap:13px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 13px;margin-bottom:10px;box-shadow:var(--sh-xs)}.attach .th{width:48px;height:48px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;background:repeating-linear-gradient(135deg,#cfd8d8 0,#cfd8d8 8px,#c2cccc 8px,#c2cccc 16px)}.attach .mid{flex:1;min-width:0}.attach .tt{font-weight:700;font-size:14px}.attach .sub{font-size:12px;color:var(--mluv-muted);margin-top:1px}.attach .rm{border:0;background:none;color:var(--mluv-faint);padding:6px}.drop{display:flex;flex-direction:column;align-items:center;gap:7px;border:1.5px dashed var(--mluv-line);border-radius:var(--r-md);padding:26px;color:var(--mluv-muted);text-align:center}.drop .lucide{width:26px;height:26px;color:var(--mluv-faint)}.drop .tt{font-weight:800;font-size:14px;color:var(--mluv-slate)}.drop .sx{font-size:12px}.suglab{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-plum);margin:20px 0 9px}.suglab .lucide{width:15px;height:15px}.tarea{width:100%;box-sizing:border-box;min-height:180px;font-family:var(--font-sans);font-size:14.5px;line-height:1.6;padding:15px 16px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);color:var(--mluv-ink);resize:vertical}.tarea:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.edithint{font-size:12px;color:var(--mluv-muted);margin:7px 2px 0;display:flex;align-items:center;gap:6px}.edithint .lucide{width:13px;height:13px}.evrow{display:flex;align-items:center;gap:11px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:10px 12px;margin-bottom:8px}.evrow .cz{font-weight:700;font-size:14.5px}.evrow .en{font-size:12.5px;color:var(--mluv-muted);margin-left:6px}.evrow .x{margin-left:auto;border:0;background:none;color:var(--mluv-faint);padding:4px}.doneitem{display:flex;align-items:center;gap:11px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;margin-bottom:9px}.doneitem .lucide{width:19px;height:19px;color:var(--mluv-green);flex:none}.doneitem .tt{font-size:14px;font-weight:600;line-height:1.4}.doneitem .tt b{color:var(--mluv-ink)}.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:680px}.lay-narrow .fgrid{grid-template-columns:1fr}.fld .fl{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);margin-bottom:8px}.fld.full{grid-column:1/-1}.input{width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:15px;padding:12px 14px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink)}.input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-weight:800;font-size:13.5px;padding:9px 15px}.chip.on{border-color:var(--mluv-ink);background:var(--mluv-ink);color:#fff}.chip.lv.on{border-color:transparent}.today2{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.lay-narrow .today2{grid-template-columns:1fr}.tcard{display:flex;gap:14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px 17px;box-shadow:var(--sh-xs);text-align:left;width:100%;margin-bottom:12px}.tcard.now{border-color:var(--mluv-red-600);box-shadow:0 0 0 1px var(--mluv-red-600),var(--sh-sm)}.tcard .time{flex:none;text-align:center;padding-right:14px;border-right:1px solid var(--mluv-line-soft)}.tcard .time .h{font-family:var(--font-display);font-weight:800;font-size:20px}.tcard .time .d{font-size:11px;color:var(--mluv-muted)}.tcard .info{flex:1;min-width:0}.tcard .info .top{display:flex;align-items:center;gap:8px}.tcard .info .cn{font-family:var(--font-display);font-weight:800;font-size:16px;flex:1;min-width:0}.tcard .info .nowtag{font-size:9.5px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:var(--r-pill);padding:3px 8px}.tcard .info .sub{font-size:13px;color:var(--mluv-slate);margin-top:7px;display:flex;flex-wrap:wrap;gap:5px 14px}.tcard .info .sub .mi{display:flex;align-items:center;gap:5px}.tcard .info .sub .mi .lucide{width:14px;height:14px;color:var(--mluv-muted)}.curlek-edit{display:inline-flex;align-items:center;gap:5px;background:#ffffff29;color:#fff;border:0;border-radius:var(--r-pill);font-family:var(--font-sans);font-weight:700;font-size:10.5px;padding:3px 9px;margin-left:9px;text-transform:none;letter-spacing:0;vertical-align:middle}.curlek-edit .lucide{width:12px;height:12px}.curlek-edrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;align-items:center}.curlek-sel{font-family:var(--font-sans);font-size:14px;font-weight:600;padding:8px 11px;border-radius:var(--r-sm);border:0;background:#fffffff2;color:var(--mluv-ink);max-width:240px}.curlek-edrow .btn-sm .lucide{width:14px;height:14px}.classbrief-cta{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:1px solid var(--mluv-blue-100);background:linear-gradient(100deg,var(--mluv-blue-50),#fff);border-radius:var(--r-md);padding:14px 16px;margin-bottom:6px}.classbrief-cta:hover{border-color:var(--mluv-blue-500)}.classbrief-cta .ic{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#7a3e8e,#2452b5);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.classbrief-cta .ic .lucide{width:21px;height:21px}.classbrief-cta .tx{flex:1;min-width:0}.classbrief-cta .tx .t{font-family:var(--font-display);font-weight:800;font-size:15.5px}.classbrief-cta .tx .d{font-size:12.5px;color:var(--mluv-muted);margin-top:2px;line-height:1.35}.classbrief-cta>.lucide{width:18px;height:18px;color:var(--mluv-blue-600);flex:none}.mp-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#14141c9e;display:flex;align-items:center;justify-content:center;z-index:60;padding:30px}.mp-modal{background:var(--mluv-paper);border-radius:var(--r-lg);box-shadow:var(--sh-lg);width:100%;max-width:520px;max-height:100%;display:flex;flex-direction:column;overflow:hidden}.mp-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--mluv-line)}.mp-ttl{flex:1;display:flex;align-items:center;gap:9px;font-weight:700;font-size:14.5px;min-width:0}.mp-ttl span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-x{width:32px;height:32px;border-radius:50%;border:0;background:var(--mluv-cream);display:flex;align-items:center;justify-content:center;flex:none}.mp-stage{padding:22px;background:var(--mluv-canvas);overflow:auto;display:flex;justify-content:center}.mp-photo{width:100%;max-width:400px;aspect-ratio:4/3;border-radius:8px;padding:24px 22px;display:flex;flex-direction:column;gap:13px;box-shadow:var(--sh-md);transform:rotate(-.6deg)}.mp-photo.board{background:#16433a;color:#eafff4;font-family:var(--font-mono)}.mp-photo.note{background:#fffdf5;color:#2a2a33;background-image:repeating-linear-gradient(transparent,transparent 30px,rgba(0,0,0,.06) 30px,rgba(0,0,0,.06) 31px)}.mp-hand{font-size:17px;line-height:1.4;font-weight:600;opacity:.94}.mp-photo.note .mp-hand{font-style:italic}.mp-pdf{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:12px}.mp-pdfpage{width:100%;background:#fff;border:1px solid var(--mluv-line);border-radius:6px;box-shadow:var(--sh-md);padding:26px 24px;aspect-ratio:3/4;display:flex;flex-direction:column;gap:11px}.mp-pdfh{font-family:var(--font-display);font-weight:800;font-size:17px;margin-bottom:6px;color:var(--mluv-ink)}.mp-pdfline{height:9px;background:var(--mluv-line);border-radius:99px}.mp-pdfgap{height:14px}.mp-pagenav{display:flex;align-items:center;gap:14px;color:var(--mluv-muted);font-size:13px;font-weight:700}.mp-foot{padding:13px 16px;border-top:1px solid var(--mluv-line);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mp-meta{font-size:12.5px;color:var(--mluv-muted)}.mp-ainote{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--mluv-plum)}.attach{cursor:pointer;width:100%;text-align:left}}.curlek-edit{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto}.curlek-step{display:inline-flex;align-items:center;gap:2px;background:#ffffff1a;border-radius:var(--r-pill);padding:3px}.curlek-step .cs{width:30px;height:30px;border-radius:50%;border:0;background:#ffffff24;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.curlek-step .cs:disabled{opacity:.35;cursor:default}.curlek-step .cv{color:#fff;font-weight:800;font-size:14px;padding:0 10px;min-width:70px;text-align:center;white-space:nowrap}@media (max-width: 767.98px){.m-app{height:100%;min-height:100dvh;display:flex;flex-direction:column;background:var(--mluv-canvas);font-family:var(--font-sans);color:var(--mluv-ink);position:relative}.m-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.m-scroll::-webkit-scrollbar{display:none}.m-pad{padding:0 18px}.m-app *{box-sizing:border-box}.m-head{padding:58px 18px 14px;display:flex;align-items:center;gap:12px}.m-head .hi{flex:1}.m-head .hi .g{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.01em;line-height:1.1}.m-head .hi .s{font-size:13px;color:var(--mluv-muted);margin-top:2px}.m-head-brand .hi{display:flex;align-items:center;gap:10px}.m-head-brand .hi .hitext{flex:1;min-width:0}.m-noteact{flex:none;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:var(--r-pill);border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);font-weight:700;font-size:13px;white-space:nowrap}.m-noteact:active{transform:scale(.97)}.m-chip{display:flex;align-items:center;gap:5px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:7px 12px;font-weight:800;font-size:14px}.m-avatar{width:40px;height:40px;border-radius:50%;background:var(--mluv-blue-600);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.m-goal{margin:6px 18px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:16px 18px;box-shadow:var(--sh-xs)}.m-goal .top{display:flex;justify-content:space-between;align-items:baseline}.m-goal .lab{font-weight:700;font-size:14.5px}.m-goal .xp{font-family:var(--font-display);font-weight:800;font-size:14px;color:var(--mluv-muted)}.m-track{height:10px;background:var(--mluv-line);border-radius:99px;overflow:hidden;margin-top:10px}.m-track .fl{height:100%;background:var(--mluv-yellow);border-radius:99px}.m-cont{margin:16px 18px 0;width:calc(100% - 36px);box-sizing:border-box;border:0;font:inherit;cursor:pointer;text-align:left;background:var(--mluv-ink);border-radius:var(--r-lg);padding:18px;color:#fff;display:flex;align-items:center;gap:14px}.m-cont .play{width:48px;height:48px;border-radius:14px;background:var(--mluv-red-600);display:flex;align-items:center;justify-content:center;flex:none;color:#fff;font-size:18px}.m-cont .t{font-family:var(--font-display);font-weight:800;font-size:16px;line-height:1.15}.m-cont .d{font-size:12.5px;color:#c9c9d0;margin-top:3px}.m-sec{font-family:var(--font-display);font-weight:800;font-size:15px;margin:24px 18px 12px;letter-spacing:-.01em;display:flex;align-items:center;justify-content:space-between}.m-sec .lk{font-family:var(--font-sans);font-weight:700;font-size:12.5px;color:var(--mluv-red-600)}.m-unit{display:flex;align-items:center;gap:14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;margin:0 18px 10px;box-shadow:var(--sh-xs)}.m-unit .num{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:18px;flex:none;color:#fff}.m-unit .body{flex:1;min-width:0}.m-unit .ti{font-weight:700;font-size:15px}.m-unit .en{font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.m-unit.locked{opacity:.55}.m-unit .lvtag{border-radius:var(--r-pill);color:#fff;font-weight:800;font-size:10.5px;padding:3px 8px;font-family:var(--font-display)}.m-tabs{display:flex;background:var(--mluv-paper);border-top:1px solid var(--mluv-line);padding:9px 8px 30px}.m-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--mluv-muted);font-size:11px;font-weight:700;background:none;border:0;padding:5px 0}.m-tab.on{color:var(--mluv-red-600)}.m-tab .lucide{width:23px;height:23px}.m-tab-l{white-space:nowrap}.m-tab-dual{font-size:9.5px}.m-tab-2ic{display:flex;align-items:center;gap:2px;height:23px}.m-tab-2ic .lucide{width:18px;height:18px}.m-lhead{display:flex;align-items:center;gap:12px;padding:56px 18px 14px}.m-x{width:32px;height:32px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;color:var(--mluv-slate);flex:none}.m-pbar{flex:1;height:10px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.m-pbar .fl{height:100%;background:var(--mluv-green);border-radius:99px;transition:width .35s ease}.m-hearts{display:flex;align-items:center;gap:4px;color:var(--mluv-red-600);font-weight:800;font-size:14px}.m-qhint{font-size:14px;color:var(--mluv-muted);margin:14px 18px 0}.m-qprompt{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.01em;line-height:1.25;margin:8px 18px 22px}.m-opt{display:flex;align-items:center;gap:12px;width:calc(100% - 36px);margin:0 18px 11px;text-align:left;background:var(--mluv-paper);border:2px solid var(--mluv-line);border-radius:var(--r-md);padding:15px 16px;font-size:17px;font-weight:600;color:var(--mluv-ink)}.m-opt .gdot{width:12px;height:12px;border-radius:50%;flex:none}.m-opt.sel{border-color:var(--mluv-blue-500);background:var(--mluv-blue-50)}.m-opt.ok{border-color:var(--mluv-success);background:var(--mluv-success-soft);color:var(--mluv-success)}.m-opt.no{border-color:var(--mluv-error);background:var(--mluv-error-soft);color:var(--mluv-error)}.m-opt .mk{margin-left:auto;font-weight:800}.m-foot{position:absolute;left:0;right:0;bottom:0;padding:18px 18px 36px;background:var(--mluv-canvas);border-top:1px solid var(--mluv-line)}.m-foot.ok{background:var(--mluv-success-soft);border-color:transparent}.m-foot.no{background:var(--mluv-error-soft);border-color:transparent}.m-fb{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}.m-fb .ti{font-family:var(--font-display);font-weight:800;font-size:17px}.m-fb.ok .ti{color:#1c6b3e}.m-fb.no .ti{color:#9e231b}.m-fb .ex{font-size:13px;line-height:1.45;margin-top:2px}.m-fb.ok .ex{color:#1c6b3e}.m-fb.no .ex{color:#9e231b}.m-btn{width:100%;border:0;border-radius:var(--r-sm);font-weight:800;font-size:16px;padding:15px 0;color:#fff;background:var(--mluv-red-600)}.m-btn.green{background:var(--mluv-green)}.m-btn.ghost{width:auto;background:var(--mluv-paper);color:var(--mluv-slate);border:1.5px solid var(--mluv-line);padding:15px 18px}.m-btn:disabled{background:var(--mluv-cream);color:var(--mluv-muted);border:1.5px solid var(--mluv-line)}.m-result{padding:90px 28px 0;text-align:center}.m-result .big{font-family:var(--font-display);font-weight:800;font-size:64px;color:var(--mluv-green);letter-spacing:-.02em}.m-result h2{font-family:var(--font-display);font-weight:800;font-size:24px;margin:6px 0 8px}.m-fc{padding:60px 18px 0;text-align:center}.m-fc .deckt{font-family:var(--font-display);font-weight:800;font-size:20px}.m-fc .decks{font-size:13px;color:var(--mluv-muted);margin-top:2px}.m-flip{height:300px;margin:22px 0;cursor:pointer}.m-flip .face{height:100%;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);box-shadow:var(--sh-md);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;animation:mflip .3s ease}.m-flip.flipped .face{background:var(--mluv-cream)}@keyframes mflip{0%{transform:scale(.96);opacity:.4}to{transform:none;opacity:1}}.m-fc .word{font-family:var(--font-display);font-weight:800;font-size:42px;letter-spacing:-.01em}.m-fc .pron{font-family:var(--font-mono);font-size:14px;color:var(--mluv-muted);margin-top:7px}.m-fc .en{font-size:24px;color:var(--mluv-slate);font-weight:700}.m-gtag{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);font-weight:700;font-size:12.5px;padding:5px 13px;color:#fff;margin-top:14px}.m-audio{width:48px;height:48px;border-radius:50%;background:var(--mluv-blue-600);color:#fff;border:0;display:flex;align-items:center;justify-content:center;margin:16px auto 0}.m-fcnav{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:18px}.m-fcnav button{width:46px;height:46px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;color:var(--mluv-ink)}.m-fcnav .ct{font-weight:800;font-size:15px;min-width:52px}.m-dhead{display:flex;align-items:center;gap:10px;padding:56px 16px 6px}.m-back{display:inline-flex;align-items:center;gap:5px;background:none;border:0;color:var(--mluv-red-600);font-family:var(--font-sans);font-weight:700;font-size:15px;padding:6px 4px}.m-dttl{flex:1;text-align:center;font-size:13.5px;color:var(--mluv-muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-dsp{width:52px;flex:none}.m-lek{padding:4px 18px 0}.m-lek .eyebrow{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mluv-red-600)}.m-lek h1{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.02em;line-height:1.12;margin:7px 0 0}.m-lek .sum{font-size:14px;color:var(--mluv-slate);line-height:1.5;margin:8px 0 0}.m-statecard{margin:16px 18px 0;background:var(--mluv-ink);border-radius:var(--r-lg);padding:14px;display:flex;align-items:center;gap:13px;color:#fff}.m-statecard .em{width:44px;height:44px;border-radius:13px;background:#ffffff24;display:flex;align-items:center;justify-content:center;flex:none}.m-statecard .due{font-family:var(--font-display);font-weight:800;font-size:20px;line-height:1}.m-statecard .lab{font-size:12.5px;color:#c9c9d0;margin-top:2px}.m-statecard.inactive{background:var(--mluv-cream);color:var(--mluv-ink);border:1px solid var(--mluv-line);flex-direction:column;align-items:stretch;gap:11px}.m-statecard.inactive .hint{font-size:13px;color:var(--mluv-slate);line-height:1.45}.m-statebtns{display:flex;gap:8px}.m-statebtns button{flex:1;border-radius:var(--r-sm);font-family:var(--font-sans);font-weight:700;font-size:13.5px;padding:11px 8px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-ink)}.m-statebtns button.pri{background:var(--mluv-red-600);border-color:var(--mluv-red-600);color:#fff}.m-strip{margin:14px 18px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;display:flex;flex-direction:column;gap:11px}.m-strow .lab{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:6px}.m-strow .lab .v{color:var(--mluv-muted);font-weight:700;font-variant-numeric:tabular-nums}.m-strack{height:7px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.m-strack .fl{height:100%;border-radius:99px;background:var(--mluv-green)}.m-seg{display:flex;gap:8px;margin:16px 18px 4px}.m-seg button{flex:1;border-radius:var(--r-sm);border:1.5px solid var(--mluv-line);background:var(--mluv-paper);font-family:var(--font-sans);font-weight:700;font-size:15px;padding:11px 0;color:var(--mluv-slate)}.m-seg button.on{background:var(--mluv-ink);border-color:var(--mluv-ink);color:#fff}.m-cgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 18px}.m-ccard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px;text-align:left;display:flex;flex-direction:column;gap:4px;min-height:86px;box-shadow:var(--sh-xs)}.m-ccard .kind{font-size:9.5px;font-weight:800;letter-spacing:.08em;color:var(--mluv-muted);background:var(--mluv-canvas);align-self:flex-start;padding:2px 7px;border-radius:var(--r-pill)}.m-ccard .kind.read{color:var(--mluv-green);background:var(--mluv-success-soft)}.m-ccard .t{font-weight:700;font-size:14.5px;line-height:1.25}.m-ccard .mt{font-size:12px;color:var(--mluv-muted);margin-top:auto}.m-grp{font-family:var(--font-sans);font-weight:800;font-size:12.5px;color:var(--mluv-muted);letter-spacing:.03em;margin:14px 18px 9px}.m-plist{display:flex;flex-direction:column;gap:10px;padding:0 18px}.m-ptile{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px;text-align:left;display:flex;flex-direction:column;gap:4px;box-shadow:var(--sh-xs)}.m-ptile.book{border-left:4px solid var(--mluv-red-600)}.m-ptile .t{font-weight:700;font-size:15px}.m-ptile .mt{font-size:13px;color:var(--mluv-slate);line-height:1.4}.m-ptile .src{font-size:11px;color:var(--mluv-muted);font-style:italic;margin-top:2px}.m-ptile .cta{font-size:12.5px;color:var(--mluv-red-600);font-weight:700;margin-top:3px}.m-pbarmini{display:flex;align-items:center;gap:8px;margin-top:5px}.m-pbarmini .tk{flex:1;height:5px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.m-pbarmini .fl{height:100%;background:var(--mluv-green);border-radius:99px}.m-pbarmini .pl{font-size:11px;color:var(--mluv-muted);font-variant-numeric:tabular-nums}.m-exam{background:linear-gradient(135deg,#fbf1e2,#f7e6cc);border:1.5px solid var(--mluv-yellow);border-radius:var(--r-md);padding:14px 15px;text-align:left;display:flex;flex-direction:column;gap:4px}.m-exam .t{font-family:var(--font-display);font-weight:800;font-size:16px}.m-exam .cta{font-size:12.5px;color:var(--mluv-orange);font-weight:800;margin-top:3px}.m-gram{padding:4px 18px 0}.m-gram .pill{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.08em;color:#fff;background:var(--mluv-red-600);padding:4px 10px;border-radius:var(--r-pill)}.m-gram h1{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.02em;line-height:1.14;margin:10px 0 0}.m-gram .cs{font-size:14px;color:var(--mluv-muted);margin-top:3px}.m-tour{display:block;width:calc(100% - 36px);margin:14px 18px 0;border:0;border-radius:var(--r-sm);background:var(--mluv-blue-600);color:#fff;font-family:var(--font-sans);font-weight:700;font-size:15px;padding:13px 0;text-align:center}.m-md{padding:0 18px;margin-top:14px}.m-md .mh{font-family:var(--font-display);font-weight:800;font-size:16px;margin:16px 0 5px}.m-md p{font-size:15px;line-height:1.55;margin:0 0 10px;color:var(--mluv-ink)}.m-md ul{font-size:15px;line-height:1.55;margin:0 0 10px;padding-left:20px}.m-md li{margin:3px 0}.m-md code{font-family:var(--font-mono);font-size:.9em;background:var(--mluv-cream);border:1px solid var(--mluv-line);padding:1px 5px;border-radius:5px}.m-para{margin:6px 18px 0;border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow-x:auto;-webkit-overflow-scrolling:touch}.m-para table{width:100%;border-collapse:collapse;font-size:14.5px}.m-para th,.m-para td{padding:8px 11px;border-bottom:1px solid var(--mluv-line-soft);text-align:left}.m-para thead th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--mluv-muted);font-weight:700;background:var(--mluv-cream)}.m-para tbody th{font-weight:700;color:var(--mluv-slate);font-size:13px;white-space:nowrap}.m-para tr:last-child td,.m-para tr:last-child th{border-bottom:0}.m-ex{margin:16px 18px 0}.m-ex .h{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);margin-bottom:8px}.m-ex .row{display:flex;flex-direction:column;gap:1px;padding:7px 0;border-bottom:1px solid var(--mluv-line-soft)}.m-ex .row:last-child{border-bottom:0}.m-ex .cs{font-weight:700;font-size:15px}.m-ex .en{font-size:13px;color:var(--mluv-muted)}.m-tips{margin:16px 18px 0;background:var(--mluv-cream);border-radius:var(--r-md);padding:13px 15px}.m-tips .h{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-orange);margin-bottom:8px}.m-tips li{font-size:13.5px;line-height:1.5;list-style:none;padding-left:16px;position:relative;margin:5px 0}.m-tips li:before{content:"•";position:absolute;left:2px;color:var(--mluv-yellow);font-weight:800}.m-readrow{display:flex;justify-content:center;margin:18px 18px 8px}.m-readbtn{border-radius:var(--r-sm);font-family:var(--font-sans);font-weight:700;font-size:15px;padding:13px 26px;border:1.5px solid var(--mluv-red-600);background:var(--mluv-red-600);color:#fff}.m-readbtn.done{background:var(--mluv-success-soft);border-color:var(--mluv-green);color:var(--mluv-green)}.m-voc{padding:4px 18px 0}.m-voc .gh{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);margin:16px 0 4px}.m-vrow{display:grid;grid-template-columns:1fr auto;grid-template-areas:"cs tags" "en tags";gap:1px 10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.m-vrow.has-img{grid-template-columns:44px 1fr auto;grid-template-areas:"img cs tags" "img en tags";column-gap:12px;align-items:center}.m-vrow .vimg{grid-area:img;width:44px;height:44px;border-radius:10px;object-fit:cover;align-self:center}.m-vrow .cs{grid-area:cs;font-weight:700;font-size:16px}.m-vrow .fem{font-weight:500;color:var(--mluv-muted)}.m-vrow .en{grid-area:en;font-size:13px;color:var(--mluv-muted)}.m-vrow .tags{grid-area:tags;align-self:center;justify-self:end}.m-gchip{font-size:11px;font-weight:800;padding:3px 8px;border-radius:var(--r-pill);color:#fff}.m-cloze{padding:2px 18px 0}.m-cloze .body{font-size:16px;line-height:2.1;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px;white-space:pre-wrap}.m-slot{display:inline-block;min-width:72px;padding:3px 9px;margin:0 2px;border-radius:8px;border:2px dashed var(--mluv-line);background:var(--mluv-canvas);font:inherit;color:var(--mluv-muted);vertical-align:middle;font-style:italic}.m-slot.filled{border-style:solid;border-color:var(--mluv-red-600);background:var(--mluv-red-50);color:var(--mluv-ink);font-weight:700;font-style:normal}.m-slot.ok{border-style:solid;border-color:var(--mluv-green);background:var(--mluv-success-soft);color:#1c6b3e;font-weight:700;font-style:normal}.m-slot.no{border-style:solid;border-color:var(--mluv-error);background:var(--mluv-error-soft);color:#9e231b;font-weight:700;font-style:normal}.m-bank{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;background:var(--mluv-cream);border-radius:var(--r-md);padding:12px}.m-chip{padding:9px 15px;border-radius:var(--r-pill);border:2px solid var(--mluv-red-600);background:var(--mluv-paper);font:inherit;font-weight:700;font-size:14px;color:var(--mluv-ink)}.m-chip.used{opacity:.32}.m-clozefb{margin-top:12px;background:var(--mluv-cream);border-radius:var(--r-md);padding:12px}.m-clozefb .r{display:flex;gap:8px;align-items:baseline;font-size:13.5px;padding:3px 0}.m-clozefb .r.ok{color:#1c6b3e}.m-clozefb .r.no{color:#9e231b}.m-clozefb .i{font-weight:800;min-width:24px}.m-clozefb .g{font-weight:700}.m-clozefb .a{color:var(--mluv-muted)}.m-prof{padding:56px 18px 0}.m-profhead{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:8px 0 18px}.m-profhead .av{width:84px;height:84px;border-radius:50%;background:var(--mluv-blue-600);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:34px;box-shadow:var(--sh-sm)}.m-profhead .nm{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.01em;margin-top:12px}.m-profhead .sub{font-size:13.5px;color:var(--mluv-muted)}.m-profhead .edit{margin-top:12px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-ink);font-family:var(--font-sans);font-weight:700;font-size:13.5px;border-radius:var(--r-pill);padding:8px 18px}.m-pstats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:4px 18px 0}.m-pstat{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 8px;text-align:center;box-shadow:var(--sh-xs)}.m-pstat .n{font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-.01em}.m-pstat .l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-top:3px}.m-setgrp{margin:22px 18px 0}.m-setgrp .h{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);margin:0 4px 8px}.m-setcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-xs)}.m-setrow{display:flex;align-items:center;gap:13px;padding:13px 15px;border-bottom:1px solid var(--mluv-line-soft);background:none;border-left:0;border-right:0;border-top:0;width:100%;text-align:left;font-family:var(--font-sans);color:var(--mluv-ink)}.m-setrow:last-child{border-bottom:0}.m-setrow .ic{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff}.m-setrow .lb{flex:1;font-size:15px;font-weight:600}.m-setrow .val{font-size:14px;color:var(--mluv-muted)}.m-setrow .chev{color:var(--mluv-faint)}.m-tog{width:46px;height:27px;border-radius:99px;border:0;background:var(--mluv-line);position:relative;flex:none;transition:background .18s ease}.m-tog.on{background:var(--mluv-green)}.m-tog .kn{position:absolute;top:2.5px;left:2.5px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:var(--sh-xs);transition:left .18s ease}.m-tog.on .kn{left:21.5px}.m-signout{display:block;width:calc(100% - 36px);margin:22px 18px 8px;border:1.5px solid var(--mluv-red-100);background:var(--mluv-red-50);color:var(--mluv-red-600);font-family:var(--font-sans);font-weight:700;font-size:15px;border-radius:var(--r-sm);padding:13px 0}.m-ver{text-align:center;font-size:12px;color:var(--mluv-faint);margin:12px 0 0}.m-input{width:calc(100% - 36px);box-sizing:border-box;margin:0 18px;font-family:var(--font-sans);font-size:18px;padding:14px 16px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink)}.m-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.m-verdict{margin:14px 18px 0;border:1.5px solid;border-radius:var(--r-md);padding:14px 16px;display:flex;flex-direction:column;gap:4px}.m-verdict.ok{border-color:var(--mluv-green);background:var(--mluv-success-soft)}.m-verdict.note{border-color:var(--mluv-warning);background:var(--mluv-warning-soft)}.m-verdict.no{border-color:var(--mluv-error);background:var(--mluv-error-soft)}.m-verdict .vl{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.m-verdict.ok .vl{color:#1c6b3e}.m-verdict.note .vl{color:var(--mluv-warning)}.m-verdict.no .vl{color:#9e231b}.m-verdict .ans{font-family:var(--font-display);font-weight:800;font-size:22px;letter-spacing:-.01em}.m-verdict .alt{font-size:12.5px;color:var(--mluv-muted)}.m-verdict .nr{font-size:12px;color:var(--mluv-muted);margin-top:2px}.m-askbtn{width:calc(100% - 36px);margin:10px 18px 0;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);font-family:var(--font-sans);font-weight:700;font-size:13.5px;border-radius:var(--r-sm);padding:11px 0}.m-chat{margin:10px 18px 0;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px}.m-chat .ch{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mluv-muted);margin-bottom:8px}.m-msg{font-size:13.5px;line-height:1.45;padding:9px 11px;border-radius:11px;margin-bottom:7px;max-width:92%}.m-msg.u{background:var(--mluv-blue-50);border:1px solid var(--mluv-blue-100);margin-left:auto}.m-msg.a{background:var(--mluv-paper);border:1px solid var(--mluv-line)}.m-msg.a code{font-family:var(--font-mono);font-size:.9em;background:var(--mluv-cream);padding:1px 4px;border-radius:4px}.m-chatform{display:flex;gap:7px;margin-top:2px}.m-chatform input{flex:1;font-family:var(--font-sans);font-size:14px;padding:9px 12px;border:1px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper)}.m-chatform button{border:0;background:var(--mluv-blue-600);color:#fff;font-weight:700;border-radius:var(--r-sm);padding:0 14px;font-size:14px}.m-resume{margin:40px 18px 0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);box-shadow:var(--sh-sm);padding:28px 22px;text-align:center;display:flex;flex-direction:column;gap:13px}.m-resume h2{font-family:var(--font-display);font-weight:800;font-size:22px;margin:0;letter-spacing:-.01em}.m-resume p{font-size:14.5px;color:var(--mluv-slate);margin:0}.m-resume p b{color:var(--mluv-ink)}.m-rbtn{width:100%;border-radius:var(--r-sm);font-family:var(--font-sans);font-weight:700;font-size:15px;padding:14px 0;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-ink)}.m-rbtn.pri{background:var(--mluv-red-600);border-color:var(--mluv-red-600);color:#fff}.m-rbtn.ai{background:linear-gradient(90deg,#7a3e8e,#e03127);border:0;color:#fff}.m-wlist{padding:0 18px;display:flex;flex-direction:column;gap:10px}.m-wtile{display:flex;align-items:center;gap:13px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 15px;text-align:left;box-shadow:var(--sh-xs)}.m-wtile .ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff}.m-wtile .t{font-weight:700;font-size:15.5px}.m-wtile .mt{font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.m-wtile .ct{margin-left:auto;font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--mluv-muted)}.m-empty{padding:70px 30px 0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.m-empty .big{width:72px;height:72px;border-radius:20px;background:var(--mluv-success-soft);display:flex;align-items:center;justify-content:center}.m-empty h2{font-family:var(--font-display);font-weight:800;font-size:21px;margin:6px 0 0}.m-empty p{font-size:14px;color:var(--mluv-muted);line-height:1.5;margin:0;max-width:30ch}.m-skel{margin:14px 18px 0;height:78px;border-radius:var(--r-md);background:linear-gradient(100deg,var(--mluv-line-soft) 30%,var(--mluv-cream) 50%,var(--mluv-line-soft) 70%);background-size:200% 100%;animation:mshimmer 1.3s infinite}@keyframes mshimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.m-errcard{margin:40px 18px 0;background:var(--mluv-error-soft);border:1.5px solid var(--mluv-red-100);border-radius:var(--r-md);padding:20px;text-align:center}.m-errcard h3{font-family:var(--font-display);font-weight:800;color:var(--mluv-error);margin:8px 0 4px}.m-errcard p{font-size:13.5px;color:var(--mluv-slate);margin:0 0 14px}.m-bell{position:relative;width:38px;height:38px;border-radius:12px;border:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;flex:none}.m-bell .bdg{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--mluv-red-600);color:#fff;font-size:10.5px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--mluv-canvas)}.m-myclass{display:flex;align-items:center;gap:12px;width:100%;text-align:left;margin:0 16px 4px;width:calc(100% - 32px);background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 14px}.m-myclass .ic{width:38px;height:38px;border-radius:11px;background:var(--mluv-blue-50);display:flex;align-items:center;justify-content:center;flex:none}.m-myclass .tx{flex:1;min-width:0}.m-myclass .tx .t{font-weight:700;font-size:14.5px}.m-myclass .tx .d{font-size:12.5px;color:var(--mluv-muted);margin-top:1px}.mf-goalhero{text-align:center;padding:24px 24px 8px}.mf-goalhero .ring{width:64px;height:64px;border-radius:50%;background:var(--mluv-red-50);display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.mf-goalhero .t{font-family:var(--font-display);font-weight:800;font-size:20px}.mf-goalhero .s{font-size:13.5px;color:var(--mluv-muted);margin-top:4px;line-height:1.5}.mf-goalopts{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 16px}.mf-goalopt{position:relative;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:14px 12px;text-align:left}.mf-goalprog{margin:8px 16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px}.mf-goalprog .top{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:8px}.mf-goalprog .reached{display:flex;align-items:center;gap:6px;color:var(--mluv-green);font-weight:700;font-size:13px;margin-top:10px}.mf-markall{display:flex;align-items:center;gap:7px;margin:14px 16px 4px;font-size:13px;font-weight:700;color:var(--mluv-blue-700);background:none;border:0}.mf-ngrp{font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted);margin:14px 18px 8px}.mf-notif{display:flex;gap:12px;align-items:flex-start;width:calc(100% - 32px);margin:0 16px 8px;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 13px}.mf-notif.unread{background:var(--mluv-blue-50);border-color:var(--mluv-blue-100)}.mf-notif .ic{width:36px;height:36px;border-radius:10px;flex:none;display:flex;align-items:center;justify-content:center}.mf-notif .tx{flex:1;min-width:0}.mf-notif .tx .t{font-weight:700;font-size:14px;display:flex;align-items:center;gap:7px}.mf-notif .tx .dot{width:7px;height:7px;border-radius:50%;background:var(--mluv-red-600);flex:none}.mf-notif .tx .b{font-size:12.5px;color:var(--mluv-slate);line-height:1.45;margin-top:2px}.mf-notif .tx .w{font-size:11px;color:var(--mluv-muted);font-family:var(--font-mono);margin-top:3px;display:block}.mf-notif .act{flex:none;align-self:center;font-size:11px;font-weight:800;color:#fff;background:var(--mluv-plum);border-radius:var(--r-pill);padding:4px 9px}.mf-classhead{display:flex;align-items:center;gap:12px;padding:14px 16px 4px}.mf-classhead .fl{font-size:26px}.mf-classhead .t{font-family:var(--font-display);font-weight:800;font-size:18px}.mf-classhead .s{font-size:12.5px;color:var(--mluv-muted)}.mf-classhead .lvtag{margin-left:auto;color:#fff;font-weight:800;font-size:12px;border-radius:var(--r-pill);padding:4px 11px}.mf-matgrp{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);margin:4px 16px 10px}.mf-matrow{display:flex;align-items:center;gap:12px;width:calc(100% - 32px);margin:0 16px 8px;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 13px}.mf-matrow .ic{width:40px;height:40px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center}.mf-matrow .mid{flex:1;min-width:0}.mf-matrow .tt{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px;min-width:0}.mf-matrow .tt .ttx{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto}.mf-matrow .gp{flex:none;display:inline-flex;align-items:center;gap:3px;white-space:nowrap;font-size:10px;font-weight:800;color:#1a56c4;background:#e8f0fe;border-radius:var(--r-pill);padding:2px 7px}.mf-matrow .sub{font-size:12px;color:var(--mluv-muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:200px}.mf-compose{display:flex;gap:8px;padding:0 16px}.mf-compose input{flex:1;border:1.5px solid var(--mluv-line);border-radius:var(--r-pill);padding:10px 15px;font-size:14px;font-family:var(--font-sans)}.mf-compose input:focus{outline:none;border-color:var(--mluv-blue-500)}.mf-compose button{width:42px;height:42px;border-radius:50%;background:var(--mluv-blue-600);border:0;display:flex;align-items:center;justify-content:center;flex:none}.mf-newest{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--mluv-muted);margin:10px 18px 6px}.mf-chat{display:flex;flex-direction:column;gap:12px;padding:0 16px 8px}.mf-msg{display:flex;gap:9px}.mf-msg.mine{flex-direction:row-reverse}.mf-msg .av{width:30px;height:30px;border-radius:50%;color:#fff;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;flex:none}.mf-msg .bub{max-width:76%}.mf-msg .meta{display:flex;align-items:center;gap:6px;font-size:11px;margin-bottom:3px}.mf-msg.mine .meta{flex-direction:row-reverse}.mf-msg .meta .lek{font-size:8.5px;font-weight:800;color:#fff;background:var(--mluv-red-600);border-radius:var(--r-pill);padding:1px 6px}.mf-msg .meta .tm{color:var(--mluv-muted)}.mf-msg .bd{background:var(--mluv-cream);border-radius:14px;padding:9px 12px;font-size:13.5px;line-height:1.4}.mf-msg.mine .bd{background:var(--mluv-blue-600);color:#fff}.mf-fvwrap{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--mluv-canvas);z-index:30;display:flex;flex-direction:column}.mf-fvhead{display:flex;align-items:center;gap:8px;padding:14px 12px;background:var(--mluv-paper);border-bottom:1px solid var(--mluv-line)}.mf-fvhead .ttl{flex:1;text-align:center;font-weight:700;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mf-fvsub{font-size:11px;color:var(--mluv-muted);font-family:var(--font-mono);padding:8px 16px 0;text-align:center}.mf-fvstage{flex:1;overflow-y:auto;padding:14px}.mf-photo{background:linear-gradient(135deg,#2b2b38,#454559);border-radius:var(--r-md);min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#fff}.mf-photo .cap{font-family:var(--font-mono);font-size:12px;opacity:.9}.mf-photo .nt{font-size:12.5px;opacity:.7}.mf-page{background:#fff;border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:18px;min-height:240px}.mf-page.gdoc{padding:0;overflow:hidden}.mf-page .ph{font-family:var(--font-display);font-weight:800;font-size:16px;margin-bottom:12px}.mf-page .ln{height:8px;border-radius:5px;background:var(--mluv-line);margin:9px 0}.mf-page .pn{text-align:center;color:var(--mluv-muted);font-size:12px;font-family:var(--font-mono);margin-top:16px}.mf-page .gbar{display:flex;align-items:center;gap:7px;background:#e8f0fe;color:#1a56c4;font-size:11.5px;font-weight:700;padding:9px 14px}.mf-md{font-size:13.5px;line-height:1.55;color:var(--mluv-ink)}.mf-md.mono{font-family:var(--font-mono);font-size:12.5px}.mf-md .h1{font-family:var(--font-display);font-weight:800;font-size:17px;margin:0 0 8px}.mf-md .h2{font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--mluv-slate);margin:13px 0 5px}.mf-md.mono .h1,.mf-md.mono .h2{font-family:var(--font-sans)}.mf-md .p{margin:6px 0}.mf-md .li{margin:4px 0 4px 14px;position:relative}.mf-md .li:before{content:"";position:absolute;left:-12px;top:8px;width:4px;height:4px;border-radius:50%;background:var(--mluv-red-600)}.mf-vocab .vr{display:flex;align-items:center;gap:11px;padding:10px 0;border-bottom:1px solid var(--mluv-line-soft);font-size:14px}.mf-vocab .vr:last-child{border-bottom:0}.mf-vocab .gd{width:10px;height:10px;border-radius:50%;flex:none}.mf-vocab .cz{font-weight:700}.mf-vocab .en{color:var(--mluv-slate);margin-left:auto}.mf-fvfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--mluv-line);background:var(--mluv-paper)}.mf-fvfoot .mt{font-size:11.5px;color:var(--mluv-muted);display:inline-flex;align-items:center;gap:5px}.m-btn.sm{width:auto;padding:9px 14px;font-size:13px;display:inline-flex;align-items:center;gap:6px}.m-btn.blue{background:var(--mluv-blue-600)}.mf-docbanner{display:flex;align-items:center;gap:11px;margin:14px 16px;background:#f5f9ff;border:1px solid #d2e3fc;border-radius:var(--r-md);padding:12px 14px}.mf-docbanner .gg{width:34px;height:34px;border-radius:9px;background:#1a73e8;display:flex;align-items:center;justify-content:center;flex:none}.mf-docbanner .t{font-weight:700;font-size:14px}.mf-docbanner .s{font-size:12px;color:var(--mluv-muted);margin-top:1px}.mf-suglab{display:flex;align-items:center;gap:7px;font-weight:800;font-size:13px;margin:0 16px 10px}.mf-sugrow{display:flex;align-items:center;gap:11px;margin:0 16px 8px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:11px 13px}.mf-sugrow.rej{opacity:.5}.mf-sugrow.rej .cz{text-decoration:line-through}.mf-sugrow .gd{width:10px;height:10px;border-radius:50%;flex:none}.mf-sugrow .cz{font-weight:700;font-size:14.5px;flex:1}.mf-sugrow .cz .en{font-weight:500;color:var(--mluv-slate);margin-left:8px}.mf-suggrow{display:flex;align-items:flex-start;gap:11px;margin:0 16px 8px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-sm);padding:11px 13px}.mf-suggrow.rej{opacity:.5}.mf-suggrow .tx{flex:1}.mf-suggrow .tx .t{font-weight:700;font-size:13.5px}.mf-suggrow .tx .cs{font-size:12px;color:var(--mluv-slate);margin-top:2px}.mf-sugrow .acts,.mf-suggrow .acts{display:flex;gap:6px;flex:none}.mf-sugrow .sb,.mf-suggrow .sb{width:30px;height:30px;border-radius:8px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center}.mf-sugrow .sb.ok.on,.mf-suggrow .sb.ok.on{background:var(--mluv-green);border-color:var(--mluv-green)}.mf-sugrow .undo,.mf-suggrow .undo{padding:6px 10px;border-radius:8px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center}.t-gdoc{background:#f5f9ff;border:1px solid #d2e3fc;border-radius:var(--r-md);padding:13px 14px;margin-bottom:12px}.t-gdoc .top{display:flex;align-items:center;gap:11px}.t-gdoc .gg{width:36px;height:36px;border-radius:10px;background:#1a73e8;display:flex;align-items:center;justify-content:center;flex:none}.t-gdoc .mid{flex:1;min-width:0}.t-gdoc .tt{font-weight:700;font-size:14px}.t-gdoc .sub{font-size:11.5px;color:var(--mluv-muted);margin-top:1px}.t-gdcheck{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:11px;padding:10px;border:1px dashed #b9d3fb;border-radius:var(--r-sm);background:#fff;color:var(--mluv-blue-700);font-weight:700;font-size:13px}.t-gdreview{display:flex;align-items:center;gap:10px;width:100%;margin-top:11px;padding:11px 12px;border:0;border-radius:var(--r-sm);background:color-mix(in srgb,var(--mluv-plum) 9%,#fff);text-align:left}.t-gdreview .ic{width:28px;height:28px;border-radius:8px;background:var(--mluv-plum);display:flex;align-items:center;justify-content:center;flex:none}.t-gdreview .tx{flex:1;font-size:12.5px}.t-gdreview .act{flex:none;font-size:10.5px;font-weight:800;color:#fff;background:var(--mluv-plum);border-radius:var(--r-pill);padding:4px 8px}.t-gdlink{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-bottom:12px;padding:12px;border:1px dashed #b9d3fb;border-radius:var(--r-md);background:#fff;color:var(--mluv-blue-700);font-weight:700;font-size:13.5px}.t-gdlink .gg{width:22px;height:22px;border-radius:6px;background:#1a73e8;display:flex;align-items:center;justify-content:center}.m-pill{border:0;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:7px 12px;font-weight:800;font-size:13px;display:inline-flex;align-items:center;gap:4px;flex:none;color:var(--mluv-ink)}.m-pill.xp{color:var(--mluv-slate)}.mf-cic{margin:14px 16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px;box-shadow:var(--sh-xs)}.mf-cic .eyebrow{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mluv-slate);font-weight:700;margin-bottom:8px}.mf-cic .eyebrow .lv{color:#fff;font-weight:800;border-radius:var(--r-pill);padding:2px 9px;font-size:11px}.mf-cic .cname{font-family:var(--font-display);font-weight:800;font-size:22px;letter-spacing:-.01em}.mf-cic .cmeta{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:13px;color:var(--mluv-slate)}.mf-cic .clesson{margin-top:10px;font-size:13px}.mf-cic .clesson b{color:var(--mluv-red-700)}.mf-cic .cteacher{margin-top:6px;font-size:12.5px;color:var(--mluv-muted)}.mf-sech{font-family:var(--font-display);font-weight:800;font-size:16px;margin:18px 16px 10px}.mf-lb{margin:0 16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:4px 14px;box-shadow:var(--sh-xs)}.mf-lbrow{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.mf-lb .mf-lbrow:last-child{border-bottom:0}.mf-lbrow.self{background:var(--mluv-red-50);border-radius:10px;padding:9px 10px;margin:2px -10px;border-bottom:0}.mf-lbrow .rk{width:24px;font-weight:800;color:var(--mluv-muted);font-size:13px}.mf-lbrow .av{width:30px;height:30px;border-radius:50%;color:#fff;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;flex:none}.mf-lbrow .bd{flex:1;min-width:0}.mf-lbrow .nm{font-weight:700;font-size:14px;display:block}.mf-lbrow .pb{display:flex;align-items:center;gap:8px;margin-top:4px}.mf-lbrow .pb .tk{flex:1;height:6px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.mf-lbrow .pb .fl{height:100%;background:var(--mluv-green);border-radius:99px;display:block}.mf-lbrow .pb .pc{font-size:11px;color:var(--mluv-muted);font-weight:700}.mf-lbrow .sc{font-weight:800;font-size:14px;color:var(--mluv-slate)}.mf-chatbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 32px);margin:18px 16px 0;padding:13px;border:0;border-radius:var(--r-md);background:var(--mluv-blue-600);color:#fff;font-weight:700;font-size:15px}.mf-empty{text-align:center;color:var(--mluv-muted);padding:30px 20px}.mf-empty p{font-size:13.5px;margin:8px 0 0}.mf-chatfoot{flex:none;padding:10px 16px;border-top:1px solid var(--mluv-line);background:var(--mluv-paper)}.mf-askbox{padding:0 16px}.mf-askbox textarea{width:100%;box-sizing:border-box;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);padding:13px;font-size:15px;font-family:var(--font-sans);resize:none;line-height:1.5}.mf-askbox textarea:focus{outline:none;border-color:var(--mluv-blue-500)}.m-btn.ai{background:linear-gradient(120deg,#6b34a8,var(--mluv-plum));margin-top:10px}.mf-askbox .m-btn{width:100%;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:7px}.mf-askchip{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:11px 13px;margin-bottom:8px;font-size:13.5px}.mf-answer{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px;font-size:14.5px;line-height:1.55}.mf-askdisc{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--mluv-muted);margin-top:12px;background:var(--mluv-cream);border-radius:var(--r-sm);padding:9px 11px}.mf-detected{font-size:13px;color:var(--mluv-slate);margin-bottom:10px}.mf-trres{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 14px;margin-bottom:10px}.mf-trres .lg{font-weight:700;font-size:13px;margin-bottom:5px}.mf-trres .tx{font-size:15px;line-height:1.5}.mf-rwstreak{margin:14px 16px;background:linear-gradient(135deg,#fff,var(--mluv-cream));border:1px solid var(--mluv-line);border-radius:var(--r-lg);padding:20px;text-align:center}.mf-rwstreak .big{font-family:var(--font-display);font-weight:800;font-size:40px;line-height:1}.mf-rwstreak .sub{color:var(--mluv-muted);font-size:13px;margin-top:4px}.mf-rwstreak .cal{display:flex;justify-content:space-between;gap:6px;margin-top:16px}.mf-rwstreak .cd{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--mluv-faint)}.mf-rwstreak .cd .dl{font-size:11px;font-weight:700}.mf-rwstreak .cd .dd{font-size:13px}.mf-rwstreak .cd.on{color:var(--mluv-red-600)}.mf-goalcard{margin:0 16px 14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:16px}.mf-goalcard .gh{display:flex;align-items:center;gap:7px;font-family:var(--font-display);font-weight:800;font-size:16px}.mf-goalcard .gsub{font-size:13px;color:var(--mluv-slate);margin:6px 0 0;line-height:1.45}.mf-goalcard .mf-goalopts{margin:12px 0 0;padding:0}.mf-goalcard .gprog{font-size:12.5px;color:var(--mluv-muted);margin-top:8px}.mf-goalopts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mf-goalopt{position:relative;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:13px 12px;text-align:left}.mf-goalopt.on{border-color:var(--mluv-red-600);background:var(--mluv-red-50)}.mf-goalopt .gv{font-family:var(--font-display);font-weight:800;font-size:20px}.mf-goalopt .gl{font-size:12px;color:var(--mluv-slate);margin-top:2px}.mf-goalopt .ck{position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;background:var(--mluv-red-600);display:flex;align-items:center;justify-content:center}.mf-xpgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:0 16px}.mf-xpgrid .xpc{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 8px;text-align:center}.mf-xpgrid .xpc .n{font-family:var(--font-display);font-weight:800;font-size:19px}.mf-xpgrid .xpc .l{font-size:11px;color:var(--mluv-muted);margin-top:2px}.mf-shop{margin:0 16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:4px 14px}.mf-shop .shoprow{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--mluv-line-soft)}.mf-shop .shoprow:last-child{border-bottom:0}.mf-shop .ic{font-size:22px;flex:none}.mf-shop .mid{flex:1;min-width:0}.mf-shop .mid .t{font-weight:700;font-size:14px;display:block}.mf-shop .mid .d{font-size:12px;color:var(--mluv-muted)}.mf-shop .mid .own{font-size:11px;color:var(--mluv-green);font-weight:700;display:block;margin-top:2px}.mf-shop .buy{flex:none;border:1px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-sm);padding:7px 12px;font-weight:700;font-size:12.5px;color:var(--mluv-ink)}.mf-shop .buy:disabled{opacity:.45}.mf-badges{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 16px}.mf-badges .bdg{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:12px 6px;text-align:center}.mf-badges .bdg.locked{opacity:.4}.mf-badges .bi{font-size:22px;display:block}.mf-badges .bl{font-size:10.5px;color:var(--mluv-slate);margin-top:4px;display:block;line-height:1.2}.mf-events{margin:0 16px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:4px 14px}.mf-events .ev{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--mluv-line-soft);font-size:13px}.mf-events .ev:last-child{border-bottom:0}.mf-events .ts{color:var(--mluv-muted);width:54px;flex:none;font-size:12px}.mf-events .ty{flex:1}.mf-events .xp{font-weight:800;color:var(--mluv-green)}.classswitch{display:flex;gap:8px;flex-wrap:wrap;margin:14px 16px 2px}.classswitch-i{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:6px 13px 6px 7px;font-weight:700;font-size:13px;color:var(--mluv-slate)}.classswitch-i.on{border-color:var(--mluv-ink);background:var(--mluv-ink);color:#fff}.classswitch-i .fl{width:22px;height:22px;border-radius:6px;background:#0000001a;color:var(--mluv-slate);display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:800;letter-spacing:.02em}.classswitch-i.on .fl{background:#ffffffeb;color:var(--mluv-ink)}.classswitch-add{display:inline-flex;align-items:center;gap:5px;border:1.5px dashed var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:6px 13px;font-weight:700;font-size:13px;color:var(--mluv-slate)}.mp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14141c99;display:flex;align-items:flex-end;justify-content:center;z-index:200}.joinmodal{background:var(--mluv-paper);border-radius:18px 18px 0 0;width:100%;max-width:520px;display:flex;flex-direction:column;overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}.mp-head{display:flex;align-items:center;gap:10px;padding:15px 16px;border-bottom:1px solid var(--mluv-line)}.mp-x{width:32px;height:32px;border-radius:50%;border:0;background:var(--mluv-cream);display:flex;align-items:center;justify-content:center;flex:none}}@media (max-width: 767.98px){.card{display:block;flex-direction:row}.drawer{border:1px solid var(--mluv-blue-100);border-radius:var(--r-md);overflow:hidden;margin-bottom:11px;background:var(--mluv-blue-50)}.drawer .dh{display:flex;align-items:center;gap:11px;padding:13px 15px;width:100%;border:0;background:none;text-align:left}.drawer .dh .ic{width:34px;height:34px;border-radius:10px;background:var(--mluv-blue-600);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.drawer .dh .t{flex:1;font-weight:700;font-size:14.5px}.drawer .dh .t .s{font-size:12px;color:var(--mluv-muted);font-weight:600}.drawer .dbody{padding:0 15px 15px;font-size:14px;line-height:1.6;color:var(--mluv-ink)}.drawer .dbody .vrow{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--mluv-blue-100)}.drawer .dbody .vrow .cz{font-weight:700}.drawer .dbody .vrow .en{color:var(--mluv-muted);font-size:13px}.drawer .dbody .add{display:inline-flex;align-items:center;gap:5px;margin-left:auto;border:1.5px solid var(--mluv-blue-500);background:var(--mluv-paper);color:var(--mluv-blue-700);border-radius:var(--r-pill);font-weight:800;font-size:11.5px;padding:5px 11px}.drawer .dbody .add.on,.drawer .dbody .add:disabled{margin-left:auto;border-color:var(--mluv-green);background:var(--mluv-success-soft);color:#1c6b3e;opacity:1}.runner{padding:16px 18px 36px}.btn{font-weight:700;font-size:14.5px;border-radius:var(--r-sm);padding:11px 20px;border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.btn .lucide{width:17px;height:17px}.btn:disabled{background:var(--mluv-line);color:var(--mluv-faint);cursor:not-allowed;border-color:transparent}.btn-primary{background:var(--mluv-red-600);color:#fff}.btn-primary:hover{background:var(--mluv-red-700)}.btn-blue{background:var(--mluv-blue-600);color:#fff}.btn-blue:hover{background:var(--mluv-blue-700)}.btn-green{background:var(--mluv-green);color:#fff}.btn-ghost{background:var(--mluv-paper);color:var(--mluv-slate);border-color:var(--mluv-line)}.btn-ghost:hover{border-color:var(--mluv-faint);color:var(--mluv-ink)}.btn-ai{background:linear-gradient(90deg,#7a3e8e,#e03127);color:#fff}.btn-sm{padding:8px 14px;font-size:13px}.btn-danger{background:var(--mluv-red-600);color:#fff;border-color:transparent}.btn-danger-out{background:var(--mluv-paper);color:var(--mluv-red-600);border:1.5px solid color-mix(in srgb,var(--mluv-red-600) 40%,transparent)}.seg{display:flex;background:var(--mluv-cream);border:1px solid var(--mluv-line);border-radius:var(--r-pill);padding:4px;gap:3px;margin:6px 0 16px}.seg button{flex:1;border:0;background:none;font-weight:700;font-size:13.5px;color:var(--mluv-slate);padding:9px 8px;border-radius:var(--r-pill)}.seg button.on{background:var(--mluv-paper);color:var(--mluv-ink);box-shadow:var(--sh-xs)}.col{display:flex;flex-direction:column;gap:14px}.unitlist{display:flex;flex-direction:column;gap:11px}.drow{display:flex;align-items:center;gap:14px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:14px 16px;box-shadow:var(--sh-xs);text-align:left;width:100%}.drow .b{flex:1;min-width:0}.drow .b .t{font-family:var(--font-display);font-weight:800;font-size:15.5px}.drow .b .d{font-size:13px;color:var(--mluv-muted);margin-top:2px}.drow .b .src{font-size:11.5px;color:var(--mluv-blue-600);font-weight:700;margin-top:4px}.gdoc-pill{margin-left:8px;font-size:11px;font-weight:800;color:#1a56c4;background:#e8f0fe;border-radius:var(--r-pill);padding:2px 8px;vertical-align:middle}.askbox{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-xs);padding:16px}.askinput{width:100%;box-sizing:border-box;border:0;resize:vertical;font-family:var(--font-sans);font-size:16px;line-height:1.55;color:var(--mluv-ink);background:transparent;min-height:78px}.askinput:focus{outline:none}.askfoot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--mluv-line-soft);padding-top:12px;margin-top:6px}.askchip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);padding:9px 15px;font-weight:600;font-size:13.5px;text-align:left}.askchip.rel{border-color:var(--mluv-blue-100);background:var(--mluv-blue-50);color:var(--mluv-blue-700);font-weight:700}.askchip.rel .ll{background:var(--mluv-blue-600);color:#fff;border-radius:var(--r-pill);font-size:10.5px;font-weight:800;padding:2px 7px;margin-left:7px}.askanswer{margin-top:20px}.askanswer.flush{margin-top:0}.askbody{font-size:15.5px;line-height:1.7;color:var(--mluv-ink)}.askbody p{margin:0 0 12px}.askdisc{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mluv-muted);background:var(--mluv-cream);border-radius:var(--r-sm);padding:11px 13px;margin-top:18px;line-height:1.4}.lvtag{border-radius:var(--r-pill);color:#fff;font-family:var(--font-display);font-weight:800;font-size:12px;padding:3px 10px;display:inline-block;letter-spacing:.01em}.gdot{width:11px;height:11px;border-radius:50%;flex:none;display:inline-block}.gtag{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);font-weight:700;font-size:12px;padding:4px 11px;color:#fff}.muted{color:var(--mluv-muted)}.card{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}.card.pad{padding:20px 22px}.cardttl{font-family:var(--font-display);font-weight:800;font-size:16px;margin:0 0 2px;display:flex;align-items:center;gap:9px}.track{height:9px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.track .fl{height:100%;background:var(--mluv-yellow);border-radius:99px}.statrow{display:flex;gap:10px;margin-top:14px}.statrow .b{flex:1;background:var(--mluv-cream);border-radius:var(--r-sm);padding:11px 12px;text-align:center}.statrow .b .n{font-family:var(--font-display);font-weight:800;font-size:20px;line-height:1}.statrow .b .l{font-size:10.5px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:700;margin-top:5px}.backlink{display:inline-flex;align-items:center;gap:6px;color:var(--mluv-red-600);font-weight:700;font-size:14px;border:0;background:none;padding:4px 0;margin-bottom:8px;white-space:nowrap}.backlink .lucide{width:17px;height:17px}.grpcat{font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted);margin:18px 0 9px}.runner{max-width:680px;margin:0 auto;width:100%}.runtop{display:flex;align-items:center;gap:16px;margin-bottom:30px}.runtop .x{width:38px;height:38px;border-radius:50%;border:1px solid var(--mluv-line);background:var(--mluv-paper);display:flex;align-items:center;justify-content:center;color:var(--mluv-slate);flex:none}.pbar{flex:1;height:10px;background:var(--mluv-line);border-radius:99px;overflow:hidden}.pbar .fl{height:100%;background:var(--mluv-green);border-radius:99px;transition:width .35s ease}.runtop .ct{font-weight:800;font-size:13px;color:var(--mluv-muted);font-variant-numeric:tabular-nums;flex:none}.qhint{color:var(--mluv-muted);font-size:15px;font-weight:600}.qprompt{font-family:var(--font-display);font-weight:800;font-size:32px;letter-spacing:-.01em;margin:10px 0 28px;line-height:1.25}.opt{display:flex;align-items:center;gap:13px;width:100%;text-align:left;background:var(--mluv-paper);border:2px solid var(--mluv-line);border-radius:var(--r-md);padding:17px 18px;margin-bottom:12px;font-size:17px;font-weight:600;transition:.12s}.opt:hover{border-color:var(--mluv-faint)}.opt.sel{border-color:var(--mluv-blue-500);background:var(--mluv-blue-50)}.opt.ok{border-color:var(--mluv-success);background:var(--mluv-success-soft);color:#1c6b3e}.opt.no{border-color:var(--mluv-error);background:var(--mluv-error-soft);color:#9e231b}.opt .mk{margin-left:auto;font-weight:800}.feedback{border-radius:var(--r-md);padding:17px 18px;margin-top:8px;font-size:14.5px;line-height:1.55;display:flex;gap:11px;align-items:flex-start}.feedback.ok{background:var(--mluv-success-soft);color:#1c6b3e}.feedback.no{background:var(--mluv-error-soft);color:#9e231b}.feedback b{font-weight:800}.runfoot{display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:12px}.cloze{font-size:21px;line-height:2.1;font-weight:600}.cloze .slot{display:inline-flex;align-items:center;justify-content:center;min-width:84px;height:38px;border-bottom:3px solid var(--mluv-blue-500);margin:0 4px;color:var(--mluv-blue-700);font-weight:800;vertical-align:middle;cursor:pointer;background:var(--mluv-blue-50);border-radius:6px 6px 0 0;padding:0 8px}.cloze .slot.empty{color:var(--mluv-faint);border-bottom-color:var(--mluv-line);background:transparent}.bank{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.bank .w{border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-pill);padding:10px 18px;font-weight:700;font-size:16px}.bank .w:hover{border-color:var(--mluv-blue-500);color:var(--mluv-blue-700)}.bank .w.used{opacity:.35;pointer-events:none}.done{max-width:520px;margin:30px auto;text-align:center;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);padding:46px 40px;box-shadow:var(--sh-sm)}.done .ring{width:120px;height:120px;margin:0 auto 8px}.done .big{font-family:var(--font-display);font-weight:800;font-size:46px;color:var(--mluv-green);letter-spacing:-.02em}.done h2{font-family:var(--font-display);font-weight:800;font-size:26px;margin:8px 0 6px}.done p{color:var(--mluv-muted);font-size:14.5px;margin:0 0 24px}.revstage{max-width:620px;margin:0 auto;width:100%}.revtop{display:flex;align-items:center;gap:14px;margin-bottom:8px}.revtop .acc{margin-left:auto;font-weight:800;font-size:14px;color:var(--mluv-slate)}.revcard{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-xl);box-shadow:var(--sh-sm);padding:40px 36px;text-align:center;margin-top:22px}.revcard .dir{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--mluv-muted)}.revcard .word{font-family:var(--font-display);font-weight:800;font-size:44px;letter-spacing:-.01em;margin:10px 0 4px}.revcard .gloss{font-size:14px;color:var(--mluv-muted)}.revinput{width:100%;box-sizing:border-box;font-size:20px;text-align:center;padding:16px;border:2px solid var(--mluv-line);border-radius:var(--r-md);margin-top:26px;font-weight:600}.revinput:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.verdict{border-radius:var(--r-md);padding:18px 20px;margin-top:18px;text-align:left}.verdict.ok{background:var(--mluv-success-soft)}.verdict.no{background:var(--mluv-error-soft)}.verdict .vh{display:flex;align-items:center;gap:9px;font-weight:800;font-size:15px}.verdict.ok .vh{color:#1c6b3e}.verdict.no .vh{color:#9e231b}.verdict .ans{font-size:15px;margin-top:8px}.verdict .ans b{font-weight:800}.verdict .note{font-size:13.5px;color:var(--mluv-slate);margin-top:6px;line-height:1.5}.fsrs{font-size:12.5px;color:var(--mluv-muted);margin-top:10px;display:flex;align-items:center;gap:6px}.askbtn{margin-top:12px;border:1px dashed var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-sm);padding:11px;width:100%;font-weight:700;font-size:13.5px;display:flex;align-items:center;justify-content:center;gap:8px}.chatq{margin-top:12px;display:flex;flex-direction:column;gap:10px}.bubble{border-radius:var(--r-md);padding:12px 15px;font-size:14px;line-height:1.5;max-width:85%}.bubble.me{background:var(--mluv-blue-600);color:#fff;align-self:flex-end}.bubble.ai{background:var(--mluv-cream);color:var(--mluv-ink);align-self:flex-start}.emptyst{text-align:center;padding:70px 30px;max-width:460px;margin:0 auto}.emptyst .orb{width:80px;height:80px;border-radius:24px;background:var(--mluv-success-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.emptyst h2{font-family:var(--font-display);font-weight:800;font-size:24px;margin:0 0 8px}.emptyst p{color:var(--mluv-muted);font-size:15px;line-height:1.55;margin:0 0 22px}.ptable{width:100%;border-collapse:collapse;margin:6px 0 18px;border:1px solid var(--mluv-line);border-radius:var(--r-md);overflow:hidden}.ptable th{background:var(--mluv-ink);color:#fff;font-size:12.5px;font-weight:700;padding:10px 13px;text-align:left}.ptable td{padding:10px 13px;border-bottom:1px solid var(--mluv-line-soft);font-size:14.5px}.ptable td:first-child{font-weight:800;color:var(--mluv-muted);font-size:12.5px}.ptable .cz{font-weight:700;font-family:var(--font-display)}.trrow{display:flex;align-items:center;gap:12px;margin-bottom:4px}.trlbl{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--mluv-muted);min-width:84px}.trsel{flex:1;font-family:var(--font-sans);font-size:14.5px;font-weight:600;padding:10px 12px;border:1.5px solid var(--mluv-line);border-radius:var(--r-sm);background:var(--mluv-paper);color:var(--mluv-ink)}.trinput{width:100%;box-sizing:border-box;font-family:var(--font-sans);font-size:16px;line-height:1.55;padding:13px 14px;border:1.5px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-canvas);color:var(--mluv-ink);resize:vertical;margin-top:12px}.trinput:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.trcount{text-align:right;font-size:12px;color:var(--mluv-muted);margin-top:5px;font-variant-numeric:tabular-nums}.trcount .warn{color:var(--mluv-orange);font-weight:700}.trcount .max{color:var(--mluv-red-600);font-weight:800}.trtoggles{display:flex;gap:6px;flex-wrap:wrap}.trtog{border:1.5px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-weight:700;font-size:13px;padding:7px 13px}.trtog.on{border-color:var(--mluv-ink);background:var(--mluv-ink);color:#fff}.trdetected{font-size:13px;color:var(--mluv-muted);margin-bottom:12px}.trres{margin-bottom:12px}.trcopy{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--mluv-line);background:var(--mluv-paper);color:var(--mluv-slate);border-radius:var(--r-pill);font-weight:700;font-size:12px;padding:5px 11px}.trcopy:hover{border-color:var(--mluv-faint);color:var(--mluv-ink)}.rwstreak{text-align:center}.rwstreak .big{font-family:var(--font-display);font-weight:800;font-size:44px;letter-spacing:-.02em;line-height:1}.rwstreak .sub{color:var(--mluv-muted);font-size:13.5px;margin-top:4px}.rwcal{display:flex;justify-content:center;gap:10px;margin-top:16px}.rwcald{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--mluv-faint)}.rwcald.on{color:var(--mluv-red-600)}.rwcald.vac{color:var(--mluv-green)}.rwcald .dl{font-size:11px;font-weight:700;color:var(--mluv-muted)}.rwcald .dd{font-size:15px}.rwxp{display:flex;flex-wrap:wrap;justify-content:center;gap:9px}.rwxp>*{flex:0 0 calc(33.333% - 6px)}.rwxpc{background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 8px;text-align:center;box-shadow:var(--sh-xs)}.rwxpc .n{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.01em;line-height:1}.rwxpc .l{font-size:10px;color:var(--mluv-muted);text-transform:uppercase;letter-spacing:.02em;font-weight:700;margin-top:6px}.rwshop{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--mluv-line-soft)}.rwshop:last-child{border-bottom:0}.rwshop .ic{font-size:24px;flex:none}.rwshop .mid{flex:1;min-width:0}.rwshop .mid .t{font-weight:700;font-size:14.5px;display:block}.rwshop .mid .d{font-size:12.5px;color:var(--mluv-muted);display:block}.rwshop .mid .own{font-size:11.5px;color:var(--mluv-green);font-weight:700;margin-top:2px;display:block}.rwshop .mid .own.on{color:var(--mluv-orange)}.rwbadges{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.rwbadge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;border:1px solid var(--mluv-line);border-radius:var(--r-md);background:var(--mluv-paper);text-align:center;min-width:0}.rwbadge.locked{opacity:.4}.rwbadge .bi{font-size:26px}.rwbadge .bl{font-size:11px;font-weight:700;color:var(--mluv-slate);line-height:1.2;max-width:100%;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.rwevent{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--mluv-line-soft)}.rwevent:last-child{border-bottom:0}.rwevent .ts{font-size:11.5px;color:var(--mluv-muted);font-weight:700;min-width:54px}.rwevent .ty{flex:1;font-size:13.5px;font-weight:600}.rwevent .xp{font-size:13px;font-weight:800;color:var(--mluv-green);font-variant-numeric:tabular-nums}.drilltag{display:inline-flex;align-items:center;gap:7px;background:#f3e9f6;color:var(--mluv-plum);border-radius:var(--r-pill);font-weight:800;font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;padding:5px 12px;margin-bottom:18px}.produce-input{width:100%;box-sizing:border-box;font-size:22px;font-weight:600;text-align:center;padding:16px;border:2px solid var(--mluv-line);border-radius:var(--r-md);font-family:var(--font-sans);color:var(--mluv-ink)}.produce-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.fillsentence{font-size:26px;line-height:1.7;font-weight:600;display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:6px 0 4px}.fillgap{font-size:24px;font-weight:800;text-align:center;border:0;border-bottom:3px solid var(--mluv-blue-500);background:var(--mluv-blue-50);border-radius:6px 6px 0 0;padding:2px 8px;color:var(--mluv-blue-700);font-family:var(--font-sans)}.fillgap:focus{outline:none}.fillgap.ok{border-bottom-color:var(--mluv-success);background:var(--mluv-success-soft);color:#1c6b3e}.fillgap.no{border-bottom-color:var(--mluv-error);background:var(--mluv-error-soft);color:#9e231b}.production-input{width:100%;box-sizing:border-box;font-size:17px;line-height:1.6;padding:15px 16px;border:2px solid var(--mluv-line);border-radius:var(--r-md);font-family:var(--font-sans);color:var(--mluv-ink);resize:vertical}.production-input:focus{outline:none;border-color:var(--mluv-blue-500);box-shadow:var(--sh-focus)}.goalpick{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.goalopt{flex:1;min-width:120px;border:1.5px solid var(--mluv-line);background:var(--mluv-paper);border-radius:var(--r-md);padding:14px 12px;text-align:left;transition:.15s}.goalopt:hover{border-color:var(--mluv-blue-100)}.goalopt.on{border-color:var(--mluv-red-600);background:var(--mluv-red-50);box-shadow:0 0 0 2px var(--mluv-red-100) inset}.goalopt .gv{font-family:var(--font-display);font-weight:800;font-size:22px}.goalopt .gl{font-size:12.5px;color:var(--mluv-slate);margin-top:2px}.goalopt.on .gl{color:var(--mluv-red-700)}.m-head{padding-top:calc(env(safe-area-inset-top) + 14px)}.m-lhead,.m-dhead{padding-top:calc(env(safe-area-inset-top) + 12px)}.m-head-brand{flex-direction:column;align-items:stretch;gap:12px}.m-brandbar{display:flex;align-items:center;justify-content:space-between}.m-brand{font-family:var(--font-display);font-weight:900;font-size:21px;color:var(--mluv-red-600);letter-spacing:-.03em;display:inline-flex;align-items:baseline;gap:7px}.m-brand .tag{font-family:var(--font-sans);font-weight:700;font-size:10.5px;color:var(--mluv-muted);letter-spacing:0}.m-headctrls{display:flex;align-items:center;gap:8px}.m-pill.stats{display:inline-flex;align-items:center;gap:4px}.m-pill.stats .sep{width:1px;height:13px;background:var(--mluv-line);margin:0 4px;display:inline-block}.m-tabs{position:fixed;left:0;right:0;bottom:0;z-index:50;padding-bottom:max(20px,calc(9px + env(safe-area-inset-bottom)))}.csbs .page{padding:calc(env(safe-area-inset-top) + 12px) 0 24px}.state-card{margin:16px 18px;max-width:calc(100% - 36px)}.screen.csbs>*{width:100%;min-width:0;max-width:100%}.m-app,.m-scroll{min-width:0;max-width:100%}.m-scroll{overflow-x:hidden}.csbs a{color:var(--mluv-red-700);-webkit-text-fill-color:currentColor;text-decoration:none}.csbs a:hover{color:var(--mluv-red-800, var(--mluv-red-700))}.mf-compose{flex-direction:row;align-items:center}.mf-vocabhead{display:flex;align-items:center;gap:8px;margin:2px 16px 8px;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--mluv-muted)}.mf-vocabhead>span:first-child{flex:1}.mf-vocab{margin:0 16px 12px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:2px 14px}.mf-vocab .vr .cz{flex:0 0 90px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mf-vocab .vr .en{flex:1;margin-left:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mf-vadd{display:inline-flex;align-items:center;gap:5px;margin-left:auto;flex:none;cursor:pointer;border:1.5px solid var(--mluv-blue-500);background:var(--mluv-paper);color:var(--mluv-blue-700);border-radius:var(--r-pill);font-weight:800;font-size:11.5px;padding:5px 11px}.mf-vadd.on{border-color:var(--mluv-green);background:var(--mluv-success-soft);color:#1c6b3e}.mf-vadd .lucide{width:13px;height:13px}.mf-note{position:relative;margin:0 16px 10px;background:var(--mluv-paper);border:1px solid var(--mluv-line);border-radius:var(--r-md);padding:13px 15px}.mf-note .nh{display:flex;align-items:center;gap:7px;font-weight:700;font-size:14px}.mf-note .nb{margin-top:8px;font-size:13.5px;line-height:1.6;white-space:pre-wrap;color:var(--mluv-ink)}}.v2app{--ink:#211F1B;--ink-2:#6A6358;--ink-3:#9A9387;--faint:#BCB5A7;--surface:rgba(255,255,255,.74);--surface-2:rgba(255,255,255,.52);--solid:#FCFBF8;--line:rgba(255,255,255,.9);--hair:rgba(45,36,24,.1);--accent:#F5503C;--accent-deep:#D63A28;--accent-soft:rgba(245,80,60,.1);--accent-tint:rgba(245,80,60,.16);--graphite:#3A352D;--graphite-2:#5C564B;--good:#1E8E55;--good-soft:rgba(30,142,85,.12);--amber:#C2851C;--amber-soft:rgba(194,133,28,.14);--gm:#3B6FE0;--gf:#D63A28;--gn:#1E8E55;--c-plum:#7A4E9E;--sh:0 1px 2px rgba(70,52,30,.05),0 10px 28px rgba(70,52,30,.12);--sh-pop:0 22px 54px rgba(70,52,30,.2);--font-display:"Bricolage Grotesque","Hanken Grotesk",system-ui,sans-serif;--font-sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;font-family:var(--font-sans);color:var(--ink);font-size:16px;-webkit-font-smoothing:antialiased;background:radial-gradient(70% 44% at 8% -2%,rgba(245,110,86,.16),transparent 60%),radial-gradient(56% 40% at 102% 4%,rgba(228,176,86,.12),transparent 58%),radial-gradient(80% 50% at 60% 108%,rgba(150,150,170,.12),transparent 62%),#f3efe8}.v2app *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.v2app .glass{background:var(--surface);border:1px solid var(--line);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);box-shadow:var(--sh)}.v2app .app{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column}.v2app .view{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.v2app .view::-webkit-scrollbar{width:0}.v2app .pad{padding:58px 18px 26px}.v2app .pad.nobar{padding-bottom:26px}.v2app .nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:12px;padding:50px 14px 12px;-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);background:#f3efe8b3;border-bottom:1px solid var(--hair)}.v2app .nav .back{width:38px;height:38px;border-radius:50%;border:0;background:var(--surface);border:1px solid var(--line);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer}.v2app .nav .ttl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.01em;color:var(--ink)}.v2app .nav .sp{margin-left:auto}.v2app .nav .act{flex:none;width:38px;height:38px;border-radius:50%;border:0;background:var(--surface);border:1px solid var(--line);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer}.v2app .tabs{flex:none;display:flex;padding:9px 10px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);background:#fbfaf7b8;border-top:1px solid var(--line)}.v2app .tabs button{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;border:0;background:none;cursor:pointer;color:var(--ink-3);font-family:var(--font-sans);font-weight:700;font-size:11px;padding:3px 0}.v2app .tabs button .licon{width:24px;height:24px}.v2app .tabs button.on{color:var(--accent)}.v2app .greet{display:flex;align-items:center;gap:12px;margin-bottom:16px}.v2app .greet .hi{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.02em}.v2app .greet .sub{font-size:13px;color:var(--ink-3);margin-top:2px}.v2app .streak{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:14px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--line);border-radius:99px;padding:7px 12px;cursor:pointer}.v2app .streak .licon{width:15px;height:15px}.v2app .tools{display:flex;gap:9px;margin-bottom:14px}.v2app .tool{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;border-radius:16px;padding:13px 0;cursor:pointer;background:var(--surface);border:1px solid var(--line);-webkit-backdrop-filter:blur(20px) saturate(165%);backdrop-filter:blur(20px) saturate(165%);box-shadow:var(--sh)}.v2app .tool .licon{width:20px;height:20px;color:var(--ink-2)}.v2app .tool .l{font-size:11.5px;font-weight:700;color:var(--ink-2)}.v2app .hero{border-radius:26px;padding:22px 20px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(150deg,#f96b53,#d8392612 110%),linear-gradient(150deg,#f96b53,#d43a28);box-shadow:0 20px 46px #d63a284d}.v2app .hero .ovl{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#ffffffc7}.v2app .hero .big{font-family:var(--font-display);font-weight:800;font-size:29px;line-height:1.08;letter-spacing:-.02em;margin-top:9px}.v2app .hero .seq{display:flex;align-items:center;gap:7px;margin-top:14px;flex-wrap:wrap}.v2app .hero .sc{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;background:#fff3;border-radius:99px;padding:6px 11px}.v2app .hero .sc .licon{width:14px;height:14px}.v2app .hero .seq .licon.ar{width:15px;height:15px;color:#fff9}.v2app .hero .est{font-size:12.5px;color:#ffffffd9;margin-top:13px}.v2app .hero .start{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin-top:15px;border:0;border-radius:99px;background:#fff;color:var(--accent-deep);font-family:var(--font-display);font-weight:800;font-size:18px;padding:15px 0;cursor:pointer}.v2app .hero .start .licon{width:19px;height:19px}.v2app .hero .ring{position:absolute;top:18px;right:18px}.v2app .hero .ovl,.v2app .hero .big{padding-right:56px}.v2app .slab{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);margin:22px 4px 11px;display:flex;align-items:center}.v2app .slab:before{content:"";width:16px;height:2.5px;border-radius:2px;background:var(--accent);margin-right:9px;opacity:.85;flex:none}.v2app .slab .more{margin-left:auto;letter-spacing:0;text-transform:none;font-size:12.5px;font-weight:700;color:var(--accent);cursor:pointer}.v2app .rrow{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border-radius:18px;padding:14px;margin-bottom:10px;cursor:pointer;background:var(--surface);border:1px solid var(--line);-webkit-backdrop-filter:blur(22px) saturate(168%);backdrop-filter:blur(22px) saturate(168%);box-shadow:var(--sh)}.v2app .rrow .ic{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex:none;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite)}.v2app .rrow .ic.accent{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.v2app .rrow .ic .licon{width:21px;height:21px}.v2app .rrow .tx{flex:1;min-width:0}.v2app .rrow .tx .t{display:block;font-weight:700;font-size:15px}.v2app .rrow .tx .d{display:block;font-size:12.5px;color:var(--ink-3);margin-top:1px}.v2app .rrow .meta{font-family:var(--font-display);font-weight:800;font-size:17px;color:var(--ink-2)}.v2app .rrow .chev{color:var(--faint)}.v2app .bar{height:6px;border-radius:99px;background:var(--hair);overflow:hidden;margin-top:8px}.v2app .bar .fl{height:100%;border-radius:99px;background:var(--graphite)}.v2app .runtop{display:flex;align-items:center;gap:12px;padding:50px 16px 8px}.v2app .runtop .x{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer}.v2app .runtop .pb{flex:1;height:7px;border-radius:99px;background:var(--hair);overflow:hidden}.v2app .runtop .pb .fl{height:100%;border-radius:99px;background:var(--accent);transition:width .4s}.v2app .runtop .ct{font-family:var(--font-mono);font-size:12px;color:var(--ink-3)}.v2app .runbody{flex:1;padding:10px 22px 26px;display:flex;flex-direction:column;overflow-y:auto}.v2app .kind{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-top:16px;display:flex;align-items:center;gap:7px}.v2app .kind .licon{width:14px;height:14px}.v2app .prompt{font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:-.01em;line-height:1.14;margin-top:10px}.v2app .suben{font-size:15px;color:var(--ink-3);margin-top:8px}.v2app .tinput{margin-top:20px;width:100%;border:1.5px solid var(--line);background:var(--solid);color:var(--ink);border-radius:14px;padding:15px 16px;font-family:var(--font-sans);font-size:17px;box-shadow:var(--sh)}.v2app .tinput:focus{outline:none;border-color:var(--accent)}.v2app .opts{display:flex;flex-direction:column;gap:10px;margin-top:18px}.v2app .opt{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;padding:15px 16px;font-family:var(--font-sans);font-weight:600;font-size:16px;cursor:pointer;text-align:left;box-shadow:var(--sh)}.v2app .opt .gd{width:11px;height:11px;border-radius:50%;flex:none}.v2app .opt.ok{border-color:var(--good);background:var(--good-soft)}.v2app .opt.no{border-color:var(--accent);background:var(--accent-soft)}.v2app .opt .mk{margin-left:auto;color:var(--good)}.v2app .wintro{margin-top:18px;border-radius:20px;padding:22px;text-align:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.v2app .wintro .gtag{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-radius:99px;padding:4px 10px}.v2app .wintro .cz{font-family:var(--font-display);font-weight:800;font-size:34px;letter-spacing:-.01em;margin-top:12px}.v2app .wintro .en{font-size:16px;color:var(--ink-2);margin-top:6px}.v2app .wintro .ex{font-size:13.5px;color:var(--ink-3);margin-top:14px;font-style:italic;line-height:1.5;border-top:1px solid var(--hair);padding-top:14px}.v2app .runfoot{flex:none;padding:14px 18px calc(16px + env(safe-area-inset-bottom))}.v2app .btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;white-space:nowrap;border:0;border-radius:99px;font-family:var(--font-display);font-weight:800;font-size:17px;padding:15px 0;cursor:pointer;background:var(--accent);color:#fff;box-shadow:0 8px 20px #d63a2842}.v2app .btn:disabled{background:var(--faint);box-shadow:none;color:#fff}.v2app .btn.good{background:var(--good);box-shadow:0 8px 20px #1e8e553d}.v2app .btn.ghost{background:var(--surface);border:1.5px solid var(--line);color:var(--ink);box-shadow:var(--sh)}.v2app .verdict{margin-top:18px;border-radius:16px;padding:15px 16px;background:var(--good-soft);border:1px solid rgba(30,142,85,.2)}.v2app .verdict .vl{font-weight:800;color:var(--good);font-size:13px}.v2app .verdict .ans{font-family:var(--font-display);font-weight:800;font-size:22px;margin-top:3px}.v2app .verdict .nr{font-size:12.5px;color:var(--ink-3);margin-top:6px}.v2app .done{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 30px;min-height:100%;box-sizing:border-box;background:none;border:0;border-radius:0;box-shadow:none;max-width:none;margin:0}.v2app .done .ck{width:90px;height:90px;border-radius:50%;background:var(--good-soft);color:var(--good);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 8px #1e8e5512}.v2app .done .ck .licon{width:44px;height:44px}.v2app .done h2{font-family:var(--font-display);font-weight:800;font-size:27px;margin:18px 0 0}.v2app .done p{font-size:14.5px;color:var(--ink-2);margin:8px 0 0;line-height:1.5}.v2app .done .tomo{display:flex;align-items:center;gap:11px;border-radius:16px;padding:14px;margin-top:22px;width:100%;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .done .tomo .ic{width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;flex:none}.v2app .done .tomo .t{font-weight:700;font-size:13.5px;text-align:left}.v2app .done .tomo .d{font-size:12px;color:var(--ink-3);text-align:left;margin-top:1px}.v2app .lhead .eye{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.v2app .lhead h1{font-family:var(--font-display);font-weight:800;font-size:27px;letter-spacing:-.02em;margin:8px 0 0}.v2app .lhead .sum{font-size:14px;color:var(--ink-2);margin-top:8px;line-height:1.5}.v2app .lprog{display:flex;gap:10px;margin-top:16px}.v2app .lprog .b{flex:1;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:var(--sh)}.v2app .lprog .b .l{font-size:11px;color:var(--ink-3);font-weight:700}.v2app .lprog .b .v{font-family:var(--font-display);font-weight:800;font-size:19px;margin-top:3px}.v2app .seg{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px;margin:18px 0 14px}.v2app .seg button{flex:1;border:0;background:none;border-radius:9px;padding:9px 0;font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink-3);cursor:pointer}.v2app .seg button.on{background:var(--solid);color:var(--ink);box-shadow:var(--sh)}.v2app .subhead{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:18px 2px 10px}.v2app .tile{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border-radius:15px;padding:14px;margin-bottom:9px;cursor:pointer;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .tile .ic{width:40px;height:40px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite);display:flex;align-items:center;justify-content:center;flex:none}.v2app .tile.exam .ic{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.v2app .tile .tx{flex:1;min-width:0}.v2app .tile .tx .t{display:block;font-weight:700;font-size:14.5px}.v2app .tile .tx .d{display:block;font-size:12px;color:var(--ink-3);margin-top:2px}.v2app .tile .tx .src{display:block;font-size:11px;color:var(--ink-3);font-family:var(--font-mono);margin-top:3px}.v2app .tile .chev{color:var(--faint)}.v2app .tile .pdone{font-size:11px;font-weight:800;color:var(--ink-3)}.v2app .cpill{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:5px 11px}.v2app .cttl{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.02em;margin:12px 0 0}.v2app .vrow{display:flex;align-items:center;gap:13px;border-radius:14px;padding:11px 13px;margin-bottom:8px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .vrow .ph{width:46px;height:46px;border-radius:11px;flex:none;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--faint)}.v2app .vrow .gd{width:10px;height:10px;border-radius:50%;flex:none}.v2app .vrow .tx{flex:1;min-width:0}.v2app .vrow .cz{font-weight:700;font-size:16px}.v2app .vrow .cz .fem{color:var(--ink-3);font-weight:500}.v2app .vrow .en{font-size:13px;color:var(--ink-3);margin-top:1px}.v2app .vrow .gt{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);border:1px solid var(--line);border-radius:99px;padding:3px 8px}.v2app .para{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh);margin-top:6px}.v2app .para table{width:100%;border-collapse:collapse;background:var(--surface)}.v2app .para th,.v2app .para td{padding:11px 13px;font-size:14px;text-align:left;border-bottom:1px solid var(--hair)}.v2app .para th{font-weight:800;color:var(--ink-2);font-size:12px;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2)}.v2app .para td.lbl{font-weight:700;color:var(--ink-2)}.v2app .para tr:last-child td{border-bottom:0}.v2app .gloss{font-size:14.5px;line-height:1.65;color:var(--ink-2);margin-top:14px}.v2app .gloss b{color:var(--ink)}.v2app .exline{display:flex;flex-direction:column;gap:9px;margin-top:14px}.v2app .exline .e{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;box-shadow:var(--sh)}.v2app .exline .e .cs{font-weight:700;font-size:15px}.v2app .exline .e .en{font-size:13px;color:var(--ink-3);margin-top:2px}.v2app .fchips{display:flex;gap:8px;overflow-x:auto;margin:0 -18px 14px;padding:0 18px}.v2app .fchips::-webkit-scrollbar{height:0}.v2app .fchip{flex:none;font-size:13px;font-weight:700;border-radius:99px;padding:8px 14px;cursor:pointer;background:var(--surface);border:1px solid var(--line);color:var(--ink-2)}.v2app .fchip.on{background:var(--graphite);color:#fff;border-color:transparent}.v2app .classhdr{display:flex;align-items:center;gap:13px;border-radius:18px;padding:15px;margin-bottom:15px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .classhdr .em{width:46px;height:46px;border-radius:13px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:22px;flex:none}.v2app .classhdr .t{font-family:var(--font-display);font-weight:800;font-size:18px}.v2app .classhdr .s{font-size:12.5px;color:var(--ink-3);margin-top:2px}.v2app .classhdr .chat{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer;position:relative}.v2app .classhdr .chat .dot{position:absolute;top:7px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:1.5px solid var(--solid)}.v2app .cseg{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:4px;margin-bottom:15px}.v2app .cseg button{flex:1;border:0;background:none;border-radius:9px;padding:9px 0;font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink-3);cursor:pointer}.v2app .cseg button.on{background:var(--solid);color:var(--ink);box-shadow:var(--sh)}.v2app .pin{display:flex;gap:11px;border-radius:14px;padding:12px 14px;margin-bottom:13px;background:var(--surface-2);border:1px solid var(--line)}.v2app .pin .av{width:32px;height:32px;border-radius:50%;background:var(--graphite);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}.v2app .pin .who{font-weight:700;font-size:13px}.v2app .pin .tp{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--line);border-radius:99px;padding:2px 7px;margin-left:6px}.v2app .pin .tx{font-size:13px;color:var(--ink-2);margin-top:3px;line-height:1.5}.v2app .hwcard{border-radius:18px;padding:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .hwcard.due{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--sh)}.v2app .hwcard .top{display:flex;align-items:center;gap:9px}.v2app .hwcard .eye{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.v2app .hwcard .due{margin-left:auto;font-size:11px;font-weight:800;border-radius:99px;padding:4px 10px;background:var(--amber-soft);color:var(--amber);white-space:nowrap}.v2app .hwcard h3{font-family:var(--font-display);font-weight:800;font-size:18px;margin:9px 0 0}.v2app .hwitem{display:flex;align-items:center;gap:11px;margin-top:11px}.v2app .hwitem .tic{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:none;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite)}.v2app .hwitem .nm{flex:1;font-size:13.5px;font-weight:600}.v2app .hwitem .k{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);border:1px solid var(--line);border-radius:99px;padding:3px 8px}.v2app .hwbtn{display:block;width:100%;margin-top:14px;border:0;border-radius:99px;background:var(--accent);color:#fff;font-family:var(--font-display);font-weight:800;font-size:15.5px;padding:13px 0;cursor:pointer;box-shadow:0 8px 18px #d63a283d}.v2app .hwdlbl{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin:10px 0 4px;display:flex;align-items:center;gap:5px}.v2app .hwdlbl:first-child{margin-top:0}.v2app .hwdlbl.good{color:var(--good)}.v2app .matgrp{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin:4px 2px 10px}.v2app .mat{display:flex;align-items:center;gap:12px;border-radius:14px;padding:12px 14px;margin-bottom:9px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer}.v2app .mat .ic{width:38px;height:38px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite);display:flex;align-items:center;justify-content:center;flex:none}.v2app .mat .tx{flex:1;min-width:0}.v2app .mat .t{font-weight:700;font-size:14px}.v2app .mat .d{font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .mat .add{font-size:12px;font-weight:800;color:var(--accent);border:1px solid var(--line);background:var(--accent-soft);border-radius:99px;padding:6px 11px;flex:none}.v2app .person{display:flex;align-items:center;gap:12px;border-radius:13px;padding:11px 13px;margin-bottom:8px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .person.you{border-color:var(--accent);background:var(--accent-soft)}.v2app .person .rk{width:22px;text-align:center;font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--ink-3);flex:none}.v2app .person .av{width:38px;height:38px;border-radius:50%;background:var(--surface-2);border:1px solid var(--line);color:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex:none}.v2app .person .nm{flex:1;font-weight:700;font-size:14px}.v2app .person .tp{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--line);border-radius:99px;padding:2px 7px}.v2app .person .xp{font-size:12.5px;font-weight:700;color:var(--ink-3);font-variant-numeric:tabular-nums}.v2app .chatwrap{display:flex;flex-direction:column;height:100%}.v2app .chatscroll{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:11px}.v2app .msg{max-width:78%;border-radius:16px;padding:10px 13px;font-size:14px;line-height:1.45;box-shadow:var(--sh)}.v2app .msg .who{font-size:11px;font-weight:800;color:var(--accent);margin-bottom:3px}.v2app .msg.them{align-self:flex-start;background:var(--surface);border:1px solid var(--line)}.v2app .msg.me{align-self:flex-end;background:var(--accent);color:#fff}.v2app .chatbar{flex:none;display:flex;gap:9px;padding:12px 14px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--hair);background:#f3efe8b3;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.v2app .chatbar input{flex:1;border:1px solid var(--line);background:var(--solid);border-radius:99px;padding:11px 16px;font-family:var(--font-sans);font-size:15px}.v2app .chatbar input:focus{outline:none;border-color:var(--accent)}.v2app .chatbar .send{width:44px;height:44px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer}.v2app .mehead{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;padding-top:6px}.v2app .mehead .av{width:76px;height:76px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:30px;box-shadow:0 10px 24px #d63a2847}.v2app .mehead h2{font-family:var(--font-display);font-weight:800;font-size:22px;margin:0}.v2app .mehead .s{font-size:13px;color:var(--ink-3)}.v2app .mestats{display:flex;gap:10px;margin:18px 0}.v2app .mestat{flex:1;border-radius:16px;padding:14px 8px;text-align:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .mestat .n{font-family:var(--font-display);font-weight:800;font-size:23px}.v2app .mestat .l{font-size:11px;color:var(--ink-3);margin-top:4px;font-weight:600}.v2app .grp{border-radius:16px;overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-top:12px}.v2app .srow{display:flex;align-items:center;gap:13px;padding:14px 15px;border-bottom:1px solid var(--hair);cursor:pointer}.v2app .srow:last-child{border-bottom:0}.v2app .srow .ic{width:34px;height:34px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);display:flex;align-items:center;justify-content:center;flex:none}.v2app .srow .l{flex:1;font-weight:600;font-size:14.5px}.v2app .srow .v{font-size:13px;color:var(--ink-3)}.v2app .srow .chev{color:var(--faint)}.v2app .intensity{display:flex;gap:8px;padding:13px 15px}.v2app .intensity button{flex:1;border:1.5px solid var(--line);background:var(--surface);border-radius:12px;padding:11px 4px;text-align:center;cursor:pointer}.v2app .intensity button.on{border-color:var(--accent);background:var(--accent-soft)}.v2app .intensity .iv{font-family:var(--font-display);font-weight:800;font-size:15px}.v2app .intensity .il{font-size:10.5px;color:var(--ink-3);margin-top:3px;font-weight:700}.v2app .intensity button.on .il{color:var(--accent)}.v2app .toggle{width:46px;height:28px;border-radius:99px;background:var(--hair);position:relative;flex:none;cursor:pointer;transition:background .2s}.v2app .toggle.on{background:var(--good)}.v2app .toggle .kn{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:left .2s}.v2app .toggle.on .kn{left:21px}.v2app .rewbanner{border-radius:20px;padding:22px;text-align:center;background:linear-gradient(150deg,#f96b53,#d43a28);color:#fff;box-shadow:0 18px 40px #d63a2847}.v2app .rewbanner .n{font-family:var(--font-display);font-weight:800;font-size:46px;line-height:1}.v2app .rewbanner .l{font-size:13px;opacity:.85;margin-top:6px;font-weight:600}.v2app .badges{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:8px}.v2app .badge{border-radius:16px;padding:16px 10px;text-align:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .badge .em{width:46px;height:46px;border-radius:13px;margin:0 auto;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center}.v2app .badge.locked .em{background:var(--surface-2);color:var(--faint)}.v2app .notif{display:flex;gap:12px;border-radius:14px;padding:13px;margin-bottom:9px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .notif.unread{border-color:var(--accent)}.v2app .notif .ic{width:38px;height:38px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite);display:flex;align-items:center;justify-content:center;flex:none}.v2app .notif .tx{flex:1}.v2app .notif .t{font-weight:700;font-size:14px}.v2app .notif .d{font-size:12.5px;color:var(--ink-3);margin-top:2px;line-height:1.4}.v2app .notif .when{font-size:11px;color:var(--faint);margin-top:4px}.v2app .tcard{border-radius:18px;padding:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .tcard .lang{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.v2app .tcard textarea{width:100%;border:0;background:none;resize:none;font-family:var(--font-sans);font-size:18px;color:var(--ink);margin-top:8px;min-height:70px}.v2app .tcard textarea:focus{outline:none}.v2app .tcard .out{font-family:var(--font-display);font-weight:700;font-size:20px;margin-top:8px}.v2app .swapdiv{display:flex;align-items:center;justify-content:center;margin:10px 0}.v2app .swapbtn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--solid);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--sh)}.v2app .askmsg{border-radius:16px;padding:13px 15px;margin-bottom:11px;font-size:14.5px;line-height:1.55}.v2app .askmsg.q{background:var(--accent);color:#fff;align-self:flex-end;max-width:80%;margin-left:auto}.v2app .askmsg.a{background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .askmsg.a b{color:var(--accent-deep)}.v2app .spprompt{border-radius:18px;padding:20px;text-align:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .spprompt .cz{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.01em}.v2app .spprompt .en{font-size:14px;color:var(--ink-3);margin-top:6px}.v2app .spprompt .hear{display:inline-flex;align-items:center;gap:7px;margin-top:14px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:99px;font-weight:700;font-size:13.5px;padding:9px 15px;cursor:pointer}.v2app .spmic{width:108px;height:108px;border-radius:50%;background:var(--accent);border:0;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 14px 30px #d63a2852;position:relative;margin:30px auto 0}.v2app .spmic.rec:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--accent);animation:v2-pulse 1.5s ease-out infinite}@keyframes v2-pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.6);opacity:0}}.v2app .spmic .licon{width:42px;height:42px}.v2app .sphint{text-align:center;font-size:13.5px;color:var(--ink-3);margin-top:14px}.v2app .spcmp{border-radius:14px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh);margin-top:16px}.v2app .spcmp .r{padding:12px 15px;border-bottom:1px solid var(--hair);background:var(--surface)}.v2app .spcmp .r:last-child{border-bottom:0}.v2app .spcmp .rl{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.v2app .spcmp .sv{font-size:17px;font-weight:700;margin-top:3px}.v2app .spcmp .sv .miss{color:var(--accent);text-decoration:underline wavy var(--accent);text-underline-offset:3px}.v2app .spcoach{display:flex;gap:10px;border-radius:14px;padding:13px 14px;margin-top:12px;background:var(--accent-soft);border:1px solid var(--line)}.v2app .spcoach .licon{color:var(--accent);flex:none;margin-top:1px}.v2app .spcoach .tx{font-size:13.5px;line-height:1.5}.v2app .spcoach .tx b{color:var(--accent-deep)}.v2app .schedchip{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-3);margin-top:10px}.v2app .gchip{font-size:11.5px;font-weight:800;border-radius:6px;padding:1px 6px;border:1.5px solid;margin-left:6px;display:inline-block;vertical-align:middle}.v2app .rvhint{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:600;color:var(--ink-2);background:var(--accent-soft);border-radius:12px;padding:5px 11px;margin-top:12px;line-height:1.4}.v2app .rvhint:before{content:"💡";font-size:13px}.v2app .runbody>.kind:first-child{margin-top:2px}.v2app .verdict .nr.why{color:var(--ink);font-size:14px;line-height:1.5;margin-top:8px}.v2app .verdict .nr.sub{display:inline-flex;align-items:center;gap:5px;color:var(--ink-3);margin-top:8px}.v2app .stoprev{display:block;margin:16px auto 2px;background:none;border:0;color:var(--ink-3);font-family:var(--font-sans);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.v2app .askopen{display:inline-flex;align-items:center;gap:8px;margin-top:14px;background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:11px 16px;font-family:var(--font-sans);font-weight:700;font-size:14px;color:var(--accent-deep);box-shadow:var(--sh);cursor:pointer}.v2app .askbox{margin-top:14px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh);padding:12px;display:flex;flex-direction:column;gap:8px}.v2app .askmsg{font-size:14px;line-height:1.5;border-radius:12px;padding:9px 12px;max-width:92%;white-space:pre-wrap}.v2app .askmsg.user{align-self:flex-end;background:var(--accent-soft);color:var(--accent-deep);font-weight:600}.v2app .askmsg.assistant{align-self:flex-start;background:var(--faint);color:var(--ink)}.v2app .askmsg.dim{color:var(--ink-3)}.v2app .askrow{display:flex;gap:8px;align-items:center}.v2app .askrow .tinput{margin-top:0;flex:1}.v2app .askrow .btn{width:auto;flex:none;padding-left:18px;padding-right:18px}.v2app .asksugg{display:flex;flex-wrap:wrap;gap:7px}.v2app .asugg{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:99px;padding:7px 12px;font-family:var(--font-sans);font-weight:600;font-size:12.5px;cursor:pointer}.v2app .asugg:active{background:var(--surface-2)}.v2app .rvcull{display:flex;gap:9px;margin-top:18px}.v2app .rvcull button{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-weight:700;font-size:12.5px;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:8px 13px;cursor:pointer;box-shadow:var(--sh)}.v2app .rvcull button .licon{width:14px;height:14px}.v2app .idkrow{display:flex;gap:10px}.v2app .idkrow .btn{width:auto}.v2app .idkrow .idk{flex:0 0 auto;white-space:nowrap;background:var(--surface);border:1.5px solid var(--line);color:var(--ink);box-shadow:var(--sh)}.v2app .idkrow .sub{flex:1}.v2app .followup{margin-top:14px;border-radius:14px;padding:13px 14px;background:var(--surface-2);border:1px solid var(--line)}.v2app .followup .fh{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--ink-2)}.v2app .followup .fi{display:flex;gap:8px;margin-top:10px}.v2app .followup .fi input{flex:1;border:1px solid var(--line);background:var(--solid);border-radius:99px;padding:9px 13px;font-family:var(--font-sans);font-size:13.5px}.v2app .followup .fi input:focus{outline:none;border-color:var(--accent)}.v2app .followup .fi .s{width:38px;height:38px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.v2app .verdict.note{background:var(--amber-soft);border-color:#c2851c40}.v2app .verdict.note .vl{color:var(--amber)}.v2app .verdict.no{background:var(--accent-soft);border-color:#d63a2838}.v2app .verdict.no .vl{color:var(--accent-deep)}.v2app .syncrow{display:flex;align-items:center;gap:12px;border-radius:16px;padding:14px;margin-bottom:11px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .syncrow .logo{width:42px;height:42px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none}.v2app .syncrow .tx{flex:1;min-width:0}.v2app .syncrow .t{font-weight:700;font-size:14.5px}.v2app .syncrow .d{font-size:12px;color:var(--ink-3);margin-top:2px}.v2app .syncrow .st{font-size:11px;font-weight:800;border-radius:99px;padding:5px 10px;white-space:nowrap}.v2app .syncrow .st.ok{color:var(--good);background:var(--good-soft)}.v2app .syncrow .st.sync{color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line)}.v2app .scanbox{border-radius:16px;height:150px;position:relative;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh);margin-top:6px;background:#fffdf7;background-image:repeating-linear-gradient(transparent,transparent 13px,rgba(0,0,0,.05) 13px,rgba(0,0,0,.05) 14px)}.v2app .scanline{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 14px 2px var(--accent);animation:v2-scn 2.1s ease-in-out infinite}@keyframes v2-scn{0%,to{top:6%}50%{top:92%}}.v2app .dgzout{display:flex;align-items:center;gap:10px;border-radius:12px;padding:11px 13px;margin-top:9px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .dgzout .ic{width:30px;height:30px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite);display:flex;align-items:center;justify-content:center;flex:none}.v2app .dgzout .t{flex:1;font-size:13px;font-weight:700}.v2app .dgzout .t .s{display:block;font-size:11.5px;color:var(--ink-3);font-weight:500;margin-top:1px}.v2app .dgzout .got{color:var(--good);flex:none}.v2app .empty{text-align:center;padding:60px 30px}.v2app .ic.tb,.v2app .tic.tb,.v2app .logo.tb,.v2app .dgzout .ic.tb{background:#3b6fe01f;border-color:transparent;color:#3b6fe0}.v2app .ic.tt,.v2app .tic.tt,.v2app .logo.tt,.v2app .dgzout .ic.tt{background:#148c8c21;border-color:transparent;color:#138a8a}.v2app .ic.ta,.v2app .tic.ta,.v2app .logo.ta,.v2app .dgzout .ic.ta{background:#c2851c24;border-color:transparent;color:#b07814}.v2app .ic.tp,.v2app .tic.tp,.v2app .logo.tp,.v2app .dgzout .ic.tp{background:#7a4e9e21;border-color:transparent;color:#7a4e9e}.v2app .ic.tg,.v2app .tic.tg,.v2app .logo.tg,.v2app .dgzout .ic.tg{background:#1e8e5521;border-color:transparent;color:#1e8e55}.v2app .ic.tc,.v2app .tic.tc{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.v2app .tool.tb .licon{color:#3b6fe0}.v2app .tool.tp .licon{color:#7a4e9e}.v2app .tool.tc .licon{color:var(--accent)}.v2app .tool.tb{background:#3b6fe012}.v2app .tool.tp{background:#7a4e9e12}.v2app .tool.tc{background:var(--accent-soft)}.v2app .notif .ic.tb{color:#3b6fe0;background:#3b6fe01f;border-color:transparent}.v2app .notif .ic.tp{color:#7a4e9e;background:#7a4e9e1f;border-color:transparent}.v2app .notif .ic.ta{color:#b07814;background:#c2851c24;border-color:transparent}.v2app .notif .ic.tc{color:var(--accent);background:var(--accent-soft);border-color:transparent}.v2app .greet .bell{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--sh);-webkit-backdrop-filter:blur(20px) saturate(165%);backdrop-filter:blur(20px) saturate(165%)}.v2app .greet .bell .dot{position:absolute;top:9px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--solid)}.v2app .tile.read{background:var(--good-soft);border-color:#1e8e5547}.v2app .tile.read .ic{background:#1e8e5529;border-color:transparent;color:var(--good)}.v2app .tile .pdone.ok{color:var(--good);display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:12px}.v2app .readbanner{display:flex;align-items:center;gap:9px;border-radius:14px;padding:12px 14px;margin-top:16px;background:var(--good-soft);border:1px solid rgba(30,142,85,.28);color:#14663b;font-weight:700;font-size:14px}.v2app .readbanner .licon{color:var(--good);flex:none}.v2app .trsub{font-size:13px;color:var(--ink-3);line-height:1.5;margin:6px 0 16px}.v2app .trcard{border-radius:18px;padding:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);-webkit-backdrop-filter:blur(22px) saturate(170%);backdrop-filter:blur(22px) saturate(170%)}.v2app .trrow{display:flex;align-items:center;gap:10px;margin-bottom:11px}.v2app .trrow .lbl{font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);flex:none;width:78px}.v2app .trsel{flex:1;border:1.5px solid var(--line);background:var(--solid);border-radius:11px;padding:10px 12px;font-family:var(--font-sans);font-size:14.5px;font-weight:600;color:var(--ink)}.v2app .trtext{width:100%;border:1.5px solid var(--line);background:var(--solid);border-radius:13px;padding:13px 14px;font-family:var(--font-sans);font-size:17px;color:var(--ink);resize:none;min-height:84px}.v2app .trtext:focus{outline:none;border-color:var(--accent)}.v2app .trtogs{display:flex;gap:7px;flex:1}.v2app .trtog{flex:1;border:1.5px solid var(--line);background:var(--solid);border-radius:10px;padding:9px 0;font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--ink-2);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px}.v2app .trtog.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep)}.v2app .trbtns{display:flex;gap:10px;margin-top:14px}.v2app .trbtns .btn{width:auto;padding-left:20px;padding-right:20px}.v2app .trbtns .go{flex:1}.v2app .trdetect{font-size:12.5px;color:var(--ink-3);margin:16px 2px 10px}.v2app .trdetect b{color:var(--ink)}.v2app .trres{border-radius:16px;padding:15px 16px;margin-bottom:10px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .trres .h{display:flex;align-items:center;gap:8px;margin-bottom:8px}.v2app .trres .lg{font-weight:800;font-size:13px}.v2app .trres .cp{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--ink-3);border:1px solid var(--line);background:var(--surface-2);border-radius:99px;padding:5px 10px;cursor:pointer}.v2app .trres .txt{font-family:var(--font-display);font-weight:700;font-size:19px;line-height:1.3}.v2app .askchips{display:flex;flex-direction:column;gap:9px;margin-top:6px}.v2app .askchip{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:12px 14px;font-family:var(--font-sans);font-weight:600;font-size:14px;color:var(--ink);cursor:pointer;box-shadow:var(--sh)}.v2app .askchip .licon{color:var(--c-plum,#7A4E9E);flex:none}.v2app .askrel{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.v2app .askrel a{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--accent-deep);background:var(--accent-soft);border:1px solid var(--line);border-radius:99px;padding:7px 12px;cursor:pointer}.v2app .askrel a .ll{font-size:10px;font-weight:800;color:var(--ink-3);background:var(--surface);border-radius:99px;padding:2px 6px}.v2app .askclear{font-size:12.5px;font-weight:700;color:var(--accent);background:none;border:0;cursor:pointer}.v2app .askdisc{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--ink-3);line-height:1.5;margin-top:12px;padding-top:12px;border-top:1px solid var(--hair)}.v2app .askdisc .licon{flex:none;margin-top:1px}.v2app .rew-hero{border-radius:22px;padding:22px;background:linear-gradient(150deg,#f96b53,#d43a28);color:#fff;box-shadow:0 18px 40px #d63a284d;position:relative;overflow:hidden}.v2app .rew-hero .flame{position:absolute;right:-10px;top:-10px;opacity:.18}.v2app .rew-hero .n{font-family:var(--font-display);font-weight:800;font-size:52px;line-height:1;display:flex;align-items:center;gap:10px}.v2app .rew-hero .lab{font-size:13px;opacity:.9;margin-top:4px;font-weight:600}.v2app .rew-stats{display:flex;gap:10px;margin:14px 0}.v2app .rew-stat{flex:1;border-radius:16px;padding:14px 8px;text-align:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .rew-stat .ic{width:30px;height:30px;border-radius:9px;margin:0 auto 7px;display:flex;align-items:center;justify-content:center}.v2app .rew-stat .n{font-family:var(--font-display);font-weight:800;font-size:21px}.v2app .rew-stat .l{font-size:10.5px;color:var(--ink-3);margin-top:2px;font-weight:600}.v2app .shop{display:flex;flex-direction:column;gap:11px}.v2app .shopcard{display:flex;align-items:center;gap:13px;border-radius:16px;padding:14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .shopcard .ic{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex:none}.v2app .shopcard .ic.vac{background:#3b6fe021;color:#3b6fe0}.v2app .shopcard .ic.xp{background:var(--accent-soft);color:var(--accent)}.v2app .shopcard .tx{flex:1;min-width:0}.v2app .shopcard .t{font-weight:700;font-size:15px}.v2app .shopcard .d{font-size:12.5px;color:var(--ink-3);margin-top:2px;line-height:1.4}.v2app .shopcard .buy{flex:none;display:inline-flex;align-items:center;gap:5px;font-family:var(--font-display);font-weight:800;font-size:14px;color:#fff;background:var(--accent);border:0;border-radius:99px;padding:10px 15px;cursor:pointer;box-shadow:0 6px 14px #d63a2838}.v2app .shopcard .buy .licon{width:15px;height:15px}.v2app .shopcard .buy.owned{background:var(--good);box-shadow:none}.v2app .badges{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.v2app .badge{border-radius:16px;padding:15px 9px;text-align:center;border:1px solid var(--line);box-shadow:var(--sh)}.v2app .badge .em{width:50px;height:50px;border-radius:15px;margin:0 auto;display:flex;align-items:center;justify-content:center;color:#fff}.v2app .badge.b1 .em{background:linear-gradient(140deg,#f96b53,#d43a28)}.v2app .badge.b2 .em{background:linear-gradient(140deg,#5b8cff,#2452b5)}.v2app .badge.b3 .em{background:linear-gradient(140deg,#3fbf85,#1e8e55)}.v2app .badge.locked{background:var(--surface-2)}.v2app .badge.locked .em{background:var(--surface);border:1.5px dashed var(--line);color:var(--faint)}.v2app .badge .bt{font-size:12px;font-weight:700;margin-top:9px}.v2app .badge .bd{font-size:10.5px;color:var(--ink-3);margin-top:2px}.v2app .dgzpick{border-radius:18px;border:1.5px dashed var(--line);background:var(--surface);box-shadow:var(--sh);padding:26px 18px;text-align:center}.v2app .dgzpick .ic{width:56px;height:56px;border-radius:16px;margin:0 auto;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center}.v2app .dgzpick .t{font-weight:700;font-size:15px;margin-top:12px}.v2app .dgzpick .d{font-size:12.5px;color:var(--ink-3);margin-top:4px;line-height:1.45}.v2app .dgzpick .row{display:flex;gap:10px;margin-top:16px}.v2app .dgzpick .row .btn{width:auto;flex:1}.v2app .scanwrap{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh);position:relative;background:#fffdf7}.v2app .scanwrap .hand{padding:18px;font-style:italic;font-size:13px;line-height:1.9;color:#3a3550;background-image:repeating-linear-gradient(transparent,transparent 15px,rgba(0,0,0,.05) 15px,rgba(0,0,0,.05) 16px)}.v2app .scanwrap .line{position:absolute;left:0;right:0;height:2.5px;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 16px 3px var(--accent);animation:v2-scn 2s ease-in-out infinite}.v2app .dgzprog{margin-top:14px}.v2app .dgzprog .pl{display:flex;justify-content:space-between;font-size:12.5px;font-weight:700;color:var(--ink-2);margin-bottom:6px}.v2app .dgzprog .tk{height:8px;border-radius:99px;background:var(--hair);overflow:hidden}.v2app .dgzprog .tk .fl{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--c-plum,#7A4E9E),var(--accent));transition:width .25s}.v2app .structcard{border-radius:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);padding:16px 17px}.v2app .structcard h4{font-family:var(--font-display);font-weight:800;font-size:16px;margin:0 0 8px}.v2app .structcard p{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:0 0 8px}.v2app .structcard ul{margin:0 0 8px;padding-left:18px}.v2app .structcard li{font-size:13.5px;line-height:1.6;color:var(--ink-2)}.v2app .structcard table{width:100%;border-collapse:collapse;margin-top:6px}.v2app .structcard th,.v2app .structcard td{border:1px solid var(--hair);padding:7px 9px;font-size:13px;text-align:left}.v2app .structcard th{background:var(--surface-2);font-weight:700}.v2app .dgzclean{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--c-plum,#7A4E9E);background:#7a4e9e1a;border-radius:99px;padding:5px 11px;margin-bottom:10px}.v2app .tickhead{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin:18px 2px 10px}.v2app .tickhead .n{margin-left:auto;color:var(--accent)}.v2app .tickrow{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border-radius:13px;padding:11px 13px;margin-bottom:8px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer}.v2app .tickrow .gd{width:10px;height:10px;border-radius:50%;flex:none}.v2app .tickrow .tx{flex:1;min-width:0}.v2app .tickrow .cz{font-weight:700;font-size:15px}.v2app .tickrow .en{font-size:12.5px;color:var(--ink-3);margin-top:1px}.v2app .tickrow .cb{width:26px;height:26px;border-radius:8px;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none;color:transparent;background:var(--solid)}.v2app .tickrow.on .cb{background:var(--good);border-color:var(--good);color:#fff}.v2app .tickrow.on{border-color:#1e8e554d;background:var(--good-soft)}.v2app .notecard{display:flex;gap:13px;width:100%;text-align:left;border-radius:16px;padding:13px;margin-bottom:11px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer}.v2app .notecard .thumb{width:54px;height:62px;border-radius:10px;flex:none;background:#fffdf7;border:1px solid var(--line);background-image:repeating-linear-gradient(transparent,transparent 9px,rgba(0,0,0,.06) 9px,rgba(0,0,0,.06) 10px);overflow:hidden;position:relative}.v2app .notecard .thumb .h{position:absolute;left:5px;right:5px;top:6px;font-style:italic;font-size:7px;line-height:1.5;color:#3a3550}.v2app .notecard .tx{flex:1;min-width:0}.v2app .notecard .t{font-weight:700;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2app .notecard .meta{font-size:12px;color:var(--ink-3);margin-top:3px;display:flex;gap:8px;flex-wrap:wrap}.v2app .notecard .ltag{font-size:10.5px;font-weight:800;color:var(--accent);background:var(--accent-soft);border-radius:99px;padding:2px 8px}.v2app .notecard{align-items:center}.v2app .notedel{flex:none;align-self:center;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--ink-3);cursor:pointer}.v2app .notedel:active{background:var(--hair);color:#d43a28}.mluv-bugfab{position:fixed;right:16px;bottom:calc(var(--tabbar-h, 64px) + 14px + env(safe-area-inset-bottom));z-index:900;width:46px;height:46px;border-radius:50%;border:none;background:linear-gradient(150deg,#f96b53,#d43a28);color:#fff;box-shadow:0 10px 24px #d63a2857;display:flex;align-items:center;justify-content:center;cursor:pointer}.mluv-bugfab:active{transform:scale(.93)}.mluv-bugscrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:950;background:#14100e70;display:flex;align-items:flex-end;justify-content:center;padding:16px}.mluv-bugsheet{width:100%;max-width:440px;background:var(--solid);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 60px #0000004d;padding:18px 18px 20px;margin-bottom:env(safe-area-inset-bottom)}.mluv-bughd{display:flex;align-items:center;gap:10px}.mluv-bughd .t{flex:1;font-family:var(--font-display);font-weight:800;font-size:18px;color:var(--ink)}.mluv-bughd .x{width:34px;height:34px;border-radius:10px;border:none;background:var(--hair);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.mluv-bugsub{font-size:13.5px;color:var(--ink-3);margin:7px 0 12px;line-height:1.42}.mluv-bugta{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:14px;padding:12px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--surface);resize:vertical;min-height:96px}.mluv-bugta:focus{outline:none;border-color:var(--accent)}.mluv-bugsend{width:100%;margin-top:12px;border:none;border-radius:99px;background:var(--accent);color:#fff;font-family:var(--font-display);font-weight:800;font-size:15.5px;padding:13px 0;cursor:pointer;box-shadow:0 8px 18px #d63a283d}.mluv-bugsend:disabled{opacity:.5;cursor:default;box-shadow:none}.mluv-bugdone{text-align:center;padding:8px 4px 2px}.mluv-bugdone .ic{width:56px;height:56px;border-radius:50%;background:var(--good-soft);color:var(--good);display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.mluv-bugdone .t{font-family:var(--font-display);font-weight:800;font-size:19px;color:var(--ink)}.mluv-bugdone .d{font-size:14px;color:var(--ink-3);margin:6px 0 16px;line-height:1.42}.v2app .hwq{border-radius:16px;padding:16px;background:var(--surface-2);border:1px solid var(--line)}.v2app .hwq .lab{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--c-plum,#7A4E9E)}.v2app .hwq .q{font-family:var(--font-display);font-weight:800;font-size:19px;margin-top:7px;line-height:1.2}.v2app .hwq .req{font-size:12.5px;color:var(--ink-3);margin-top:6px}.v2app .hwmodes{display:flex;gap:9px;margin:14px 0 12px}.v2app .hwmode{flex:1;border:1.5px solid var(--line);background:var(--surface);border-radius:11px;padding:11px 0;font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink-2);display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}.v2app .hwmode.on{border-color:var(--ink);background:var(--ink);color:var(--solid)}.v2app .hwta{width:100%;box-sizing:border-box;min-height:150px;border:1.5px solid var(--line);border-radius:14px;padding:13px 14px;font-family:var(--font-sans);font-size:15px;line-height:1.6;resize:none;color:var(--ink);background:var(--solid)}.v2app .hwta:focus{outline:none;border-color:var(--accent)}.v2app .hwphoto{border-radius:14px;border:1.5px dashed var(--line);background:var(--solid);padding:28px;text-align:center;color:var(--ink-3)}.v2app .hwsubmitted{display:flex;align-items:center;gap:11px;border-radius:14px;padding:14px;background:var(--good-soft);border:1px solid rgba(30,142,85,.28)}.v2app .hwsubmitted .licon{color:var(--good);flex:none}.v2app .hwsubmitted .tx{font-size:13.5px;font-weight:700;color:#14663b}.v2app .hwret{border-radius:14px;padding:14px;background:#3b6fe014;border:1px solid rgba(59,111,224,.2);margin-top:11px}.v2app .hwret .fh{display:flex;align-items:center;gap:9px}.v2app .hwret .av{width:30px;height:30px;border-radius:50%;background:var(--c-plum,#7A4E9E);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px}.v2app .hwret .nm{font-weight:700;font-size:13px}.v2app .hwret .gr{margin-left:auto;font-size:11px;font-weight:800;color:#fff;background:var(--good);border-radius:99px;padding:3px 10px}.v2app .hwret .body{font-size:13.5px;line-height:1.5;color:var(--ink);margin-top:9px}.v2app .brandmark{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.02em;color:var(--ink);line-height:1}.v2app .brandmark .dot{color:var(--accent)}.v2app .brandtop{display:flex;align-items:center;gap:10px;margin-bottom:14px}.v2app .mefoot{text-align:center;margin-top:26px;padding-bottom:8px}.v2app .mefoot .brandmark{font-size:17px;color:var(--ink-3)}.v2app .mefoot .v{font-size:11px;color:var(--faint);margin-top:4px}.v2app .thead2{padding:54px 18px 0}.v2app .thead2 .top{display:flex;align-items:center;margin-bottom:12px}.v2app .thead2 .mode{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border:1px solid var(--line);border-radius:99px;padding:5px 11px}.v2app .thead2 h1{font-family:var(--font-display);font-weight:800;font-size:25px;letter-spacing:-.02em;margin:0}.v2app .tcls{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border-radius:16px;padding:13px 14px;margin-bottom:10px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer}.v2app .tcls .time{width:52px;text-align:center;flex:none}.v2app .tcls .time .h{font-family:var(--font-display);font-weight:800;font-size:18px}.v2app .tcls .time .m{font-size:10px;color:var(--ink-3);text-transform:uppercase;font-weight:700;margin-top:2px}.v2app .tcls .dv{width:1px;align-self:stretch;background:var(--line)}.v2app .tcls .tx{flex:1;min-width:0}.v2app .tcls .tx .t{font-weight:700;font-size:15px}.v2app .tcls .tx .s{font-size:12px;color:var(--ink-3);margin-top:2px}.v2app .tcls .lv{font-size:11px;font-weight:800;color:#fff;border-radius:99px;padding:4px 9px;flex:none}.v2app .skbar{margin-bottom:12px}.v2app .skbar .l{display:flex;justify-content:space-between;font-size:13px;font-weight:700;margin-bottom:6px}.v2app .skbar .l .v{font-family:var(--font-display);color:var(--ink-2)}.v2app .skbar .tk{height:9px;border-radius:99px;background:var(--hair);overflow:hidden}.v2app .skbar .tk .fl{height:100%;border-radius:99px}.v2app .tsum{display:flex;gap:9px;margin-bottom:14px}.v2app .tsum .b{flex:1;border-radius:14px;padding:13px 8px;text-align:center;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .tsum .b .n{font-family:var(--font-display);font-weight:800;font-size:22px}.v2app .tsum .b .l{font-size:10px;color:var(--ink-3);font-weight:700;margin-top:5px}.v2app .tpill{font-size:10.5px;font-weight:800;border-radius:99px;padding:4px 9px;white-space:nowrap}.v2app .tpill.ok{color:var(--good);background:var(--good-soft)}.v2app .tpill.mid{color:#b07814;background:#c2851c24}.v2app .tpill.no{color:var(--ink-3);background:var(--surface-2)}.v2app .tgap{display:flex;align-items:flex-start;gap:12px;border-radius:14px;padding:14px;background:var(--ink);color:var(--solid);margin-top:14px}.v2app .tgap .licon{color:var(--amber);flex:none}.v2app .tgap .lab{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.6}.v2app .tgap .body{font-size:13.5px;margin-top:4px;line-height:1.5}.v2app .tbrief{border-radius:16px;padding:16px;background:linear-gradient(150deg,rgba(122,78,158,.1),var(--surface));border:1px solid var(--line);box-shadow:var(--sh)}.v2app .tbrief .h{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:800;font-size:15px}.v2app .tbrief p{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:10px 0 0}.v2app .cseg.cseg5 button{font-size:12px;padding:8px 2px}.v2app .curlek{display:flex;align-items:center;gap:10px;border-radius:14px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--line);margin-bottom:14px}.v2app .curlek .km{font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--accent);background:var(--accent-soft);border-radius:10px;padding:6px 10px;flex:none}.v2app .curlek .tx{flex:1}.v2app .curlek .lab{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.v2app .curlek .a{font-weight:700;font-size:14px}.v2app .curlek .step{display:flex;align-items:center;gap:6px}.v2app .curlek .step button{width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer}.v2app .joincode{display:flex;align-items:center;gap:12px;border-radius:16px;padding:14px;background:var(--ink);color:var(--solid);margin-top:14px}.v2app .joincode .ic{width:42px;height:42px;border-radius:12px;background:#ffffff24;display:flex;align-items:center;justify-content:center;flex:none}.v2app .joincode .lab{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.6}.v2app .joincode .code{font-family:var(--font-mono);font-weight:700;font-size:19px;letter-spacing:.08em;margin-top:2px}.v2app .joincode .acts{margin-left:auto;display:flex;flex-direction:column;gap:6px}.v2app .joincode .acts button{font-size:11px;font-weight:700;color:var(--solid);background:#ffffff24;border:0;border-radius:99px;padding:6px 11px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.v2app .asgn{border-radius:16px;padding:15px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-bottom:11px}.v2app .asgn .t{font-weight:700;font-size:15px}.v2app .asgn .chips{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.v2app .asgn .chip{font-size:10.5px;font-weight:800;border-radius:99px;padding:3px 9px}.v2app .asgn .chip.due{background:var(--amber-soft);color:#b07814}.v2app .asgn .chip.lek{background:var(--accent-soft);color:var(--accent-deep)}.v2app .asgn .body{font-size:13.5px;color:var(--ink-2);line-height:1.5;margin-top:9px}.v2app .asgn .subs{display:inline-flex;align-items:center;gap:6px;margin-top:11px;font-size:12.5px;font-weight:800;color:#3b6fe0;cursor:pointer;background:none;border:0;padding:0}.v2app .asgn .sublist{margin-top:10px;display:flex;flex-direction:column;gap:8px}.v2app .asgn .subrow{display:flex;align-items:center;gap:9px;font-size:13px}.v2app .asgn .subrow .av{width:26px;height:26px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:11px;flex:none}.v2app .asgn .subrow .nm{flex:1;font-weight:600}.v2app .asgnform{border-radius:16px;padding:15px;background:var(--surface-2);border:1px solid var(--line);margin-top:4px}.v2app .asgnform .fi{width:100%;box-sizing:border-box;border:1.5px solid var(--line);background:var(--solid);border-radius:11px;padding:10px 12px;font-family:var(--font-sans);font-size:14px;margin-bottom:9px;color:var(--ink)}.v2app .asgnform .fi:focus{outline:none;border-color:var(--accent)}.v2app .asgnform textarea.fi{min-height:80px;resize:none}.v2app .asgnform .frow{display:flex;gap:9px}.v2app .asgnform .frow .fi{flex:1}.v2app .gdoc{border-radius:16px;padding:15px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-bottom:11px}.v2app .gdoc .h{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin-bottom:11px}.v2app .gdoc .link{display:flex;align-items:center;gap:10px;border-radius:11px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);margin-bottom:8px}.v2app .gdoc .link .ic{width:32px;height:32px;border-radius:8px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none}.v2app .gdoc .link .tx{flex:1;min-width:0}.v2app .gdoc .link .nm{font-weight:700;font-size:13.5px}.v2app .gdoc .link .sy{font-size:11.5px;color:var(--good);margin-top:1px;display:flex;align-items:center;gap:4px}.v2app .gdoc .link .rv{font-size:12px;font-weight:800;color:#3b6fe0;background:#3b6fe01a;border:0;border-radius:99px;padding:6px 11px;cursor:pointer;flex:none}.v2app .gdoc .addlink{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:1.5px dashed var(--line);background:none;border-radius:11px;padding:11px 0;font-family:var(--font-display);font-weight:800;font-size:13.5px;color:var(--ink-2);cursor:pointer}.v2app .vrowt{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-bottom:8px}.v2app .vrowt .cb{width:22px;height:22px;border-radius:6px;border:2px solid var(--line);flex:none}.v2app .vrowt .lemma{font-weight:700;font-size:14.5px}.v2app .vrowt .tr{font-size:13px;color:var(--ink-3);margin-left:6px}.v2app .vsrc{font-size:9.5px;font-weight:800;text-transform:uppercase;border-radius:99px;padding:2px 7px;margin-left:auto;flex:none}.v2app .vsrc.manual{background:#3b6fe01f;color:#3b6fe0}.v2app .vsrc.ai{background:var(--good-soft);color:var(--good)}.v2app .streak7{display:flex;gap:5px;width:100%;margin-top:18px;align-items:flex-start}.v2app .streak7 .sd{flex:1 1 0!important;width:auto!important;min-width:0;overflow:visible;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0!important;justify-content:flex-start!important;border-radius:0!important}.v2app .streak7 .sd .dot{width:26px!important;height:26px!important;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff29;flex:none;overflow:hidden}.v2app .streak7 .sd .dot .licon{width:14px;height:14px;flex:none}.v2app .streak7 .sd.sdon .dot{background:#fff;color:var(--accent-deep)}.v2app .streak7 .sd.sdnow .dot{box-shadow:0 0 0 2.5px #fff9}.v2app .streak7 .sd .dl{font-size:9.5px;font-weight:700;opacity:.85}.v2app .emo{font-size:22px;line-height:1}.v2app .badge .em{background:var(--accent-soft)}.v2app .badge .em .emo{font-size:24px}.v2app .badge.locked .em{background:var(--faint);filter:grayscale(1);opacity:.6}.v2app .shopbal{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:800;color:var(--accent-deep)}.v2app .shopcard .own{font-size:10px;font-weight:800;color:var(--good);background:var(--good-soft);border-radius:99px;padding:2px 7px;margin-left:6px}.v2app .trinfo{font-size:12.5px;line-height:1.5;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:14px}.v2app .trtoggles{display:flex;gap:8px;margin-top:14px}.v2app .trcyc{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;align-items:flex-start;border:1.5px solid var(--line);background:var(--surface);border-radius:12px;padding:9px 11px;cursor:pointer;text-align:left}.v2app .trcyc .k{font-size:9.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.v2app .trcyc .v{font-size:13.5px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.v2app .trcyc.alt{border-color:var(--accent);background:var(--accent-soft)}.v2app .trcyc.alt .v{color:var(--accent-deep)}.v2app .nav .act.wide{width:auto;border-radius:99px;padding:0 13px;gap:5px;font-size:12.5px;font-weight:800;color:var(--ink-2)}.v2app button.notif{width:100%;text-align:left;font:inherit;align-items:center;cursor:pointer}.v2app .notif .ngo{color:var(--faint);flex:none}.v2app .srch{display:flex;align-items:center;gap:9px;background:var(--surface);border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:12px}.v2app .srch .licon{color:var(--ink-3);flex:none}.v2app .srch input{flex:1;border:0;background:none;outline:none;font-family:var(--font-sans);font-size:14px;color:var(--ink);min-width:0}.v2app .srch .clr{border:0;background:none;color:var(--faint);cursor:pointer;display:flex;flex:none}.v2app .wbbar{display:flex;align-items:center;gap:10px;margin:2px 2px 12px}.v2app .wbbar .c{flex:1;font-size:12px;font-weight:700;color:var(--ink-3)}.v2app .wbbar .lnk{border:0;background:none;color:var(--accent);font-weight:800;font-size:12.5px;cursor:pointer}.v2app .wbempty{text-align:center;color:var(--ink-3);font-size:13px;padding:24px}.v2app .vrow.wb{align-items:center}.v2app .vrow.wb .lk{color:var(--ink-3);font-weight:800}.v2app .vrow.wb.off{opacity:.5}.v2app .vrow.wb .toggle{flex:none;margin-left:auto}.v2app .streak-leg{display:flex;gap:14px;margin-top:13px;font-size:10.5px;font-weight:700;opacity:.92}.v2app .streak-leg span{display:inline-flex;align-items:center;gap:5px}.v2app .streak-leg i{flex:none;width:11px;height:11px;aspect-ratio:1;border-radius:50%;display:block}.v2app .streak-leg i.done{background:#fff}.v2app .streak-leg i.today{background:#fff;box-shadow:0 0 0 2px #ffffff80}.v2app .streak-leg i.up{background:#ffffff1f;border:1.5px solid rgba(255,255,255,.45)}.v2app .trfield{margin-top:14px}.v2app .trlab{display:block;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-bottom:7px}.v2app .trseg{display:flex;gap:7px}.v2app .trtog{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:10px 6px;border:1.5px solid var(--line);border-radius:11px;background:var(--surface);font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink-2);cursor:pointer}.v2app .trtog.on{border-color:var(--ink);background:var(--ink);color:var(--solid)}.v2app .trtog span{font-size:13px;opacity:.8}.v2app .dgztool{display:flex;align-items:center;gap:8px;margin-bottom:13px;flex-wrap:wrap}.v2app .dgzlek{flex:1;min-width:130px;border:1.5px solid var(--line);background:var(--surface);border-radius:10px;padding:9px 11px;font-family:var(--font-sans);font-weight:700;font-size:13.5px;color:var(--ink)}.v2app .dgzedit{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--ink-2);background:var(--surface);border:1.5px solid var(--line);border-radius:10px;padding:9px 11px;cursor:pointer}.v2app .tickrow.edit{cursor:default}.v2app .vedit{border:1.5px solid var(--line);border-radius:8px;padding:7px 9px;font-family:var(--font-sans);font-size:13.5px;background:var(--solid);color:var(--ink);min-width:0}.v2app .vedit.cz{font-weight:700;flex:1}.v2app .vedit.en{flex:1;color:var(--ink-2)}.v2app .vrm{width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink-3);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.v2app .dgzadd{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;border:1.5px dashed var(--line);background:none;border-radius:11px;padding:10px 0;font-weight:800;font-size:13px;color:var(--accent);cursor:pointer;margin-top:2px}.v2app .structcard [contenteditable=true]{outline:1.5px dashed var(--line);outline-offset:3px;border-radius:4px}.v2app .tickrow .cz,.v2app .tickrow .en{display:block}.v2app .askq{width:fit-content;max-width:85%;margin:0 0 14px auto;background:var(--ink);color:var(--solid);border-radius:16px 16px 4px;padding:11px 14px;font-size:14px;font-weight:600;line-height:1.45}.v2app .aska{margin-bottom:6px}.v2app .aska .amsg{font-size:14.5px;line-height:1.6;color:var(--ink)}.v2app .askbar{position:absolute;left:0;right:0;bottom:0;display:flex;gap:9px;align-items:flex-end;padding:12px 16px;background:var(--solid);border-top:1px solid var(--line)}.v2app .askbar textarea{flex:1;border:1.5px solid var(--line);border-radius:20px;padding:10px 14px;font-family:var(--font-sans);font-size:14.5px;line-height:1.4;resize:none;max-height:90px;background:var(--surface);color:var(--ink)}.v2app .askbar textarea:focus{outline:none;border-color:var(--accent)}.v2app .askbar .sb{width:42px;height:42px;flex:none;border-radius:50%;background:var(--accent);color:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.v2app .askbar .sb:disabled{opacity:.35;cursor:default}.v2app .empty .ic{width:78px;height:78px;border-radius:24px;margin:0 auto;background:var(--surface);border:1px solid var(--line);color:var(--ink-3);display:flex;align-items:center;justify-content:center;box-shadow:var(--sh)}.v2app .empty h3{font-family:var(--font-display);font-weight:800;font-size:21px;margin:18px 0 0}.v2app .empty p{font-size:14px;color:var(--ink-3);margin:8px 0 0;line-height:1.5}.v2app .licon{display:inline-block;vertical-align:middle;flex:none}.v2app .fbsent{font-family:var(--font-display);font-weight:800;font-size:24px;line-height:1.65;letter-spacing:-.01em;margin-top:14px;color:var(--ink)}.v2app .fbslot{display:inline-flex;align-items:center;justify-content:center;min-width:104px;padding:1px 12px;border-bottom:2.5px solid var(--accent);background:var(--accent-soft);border-radius:8px 8px 0 0;color:var(--accent);vertical-align:baseline}.v2app .fbslot.empty-slot{color:var(--ink-4);border-bottom-color:var(--line);background:var(--surface)}.v2app .fbchips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.v2app .fbchip{padding:11px 17px;border-radius:13px;border:1.5px solid var(--line);background:var(--solid);font-weight:800;font-size:15px;color:var(--ink);cursor:pointer;box-shadow:var(--sh);transition:transform .12s}.v2app .fbchip:active{transform:scale(.96)}.v2app .fbchip.used{opacity:.32;pointer-events:none}.v2app .beatkind{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4)}.v2app .prodbox{width:100%;min-height:108px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);padding:13px 15px;font-family:var(--font-sans);font-size:15.5px;line-height:1.5;color:var(--ink);resize:none;margin-top:16px}.v2app .prodbox:focus{outline:none;border-color:var(--accent);background:var(--solid)}.v2app .prodhint{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-size:13px;color:var(--ink-3);line-height:1.45}.v2app .resrow{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:15px 16px;border-radius:15px;border:1.5px solid var(--line);background:var(--solid);cursor:pointer;box-shadow:var(--sh)}.v2app .resrow+.resrow{margin-top:11px}.v2app .resrow .ri{width:42px;height:42px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent)}.v2app .resrow .rt{flex:1}.v2app .resrow .rt b{display:block;font-family:var(--font-display);font-weight:800;font-size:16px}.v2app .resrow .rt span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:1px}.v2app .pcgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.v2app .pccard{text-align:left;border:1.5px solid var(--line);background:var(--solid);border-radius:17px;padding:16px 15px 17px;cursor:pointer;box-shadow:var(--sh)}.v2app .pccard .pi{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);margin-bottom:12px}.v2app .pccard b{display:block;font-family:var(--font-display);font-weight:800;font-size:16px}.v2app .pccard span{display:block;font-size:12px;color:var(--ink-3);margin-top:3px;line-height:1.35}.v2app .sover{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column}.v2app .sover .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#11121457;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade .2s}.v2app .sover .panel{position:absolute;left:0;right:0;bottom:0;max-height:90%;background:var(--solid);border-radius:24px 24px 0 0;box-shadow:0 -18px 50px #11121438;display:flex;flex-direction:column;animation:sheetup .26s cubic-bezier(.2,.9,.3,1)}@keyframes v2-sheetup{0%{transform:translateY(100%)}to{transform:translateY(0)}}.v2app .sover .ph{display:flex;align-items:center;gap:11px;padding:18px 18px 12px;border-bottom:1px solid var(--line)}.v2app .sover .ph .gp{flex:1}.v2app .sover .ph .grip{width:40px;height:4px;border-radius:2px;background:var(--line);position:absolute;top:9px;left:50%;transform:translate(-50%)}.v2app .sover .pk{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.v2app .sover .pt{font-family:var(--font-display);font-weight:800;font-size:20px;letter-spacing:-.01em;margin-top:2px}.v2app .sover .pclose{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.v2app .sover .pbody{overflow-y:auto;padding:16px 18px 14px}.v2app .sover .pbody p{font-size:14.5px;line-height:1.62;color:var(--ink-2);margin:0 0 12px}.v2app .cxrule{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:13px 15px;margin:0 0 12px}.v2app .cxrule .cz{font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--ink)}.v2app .cxrule .en{font-size:13px;color:var(--ink-3);margin-top:2px}.v2app .sover .pfoot{padding:12px 18px 18px;border-top:1px solid var(--line);display:flex;gap:10px}.v2app .readdot{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:800;color:var(--good)}.v2app .whybtn{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--solid);border-radius:9px;padding:4px 9px;font-size:11.5px;font-weight:800;color:var(--accent);cursor:pointer}.v2app .cnrow{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:13px 15px;border-radius:14px;border:1.5px solid var(--line);background:var(--solid);cursor:pointer;transition:background .2s,border-color .2s}.v2app .cnrow+.cnrow{margin-top:9px}.v2app .cnrow.read{background:var(--good-soft);border-color:color-mix(in oklab,var(--good) 32%,transparent)}.v2app .cnrow .cnt{flex:1}.v2app .cnrow .cnt b{display:block;font-family:var(--font-display);font-weight:800;font-size:15.5px}.v2app .cnrow .cnt span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:1px}.v2app .cnrow .cnck{width:26px;height:26px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--line);color:transparent}.v2app .cnrow.read .cnck{background:var(--good);border-color:var(--good);color:#fff}.v2app .srcgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:4px}.v2app .srccard{text-align:center;border:1.5px solid var(--line);background:var(--solid);border-radius:17px;padding:20px 12px 18px;cursor:pointer;box-shadow:var(--sh)}.v2app .srccard .si{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);margin:0 auto 11px}.v2app .srccard b{display:block;font-family:var(--font-display);font-weight:800;font-size:15px}.v2app .srccard span{display:block;font-size:11.5px;color:var(--ink-3);margin-top:3px;line-height:1.35}.v2app .gdocbar{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line);background:var(--surface);border-radius:13px;padding:11px 13px;margin-top:13px}.v2app .gdocbar .gi{width:30px;height:30px;border-radius:8px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#2a73e8;flex:none}.v2app .gdocbar .gt{flex:1;min-width:0}.v2app .gdocbar .gt b{display:block;font-weight:800;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2app .gdocbar .gt span{display:block;font-size:11.5px;color:var(--ink-3)}.v2app .synced{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;color:var(--good)}.v2app .regbar{display:flex;align-items:center;gap:9px;margin-top:13px}.v2app .regbar .rg{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;border:1.5px solid var(--line);background:var(--solid);border-radius:11px;padding:10px 0;font-weight:800;font-size:13px;color:var(--accent);cursor:pointer}.v2app .subhead{display:flex;align-items:center;gap:12px}.v2app .subhead .av{width:46px;height:46px;border-radius:50%;flex:none;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:18px}.v2app .subhead .sh-t{flex:1}.v2app .subhead .sh-t b{display:block;font-family:var(--font-display);font-weight:800;font-size:17px}.v2app .subhead .sh-t span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:1px}.v2app .subdoc{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.v2app .subdoc .sd-photo{height:160px;background:repeating-linear-gradient(135deg,var(--surface),var(--surface) 11px,var(--line) 11px,var(--line) 12px);display:flex;align-items:center;justify-content:center;color:var(--ink-4);font-family:var(--font-mono);font-size:11px;border-bottom:1px solid var(--line)}.v2app .subdoc .sd-body{padding:14px 15px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}.v2app .fbfield{width:100%;border:1.5px solid var(--line);border-radius:13px;background:var(--surface);padding:12px 14px;font-family:var(--font-sans);font-size:14.5px;line-height:1.5;color:var(--ink);resize:none;min-height:84px}.v2app .fbfield:focus{outline:none;border-color:var(--accent);background:var(--solid)}.v2app .gradeseg{display:flex;gap:8px}.v2app .gradeseg button{flex:1;border:1.5px solid var(--line);background:var(--solid);border-radius:12px;padding:11px 0;font-weight:800;font-size:14px;cursor:pointer;color:var(--ink-2)}.v2app .gradeseg button.on[data-g=good]{background:var(--good-soft);border-color:var(--good);color:var(--good)}.v2app .gradeseg button.on[data-g=ok]{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.v2app .gradeseg button.on[data-g=redo]{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.v2app .auth{display:flex;flex-direction:column;min-height:100%;padding:0 22px}.v2app .auth .top{flex:1;display:flex;flex-direction:column;justify-content:center}.v2app .auth .wm{font-family:var(--font-display);font-weight:800;font-size:46px;letter-spacing:-.04em;color:var(--ink)}.v2app .auth .wm i{color:var(--accent);font-style:normal}.v2app .auth .tag{font-size:15px;color:var(--ink-3);margin-top:8px;line-height:1.5}.v2app .field{margin-top:13px}.v2app .field label{display:block;font-size:12px;font-weight:800;letter-spacing:.02em;color:var(--ink-3);margin-bottom:6px}.v2app .field input{width:100%;border:1.5px solid var(--line);border-radius:13px;background:var(--surface);padding:13px 15px;font-family:var(--font-sans);font-size:15.5px;color:var(--ink)}.v2app .field input:focus{outline:none;border-color:var(--accent);background:var(--solid)}.v2app .authfoot{padding:18px 0 26px}.v2app .oauth{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;white-space:nowrap;border:1.5px solid var(--line);background:var(--solid);border-radius:14px;padding:13px 0;font-weight:800;font-size:14.5px;color:var(--ink);cursor:pointer;box-shadow:var(--sh)}.v2app .ordiv{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--ink-4);font-size:12px;font-weight:700}.v2app .ordiv:before,.v2app .ordiv:after{content:"";flex:1;height:1px;background:var(--line)}.v2app .swlink{text-align:center;font-size:13.5px;color:var(--ink-3);margin-top:16px}.v2app .swlink b{color:var(--accent);font-weight:800;cursor:pointer}.v2app .obtiles{display:flex;flex-direction:column;gap:11px;margin-top:6px}.v2app .obtile{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:1.5px solid var(--line);background:var(--solid);border-radius:16px;padding:15px 16px;cursor:pointer;box-shadow:var(--sh)}.v2app .obtile.on{border-color:var(--accent);background:var(--accent-soft)}.v2app .obtile .obf{font-size:28px;flex:none}.v2app .obtile .obt{flex:1}.v2app .obtile .obt b{display:block;font-family:var(--font-display);font-weight:800;font-size:16px}.v2app .obtile .obt span{display:block;font-size:12.5px;color:var(--ink-3);margin-top:1px}.v2app .obtile .obck{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;color:transparent}.v2app .obtile.on .obck{background:var(--accent);border-color:var(--accent);color:#fff}.v2app .stepdots{display:flex;gap:6px;justify-content:center;margin:0 0 6px}.v2app .stepdots i{width:7px;height:7px;border-radius:50%;background:var(--line)}.v2app .stepdots i.on{background:var(--accent);width:20px;border-radius:4px}.v2app .helprow{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:14px 4px;cursor:pointer}.v2app .helprow+.helprow{border-top:1px solid var(--line)}.v2app .helprow .hi{width:38px;height:38px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--line);color:var(--ink-2)}.v2app .helprow .ht{flex:1}.v2app .helprow .ht b{display:block;font-weight:800;font-size:14.5px}.v2app .helprow .ht span{display:block;font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .legaldoc{font-size:13.5px;line-height:1.7;color:var(--ink-2)}.v2app .legaldoc h4{font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--ink);margin:18px 0 6px}.v2app .legaldoc h4:first-child{margin-top:0}.v2app .tourwrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:70}.v2app .tourwrap .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#11121499;animation:fade .2s}.v2app .tourbub{position:absolute;left:18px;right:18px;background:var(--solid);border-radius:18px;padding:18px;box-shadow:0 18px 50px #1112144d}.v2app .tourbub .tk{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.v2app .tourbub h4{font-family:var(--font-display);font-weight:800;font-size:18px;margin:5px 0 6px}.v2app .tourbub p{font-size:14px;line-height:1.55;color:var(--ink-2);margin:0}.v2app .tourbub .tf{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.v2app .tourbub .tf .dots{display:flex;gap:6px}.v2app .tourbub .tf .dots i{width:7px;height:7px;border-radius:50%;background:var(--line)}.v2app .tourbub .tf .dots i.on{background:var(--accent)}.v2app .pad{padding-top:calc(env(safe-area-inset-top,0px) + 14px)}.v2app .nav,.v2app .runtop{padding-top:calc(env(safe-area-inset-top,0px) + 10px);margin-bottom:0}.v2app .thead2{padding-top:calc(env(safe-area-inset-top,0px) + 14px)}.v2-globaltabs{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;padding:9px 10px calc(9px + env(safe-area-inset-bottom,0px));background:#fbfaf7f0;-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);border-top:1px solid rgba(45,36,24,.08);font-family:Hanken Grotesk,system-ui,-apple-system,sans-serif}.v2-globaltabs button{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;border:0;background:none;cursor:pointer;color:#9a9387;font-weight:700;font-size:11px;padding:3px 0}.v2-globaltabs button.on{color:#f5503c}.v2-globaltabs .licon{width:24px;height:24px}@media (min-width:768px){.v2app{left:50%;right:auto;width:480px;transform:translate(-50%);box-shadow:0 0 0 1px #2d24180f}.v2-globaltabs{left:50%;right:auto;width:480px;transform:translate(-50%)}}.v2app .pad{padding-left:16px;padding-right:16px}.v2app .idkrow .btn{padding-left:20px;padding-right:20px}.v2app .idkrow .idk{font-size:16px}.v2app{--surface:rgba(255,255,255,.92)}.v2app .rrow,.v2app .tool,.v2app .tile,.v2app .vrow,.v2app .trcard,.v2app .glass,.v2app .wintro,.v2app .lprog .b,.v2app .mestat,.v2app .grp,.v2app .hwcard,.v2app .notif,.v2app .person,.v2app .mat,.v2app .shopcard,.v2app .rew-stat,.v2app .badge,.v2app .exline .e,.v2app .opt,.v2app .greet .bell,.v2app .cpill,.v2app .notecard,.v2app .structcard,.v2app .classhdr,.v2app .spprompt,.v2app .tcard,.v2app .hwq{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.v2app .nav{background:#f4efe7;-webkit-backdrop-filter:none;backdrop-filter:none}.v2app .tabs{background:#fbfaf7;border-top:1px solid rgba(45,36,24,.06);-webkit-backdrop-filter:none;backdrop-filter:none;margin:0}.v2-globaltabs{background:#fbfaf7;border-top:1px solid rgba(45,36,24,.06);-webkit-backdrop-filter:none;backdrop-filter:none}.v2webroot{--ink:#211F1B;--ink-2:#6A6358;--ink-3:#9A9387;--faint:#BCB5A7;--surface:rgba(255,255,255,.92);--surface-2:rgba(255,255,255,.52);--solid:#FCFBF8;--line:rgba(255,255,255,.9);--hair:rgba(45,36,24,.1);--accent:#F5503C;--accent-deep:#D63A28;--accent-soft:rgba(245,80,60,.1);--accent-tint:rgba(245,80,60,.16);--graphite:#3A352D;--graphite-2:#5C564B;--good:#1E8E55;--good-soft:rgba(30,142,85,.12);--amber:#C2851C;--amber-soft:rgba(194,133,28,.14);--info:#3B6FE0;--info-soft:rgba(59,111,224,.12);--gm:#3B6FE0;--gf:#D63A28;--gn:#1E8E55;--c-plum:#7A4E9E;--sh:0 1px 2px rgba(70,52,30,.05),0 10px 28px rgba(70,52,30,.12);--r-sm:12px;--r-md:16px;--r-pill:999px;--font-display:"Bricolage Grotesque","Hanken Grotesk",system-ui,sans-serif;--font-sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;font-family:var(--font-sans);color:var(--ink);min-height:100vh;background:radial-gradient(60% 50% at 30% 0%,#EDE8DE,transparent),radial-gradient(50% 50% at 100% 100%,#E2DCCF,transparent),#f3efe8}.v2webroot *{box-sizing:border-box}.v2webroot .shell{display:grid;grid-template-columns:288px 1fr;min-height:100vh}.v2webroot .side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:4px;padding:22px 18px;border-right:1px solid var(--hair)}.v2webroot .side .brand{display:flex;align-items:center;gap:9px;padding:6px 8px 16px;cursor:pointer}.v2webroot .side .brand .mk{font-family:var(--font-display);font-weight:800;font-size:24px;letter-spacing:-.03em;color:var(--ink)}.v2webroot .side .brand .mk .dot{color:var(--accent)}.v2webroot .side .brand .badge{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--accent-deep);background:var(--accent-soft);border-radius:99px;padding:3px 8px}.v2webroot .navlbl{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:14px 10px 6px}.v2webroot .side .nav{display:flex;flex-direction:column;gap:2px}.v2webroot .side .nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--r-sm);color:var(--ink-2);font-weight:600;font-size:14.5px;cursor:pointer}.v2webroot .side .nav a .licon{width:20px;height:20px;flex:none;color:var(--ink-3)}.v2webroot .side .nav a:hover{background:#fff9;color:var(--ink)}.v2webroot .side .nav a.on{background:var(--accent);color:#fff;box-shadow:0 8px 20px #f5503c42}.v2webroot .side .nav a.on .licon{color:#fff}.v2webroot .side .grow{flex:1}.v2webroot .userchip{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:var(--r-md);background:var(--solid);border:1px solid var(--hair);box-shadow:var(--sh);cursor:pointer}.v2webroot .userchip .av{width:38px;height:38px;border-radius:50%;flex:none;background:linear-gradient(140deg,#f96b53,#d43a28);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px}.v2webroot .userchip .nm{font-weight:700;font-size:13.5px;line-height:1.1}.v2webroot .userchip .role{font-size:11.5px;color:var(--ink-3)}.v2webroot .main{min-width:0;height:100vh;overflow-y:auto}.v2webroot .main::-webkit-scrollbar{width:0}.v2webroot .v2app{position:static;inset:auto;left:auto;right:auto;width:auto;transform:none;box-shadow:none;display:block;background:none;font-size:16px}.v2webroot .v2app .app{position:static;display:block}.v2webroot .v2app .view{flex:none;overflow:visible}.v2webroot .v2app .pad{padding:30px 40px;max-width:760px}.v2webroot .v2app .tabs{display:none}.v2webroot .v2app .nav{position:static;background:none;border:0;padding:24px 40px 4px}.v2webroot .v2app .runtop{padding:24px 40px 8px}.v2webroot .v2app .runbody,.v2webroot .v2app .runfoot{padding-left:40px;padding-right:40px;max-width:760px}.v2webroot .v2app .done{padding-top:60px}.v2webroot .side .grow{background:none;border:0;border-radius:0;box-shadow:none;padding:0}.v2app .prose{font-size:16px;line-height:1.62;color:var(--ink-2);margin-top:12px}.v2app .prose strong{color:var(--ink);font-weight:800}.v2app .qsrc{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-3);margin-top:8px}.v2app .drillimg{width:100%;max-height:200px;object-fit:contain;border-radius:14px;margin-top:14px}.v2app .drillmeta{font-size:12px;color:var(--ink-3);margin-top:18px}.v2app .rverr{font-size:13px;color:var(--accent-deep);margin-top:10px}.v2app .xpflash{align-self:flex-start;background:var(--accent-soft);color:var(--accent-deep);font-weight:800;font-size:13px;border-radius:99px;padding:5px 12px;margin-top:12px}.v2app .opt .num{width:22px;height:22px;border-radius:7px;background:var(--faint);color:var(--ink-3);font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}.v2app .opt.sel{border-color:var(--accent);background:var(--accent-soft)}.v2app .opt .mk.no{color:var(--accent)}.v2app .grefs{display:flex;flex-direction:column;gap:8px;margin-top:18px}.v2app .gref{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:11px 13px;box-shadow:var(--sh);font-size:13.5px;font-weight:600}.v2app .gref .licon{color:var(--accent);flex:none}.v2app .rtext{margin-top:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh);overflow:hidden}.v2app .rth{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:none;color:var(--ink-2);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.05em;padding:12px 14px;cursor:pointer}.v2app .rth span{display:inline-flex;align-items:center;gap:7px}.v2app .rtb{padding:0 14px 14px;font-size:15px;line-height:1.6;color:var(--ink)}.v2app .done .dstats{display:flex;gap:26px;margin-top:20px}.v2app .done .dstats>div{display:flex;flex-direction:column;align-items:center}.v2app .done .dstats .n{font-family:var(--font-display);font-weight:800;font-size:26px}.v2app .done .dstats .l{font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.v2app .done .xpbig{font-family:var(--font-display);font-weight:800;font-size:24px;color:var(--accent);margin-top:14px}.v2app .done .xpbig span{display:block;font-family:var(--font-sans);font-weight:600;font-size:11px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em}.v2app .done .dhint{font-size:12.5px;color:var(--ink-3);margin-top:16px;line-height:1.5}.v2app .cloze{margin-top:16px;line-height:2.1;font-size:17px;white-space:pre-line}.v2app .cslot{display:inline-flex;align-items:center;border:0;border-bottom:2px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:6px;padding:2px 8px;margin:0 2px;font-weight:700;font-size:16px;cursor:pointer}.v2app .cslot.empty{background:var(--faint);border-bottom-color:var(--line);color:var(--ink-3)}.v2app .cslot.ok{background:var(--good-soft);border-bottom-color:var(--good);color:var(--good)}.v2app .cslot.no{background:var(--accent-soft);border-bottom-color:var(--accent);color:var(--accent-deep)}.v2app .cbank{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.v2app .cw{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:9px 13px;font-weight:600;font-size:15px;cursor:pointer;box-shadow:var(--sh)}.v2app .cw.used{opacity:.35}.v2app .cfb{margin-top:16px;display:flex;flex-direction:column;gap:6px}.v2app .cfbrow{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;font-size:14px}.v2app .cfbrow .i{color:var(--ink-3);font-weight:700}.v2app .cfbrow .g{font-weight:700}.v2app .cfbrow.no .g{text-decoration:line-through;color:var(--ink-3)}.v2app .cfbrow .a{color:var(--good);font-weight:700}.v2app .cfbrow .n{color:var(--ink-3);font-size:12.5px;flex-basis:100%}.v2app .pwsent{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-top:16px;font-size:19px}.v2app .pwtok{padding:2px 1px}.v2app .pwgap{border:0;background:none;color:var(--ink-3);cursor:pointer;padding:0 3px;min-width:20px}.v2app .pwgap.on{color:var(--accent)}.v2app .pwgap .pwc{opacity:.4}.v2app .pwchip{background:var(--accent-soft);color:var(--accent-deep);border-radius:7px;padding:2px 8px;font-weight:700;font-size:16px}.v2app .ptask{font-size:16px;color:var(--ink-2);margin-top:10px;line-height:1.5}.v2app .ptaskcs{font-size:14px;color:var(--ink-3);margin-top:4px}.v2app .pcritpre{margin-top:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:var(--sh)}.v2app .pcritpre .h{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.v2app .pcritpre ol{margin:8px 0 0;padding-left:20px;font-size:14px;color:var(--ink-2);line-height:1.6}.v2app .plen{font-size:13px;color:var(--ink-3);margin-top:10px}.v2app .pinput{margin-top:14px;width:100%;border:1.5px solid var(--line);background:var(--solid);color:var(--ink);border-radius:14px;padding:14px 15px;font-family:var(--font-sans);font-size:16px;line-height:1.5;box-shadow:var(--sh);resize:vertical}.v2app .pcrit{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}.v2app .pcrit li{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--ink-2)}.v2app .pcrit li .licon{flex:none}.v2app .pcrit li.ok .licon{color:var(--good)}.v2app .pcrit li.no{color:var(--ink-3)}.v2app .pcrit li.no .licon{color:var(--accent)}.v2app .pcorr{margin-top:14px;background:var(--good-soft);border:1px solid rgba(30,142,85,.2);border-radius:14px;padding:14px}.v2app .pcorr .h{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--good)}.v2app .pcorr p{margin:6px 0 0;font-size:15px;font-weight:600}.v2app .hlead{font-size:14px;color:var(--ink-3);margin-bottom:12px}.v2app .htourbtn{margin:16px 0}.v2app .hsearch{display:flex;align-items:center;gap:8px;background:var(--solid);border:1px solid var(--line);border-radius:14px;padding:0 12px;margin-bottom:8px}.v2app .hsearch-input{flex:1;border:none;background:transparent;font-size:14px;color:var(--ink);outline:none;padding:8px 0;line-height:1.4}.v2app .hsearch-input::placeholder{color:var(--ink-3)}.v2app .hclear{background:none;border:none;padding:0;cursor:pointer;color:var(--ink-3);display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0}.v2app .hsec{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh);margin-bottom:12px;overflow:hidden;transition:all .2s}.v2app .hsechead{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;font-family:var(--font-sans);font-weight:700;font-size:15px;color:var(--ink);cursor:pointer;text-align:left}.v2app .hsec-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.v2app .hsec-title{flex:1;margin-right:auto}.v2app .hchev{display:flex;align-items:center;color:var(--ink-3);transition:transform .2s ease;flex-shrink:0}.v2app .hsechead.open .hchev{transform:rotate(180deg)}.v2app .hitems{border-top:1px solid var(--line);padding:12px 16px 16px}.v2app .hqa-item{padding:10px 0;border-bottom:1px solid var(--line)}.v2app .hqa-item:last-child{border-bottom:none;padding-bottom:0}.v2app .hqa-item .q{font-weight:700;font-size:14.5px;color:var(--ink);margin-bottom:4px}.v2app .hqa-item .a{font-size:14px;color:var(--ink-2);line-height:1.55}.v2app .hfoot{font-size:12.5px;color:var(--ink-3);margin-top:24px;text-align:left}.v2app .lpcard{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh);padding:16px;margin-top:8px}.v2app .lprow{display:flex;gap:14px;align-items:center}.v2app .lpplay{width:58px;height:58px;border-radius:50%;background:var(--accent);color:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 3px rgba(var(--accent-rgb, 215, 75, 75),.25);flex-shrink:0}.v2app .lpmeta .lab{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.v2app .lpmeta .ti{font-family:var(--font-display);font-weight:800;font-size:17px;color:var(--ink)}.v2app .lpmeta .sp{font-size:12px;color:var(--ink-3)}.v2app .lpctrls{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.v2app .lpcbtn{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-weight:700;font-size:13px;padding:8px 12px;border-radius:20px;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.v2app .lpcbtn.on{background:var(--accent-soft);border-color:transparent;color:var(--accent-deep)}.v2app .lptx{margin-top:14px;border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:10px;max-height:240px;overflow-y:auto}.v2app .lpline .who{font-size:11px;font-weight:800;color:var(--accent-deep);margin-bottom:2px}.v2app .lpline .cz{font-size:15px;color:var(--ink);line-height:1.5}.v2app .clhero{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh);padding:16px}.v2app .clhero-name{font-family:var(--font-display);font-weight:800;font-size:24px;margin-bottom:4px}.v2app .clhero-badges{display:flex;gap:8px;align-items:center;margin-top:8px}.v2app .clpill{display:inline-block;padding:2px 10px;background:var(--accent-soft);color:var(--accent-deep);border-radius:20px;font-size:11px;font-weight:600}.v2app .clhero-teacher{font-size:13px;color:var(--ink-2);margin-top:6px}.v2app .clmeta{display:flex;flex-direction:column;gap:8px;margin-top:12px}.v2app .clmeta-row{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2)}.v2app .clmeta-row svg,.v2app .clmeta-row .icon{color:var(--ink-3)}.v2app .clchat{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh);padding:12px;display:flex;align-items:center;gap:12px;cursor:pointer}.v2app .clchat-icon{width:40px;height:40px;background:var(--accent-soft);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.v2app .clchat-info{flex:1;min-width:0}.v2app .clchat-title{font-weight:700;font-size:14.5px;margin-bottom:2px}.v2app .clchat-subtitle{font-size:12.5px;color:var(--ink-3)}.v2app .clchat .chev,.v2app .clchat .icon-chevron-right{color:var(--ink-3);flex-shrink:0;margin-left:auto}.v2app .clhw{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh);padding:12px;cursor:pointer;transition:transform .1s}.v2app .clhw:active{transform:scale(.99)}.v2app .clhw-title{font-weight:700;font-size:14.5px;margin-bottom:4px}.v2app .clhw-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-2)}.v2app .clhw-due{color:var(--ink-3)}.v2app .clhw-due.overdue{color:var(--accent);font-weight:500}.v2app .clhw-status{padding:1px 10px;background:var(--accent-soft);color:var(--accent-deep);border-radius:12px;font-size:11px;font-weight:600;margin-left:auto}.v2app .clnudge{background:var(--accent-soft);border:1px solid var(--line);border-radius:16px;padding:14px;font-size:14px;color:var(--ink);text-align:center}.v2app .clnudge-btn{border:1px solid var(--accent);color:var(--accent-deep);background:transparent;padding:8px 16px;border-radius:20px;font-size:14px;cursor:pointer;display:inline-block}.v2app .clnudge-cancel{background:none;border:none;color:var(--ink-3);text-decoration:underline;font-size:13px;cursor:pointer;padding:4px 0}.v2app .clrow{display:flex;align-items:center;padding:10px 12px;border-radius:12px;margin-bottom:4px}.v2app .clrow.self{background:var(--accent-soft)}.v2app .clrow-rank{width:22px;height:22px;border-radius:50%;background:var(--line);color:var(--ink);font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.v2app .clrow-name{flex:1;margin-left:12px;font-size:14px}.v2app .clrow-name.self-name{font-weight:700}.v2app .clrow-score{color:var(--ink-3);font-size:14px;margin-left:auto}.v2app .hero .sc.more{background:#ffffff24}.v2app .hero .herofoot{display:flex;align-items:center;gap:10px;margin-top:15px}.v2app .hero .herofoot .start{margin-top:0;flex:1}.v2app .hero .custbtn{flex:none;width:52px;height:52px;border-radius:99px;border:1.5px solid rgba(255,255,255,.38);background:#ffffff24;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.v2app .hero .custbtn:active{background:#ffffff42}.v2app .sover .panel.cust{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.v2app .custhd{display:flex;align-items:flex-start;gap:12px;padding:20px 20px 14px;border-bottom:1px solid var(--line)}.v2app .custhd .ct{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.01em}.v2app .custhd .cd{font-size:12.5px;color:var(--ink-3);margin-top:3px;line-height:1.4}.v2app .custhd .cx{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer;margin-left:auto}.v2app .custbody{padding:8px 14px;overflow-y:auto}.v2app .custrow{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:0;background:transparent;padding:11px 6px;cursor:pointer;border-radius:14px}.v2app .custrow:active{background:var(--surface-2)}.v2app .custrow .ci{width:38px;height:38px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-3);transition:.15s}.v2app .custrow.on .ci{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.v2app .custrow .ctx{flex:1;min-width:0}.v2app .custrow .ctx .t{display:block;font-weight:700;font-size:14.5px}.v2app .custrow .ctx .d{display:block;font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .custrow .toggle{flex:none}.v2app .custfoot{padding:12px 18px 4px;border-top:1px solid var(--line)}.v2app .custfoot .lnkall{display:block;width:100%;text-align:center;border:0;background:transparent;color:var(--accent-deep);font-weight:700;font-size:13px;padding:8px;cursor:pointer;margin-bottom:6px}.v2app .tile.lesn{align-items:center}.v2app .tile.lesn .lem{width:44px;height:44px;border-radius:13px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite)}.v2app .tile.lesn .lem .licon{width:22px;height:22px}.v2app .tile.lesn.ls-active{border-color:#f5503c52;background:linear-gradient(180deg,var(--accent-soft),var(--surface) 62%)}.v2app .tile.lesn.ls-active .lem{background:var(--accent);border-color:transparent;color:#fff;box-shadow:0 6px 16px #d63a2847}.v2app .tile.lesn.ls-done .lem{color:var(--ink-2)}.v2app .tile.lesn.ls-locked{opacity:.62;cursor:default}.v2app .tile.lesn .lstat{flex:none;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}.v2app .tile.lesn .lstat.ok{background:var(--good-soft);color:var(--good)}.v2app .tile.lesn .lstat.pct{width:auto;padding:0 10px;height:24px;border-radius:99px;background:var(--accent);color:#fff}.v2app .tile.lesn .lstat.pct.off{background:var(--graphite)}.v2app .tile.lesn .lstat.lock{color:var(--faint)}.v2app .tile.lesn .lrev{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:11px;font-weight:700;color:var(--accent)}.v2app .tile.lesn .lrev .licon{width:11px;height:11px}.v2app .tile.lesn .lrev.sk{color:var(--ink-3);font-weight:600}.v2app .tile.lesn.ls-skip{opacity:.66}.v2app .clspick{display:flex;align-items:center;gap:9px;border:0;background:none;padding:2px 2px 14px;cursor:pointer}.v2app .clspick .fl{font-size:22px;line-height:1}.v2app .clspick .nm{font-family:var(--font-display);font-weight:800;font-size:23px;letter-spacing:-.02em;color:var(--ink)}.v2app .clspick .nm b{color:var(--ink-3);font-weight:800}.v2app .clspick .cv{color:var(--ink-3);margin-top:2px}.v2app .idcard{border-radius:20px;padding:16px;background:var(--surface);border:1px solid var(--line);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);box-shadow:var(--sh);overflow:hidden}.v2app .idtop{display:flex;align-items:center;gap:13px}.v2app .idcard .emblem{width:52px;height:52px;border-radius:15px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:26px;flex:none}.v2app .idcard .idname{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.01em}.v2app .idcard .idlekce{font-size:13px;color:var(--ink-2);margin-top:2px;font-weight:600}.v2app .idmeta{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:12.5px;color:var(--ink-2)}.v2app .idmeta .mi{display:inline-flex;align-items:center;gap:6px;font-weight:600}.v2app .idmeta .tav{width:20px;height:20px;border-radius:50%;background:var(--graphite);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800}.v2app .idmeta .dt{width:3px;height:3px;border-radius:50%;background:var(--faint);flex:none}.v2app .idwhen{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;padding-top:12px;border-top:1px solid var(--hair)}.v2app .idwhen .wi{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.v2app .idwhen .wi svg{color:var(--ink-3)}.v2app .joinbtn{display:flex;align-items:center;gap:11px;width:100%;margin-top:14px;border:0;border-radius:14px;padding:12px 14px;cursor:pointer;text-align:left;background:linear-gradient(180deg,var(--accent),var(--accent-deep));color:#fff;box-shadow:0 8px 20px #d63a2842}.v2app .joinbtn .ji{width:34px;height:34px;border-radius:10px;background:#fff3;display:flex;align-items:center;justify-content:center;flex:none}.v2app .joinbtn .jt{font-family:var(--font-display);font-weight:800;font-size:15.5px;white-space:nowrap}.v2app .joinbtn .js{font-size:11.5px;font-weight:600;color:#ffffffd1;margin-left:auto;white-space:nowrap}.v2app .joinbtn .jc{color:#ffffffe6;margin-left:8px;flex:none}.v2app .roombar{display:flex;align-items:center;gap:8px;margin-top:14px;border-radius:12px;padding:11px 13px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;font-weight:700;color:var(--ink-2)}.v2app .roombar svg{color:var(--ink-3)}.v2app .hwnone{display:flex;align-items:center;gap:13px;border-radius:16px;padding:15px;background:var(--good-soft);border:1px solid rgba(30,142,85,.22)}.v2app .hwnone .ic{width:38px;height:38px;border-radius:11px;background:var(--good);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}.v2app .hwnone .t{font-family:var(--font-display);font-weight:800;font-size:15.5px;color:var(--good)}.v2app .hwnone .d{font-size:12.5px;color:var(--ink-2);margin-top:2px;line-height:1.45}.v2app .nudge{display:flex;align-items:center;gap:11px;width:100%;text-align:left;margin-top:11px;border:1px dashed var(--faint);background:none;border-radius:14px;padding:12px 14px;cursor:pointer}.v2app .nudge .ni{width:30px;height:30px;border-radius:9px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);display:flex;align-items:center;justify-content:center;flex:none}.v2app .nudge .nt{flex:1;font-size:13.5px;font-weight:700;color:var(--ink-2)}.v2app .nudge.on{border-style:solid;border-color:#1e8e554d;background:var(--good-soft)}.v2app .nudge.on .ni{background:var(--good);border-color:var(--good);color:#fff}.v2app .nudge.on .nt{color:var(--good)}.v2app .nudge .nx{font-size:12px;font-weight:800;color:var(--ink-3);text-decoration:underline;flex:none}.v2app .together{display:flex;align-items:center;gap:12px;width:100%;text-align:left;margin-top:18px;border-radius:16px;padding:13px 14px;background:var(--surface-2);border:1px solid var(--line);cursor:pointer}.v2app .together .tgav{display:flex;flex:none}.v2app .together .tgav .av{width:32px;height:32px;border-radius:50%;background:var(--surface);border:2px solid var(--solid);color:var(--ink-2);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;margin-left:-9px}.v2app .together .tgav .av:first-child{margin-left:0}.v2app .together .tgtx{flex:1;min-width:0;display:flex;flex-direction:column}.v2app .together .tgtx .t{font-weight:800;font-size:14px}.v2app .together .tgtx .d{font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .together .chev{color:var(--faint);flex:none}.v2app .matpeek{display:flex;align-items:center;gap:12px;width:100%;text-align:left;margin-top:9px;border-radius:16px;padding:13px 14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer}.v2app .matpeek .ic{width:38px;height:38px;border-radius:11px;background:var(--surface-2);border:1px solid var(--line);color:var(--graphite);display:flex;align-items:center;justify-content:center;flex:none}.v2app .matpeek .tx{flex:1;min-width:0;display:flex;flex-direction:column}.v2app .matpeek .tx .t{font-weight:700;font-size:14px}.v2app .matpeek .tx .d{font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .matpeek .chev{color:var(--faint);flex:none}.v2app .clsopt{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border-radius:14px;padding:13px;margin-bottom:8px;background:var(--surface);border:1px solid var(--line);cursor:pointer}.v2app .clsopt.on{border-color:var(--accent);background:var(--accent-soft)}.v2app .clsopt .fl{font-size:24px;flex:none}.v2app .clsopt .tx{flex:1;min-width:0;display:flex;flex-direction:column}.v2app .clsopt .tx .t{font-family:var(--font-display);font-weight:800;font-size:15.5px}.v2app .clsopt .tx .d{font-size:12px;color:var(--ink-3);margin-top:2px}.v2app .clsopt .ck{color:var(--accent);flex:none}.v2app .tgbanner{border-radius:16px;padding:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-bottom:16px}.v2app .tgbanner .big{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.01em}.v2app .tgbanner .big b{color:var(--accent)}.v2app .tgbanner .sub{font-size:13px;color:var(--ink-3);margin-top:4px}.v2app .person .pav{width:38px;height:38px;border-radius:50%;background:var(--surface-2);border:1px solid var(--line);color:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex:none}.v2app .person .pav.t{background:var(--graphite);color:#fff;border-color:var(--graphite)}.v2app .posbadge{font-size:11px;font-weight:800;border-radius:99px;padding:4px 10px;flex:none}.v2app .posbadge.same{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.v2app .posbadge.ahead{background:var(--good-soft);color:var(--good)}.v2app .posbadge.behind{background:var(--amber-soft);color:var(--amber)}.v2app .posbadge.you{background:var(--accent-soft);color:var(--accent)}.v2app .tgnote{display:flex;gap:8px;font-size:12px;color:var(--ink-3);line-height:1.5;margin-top:16px;padding:0 2px}.v2app .tgnote svg{flex:none;margin-top:1px}.v2app .setblock{border-radius:16px;padding:13px 14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-top:12px}.v2app .setblock .sbl{font-weight:700;font-size:14px;margin-bottom:10px}.v2app .setblock .sbd{font-size:12px;color:var(--ink-3);margin-top:10px}.v2app .seg4{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:4px}.v2app .seg4 button{flex:1;border:0;background:none;border-radius:9px;padding:9px 2px;font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--ink-3);cursor:pointer;white-space:nowrap}.v2app .seg4 button.on{background:var(--solid);color:var(--ink);box-shadow:var(--sh)}.v2app .srow .l .sub{display:block;font-weight:500;font-size:11.5px;color:var(--ink-3);margin-top:2px;line-height:1.35}.v2app .srow.sub-row{padding-top:11px;padding-bottom:11px;background:var(--surface-2)}.v2app .srow.sub-row .ic{background:none;border:0;box-shadow:none}.v2app .stepper{display:flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:99px;background:var(--surface-2);padding:2px}.v2app .stepper button{width:28px;height:28px;border-radius:50%;border:0;background:none;color:var(--ink-2);display:flex;align-items:center;justify-content:center;cursor:pointer}.v2app .stepper span{min-width:22px;text-align:center;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}.v2app .slab.dz{color:var(--accent)}.v2app .dzgrp{border-color:#f5503c40}.v2app .srow.danger .ic,.v2app .srow.danger .l{color:var(--accent)}.v2app .spprompt .hear{display:inline-flex;align-items:center;gap:7px;margin-top:14px;white-space:nowrap;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:99px;font-weight:700;font-size:13.5px;padding:9px 15px;cursor:pointer}.v2app .spcoach.ok{background:var(--good-soft)}.v2app .spcoach.ok .licon,.v2app .spcoach.ok .tx b{color:var(--good)}.v2app .spprompt .spk{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.v2app .spmic{position:relative;margin:26px auto 0}.v2app .spmic .pulse{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2.5px solid var(--accent);animation:pulse 1.4s ease-out infinite}.v2app .spmic.scoring{background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .spmic .spin{width:40px;height:40px;border-radius:50%;border:4px solid var(--accent-soft);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.v2app .spresult{margin-top:20px}.v2app .spscore{display:flex;align-items:center;gap:16px;border-radius:18px;padding:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .spscore.ok{border-color:#1e8e5547}.v2app .spscore.warn{border-color:#c2851c4d}.v2app .spscore .pctwrap{position:relative;width:92px;height:92px;flex:none;display:flex;align-items:center;justify-content:center}.v2app .spscore .pctwrap svg{position:absolute;top:0;right:0;bottom:0;left:0}.v2app .spscore .pv{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.02em}.v2app .spscore .pv i{font-size:14px;font-style:normal;color:var(--ink-3);margin-left:1px}.v2app .spscore .verdict{font-family:var(--font-display);font-weight:800;font-size:17px}.v2app .spscore .vd{font-size:12.5px;color:var(--ink-3);margin-top:4px;line-height:1.45}.v2app .spwords{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.v2app .spw{font-family:var(--font-display);font-weight:800;font-size:16px;border:1.5px solid;border-radius:12px;padding:7px 13px}.v2app .spactions{display:flex;gap:10px;margin-top:16px}.v2app .spactions .btn{flex:1;width:auto}.v2app .notenew{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;border:1.5px dashed var(--line);background:var(--surface);border-radius:16px;padding:15px 0;font-family:var(--font-display);font-weight:800;font-size:15px;color:var(--accent);cursor:pointer;margin-bottom:14px;box-shadow:var(--sh)}.v2app .btn.sm{padding:10px 14px;font-size:13.5px;width:auto;flex:1}.v2app .mwcap{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border-radius:16px;padding:14px;margin:2px 0 6px;background:linear-gradient(180deg,var(--accent),var(--accent-deep));color:#fff;border:0;box-shadow:0 8px 20px #d63a283d;cursor:pointer}.v2app .mwcap .ci{width:44px;height:44px;border-radius:12px;background:#fff3;display:flex;align-items:center;justify-content:center;flex:none}.v2app .mwcap .ct{flex:1;min-width:0;display:flex;flex-direction:column}.v2app .mwcap .ct .t{font-family:var(--font-display);font-weight:800;font-size:16px}.v2app .mwcap .ct .d{font-size:12px;color:#ffffffd9;margin-top:2px;line-height:1.35}.v2app .mwcap .chev{color:#ffffffe6;flex:none}.v2app .mwrow{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border-radius:14px;padding:12px 14px;margin-bottom:9px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer}.v2app .mwrow .ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:none;border:1px solid var(--line)}.v2app .mwrow .ic.hw-todo{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-tint)}.v2app .mwrow .ic.hw-submitted{background:var(--surface-2);color:var(--ink-2)}.v2app .mwrow .ic.hw-graded{background:var(--good-soft);color:var(--good);border-color:#1e8e5538}.v2app .mwrow .tx{flex:1;min-width:0;display:flex;flex-direction:column}.v2app .mwrow .tx .t{font-weight:700;font-size:14px}.v2app .mwrow .tx .d{font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .stc{font-size:10.5px;font-weight:800;border-radius:99px;padding:4px 10px;flex:none;white-space:nowrap}.v2app .stc.todo{background:var(--accent-soft);color:var(--accent)}.v2app .stc.submitted{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.v2app .stc.graded{background:var(--good-soft);color:var(--good)}.v2app .capwords{border-radius:16px;padding:15px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .capwords .cwtop .n{font-family:var(--font-display);font-weight:800;font-size:17px}.v2app .capwords .cwtop .d{font-size:12.5px;color:var(--ink-3);margin-top:2px}.v2app .capwords .cwchips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 14px}.v2app .capwords .cwchip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;font-family:inherit;color:inherit;background:var(--surface-2);border:1px solid var(--line);border-radius:99px;padding:5px 11px;cursor:pointer}.v2app .capwords .cwchip:disabled{cursor:default}.v2app .capwords .cwchip .gd{width:7px;height:7px;border-radius:50%;flex:none}.v2app .capwords .cwmore{display:inline-flex;align-items:center;font-size:12px;font-weight:800;color:var(--ink-3);padding:5px 4px}.v2app .capwords .cwbtns{display:flex;gap:9px}.v2app .thead2 .tbell{position:relative;margin-left:10px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}.v2app .thead2 .tbell .dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:1.5px solid var(--solid)}.v2app .acttl{border-radius:16px;overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .actrow{display:flex;align-items:center;gap:11px;padding:12px 14px;border-bottom:1px solid var(--hair)}.v2app .actrow:last-child{border-bottom:0}.v2app .actrow .ai{width:28px;height:28px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);display:flex;align-items:center;justify-content:center;flex:none}.v2app .actrow .at{flex:1;font-size:13.5px;font-weight:600}.v2app .actrow .aw{font-size:11.5px;color:var(--ink-3)}.v2app .chatcard{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border-radius:16px;padding:13px 14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);cursor:pointer;margin-top:2px}.v2app .chatcard .cav{width:42px;height:42px;border-radius:50%;background:var(--graphite);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:800;font-size:16px;flex:none}.v2app .chatcard .ctx{flex:1;min-width:0}.v2app .chatcard .ch{display:flex;align-items:center;gap:7px}.v2app .chatcard .ch b{font-size:13.5px;font-weight:800}.v2app .chatcard .ch .tp{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent-tint);border-radius:99px;padding:1px 6px}.v2app .chatcard .cm{display:block;font-size:12.5px;color:var(--ink-2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2app .chatcard .cbadge{flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:var(--accent);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}.v2app .chatcard .chev{color:var(--faint);flex:none}.v2app .chattl{display:flex;flex-direction:column;line-height:1.2}.v2app .chattl .t{font-family:var(--font-display);font-weight:800;font-size:16.5px;letter-spacing:-.01em}.v2app .chattl .s{font-size:11.5px;color:var(--ink-3);margin-top:1px}.v2app .chatempty{margin:auto;text-align:center;padding:20px}.v2app .chatempty .ic{width:60px;height:60px;border-radius:18px;margin:0 auto 12px;background:var(--surface);border:1px solid var(--line);color:var(--ink-3);display:flex;align-items:center;justify-content:center;box-shadow:var(--sh)}.v2app .chatempty .t{font-family:var(--font-display);font-weight:800;font-size:17px}.v2app .chatempty .d{font-size:13px;color:var(--ink-3);margin-top:5px;line-height:1.5}.v2app .mrow .mav{width:28px;height:28px;border-radius:50%;background:var(--graphite);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex:none;margin-bottom:2px}.v2app .msg .who .tp{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent-tint);border-radius:99px;padding:1px 6px}.v2app .msg.them .tm{color:var(--faint)}.v2app .msg.me{background:var(--accent);color:#fff;border-bottom-right-radius:5px;cursor:pointer}.v2app .tool.tstreak .licon{color:var(--accent)}.v2app .tool.tstreak{background:var(--accent-soft)}.v2app .idkrow .btn{width:auto;padding-left:16px;padding-right:16px}.v2app .idkrow .idk{flex:0 1 auto;white-space:nowrap;font-size:14.5px}.v2app .idkrow .sub{flex:1 1 auto}.v2app .nudgelink{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:16px;background:none;border:0;cursor:pointer;font-size:12.5px;font-weight:700;color:var(--ink-3)}.v2app .nudgelink.on{color:var(--good)}.v2app .mwsearch{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--solid);border-radius:12px;padding:10px 13px;margin-bottom:12px;color:var(--ink-3)}.v2app .mwsearch input{flex:1;border:0;background:none;font-family:var(--font-sans);font-size:14.5px;color:var(--ink)}.v2app .mwsearch input:focus{outline:none}.v2app .notegrp{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin:8px 2px 9px}.v2app .notemeta{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ink-3);margin-bottom:14px}.v2app .aibtn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--accent-tint);background:var(--accent-soft);color:var(--accent-deep);border-radius:99px;padding:9px 15px;font-weight:800;font-size:13.5px;cursor:pointer;margin-bottom:14px}.v2app .aisumm{border-radius:14px;padding:14px 15px;margin-bottom:14px;background:linear-gradient(150deg,rgba(122,78,158,.1),var(--surface));border:1px solid var(--line)}.v2app .aisumm .h{display:flex;align-items:center;gap:7px;font-family:var(--font-display);font-weight:800;font-size:13px;color:#7a4e9e}.v2app .aisumm p{font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:8px 0 0}.v2app .tickhead{display:flex;align-items:center;gap:8px;font-weight:800;font-size:13px;margin-top:18px;margin-bottom:10px;color:var(--ink)}.v2app .tickhead .n{font-size:11px;background:var(--line);border-radius:99px;padding:2px 7px;margin-left:auto}.v2app .dgzclean{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--accent-deep);margin-bottom:10px}.v2app .mwrow{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:12px;padding:11px 12px;margin-bottom:8px;background:var(--solid);cursor:pointer;width:100%;text-align:left}.v2app .mwrow .ic{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px}.v2app .mwrow .ic.hw-todo{background:var(--warning-soft);color:var(--warning-deep)}.v2app .mwrow .ic.hw-submitted{background:var(--info-soft);color:var(--info-deep)}.v2app .mwrow .ic.hw-graded{background:var(--success-soft);color:var(--success-deep)}.v2app .mwrow .tx{flex:1;min-width:0}.v2app .mwrow .tx .t{font-weight:700;font-size:14px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2app .mwrow .tx .d{font-size:12px;color:var(--ink-3)}.v2app .stc{font-size:11px;font-weight:700;padding:2px 8px;border-radius:99px}.v2app .stc.todo{background:var(--warning-bg);color:var(--warning-deep)}.v2app .stc.submitted{background:var(--info-bg);color:var(--info-deep)}.v2app .stc.graded{background:var(--success-bg);color:var(--success-deep)}.v2app .cwmore{font-size:12px;font-weight:700;color:var(--ink-3);padding-left:4px}.v2app .notecard .thumb{display:block;width:44px;height:44px;border-radius:10px;background:var(--surface);overflow:hidden;flex-shrink:0;margin-right:12px}.v2app .notecard .thumb .h{font-size:9.5px;line-height:1.2;padding:3px;color:var(--ink-3)}.v2app .stepblock{display:flex;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--hair)}.v2app .stepblock .sl{flex:1;font-weight:600;font-size:14px}.v2app .sbd{font-size:13px;color:var(--ink-3);margin-top:8px}.v2app .sbl{font-weight:600;font-size:14px;margin-bottom:8px}.v2app .sub-row{padding-left:24px}.v2app .slab.dz{color:var(--danger, #e53e3e)}.v2app .grp.dzgrp{border-color:var(--danger-border, rgba(229,62,62,.2))}.v2app .srow.danger{color:var(--danger, #e53e3e)}.v2app .srow.danger .ic,.v2app .srow.danger .l,.v2app .srow.danger .v,.v2app .srow.danger .chev{color:inherit}.v2app .capbanner{display:flex;align-items:center;gap:8px;background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius:12px;padding:11px 13px;font-size:13.5px;font-weight:600;margin-bottom:14px}.v2app .capta{width:100%;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);padding:13px 15px;font-family:var(--font-sans);font-size:15px;line-height:1.5;color:var(--ink);resize:vertical;min-height:120px}.v2app .capta:focus{outline:none;border-color:var(--accent);background:var(--solid)}.v2app .capfiles{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.v2app .capfile{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;background:var(--surface-2);border:1px solid var(--line);border-radius:99px;padding:6px 11px;color:var(--ink-2)}.v2app .capredo{font-size:12.5px;font-weight:800;color:var(--accent);background:none;border:0;cursor:pointer;padding:6px 4px}.v2app .capkind{display:flex;gap:8px;margin-top:14px;font-size:13px;color:var(--ink-3)}.v2app .capkind button{flex:1;border:1.5px solid var(--line);background:var(--solid);border-radius:12px;padding:10px 0;font-weight:800;font-size:14px;color:var(--ink-2);cursor:pointer}.v2app .capkind button.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.v2app .captool{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.v2app .capai{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer}.v2app .capai input{width:17px;height:17px;accent-color:var(--accent)}.v2app .tnav{display:flex;gap:7px;overflow-x:auto;margin-bottom:16px;padding-bottom:2px;-ms-overflow-style:none;scrollbar-width:none}.v2app .tnav::-webkit-scrollbar{display:none}.v2app .tnavb{display:inline-flex;align-items:center;gap:7px;flex:none;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:8px 14px;font-family:var(--font-sans);font-weight:700;font-size:13px;color:var(--ink-2);cursor:pointer;box-shadow:var(--sh)}.v2app .tnavb svg{color:var(--ink-3)}.v2app .tnavb.on{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 6px 16px #d63a2838}.v2app .tnavb.on svg{color:#fff}.v2app .wkrow{display:flex;align-items:center;gap:11px;border-radius:13px;padding:11px 13px;margin-bottom:8px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .wkrow .gd{width:9px;height:9px;border-radius:50%;flex:none}.v2app .wkrow .tx{flex:1;display:flex;flex-direction:column}.v2app .wkrow .cz{font-family:var(--font-display);font-weight:800;font-size:15px}.v2app .wkrow .en{font-size:12px;color:var(--ink-3);margin-top:1px}.v2app .wkrow .miss{font-size:11px;font-weight:800;color:var(--accent);background:var(--accent-soft);border-radius:99px;padding:4px 10px;flex:none}.v2app .tchat{display:flex;flex-direction:column;gap:10px;margin-top:4px}.v2app .tchatday{align-self:center;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line);border-radius:99px;padding:4px 12px;margin-bottom:2px}.v2app .tchatbar{display:flex;gap:9px;margin-top:14px}.v2app .tchatbar input{flex:1;border:1px solid var(--line);background:var(--solid);border-radius:99px;padding:11px 16px;font-family:var(--font-sans);font-size:15px;color:var(--ink)}.v2app .tchatbar input:focus{outline:none;border-color:var(--accent)}.v2app .tchatbar .send{width:44px;height:44px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer}.v2app .mrow{display:flex;align-items:flex-end;gap:8px;max-width:82%}.v2app .mrow.them{align-self:flex-start}.v2app .mrow.me{align-self:flex-end;flex-direction:column;align-items:flex-end}.v2app .mrow .mav{width:28px;height:28px;border-radius:50%;background:var(--graphite,#3a3a3a);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex:none;margin-bottom:2px}.v2app .msg{border-radius:16px;padding:9px 13px 7px;font-size:14px;line-height:1.45;box-shadow:var(--sh)}.v2app .msg .who{font-size:11px;font-weight:800;color:var(--ink-2);margin-bottom:3px;display:flex;align-items:center;gap:6px}.v2app .msg .who .tp{font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent-soft);border-radius:99px;padding:1px 6px}.v2app .msg .tm{display:block;font-size:10px;font-weight:600;margin-top:3px;text-align:right}.v2app .msg.them{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:5px}.v2app .msg.them .tm{color:var(--ink-4,#b3ab9f)}.v2app .msg.me{background:var(--accent);color:#fff;border-bottom-right-radius:5px}.v2app .msg.me .tm{color:#ffffffb8}.v2app .msgdel{margin-top:5px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--solid);color:var(--accent);border-radius:99px;padding:5px 11px;font-size:11.5px;font-weight:800;cursor:pointer}.v2app .ttabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;background:var(--solid);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.v2app .ttabbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:none;padding:9px 0 8px;font-family:var(--font-sans);font-weight:700;font-size:10.5px;color:var(--ink-3);cursor:pointer}.v2app .ttabbar button.on{color:var(--accent)}.v2app .secintro{min-height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 30px}.v2app .secintro .secbadge{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--ink-2);margin-bottom:18px}.v2app .secintro .secbadge.good{background:var(--good-soft,#e7f4ec);color:var(--good,#1c6b3e)}.v2app .secintro .seclab{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--good,#1c6b3e);margin-bottom:8px}.v2app .secintro h2{font-family:var(--font-display);font-weight:800;font-size:26px;letter-spacing:-.02em}.v2app .secintro p{font-size:15px;line-height:1.55;color:var(--ink-3);margin-top:10px;max-width:300px}.v2app .secintro .btn{width:100%;max-width:300px}.v2app .wtask{border-radius:16px;padding:15px 16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh);margin-bottom:14px}.v2app .wtask .wt-prompt{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:800;font-size:17px}.v2app .wtask .wreq{font-size:12.5px;color:var(--ink-3);margin-top:6px;padding-left:24px}.v2app .wtext{min-height:150px}.v2app .writecount{display:flex;align-items:center;justify-content:space-between;margin-top:9px;font-size:12.5px;color:var(--ink-3);font-weight:600}.v2app .writecount .ai{display:inline-flex;align-items:center;gap:5px;color:#7a4e9e;font-weight:800}.v2app .wact{display:flex;gap:10px;margin-top:16px}.v2app .wact .btn{flex:1;width:auto}.v2app .wsubmitted{border-radius:14px;padding:13px 15px;background:var(--surface-2);border:1px solid var(--line);font-size:14.5px;line-height:1.55;color:var(--ink-2);white-space:pre-wrap;margin-bottom:12px}.v2app .wgrade{border-radius:16px;padding:15px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh)}.v2app .wgrade .gt{display:flex;align-items:center;gap:8px;margin-bottom:6px}.v2app .wgrade .gt .gv{font-family:var(--font-display);font-weight:800;font-size:16px}.v2app .wgrade-md{font-size:14px;line-height:1.6;color:var(--ink)}.v2app .wgrade-md h1,.v2app .wgrade-md h2,.v2app .wgrade-md h3{font-size:14px;font-weight:800;margin:10px 0 4px}.v2app .wgrade-md ul{margin:4px 0;padding-left:18px}.v2app .wgrade-md p{margin:6px 0}.v2app .matnote{margin:-4px 0 10px;padding:12px 15px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);font-size:14px;line-height:1.6;color:var(--ink-2)}.v2app .matnote h1,.v2app .matnote h2,.v2app .matnote h3{font-size:14px;font-weight:800;margin:8px 0 4px}.v2app .matnote ul{margin:4px 0;padding-left:18px}.v2app a.mat{text-decoration:none;color:inherit}.v2app .pchoice{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:1px solid var(--line);background:var(--solid);border-radius:16px;padding:15px;box-shadow:var(--sh);cursor:pointer}.v2app .pchoice .ic{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex:none}.v2app .pchoice.vocab .ic{background:var(--accent-soft);color:var(--accent)}.v2app .pchoice.ex .ic{background:color-mix(in srgb,#3B6FE0 14%,transparent);color:#3b6fe0}.v2app .pchoice .tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.v2app .pchoice .tx .t{font-family:var(--font-display);font-weight:800;font-size:16px}.v2app .pchoice .tx .d{font-size:12.5px;color:var(--ink-3)}.v2app .pchoice .chev{color:var(--ink-4,#b3ab9f)}.v2app .exptoggle{display:inline-flex;align-items:center;gap:7px;margin-top:16px;background:none;border:0;color:var(--ink-3);font-family:var(--font-sans);font-weight:700;font-size:13px;cursor:pointer;padding:4px 2px}.v2app .nav .ttledit{flex:1;min-width:0;border:1.5px solid var(--accent);border-radius:10px;background:var(--solid);padding:7px 10px;font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--ink)}.v2app .nav .ttledit:focus{outline:none}.v2app .tickhint{font-size:11.5px;color:var(--ink-4,#b3ab9f);margin:6px 2px 0}.v2app .wt-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}.v2app .wlek{width:auto;padding:6px 10px;font-size:13px}.v2app .wcur{font-size:11px;font-weight:800;color:var(--good,#1c6b3e);background:var(--good-soft,#e7f4ec);border-radius:99px;padding:3px 9px}.v2app .spscore .vd.heard{font-style:italic;color:var(--ink-3);margin-top:4px}.v2app .wact .btn{font-size:14px;white-space:nowrap;padding-left:12px;padding-right:12px;min-width:0}.v2app .wact .btn.sub{flex:1.5}.v2app .wbbar{display:flex;align-items:center;justify-content:space-between}.v2app .wbsort{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:6px 12px;font-family:var(--font-sans);font-weight:700;font-size:12px;color:var(--ink-2);cursor:pointer}.v2app .wbsort.on{background:var(--accent);border-color:var(--accent);color:#fff}.v2app .streak7 .sd.sdvac .dot{background:#ffffff57;color:#fff}.v2app .shopcard .buy.active{display:inline-flex;align-items:center;gap:5px;background:var(--good-soft,#e7f4ec);color:var(--good,#1c6b3e);border:1px solid var(--good,#1c6b3e);border-radius:99px;padding:8px 13px;font-weight:800;font-size:12.5px;flex:none}.v2app .lekjump{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;-ms-overflow-style:none;scrollbar-width:none}.v2app .lekjump::-webkit-scrollbar{display:none}.v2app .lekjump button{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:6px 11px;font-family:var(--font-sans);font-weight:800;font-size:12px;color:var(--ink-2);cursor:pointer}.v2app .lstate{display:inline-flex;align-items:center;gap:7px;margin-top:12px;border:1px solid var(--line);background:var(--solid);border-radius:99px;padding:8px 14px;font-family:var(--font-sans);font-weight:800;font-size:12.5px;color:var(--accent);cursor:pointer}.v2app .lstate.on{color:var(--good,#1c6b3e);background:var(--good-soft,#e7f4ec);border-color:transparent;cursor:default}.v2app .lstate.mut{color:var(--ink-3);margin-left:8px}.v2app .askctx{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:9px 12px;margin-bottom:12px}.v2app .askctx b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.v2app .askctx button{border:0;background:none;color:var(--ink-3);cursor:pointer;display:flex;padding:2px}.v2app .msg{min-width:0;max-width:100%;word-break:break-word;overflow-wrap:anywhere}.v2app .msg .tm{white-space:nowrap}.v2app .msg a{color:inherit;text-decoration:underline;word-break:break-all}.v2app .srcsec{margin-top:14px}.v2app .srcimg{display:block;border-radius:14px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh);margin-bottom:9px}.v2app .srcimg img{display:block;width:100%;max-height:340px;object-fit:contain;background:#fff}.v2app .srclink{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:12.5px;font-weight:800;color:var(--accent);text-decoration:none}.v2app .ivgrid{display:flex;flex-wrap:wrap;gap:9px}.v2app .ivcell{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:800;color:var(--ink-3)}.v2app .ivcell input{width:58px;text-align:center;font-size:15px;font-weight:700;padding:8px 6px;border:1.5px solid var(--line);border-radius:10px;background:var(--solid);color:var(--ink)}.v2app .ivcell input:focus{outline:none;border-color:var(--accent)}.v2app .ivfoot{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:12px;color:var(--ink-3)}.v2app .ivfoot span{flex:1}.v2app .ivfoot button{border:0;background:none;color:var(--accent);font-weight:800;font-size:12px;cursor:pointer}.v2app .phchip{flex:none;font-size:10.5px;font-weight:800;border-radius:99px;padding:3px 9px;white-space:nowrap}.v2app .phchip.ph-new{background:var(--surface-2);color:var(--ink-3);border:1px solid var(--line)}.v2app .phchip.ph-learn{background:var(--accent-soft);color:var(--accent)}.v2app .phchip.ph-rev{background:var(--good-soft,#e7f4ec);color:var(--good,#1c6b3e)}
