@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/newsreader-latin-400-normal-BFBkh4jY.woff2) format("woff2"),url(/assets/newsreader-latin-400-normal-gRTjlS2D.woff) format("woff")}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/newsreader-latin-500-normal-B66TYsaK.woff2) format("woff2"),url(/assets/newsreader-latin-500-normal-DFwuUcdu.woff) format("woff")}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/newsreader-latin-600-normal-30OJ_TG_.woff2) format("woff2"),url(/assets/newsreader-latin-600-normal-DUnT2r2g.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}:root{--bg: #fcfaf2;--paper: #fffdf6;--paper-2: #faf6e8;--ink-1: #1a1714;--ink-2: #4a4036;--muted: #8a7d6b;--rule: #e8e1cf;--rule-2: #d8cfb6;--accent: #2E92B8;--accent-2: #5BB3CC;--accent-tint: #e6f3f8;--accent-tint-2: #d1eaf3;--accent-rule: #b8dde9;--ok: #2f7a3e;--ok-bg: #e8f3e9;--warn: #d4a017;--warn-bg: #faf3da;--bad: #8b2a1e;--bad-bg: #fbe8e3;--skill-lesen: #2E92B8;--skill-sb: #6BAFC2;--skill-horen: #4FB7B0;--skill-schreiben: #88BFD2;--shadow-sm: 0 1px 2px rgba(26,23,20,.06);--shadow-md: 0 4px 12px rgba(26,23,20,.08);--shadow-lg: 0 12px 28px rgba(26,23,20,.12);--serif: "Source Serif 4", "Source Serif Pro", Georgia, serif;--sans: "Inter", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace}html,body,#root{margin:0;padding:0;height:100%;font-family:var(--sans);color:var(--ink-1)}body{background:var(--bg);-webkit-font-smoothing:antialiased}.auth-screen{min-height:100%;background:linear-gradient(180deg,#fffdf6,#faf2dc);display:flex;flex-direction:column;padding:60px 24px 24px;position:relative}.auth-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 20% 10%,rgba(200,71,43,.08) 0%,transparent 40%),radial-gradient(circle at 80% 90%,rgba(217,160,23,.08) 0%,transparent 40%);pointer-events:none}.auth-brand{text-align:center;margin-bottom:40px;position:relative}.auth-brand .logo{font-family:var(--serif);font-size:48px;font-weight:600;letter-spacing:-1px;color:var(--accent);display:inline-block;border-bottom:3px solid var(--accent);padding:0 16px 4px}.auth-brand .tag{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:var(--muted);margin-top:12px}.auth-card{background:var(--paper);border-radius:20px;padding:28px 22px;box-shadow:var(--shadow-lg);position:relative;border:1px solid var(--rule)}.auth-card h1{font-family:var(--serif);font-size:26px;font-weight:600;margin:0 0 6px;letter-spacing:-.4px}.auth-card .sub{font-size:14px;color:var(--muted);margin:0 0 20px;line-height:1.5}.auth-card label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-2);margin:12px 0 6px}.auth-card input{width:100%;padding:12px 14px;border:1.5px solid var(--rule-2);border-radius:10px;background:#fffefa;font-size:15px;transition:border-color .15s}.auth-card input:focus{outline:none;border-color:var(--accent)}.btn-primary{width:100%;padding:14px;background:var(--ink-1);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;margin-top:18px;cursor:pointer;transition:transform .05s}.btn-primary:active{transform:scale(.98)}.btn-sso{width:100%;padding:12px;background:#fff;border:1.5px solid var(--rule-2);border-radius:10px;font-size:14px;font-weight:500;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;color:var(--ink-1)}.btn-sso.apple{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.divider{text-align:center;margin:18px 0 6px;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--rule)}.divider span{position:relative;background:var(--paper);padding:0 12px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.auth-foot{margin-top:22px;text-align:center;font-size:13px;color:var(--muted);display:flex;gap:8px;justify-content:center}.auth-foot a{color:var(--accent);cursor:pointer;font-weight:500}.auth-foot a:hover{text-decoration:underline}.check-card{text-align:center;padding:16px 0}.check-card .check{width:48px;height:48px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600;margin:0 auto 12px}.check-card h2{font-family:var(--serif);margin:0 0 6px;font-weight:600}.check-card p{color:var(--muted);margin:0;font-size:14px}.dash-screen{min-height:100%;background:var(--bg);padding:48px 0 90px}.dash-top{display:flex;align-items:center;justify-content:space-between;padding:0 20px 20px}.hello{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:-.3px}.sub-hi{font-size:13px;color:var(--muted);margin-top:2px}.avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-weight:600;font-size:15px;border:2px solid #fff;box-shadow:var(--shadow-md);cursor:pointer}.stat-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 16px 24px}.stat-c{background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:14px 10px;text-align:center}.stat-c .num{font-family:var(--serif);font-size:28px;font-weight:600;color:var(--ink-1);line-height:1}.stat-c.orange .num{color:var(--accent)}.stat-c.green .num{color:var(--ok)}.stat-c .lab{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-top:6px}.dash-section{padding:0 16px;margin-bottom:28px}.dash-section-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.dash-section-h h2{font-family:var(--serif);font-size:18px;font-weight:600;margin:0;letter-spacing:-.2px}.dash-section-h .link{font-size:12px;color:var(--accent);font-weight:500}.paper-card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:14px;margin-bottom:10px;display:flex;gap:12px;align-items:center;cursor:pointer;transition:transform .08s,box-shadow .15s;box-shadow:var(--shadow-sm)}.paper-card:active:not(.locked){transform:scale(.98)}.paper-card:not(.locked):hover{box-shadow:var(--shadow-md)}.paper-card.locked{opacity:.55;cursor:not-allowed}.paper-icon{width:44px;height:44px;background:var(--paper-2);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.paper-icon svg{width:22px;height:22px;fill:none;stroke:var(--ink-2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.paper-card:not(.locked) .paper-icon{background:linear-gradient(135deg,var(--accent-tint),var(--accent-tint-2))}.paper-card:not(.locked) .paper-icon svg{stroke:var(--accent)}.paper-body{flex:1;min-width:0}.paper-title{font-family:var(--serif);font-size:16px;font-weight:600;letter-spacing:-.1px}.paper-sub{font-size:12px;color:var(--muted);margin-top:2px}.paper-meta{font-size:11px;color:var(--ink-2);margin-top:4px;font-style:italic}.paper-progress{display:flex;align-items:center;gap:8px;margin-top:8px}.paper-progress .bar{flex:1;height:4px;background:var(--rule);border-radius:2px;overflow:hidden}.paper-progress .bar>div{height:100%;background:var(--accent);border-radius:2px;transition:width .3s}.paper-progress span{font-size:11px;color:var(--muted);font-weight:600}.paper-cta{flex-shrink:0}.pill{font-size:11px;font-weight:600;padding:5px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px}.pill.primary{background:var(--ink-1);color:#fff}.pill.warn{background:var(--warn-bg);color:var(--warn)}.pill.done{background:var(--ok-bg);color:var(--ok)}.pill.lock{background:var(--rule);color:var(--muted);padding:5px 8px}.tips-row{display:flex;gap:10px}.tip-card{flex:1;background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:14px}.tip-emoji{font-size:22px}.tip-t{font-family:var(--serif);font-weight:600;font-size:14px;margin-top:6px}.tip-s{font-size:11px;color:var(--muted);margin-top:2px}.m-tabs{position:absolute;bottom:0;left:0;right:0;background:#fffdf6f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--rule);display:flex;padding:6px 4px 8px;gap:0;z-index:50}.m-tab{flex:1;background:transparent;border:none;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 2px;cursor:pointer;color:var(--muted)}.m-tab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.m-tab span{font-size:10px;font-weight:500}.m-tab.on{color:var(--accent)}.exam-screen{height:100%;display:flex;flex-direction:column;background:var(--bg);position:relative;overflow:hidden}.exam-top{display:flex;align-items:center;gap:10px;padding:50px 14px 12px;background:var(--paper);border-bottom:1px solid var(--rule);flex-shrink:0}.back-btn{width:36px;height:36px;background:var(--paper-2);border:1px solid var(--rule);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.back-btn svg{width:18px;height:18px;fill:none;stroke:var(--ink-1);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.exam-h-info{flex:1;min-width:0}.exam-h-info-btn{display:block;flex:1;min-width:0;background:transparent;border:0;padding:4px 6px 4px 2px;margin:0;text-align:left;cursor:pointer;font:inherit;color:inherit;border-radius:8px;transition:background .15s ease}.exam-h-info-btn:active{background:var(--paper-2)}.exam-h-t{font-family:var(--serif);font-weight:600;font-size:15px;line-height:1.15}.exam-h-s{font-size:11px;color:var(--muted);margin-top:2px;display:inline-flex;align-items:center;gap:4px}.exam-h-chev{color:var(--muted);opacity:.7;margin-left:1px}.exam-menu-btn{width:36px;height:36px;background:var(--paper-2);border:1px solid var(--rule);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;cursor:pointer;flex-shrink:0}.exam-menu-btn span{display:block;width:14px;height:1.5px;background:var(--ink-1);border-radius:1px}.exam-time{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;padding:4px 9px 5px;background:var(--paper-2);border:1px solid var(--rule);border-radius:9px;min-width:56px;line-height:1;transition:background .18s ease,border-color .18s ease,color .18s ease}.exam-time-lbl{font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.exam-time-clk{font-family:var(--mono);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-1);letter-spacing:-.02em}.exam-time.warn{background:color-mix(in oklch,var(--warn) 12%,var(--paper-2));border-color:color-mix(in oklch,var(--warn) 38%,var(--rule))}.exam-time.warn .exam-time-clk{color:var(--warn)}.exam-time.crit{background:color-mix(in oklch,var(--warn) 18%,var(--paper-2));border-color:color-mix(in oklch,var(--warn) 55%,var(--rule));animation:exam-time-pulse 1.4s ease-in-out infinite}.exam-time.crit .exam-time-clk,.exam-time.crit .exam-time-lbl{color:color-mix(in oklch,var(--warn) 80%,#000)}@keyframes exam-time-pulse{0%,to{box-shadow:0 0 color-mix(in oklch,var(--warn) 0%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in oklch,var(--warn) 25%,transparent)}}.exam-time-guest{opacity:.55}.exam-time-guest .exam-time-clk{color:var(--muted)}.exam-prog-rail{height:3px;background:var(--paper-2);border-bottom:1px solid var(--rule);flex-shrink:0;overflow:hidden}.exam-prog-rail span{display:block;height:100%;background:var(--ink-1);transition:width .32s cubic-bezier(.32,.72,.24,1)}.exam-h-prog .ring{width:40px;height:40px;position:relative}.exam-h-prog .ring svg{width:100%;height:100%}.exam-h-prog .ring span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:600;color:var(--ink-1)}.sd-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#14120e6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:80}.sd-panel{position:absolute;top:0;bottom:0;left:0;width:86%;max-width:340px;background:var(--paper);border-right:1px solid var(--rule);box-shadow:4px 0 24px #14120e2e;z-index:90;display:flex;flex-direction:column;overscroll-behavior:contain}.sd-head{padding:50px 14px 14px;border-bottom:1px solid var(--rule);display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-shrink:0}.sd-brand{font-family:var(--serif);font-size:15px;font-weight:600;letter-spacing:-.2px;color:var(--ink-1);line-height:1.15}.sd-brand-mark{color:var(--accent);font-style:italic}.sd-paper{font-size:11px;color:var(--muted);margin-top:3px;text-transform:uppercase;letter-spacing:.06em}.sd-close{width:32px;height:32px;background:var(--paper-2);border:1px solid var(--rule);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--ink-1);cursor:pointer;flex-shrink:0}.sd-nav{flex:1;overflow-y:auto;padding:10px 10px 16px;-webkit-overflow-scrolling:touch}.sd-group{margin-top:10px}.sd-group:first-child{margin-top:4px}.sd-group-h{padding:8px 10px 4px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.sd-row{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:0;border-radius:10px;cursor:pointer;text-align:left;font:inherit;color:var(--ink-1);transition:background .14s ease}.sd-row:active{background:var(--paper-2)}.sd-row.on{background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--rule)}.sd-row.on .sd-num{color:var(--ink-1);font-weight:700}.sd-row.done .sd-pill{background:color-mix(in oklch,var(--ok) 18%,transparent);color:var(--ok);border-color:color-mix(in oklch,var(--ok) 28%,transparent)}.sd-row.locked{opacity:.55}.sd-row.locked .sd-meta{color:var(--muted)}.sd-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px color-mix(in oklch,currentColor 20%,transparent)}.sd-dot-lesen{background:var(--skill-lesen)}.sd-dot-sb{background:var(--skill-sb)}.sd-dot-horen{background:var(--skill-horen)}.sd-dot-schr{background:var(--skill-schreiben)}.sd-dot-review{background:var(--ink-1)}.sd-num{font-family:var(--mono);font-size:11px;color:var(--muted);width:22px;font-variant-numeric:tabular-nums;flex-shrink:0}.sd-info{flex:1;min-width:0;display:block}.sd-label{display:block;font-size:13.5px;font-weight:600;letter-spacing:-.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sd-sub{display:block;font-size:11px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sd-meta{flex-shrink:0;display:flex;align-items:center;color:var(--muted)}.sd-pill{font-family:var(--mono);font-size:10.5px;font-variant-numeric:tabular-nums;padding:3px 7px;background:var(--paper-2);border:1px solid var(--rule);border-radius:999px;color:var(--ink-1);letter-spacing:.02em}.sd-foot-note{padding:12px 16px;border-top:1px solid var(--rule);font-size:11.5px;color:var(--muted);background:var(--paper-2);flex-shrink:0}.sd-foot-note strong{color:var(--ink-1);font-weight:600}.sd-foot-note em{color:var(--accent);font-style:normal;font-weight:600}.cs-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#14120e80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:200}.cs-sheet{position:absolute;left:0;right:0;bottom:0;background:var(--paper);border-top-left-radius:18px;border-top-right-radius:18px;padding:6px 22px 26px;box-shadow:0 -8px 28px #14120e2e;z-index:210;text-align:left}.cs-grip{width:36px;height:4px;background:var(--rule-2);border-radius:2px;margin:6px auto 14px}.cs-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:color-mix(in oklch,var(--accent) 14%,var(--paper-2));color:var(--accent);margin-bottom:14px}.cs-time .cs-icon{background:color-mix(in oklch,var(--accent) 14%,var(--paper-2));color:var(--accent)}.cs-title{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.3px;line-height:1.18;margin:0 0 6px;color:var(--ink-1)}.cs-body{margin:0 0 18px;font-size:13.5px;line-height:1.5;color:var(--ink-2);text-wrap:pretty}.cs-actions{display:flex;gap:10px}.cs-btn{flex:1;padding:13px 14px;border:1px solid transparent;border-radius:11px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .14s ease,border-color .14s ease}.cs-btn-ghost{background:var(--paper-2);border-color:var(--rule);color:var(--ink-1)}.cs-btn-ghost:active{background:var(--rule)}.cs-btn-primary{background:var(--ink-1);color:var(--paper)}.cs-btn-primary:active{background:#000}.cs-warn .cs-btn-primary{background:var(--accent);color:#fff}.cs-warn .cs-btn-primary:active{background:color-mix(in oklch,var(--accent) 80%,#000)}.cs-time .cs-btn-primary{background:var(--accent);color:#fff}.m-content{flex:1;overflow-y:auto;padding:16px 16px 40px;-webkit-overflow-scrolling:touch}.m-content:before{display:none}.m-content.skill-lesen{border-top:3px solid var(--skill-lesen);margin-top:0}.m-content.skill-sb{border-top:3px solid var(--skill-sb)}.m-content.skill-horen{border-top:3px solid var(--skill-horen)}.m-content.skill-schreiben{border-top:3px solid var(--skill-schreiben)}.crumb{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:8px 0 12px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.crumb .dot{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.5}.subtest-h{font-family:var(--serif);font-size:22px;font-weight:600;margin:0 0 4px;letter-spacing:-.3px;line-height:1.15}.subtest-h .sm{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px;font-family:var(--sans);letter-spacing:0}.instr{font-size:13px;color:var(--ink-2);margin:12px 0 16px;background:var(--paper-2);padding:10px 12px;border-radius:8px;border-left:3px solid var(--accent-2);line-height:1.5}.ad{background:var(--paper);border:1px solid var(--rule);border-radius:8px;padding:12px;margin-bottom:8px;font-size:13px;line-height:1.5}.ad-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.ad-l{width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.ad-site{font-size:10px;color:var(--muted);font-style:italic}.match-q{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--rule)}.match-q .qn{width:28px;height:28px;border-radius:50%;background:var(--ink-1);color:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;flex-shrink:0}.match-q .qt{font-size:13.5px;line-height:1.5;margin-bottom:8px}.bubble-row{display:flex;gap:6px;flex-wrap:wrap}.bubble{min-width:36px;height:36px;padding:0 4px;border-radius:50%;border:1.5px solid var(--rule-2);background:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;cursor:pointer;transition:all .1s}.bubble.on{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.bubble.review.correct{background:var(--ok-bg);color:var(--ok);border-color:var(--ok)}.bubble.review.wrong{background:var(--bad-bg);color:var(--bad);border-color:var(--bad);text-decoration:line-through}.bubble.review.expected{border-style:dashed;border-color:var(--ok);color:var(--ok)}.passage{background:var(--paper);padding:14px;border-radius:8px;border:1px solid var(--rule);font-size:14px;line-height:1.6;color:var(--ink-2);margin:12px 0;white-space:pre-line}.passage h3{font-family:var(--serif);font-size:16px;font-weight:600;margin:0 0 8px}.mcq{padding:12px 0;border-top:1px solid var(--rule)}.qn-line{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}.qn-line .qn{width:28px;height:28px;border-radius:50%;background:var(--ink-1);color:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;flex-shrink:0}.qn-line .qt{font-size:13.5px;line-height:1.5;flex:1}.mcq-opts{display:flex;flex-direction:column;gap:6px}.mcq-opt{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--paper);border:1.5px solid var(--rule-2);border-radius:8px;cursor:pointer;font-size:13.5px;transition:all .1s}.mcq-opt .b{width:22px;height:22px;border-radius:50%;background:var(--paper-2);border:1px solid var(--rule-2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;flex-shrink:0}.mcq-opt.on{border-color:var(--ink-1);background:#fff}.mcq-opt.on .b{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.mcq-opt.review.correct{background:var(--ok-bg);border-color:var(--ok)}.mcq-opt.review.wrong{background:var(--bad-bg);border-color:var(--bad)}.mcq-opt.review.expected{border-style:dashed;border-color:var(--ok)}.rf-pair{display:flex;gap:6px}.rf-btn{flex:1;padding:10px;background:#fff;border:1.5px solid var(--rule-2);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.rf-btn.on{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.rf-btn.review.correct{background:var(--ok-bg);color:var(--ok);border-color:var(--ok)}.rf-btn.review.wrong{background:var(--bad-bg);color:var(--bad);border-color:var(--bad);text-decoration:line-through}.rf-btn.review.expected{border-style:dashed;border-color:var(--ok);color:var(--ok)}.subj-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--paper-2);padding:8px;border-radius:8px;margin:12px 0}.subj-grid .item{background:#fff;border:1px solid var(--rule);padding:8px 10px;border-radius:6px;display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.4}.subj-grid .item .ad-l{width:20px;height:20px;font-size:10px;flex-shrink:0}.email-card{background:var(--paper);border:1px solid var(--rule);border-radius:10px;margin:12px 0;overflow:hidden}.email-h{background:var(--paper-2);padding:10px 12px;border-bottom:1px solid var(--rule)}.email-h .row{display:flex;gap:8px;font-size:12px;line-height:1.5}.email-h .lbl{width:60px;color:var(--muted);font-weight:500}.email-h .v{flex:1}.email-h .v.subj{font-weight:600;color:var(--ink-1)}.email-body{padding:14px;font-size:13.5px;line-height:1.65;color:var(--ink-2);white-space:pre-line}.gap{display:inline-flex;align-items:center;gap:3px;background:var(--accent-tint);padding:2px 4px;border-radius:4px;margin:0 1px;border:1px solid var(--accent-rule)}.gap .gn{font-size:9px;font-weight:700;background:var(--accent);color:#fff;padding:1px 4px;border-radius:3px}.gap select{border:none;background:transparent;font-family:inherit;font-size:12.5px;font-weight:500;color:var(--ink-1);padding:0;max-width:80px}.gap select:focus{outline:none}.gap.review.correct{background:var(--ok-bg);border-color:var(--ok)}.gap.review.wrong{background:var(--bad-bg);border-color:var(--bad)}.gap .ans{font-size:9.5px;color:var(--ok);font-weight:700;background:#fff;padding:1px 4px;border-radius:3px}.audio-card{background:linear-gradient(135deg,#1a1a1a,#2a2520);color:var(--accent-tint);padding:14px;border-radius:12px;margin:12px 0;box-shadow:var(--shadow-md)}.audio-card .row1{display:flex;align-items:center;gap:12px}.audio-card .play{width:44px;height:44px;background:var(--accent);color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.audio-card .play svg{width:18px;height:18px;fill:currentColor}.audio-card .play:disabled{opacity:.4;cursor:not-allowed}.audio-card .info{flex:1;min-width:0}.audio-card .t{font-family:var(--serif);font-weight:600;font-size:14px}.audio-card .meta{font-size:11px;color:#fff7d899;margin-top:2px}.audio-card .progress{height:4px;background:#ffffff26;border-radius:2px;overflow:hidden;margin:12px 0 6px}.audio-card .progress>div{height:100%;background:var(--accent-2);transition:width .3s}.audio-card .plays{font-size:10.5px;color:#fff7d899;text-transform:uppercase;letter-spacing:.5px}.tts-warn{background:var(--warn-bg);color:var(--warn);padding:8px 10px;border-radius:6px;font-size:11.5px;margin-bottom:8px}.part{font-family:var(--serif);font-weight:600;font-size:16px;margin:20px 0 10px;display:flex;align-items:center;gap:10px}.part .num{width:28px;height:28px;border-radius:50%;background:var(--ink-1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.composer{background:var(--paper);border:1px solid var(--rule);border-radius:10px;overflow:hidden;margin:8px 0}.composer .ch{background:var(--paper-2);padding:8px 12px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.composer textarea{width:100%;min-height:160px;padding:14px;border:none;resize:vertical;font-family:var(--serif);font-size:14px;line-height:1.6;background:transparent;color:var(--ink-1)}.composer textarea:focus{outline:none}.composer .cf{display:flex;justify-content:space-between;padding:6px 12px;border-top:1px solid var(--rule);font-size:11px;color:var(--muted)}.composer .wc{font-weight:600;color:var(--ink-2)}.sms-thread{background:var(--paper-2);border-radius:14px;padding:12px;margin:8px 0}.sms-thread .row{display:flex;margin:4px 0}.sms-thread .row.left{justify-content:flex-start}.sms-thread .row.right{justify-content:flex-end}.sms-bubble{max-width:75%;padding:9px 13px;border-radius:16px;font-size:13.5px;line-height:1.4}.sms-bubble.received{background:#fff;border:1px solid var(--rule);border-bottom-left-radius:4px}.sms-bubble.sent{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.notiz-list{margin:8px 0}.notiz-row{background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:12px;margin-bottom:10px}.notiz-row.beispiel{background:var(--paper-2);border-style:dashed}.notiz-row .nh{display:flex;align-items:center;gap:8px;margin-bottom:8px}.notiz-row .n{width:24px;height:24px;border-radius:50%;background:var(--ink-1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.notiz-row.beispiel .n{background:var(--muted)}.notiz-row .who{font-weight:600;font-size:13px}.notiz-row .what{font-size:11px;color:var(--muted)}.notiz-row .nq{font-size:12.5px;color:var(--ink-2);background:var(--accent-tint);padding:8px 10px;border-radius:6px;margin:8px 0;font-style:italic}.ans-input{width:100%;padding:10px;border:1.5px solid var(--rule-2);border-radius:8px;font-size:14px;background:#fff}.ans-input:focus{outline:none;border-color:var(--accent)}.ans-rev{display:flex;flex-direction:column;gap:4px;font-size:12px}.ans-rev .got{color:var(--ink-2)}.ans-rev .want{color:var(--ok);font-weight:600}.nav-row{display:flex;gap:8px;margin:24px 0 8px}.nav-row button{flex:1;padding:12px;background:var(--paper);border:1.5px solid var(--rule-2);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;color:var(--ink-1)}.nav-row button.primary{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.nav-row button.warn{background:var(--accent);color:#fff;border-color:var(--accent)}.result-stamp{display:inline-block;font-family:var(--serif);font-weight:700;font-size:18px;padding:4px 14px;border:2.5px solid;border-radius:6px;transform:rotate(-2deg);margin:8px 0}.result-stamp.pass{color:var(--ok);border-color:var(--ok);background:#2f7a3e0f}.result-stamp.fail{color:var(--bad);border-color:var(--bad);background:#b8341e0f}.score-big{font-family:var(--serif);font-size:56px;font-weight:600;letter-spacing:-2px;margin:12px 0 4px;color:var(--ink-1)}.score-big .of{font-size:22px;color:var(--muted);font-weight:400}.lvl-pill{display:inline-block;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.lvl-pill.b1{background:var(--ok-bg);color:var(--ok)}.lvl-pill.a2{background:var(--warn-bg);color:var(--warn)}.lvl-pill.fail{background:var(--bad-bg);color:var(--bad)}.section-h{font-family:var(--serif);font-size:16px;font-weight:600;margin:28px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--rule)}.breakdown{display:flex;flex-direction:column;gap:10px}.br-row{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--ink-1);padding:10px 12px;border-radius:8px}.br-row.skill-Lesen{border-left-color:var(--skill-lesen)}.br-row.skill-Hören{border-left-color:var(--skill-horen)}.br-row.skill-Schreiben{border-left-color:var(--skill-schreiben)}.br-row .name{font-family:var(--serif);font-weight:600;font-size:14px}.br-row .bar-mini{height:4px;background:var(--rule);border-radius:2px;margin-top:6px;overflow:hidden}.br-row .bar-mini>div{height:100%;background:var(--accent);border-radius:2px}.br-row .pts{font-weight:700;font-size:13px;color:var(--ink-1);flex-shrink:0}.empty-state{text-align:center;padding:40px 32px;margin:16px 0;background:var(--paper);border:1px dashed var(--rule-2);border-radius:16px;display:flex;flex-direction:column;align-items:center;gap:10px}.empty-state p{margin:0;line-height:1.5}.empty-state p:first-child{font-family:var(--serif);font-size:18px;font-weight:600}.empty-state .btn-primary{display:inline-block;width:auto;padding:10px 22px;margin-top:6px}.ring-block{display:flex;align-items:center;gap:28px;padding:24px;background:var(--paper);border:1px solid var(--rule);border-radius:16px;margin-bottom:8px}.ring-block svg{flex-shrink:0}.ring-label{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-weight:600}.ring-num{font-family:var(--serif);font-size:40px;font-weight:600;line-height:1;margin-top:8px;letter-spacing:-1px}.writing-self{background:var(--paper-2);border:1px dashed var(--rule-2);border-radius:8px;padding:12px;margin-bottom:10px}.writing-self h4{font-family:var(--serif);font-size:13px;font-weight:600;margin:0 0 8px}.writing-self .your{background:#fff;padding:10px;border-radius:6px;font-family:var(--serif);font-size:13px;line-height:1.6;color:var(--ink-2);margin-bottom:8px;white-space:pre-line}.writing-self .self{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}.writing-self .self button{padding:5px 10px;font-size:11px;font-weight:600;background:#fff;border:1px solid var(--rule-2);border-radius:6px;cursor:pointer}.writing-self .self button.on{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.detail-list{display:flex;flex-direction:column;gap:4px}.detail-list .row{display:flex;align-items:center;gap:10px;font-size:12px;background:var(--paper);padding:8px 10px;border:1px solid var(--rule);border-radius:6px}.detail-list .qn{width:28px;font-weight:700;color:var(--muted);flex-shrink:0}.detail-list .you{flex:1;line-height:1.4}.detail-list .res{width:24px;text-align:center;font-weight:700}.detail-list .res.ok{color:var(--ok)}.detail-list .res.no{color:var(--bad)}.detail-list .res.skip{color:var(--muted);font-size:10px;font-weight:500}.confetti-wrap{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:10}.confetti-piece{position:absolute;top:-10px;width:8px;height:14px;animation:confetti-fall 2.4s ease-out forwards;transform-origin:center}@keyframes confetti-fall{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translate(var(--dx),600px) rotate(var(--rot));opacity:0}}.tweak-style-clean .auth-card,.tweak-style-clean .paper-card,.tweak-style-clean .ad,.tweak-style-clean .email-card,.tweak-style-clean .passage,.tweak-style-clean .notiz-row{background:#fff;border-color:#e5e5e7}.tweak-style-clean{--bg: #f7f7f8;--paper: #fff;--paper-2: #f7f7f8;--rule: #e5e5e7;--rule-2: #d2d2d7}.cloze-passage{line-height:2}:root{--pro: var(--accent);--pro-2: var(--accent-2);--pro-bg: var(--accent-tint)}.btn-tiny-primary{background:var(--ink-1);color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:12px;font-weight:600;cursor:pointer;letter-spacing:.2px}.btn-tiny-primary:active{transform:scale(.96)}.paper-title .pro-tag{display:inline-block;margin-left:8px;background:var(--pro);color:#fff;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:700;padding:2px 6px;border-radius:3px;letter-spacing:.08em;vertical-align:middle}.paper-card.locked .paper-icon{background:var(--pro-bg)}.paper-card.locked .paper-icon svg{stroke:var(--pro)}.paper-card.locked{opacity:.85;cursor:pointer}.paper-card.locked:active{transform:scale(.98)}.pill.pro-pill{background:var(--pro);color:#fff;padding:5px 9px;font-family:JetBrains Mono,ui-monospace,monospace;letter-spacing:.04em}.referral-banner{margin:0 16px 24px;background:linear-gradient(135deg,var(--accent-tint) 0%,var(--accent-tint-2) 100%);border:1px solid var(--accent-rule);border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:12px;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .06s,box-shadow .15s}.referral-banner:active{transform:scale(.99)}.referral-banner:hover{box-shadow:var(--shadow-md)}.ref-banner-icon{font-size:28px;line-height:1;flex-shrink:0}.ref-banner-body{flex:1;min-width:0;text-align:left}.ref-banner-t{font-family:var(--serif);font-size:15px;font-weight:600;line-height:1.25}.ref-banner-s{font-size:12px;color:var(--ink-2);margin-top:3px;line-height:1.35}.ref-banner-arrow{font-size:18px;color:var(--accent);font-weight:600}.sheet-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:200}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;animation:fade-in .2s ease-out}.sheet{position:absolute;left:0;right:0;bottom:0;background:var(--paper);border-radius:22px 22px 0 0;max-height:90%;overflow-y:auto;box-shadow:0 -16px 40px #0000004d;animation:sheet-up .28s cubic-bezier(.2,.8,.2,1)}.sheet::-webkit-scrollbar{display:none}.sheet{scrollbar-width:none}.sheet-handle{width:40px;height:4px;background:var(--rule-2);border-radius:2px;margin:10px auto 4px}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.paywall-cover{background:linear-gradient(135deg,var(--accent-tint) 0%,var(--accent-tint-2) 60%,color-mix(in oklch,var(--accent) 22%,var(--accent-tint-2)) 100%);color:var(--ink-1);padding:24px 22px 22px;text-align:center;border-bottom:3px solid var(--accent);position:relative;overflow:hidden}.paywall-cover:after{content:"";position:absolute;right:-50px;bottom:-50px;width:180px;height:180px;background:radial-gradient(circle,color-mix(in oklch,var(--accent) 28%,transparent),transparent 60%);pointer-events:none}.paywall-tag{display:inline-block;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;color:var(--accent);background:#fff;border:1px solid var(--accent-rule);padding:4px 11px;border-radius:999px;letter-spacing:.18em;margin-bottom:12px;font-weight:600}.paywall-cover h2{font-family:var(--serif);font-weight:500;font-size:26px;letter-spacing:-.02em;margin:0 0 8px;color:var(--ink-1)}.paywall-cover p{font-size:13px;color:var(--ink-2);line-height:1.5;max-width:320px;margin:0 auto}.paywall-body{padding:18px 22px 24px}.price-row{display:flex;align-items:baseline;justify-content:center;gap:10px;margin-bottom:16px}.price{font-family:var(--serif);font-size:44px;font-weight:600;letter-spacing:-.03em;color:var(--ink-1)}.price-meta{font-size:12px;color:var(--muted)}.paywall-feats{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:10px}.paywall-feats li{font-size:13.5px;color:var(--ink-2);padding-left:26px;position:relative;line-height:1.4}.paywall-feats li:before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--pro-2);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.btn-pay{width:100%;background:var(--pro-2);color:#fff;border:none;border-radius:12px;padding:14px;font-size:14px;font-weight:600;cursor:pointer;margin-bottom:8px;letter-spacing:.2px;box-shadow:0 4px 12px color-mix(in oklch,var(--accent) 35%,transparent)}.btn-pay:active{transform:scale(.98)}.btn-pay-mini{width:100%;background:var(--pro-2);color:#fff;border:none;border-radius:10px;padding:11px;font-size:13px;font-weight:600;cursor:pointer;margin-top:10px}.btn-later{width:100%;background:transparent;border:none;padding:10px;font-size:13px;color:var(--muted);cursor:pointer}.referral-nudge{text-align:center;margin-top:6px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;color:var(--accent);cursor:pointer;letter-spacing:.04em}.referral-head{text-align:center;padding:20px 22px 12px}.ref-emoji{font-size:38px;line-height:1;margin-bottom:8px}.referral-head h2{font-family:var(--serif);font-weight:600;font-size:22px;letter-spacing:-.4px;margin:0 0 8px}.referral-head p{font-size:13px;color:var(--muted);line-height:1.5;max-width:300px;margin:0 auto}.referral-progress{display:flex;justify-content:center;gap:14px;padding:18px 22px 6px}.ref-pip{width:44px;height:44px;border-radius:50%;background:var(--paper-2);border:2px dashed var(--rule-2);display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px;font-weight:600;color:var(--muted)}.ref-pip.on{background:var(--ok-bg);border:2px solid var(--ok);color:var(--ok);font-size:18px}.referral-progress-meta{text-align:center;font-size:11.5px;color:var(--muted);margin-bottom:18px}.ref-link-row{display:flex;gap:8px;padding:0 22px 14px}.ref-link{flex:1;background:var(--paper-2);border:1px solid var(--rule);border-radius:10px;padding:12px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:var(--ink-2);display:flex;align-items:center;letter-spacing:.02em}.ref-copy{background:var(--ink-1);color:#fff;border:none;border-radius:10px;padding:12px 16px;font-size:12px;font-weight:600;cursor:pointer}.ref-share{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:0 22px 14px}.ref-share-btn{background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;font-size:11px;color:var(--ink-2);font-weight:500}.ref-state{margin:0 22px 14px;padding:12px 14px;border-radius:12px;background:var(--paper-2);border:1px solid var(--rule)}.ref-state.trial{background:var(--accent-tint);border-color:var(--accent-rule)}.ref-state.permanent{background:var(--ok-tint, #e3eedc);border-color:#c4e0c8}.ref-state-h{font-family:var(--serif);font-weight:600;font-size:14.5px;letter-spacing:-.2px}.ref-state-s{font-size:12.5px;color:var(--ink-2);margin-top:3px;line-height:1.4}.ref-steps{margin:0 22px 16px;padding:14px;background:var(--paper);border:1px solid var(--rule);border-radius:12px;display:flex;flex-direction:column;gap:12px}.ref-step{display:grid;grid-template-columns:26px 1fr;gap:12px;align-items:center}.ref-step-num{width:26px;height:26px;border-radius:50%;background:var(--paper-2);color:var(--ink-2);display:grid;place-items:center;font-family:var(--mono, ui-monospace, monospace);font-size:12px;font-weight:600;border:1px solid var(--rule)}.ref-step.done .ref-step-num{background:var(--ok);color:#fff;border-color:var(--ok)}.ref-step-body{min-width:0}.ref-step-h{font-weight:600;font-size:13.5px;line-height:1.2}.ref-step-s{font-family:var(--mono, ui-monospace, monospace);font-size:10.5px;color:var(--muted);letter-spacing:.3px;margin-top:2px}.nudge-head{text-align:center;padding:20px 22px 16px}.nudge-emoji{font-size:36px;line-height:1;margin-bottom:8px}.nudge-head h2{font-family:var(--serif);font-weight:500;font-size:26px;letter-spacing:-.4px;margin:0 0 10px;line-height:1.1}.nudge-head h2 em{color:var(--accent);font-style:italic}.nudge-head p{font-size:13px;color:var(--muted);line-height:1.55;margin:0}.sheet>.btn-primary,.sheet>.btn-later{margin-left:22px;margin-right:22px;width:calc(100% - 44px)}.sheet>.btn-primary{margin-bottom:8px}.nudge-foot{text-align:center;font-size:11.5px;color:var(--muted);padding:14px 0 24px}.guest-strip{background:var(--accent-tint);border-bottom:1px solid var(--accent-rule);padding:9px 16px;display:flex;gap:10px;align-items:center;font-size:11.5px;flex-shrink:0}.guest-strip-tag{background:var(--accent);color:#fff;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;font-weight:700;padding:2px 7px;border-radius:3px;letter-spacing:.1em;flex-shrink:0}.guest-strip-t{color:var(--ink-2);font-style:italic}.guest-link{text-align:center;margin-top:14px;padding-top:14px;border-top:1px dashed var(--rule)}.guest-link a{color:var(--ink-2);font-size:13px;cursor:pointer;font-weight:500}.guest-link a:hover{color:var(--accent)}.profile-card{display:flex;align-items:center;gap:14px;padding:16px 20px;margin:0 16px 22px;background:linear-gradient(135deg,var(--paper) 0%,var(--paper-2) 100%);border:1px solid var(--rule);border-radius:14px}.profile-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-family:var(--serif);font-size:22px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-info{flex:1;min-width:0}.profile-name{font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:-.2px}.profile-email{font-size:12px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-section{padding:0 16px;margin-bottom:22px}.profile-section-h{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:0 4px 8px;font-weight:600}.plan-card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:14px 16px}.plan-card.pro{background:linear-gradient(135deg,var(--accent-tint) 0%,var(--accent-tint-2) 100%);border:1px solid var(--accent);color:var(--ink-1)}.plan-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.plan-name{font-family:var(--serif);font-size:15px;font-weight:600}.plan-meta{font-size:11.5px;color:var(--muted);margin-top:2px}.plan-card.pro .plan-meta{color:var(--ink-2)}.plan-pill{font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;font-weight:700;padding:4px 8px;border-radius:3px;letter-spacing:.1em}.plan-pill.free{background:var(--rule);color:var(--muted)}.plan-or{text-align:center;margin-top:8px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;color:var(--accent);cursor:pointer;letter-spacing:.04em}.profile-list{background:var(--paper);border:1px solid var(--rule);border-radius:14px;overflow:hidden}.profile-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--rule);cursor:pointer;transition:background .1s}.profile-row:last-child{border-bottom:none}.profile-row:active{background:var(--paper-2)}.profile-row-icon{width:32px;height:32px;background:var(--paper-2);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-row-icon svg{width:16px;height:16px;fill:none;stroke:var(--ink-2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.profile-row-body{flex:1;min-width:0}.profile-row-body>div:first-child{font-size:14px;font-weight:500}.profile-row-meta{font-size:11.5px;color:var(--muted);margin-top:1px}.profile-row-arrow{color:var(--rule-2);font-size:18px;font-weight:600}.profile-row-toggle{width:38px;height:22px;background:var(--rule);border-radius:11px;position:relative;transition:background .2s;flex-shrink:0}.profile-row-toggle.on{background:var(--ok)}.profile-row-toggle>div{position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;transition:left .2s}.btn-signout{display:block;margin:8px 16px 12px;background:transparent;border:1px solid var(--bad);color:var(--bad);width:calc(100% - 32px);padding:12px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer}.btn-signout:active{background:var(--bad-bg)}.profile-version{text-align:center;font-size:10.5px;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;letter-spacing:.04em;padding-bottom:12px}.profile-guest{text-align:center;padding:32px 28px;margin:0 16px;background:var(--paper);border:1px solid var(--rule);border-radius:18px}.profile-guest-icon{font-size:48px;margin-bottom:12px}.profile-guest h2{font-family:var(--serif);font-size:19px;font-weight:600;margin:0 0 8px;letter-spacing:-.2px}.profile-guest p{font-size:13px;color:var(--muted);line-height:1.5;margin:0 0 20px}.profile-guest .btn-primary{width:100%}.profile-guest-signin{display:block;margin-top:14px;font-size:13px;color:var(--accent);font-weight:500;cursor:pointer}.prog-hero{display:flex;gap:14px;margin:0 16px 22px;background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:16px;align-items:center;box-shadow:var(--shadow-sm)}.prog-ring{width:90px;height:90px;position:relative;flex-shrink:0}.prog-ring-c{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.prog-ring-pct{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1}.prog-ring-lab{font-family:JetBrains Mono,ui-monospace,monospace;font-size:8.5px;color:var(--muted);letter-spacing:.1em;margin-top:2px}.prog-stats{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:8px}.prog-stat-n{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.1}.prog-stat-l{font-size:10.5px;color:var(--muted);margin-top:2px}.prog-section-h{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:18px 20px 10px;font-weight:600}.prog-empty{text-align:center;padding:32px 28px;margin:0 16px;background:var(--paper);border:1px dashed var(--rule-2);border-radius:18px}.prog-empty-icon{font-size:40px;margin-bottom:10px}.prog-empty-t{font-family:var(--serif);font-size:17px;font-weight:600;margin-bottom:6px}.prog-empty-s{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:16px}.prog-empty .btn-primary{display:inline-block;width:auto;padding:10px 20px}.focus-card{margin:0 16px 8px;background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:12px 14px}.focus-card.primary{background:var(--accent-tint);border-color:var(--accent-rule);border-left:3px solid var(--accent)}.focus-card.secondary{border-left:3px solid var(--pro)}.focus-t{font-family:var(--serif);font-size:14px;font-weight:600;margin-bottom:3px}.focus-s{font-size:11.5px;color:var(--ink-2);line-height:1.45}.skill-list{margin:0 16px;background:var(--paper);border:1px solid var(--rule);border-radius:14px;overflow:hidden}.skill-row{padding:12px 14px;border-bottom:1px solid var(--rule)}.skill-row-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.skill-name{font-family:var(--serif);font-size:14px;font-weight:600}.skill-lvl{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.04em;background:var(--rule);color:var(--muted)}.skill-lvl.b1{background:var(--ok-bg);color:var(--ok)}.skill-lvl.a2{background:#d4a01726;color:#9a7510}.skill-bar-row{display:flex;align-items:center;gap:10px}.skill-bar{flex:1;height:4px;background:var(--paper-2);border-radius:2px;overflow:hidden}.skill-bar>div{height:100%;background:var(--accent);transition:width .3s}.skill-pts{font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:600;color:var(--ink-2)}.skill-pts span{color:var(--muted)}.week-card{margin:0 16px;background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:14px 12px 10px}.week-bars{display:flex;align-items:flex-end;gap:6px;height:80px;margin-bottom:8px}.week-day{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}.week-bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end}.week-bar{width:100%;border-radius:2px 2px 0 0;min-height:3px;transition:height .3s}.week-day-l{font-size:9.5px;color:var(--muted)}.week-total{text-align:center;font-size:10.5px;color:var(--muted)}.error-row{margin:0 16px 8px;background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--bad);border-radius:8px;padding:10px 12px}.error-row-h{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.error-n{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;color:var(--bad);font-weight:700}.error-sub{font-size:10px;color:var(--muted)}.error-tag{margin-left:auto;font-size:9px;font-weight:600;padding:1px 6px;border-radius:3px;background:var(--paper-2);color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase}.error-q{font-size:12.5px;color:var(--ink-2);margin-bottom:3px;font-style:italic}.error-plain{font-size:11px;color:var(--muted);line-height:1.4}.btn-sso:active{transform:scale(.98)}.menu-tiles{display:grid;grid-template-columns:1fr;gap:12px;padding:4px 16px 20px}.menu-tile{position:relative;display:block;width:100%;text-align:left;border:1px solid var(--rule);border-radius:18px;padding:16px 18px 18px;background:var(--paper);box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;transition:transform .08s,box-shadow .15s,border-color .15s;font-family:inherit;color:inherit}.menu-tile:hover{box-shadow:var(--shadow-md)}.menu-tile:active{transform:scale(.99)}.menu-tile-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.menu-tile-bg svg{width:100%;height:100%}.menu-tile-row{display:flex;align-items:center;gap:10px;margin-bottom:14px;position:relative;z-index:1}.menu-tile-icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menu-tile-icon svg{width:20px;height:20px;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.menu-tile-tag{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;padding:4px 9px;border-radius:100px;border:1px solid currentColor}.menu-tile-title{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:-.5px;line-height:1.05;margin-bottom:5px;position:relative;z-index:1}.menu-tile-sub{font-size:13.5px;color:var(--ink-2);line-height:1.45;margin-bottom:14px;position:relative;z-index:1;max-width:280px}.menu-tile-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);margin-bottom:14px;flex-wrap:wrap;position:relative;z-index:1}.menu-tile-meta b{font-weight:700;color:var(--ink-1)}.menu-tile-pip{width:8px;height:8px;border-radius:50%;display:inline-block}.menu-tile-pip.weak{background:var(--bad)}.menu-tile-stat{display:inline-flex;gap:4px}.menu-tile-dot{color:var(--rule-2)}.menu-tile-cta{display:inline-flex;align-items:center;font-size:13px;font-weight:600;position:relative;z-index:1}.menu-tile-training{background:linear-gradient(140deg,#fff8e3,#fffdf6 60%);border-color:#ead9a6}.menu-tile-training .menu-tile-bg{color:#8a6d2a}.menu-tile-training .menu-tile-icon{background:#f3e3b3}.menu-tile-training .menu-tile-icon svg{stroke:#6f5413}.menu-tile-training .menu-tile-tag{color:#8a6d2a;background:#fff}.menu-tile-training .menu-tile-cta{color:#6f5413}.menu-tile-tests{background:linear-gradient(140deg,var(--accent-tint) 0%,#fffdf6 60%);border-color:var(--accent-rule)}.menu-tile-tests .menu-tile-bg{color:var(--accent)}.menu-tile-tests .menu-tile-icon{background:linear-gradient(135deg,var(--accent-tint),var(--accent-tint-2))}.menu-tile-tests .menu-tile-icon svg{stroke:var(--accent)}.menu-tile-tests .menu-tile-tag{color:var(--accent);background:#fff}.menu-tile-tests .menu-tile-cta{color:var(--accent)}.continue-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--accent-rule);background:var(--paper);cursor:pointer;font-family:inherit;color:inherit;text-align:left;box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .08s}.continue-card:hover{box-shadow:var(--shadow-md)}.continue-card:active{transform:scale(.99)}.continue-icon{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.continue-icon svg{width:14px;height:14px;stroke:#fff;fill:#fff;stroke-linecap:round;stroke-linejoin:round}.continue-body{flex:1;min-width:0}.continue-t{font-weight:600;font-size:14px}.continue-s{font-size:12px;color:var(--muted);margin-top:2px}.continue-arrow{color:var(--accent);font-weight:600;flex-shrink:0}.train-chips{display:flex;gap:8px;padding:0 16px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch}.train-chips::-webkit-scrollbar{display:none}.train-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:100px;border:1px solid var(--rule-2);background:var(--paper);font-size:12.5px;color:var(--ink-2);font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.train-chip .dot{width:7px;height:7px;border-radius:50%;display:inline-block}.train-chip.on .dot{background:#fff!important}.train-track{margin:0 16px 22px;border:1px solid var(--rule);border-radius:16px;background:var(--paper);overflow:hidden;box-shadow:var(--shadow-sm)}.train-track-h{display:flex;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid var(--rule)}.train-track-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffffb3}.train-track-icon svg{width:19px;height:19px;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;stroke:var(--ink-1)}.train-track-title{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:-.2px}.train-track-sub{font-size:11.5px;color:var(--muted);margin-top:2px}.train-track-badge{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;background:var(--bad-bg);color:var(--bad);padding:4px 9px;border-radius:100px}.skill-bg-lesen{background:var(--accent-tint)}.skill-bg-horen{background:#d8efeb}.skill-bg-sb{background:#e3eef3}.skill-bg-schr{background:#e6effa}.train-track-h.skill-bg-lesen .train-track-icon svg{stroke:var(--accent)}.train-track-h.skill-bg-horen .train-track-icon svg{stroke:#2f7e75}.train-track-h.skill-bg-sb .train-track-icon svg{stroke:#4a8fa8}.train-track-h.skill-bg-schr .train-track-icon svg{stroke:#4a6c95}.lesson-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:transparent;border:0;border-top:1px solid var(--rule);font-family:inherit;color:inherit;text-align:left;cursor:pointer;width:100%;transition:background .12s}.lesson-row:first-child{border-top:0}.lesson-row:active{background:var(--accent-tint)}.lesson-row.locked{opacity:.55;cursor:pointer}.lesson-num{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;font-weight:700;letter-spacing:-.02em;color:var(--ink-1);flex-shrink:0}.lesson-num.skill-bg-lesen{color:var(--accent)}.lesson-num.skill-bg-horen{color:#2f7e75}.lesson-num.skill-bg-sb{color:#4a8fa8}.lesson-num.skill-bg-schr{color:#4a6c95}.lesson-title-row{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.lesson-title{font-size:14px;font-weight:600;color:var(--ink-1);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-level{font-size:9.5px;font-weight:700;letter-spacing:.05em;padding:2px 6px;border-radius:4px;flex-shrink:0}.lesson-level.lvl-a2{background:var(--accent-tint);color:var(--accent)}.lesson-level.lvl-b1{background:#ede4d2;color:#735110}.lesson-meta-row{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--muted)}.lesson-strength{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:11px}.lesson-strength.s-medium{color:#8a6d18}.lesson-arrow{color:var(--muted);flex-shrink:0;display:flex;align-items:center}.train-tip{margin:0 16px 90px;padding:14px 16px;display:flex;gap:12px;background:#fff8e3;border:1px solid #ead9a6;border-radius:12px;align-items:flex-start}.train-tip-mark{width:22px;height:22px;border-radius:50%;background:#8a6d2a;color:#fff;font-family:var(--serif);font-style:italic;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.train-tip-t{font-size:13px;font-weight:600;margin-bottom:2px}.train-tip-s{font-size:12px;color:var(--ink-2);line-height:1.5}.lesson-placeholder .m-content{padding:16px 16px 90px}.lesson-hero{text-align:center;padding:16px 12px 22px;border-bottom:1px solid var(--rule);margin-bottom:20px}.lesson-hero-icon{width:56px;height:56px;border-radius:16px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center}.lesson-hero-icon svg{width:26px;height:26px;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.lesson-hero-icon.skill-bg-lesen svg{stroke:var(--accent)}.lesson-hero-icon.skill-bg-horen svg{stroke:#2f7e75}.lesson-hero-icon.skill-bg-sb svg{stroke:#4a8fa8}.lesson-hero-icon.skill-bg-schr svg{stroke:#4a6c95}.lesson-hero-title{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:-.4px;margin-bottom:6px}.lesson-hero-sub{font-size:13px;color:var(--muted);margin-bottom:12px}.lesson-hero-strength{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:5px 12px;border-radius:100px;background:var(--paper-2);color:var(--ink-2)}.lesson-hero-strength.s-weak{background:var(--bad-bg);color:var(--bad)}.lesson-hero-strength.s-medium{background:var(--warn-bg);color:#8a6d18}.lesson-hero-strength.s-strong{background:var(--ok-bg);color:var(--ok)}.lesson-block{margin-bottom:22px}.lesson-block-h{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px;font-weight:600}.lesson-bullets{margin:0;padding:0;list-style:none}.lesson-bullets li{font-size:14px;line-height:1.55;color:var(--ink-2);padding-left:22px;position:relative;margin-bottom:8px}.lesson-bullets li:before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.lesson-start{width:100%;margin-top:12px}.lesson-foot{text-align:center;font-size:11.5px;color:var(--muted);margin-top:12px;font-style:italic}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.confetti-piece{display:none!important}}:root{--bg: #fcfaf2;--paper: #fffdf6;--paper-2: #faf6e8;--paper-3: #f1e9d1;--ink-1: #1a1714;--ink-2: #4a4036;--muted: #8a7d6b;--rule: #e8e1cf;--rule-2: #d8cfb6;--accent: #2E92B8;--accent-2: #5BB3CC;--accent-deep: #1F6E8C;--accent-tint: #e6f3f8;--accent-tint-2: #d1eaf3;--accent-rule: #b8dde9;--ok: #2f7a3e;--ok-tint: #e3eedc;--warn: #c98a14;--warn-tint: #faecc6;--bad: #8b2a1e;--bad-tint: #f6dad1;--plum: #6a3a78;--plum-tint: #ecdef0;--serif: "Source Serif 4","Source Serif Pro",Georgia,serif;--sans: "Inter", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%;font-family:var(--sans);color:var(--ink-1);background:var(--bg)}body{-webkit-font-smoothing:antialiased}button,input,textarea,select{font-family:inherit}.auth-screen{display:none!important}.auth-wrap{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh;background:var(--bg)}.auth-side{background:radial-gradient(circle at 80% 20%,rgba(91,179,204,.18) 0%,transparent 50%),radial-gradient(circle at 10% 80%,rgba(46,146,184,.12) 0%,transparent 55%),linear-gradient(140deg,#fffdf6,#f4ecd5);padding:64px 80px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--rule);position:relative;overflow:hidden}.auth-side:before{content:"";position:absolute;top:60px;right:60px;width:280px;height:280px;border-radius:50%;border:1.5px solid var(--accent-rule);opacity:.4}.auth-side:after{content:"";position:absolute;bottom:80px;left:-40px;width:200px;height:200px;border-radius:50%;border:1.5px solid var(--accent-rule);opacity:.3}.auth-side .brand{font-family:var(--serif);font-size:56px;font-weight:600;letter-spacing:-2px;color:var(--accent);display:inline-block;border-bottom:4px solid var(--accent);padding-bottom:4px;align-self:flex-start}.auth-side .brand-sub{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:var(--muted);margin-top:14px;margin-bottom:56px}.auth-side h1{font-family:var(--serif);font-size:56px;font-weight:600;letter-spacing:-1.5px;line-height:1.05;margin:0 0 24px;max-width:520px;text-wrap:pretty}.auth-side h1 em{font-style:italic;color:var(--accent)}.auth-side .lede{font-size:18px;line-height:1.55;color:var(--ink-2);max-width:480px;margin-bottom:56px}.feature-list{display:flex;flex-direction:column;gap:24px;max-width:480px}.auth-feat{display:flex;gap:16px;align-items:flex-start}.auth-feat-icon{width:44px;height:44px;flex-shrink:0;border-radius:12px;background:#2e92b81f;color:var(--accent);display:flex;align-items:center;justify-content:center}.auth-feat-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.auth-feat-t{font-weight:600;font-size:15px;margin-bottom:2px}.auth-feat-s{font-size:13.5px;color:var(--muted);line-height:1.4}.auth-form-pane{display:flex;align-items:center;justify-content:center;padding:64px 48px}.auth-wrap .auth-card{width:100%;max-width:420px;background:var(--paper);border:1px solid var(--rule);border-radius:18px;padding:36px 32px;box-shadow:0 24px 48px #1a171414}.auth-wrap .auth-card h2{font-family:var(--serif);font-size:28px;font-weight:600;letter-spacing:-.5px;margin:0 0 6px}.auth-wrap .auth-card .sub{font-size:14px;color:var(--muted);margin:0 0 24px;line-height:1.5}.auth-wrap .auth-card label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-2);margin:14px 0 6px}.auth-wrap .auth-card input{width:100%;padding:11px 14px;border:1.5px solid var(--rule-2);border-radius:9px;background:#fffefa;font-size:14.5px;transition:border-color .15s,box-shadow .15s}.auth-wrap .auth-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.btn-primary{width:100%;padding:13px;background:var(--ink-1);color:#fff;border:none;border-radius:10px;font-size:14.5px;font-weight:600;margin-top:20px;cursor:pointer;transition:transform .05s,background .15s}.btn-primary:hover{background:#2a2520}.btn-primary:active{transform:scale(.99)}.btn-sso{width:100%;padding:11px;background:#fff;border:1.5px solid var(--rule-2);border-radius:9px;font-size:14px;font-weight:500;margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;color:var(--ink-1)}.btn-sso:hover{border-color:var(--rule-2);background:#faf6e8}.divider{display:flex;align-items:center;gap:12px;margin:18px 0 6px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--rule)}.divider span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.auth-foot{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:18px;font-size:13px;color:var(--muted)}.auth-foot a,.guest-link a,.auth-foot button.link-btn,.guest-link button.link-btn{color:var(--accent);cursor:pointer;text-decoration:none;background:none;border:none;padding:0;font:inherit}.auth-foot a:hover,.guest-link a:hover,.auth-foot button.link-btn:hover,.guest-link button.link-btn:hover{text-decoration:underline}.auth-foot span{color:var(--rule-2)}.guest-link{text-align:center;margin-top:16px;font-size:13px}.check-card{text-align:center;padding:14px 0}.check-card .check{width:56px;height:56px;border-radius:50%;background:#2f7a3e1f;color:var(--ok);font-size:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.check-card h2{margin:0 0 6px}.check-card p{color:var(--muted);margin:0}@media (max-width: 1024px){.auth-wrap{grid-template-columns:1fr}.auth-side{padding:48px 40px 32px;border-right:none;border-bottom:1px solid var(--rule)}.auth-side h1{font-size:38px}.auth-side .lede{font-size:16px;margin-bottom:32px}}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--paper);border-right:1px solid var(--rule);padding:24px 16px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sb-brand{display:flex;align-items:center;gap:12px;padding:4px 10px 22px;border-bottom:1px solid var(--rule);margin-bottom:16px}.sb-mark{width:38px;height:38px;background:var(--ink-1);color:var(--paper);border-radius:9px;display:grid;place-items:center;font-family:var(--serif);font-weight:700;font-style:italic;font-size:16px;letter-spacing:-.5px;flex-shrink:0}.sb-brand-mark{font-family:var(--serif);font-size:17px;font-weight:600;line-height:1;color:var(--ink-1)}.sb-brand-sub{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:1.4px;margin-top:4px}.sb-nav{display:flex;flex-direction:column;gap:2px;flex:1}.sb-section-h{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);padding:10px 12px 4px;margin:0}.sb-link{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:8px;background:transparent;border:1px solid transparent;font-size:13.5px;font-weight:500;color:var(--ink-1);text-align:left;cursor:pointer;transition:background .12s,color .12s,border-color .12s;text-decoration:none}.sb-link svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sb-link:hover{background:var(--paper-2)}.sb-link.on{background:var(--ink-1);color:var(--paper)}.sb-link.on .sb-tag{background:#ffffff2e;color:var(--paper)}.sb-tag{margin-left:auto;font-family:var(--mono);font-size:10.5px;font-weight:500;background:var(--paper-3, var(--paper-2));color:var(--muted);padding:2px 7px;border-radius:5px;letter-spacing:.2px}.sb-foot{margin-top:14px;padding:12px;background:var(--paper-2);border:1px solid var(--rule);border-radius:10px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:border-color .12s}.sb-foot:hover{border-color:var(--accent-rule)}.sb-avatar{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:600;font-size:13px;flex-shrink:0}.sb-foot-info{min-width:0;flex:1}.sb-foot-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-foot-plan{font-size:11.5px;color:var(--muted);margin-top:1px}.sb-foot-plan b{color:var(--accent)}.content{padding:0;min-width:0}.content-inner{max-width:1340px;margin:0 auto;padding:28px 40px 64px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:36px;padding-bottom:20px;border-bottom:1px solid var(--rule)}.page-head-l{min-width:0;flex:1}.page-head h1{font-family:var(--serif);font-size:44px;font-weight:600;letter-spacing:-1.2px;margin:0 0 8px;line-height:1.05;text-wrap:balance}.page-head .lede{font-size:16.5px;color:var(--ink-2);max-width:720px;line-height:1.5}.section{margin-top:48px}.section-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:18px}.section-h h2{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:-.5px;margin:0;line-height:1.2}.h-meta{font-size:13px;color:var(--muted)}.btn-ghost{background:transparent;border:1.5px solid var(--rule-2);padding:9px 16px;border-radius:9px;font-size:13px;font-weight:500;color:var(--ink-1);cursor:pointer;transition:background .12s}.btn-ghost:hover{background:var(--paper-2)}.hero-tiles{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:32px}.hero-tile{position:relative;overflow:hidden;text-align:left;padding:32px 32px 28px;cursor:pointer;border:1px solid var(--rule);border-radius:18px;min-height:260px;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease,border-color .18s}.hero-tile:hover{transform:translateY(-3px);box-shadow:0 18px 36px #1a17141a;border-color:var(--accent-rule)}.hero-tile-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-tile-bg svg{width:100%;height:100%}.hero-tile-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;position:relative}.hero-tile-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#ffffff8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(0,0,0,.04)}.hero-tile-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.hero-tile-tag{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:1.4px;padding:5px 10px;border-radius:999px;background:#fff9;border:1px solid rgba(0,0,0,.06)}.hero-tile-title{font-family:var(--serif);font-size:38px;font-weight:600;letter-spacing:-1px;line-height:1.05;margin-bottom:10px;position:relative}.hero-tile-sub{font-size:15px;color:var(--ink-2);line-height:1.5;max-width:360px;margin-bottom:auto;padding-bottom:18px;position:relative}.hero-tile-meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2);flex-wrap:wrap;padding-top:16px;border-top:1px solid rgba(0,0,0,.08);position:relative}.hero-tile-meta b{color:var(--ink-1);font-weight:700}.hero-tile-stat{display:inline-flex;align-items:baseline}.hero-tile-dot{color:var(--muted)}.hero-tile-pip{width:7px;height:7px;border-radius:50%;background:var(--bad)}.hero-tile-pip.weak{background:var(--bad)}.hero-tile-cta{position:absolute;right:28px;bottom:28px;font-size:13px;font-weight:600;color:var(--ink-1);display:inline-flex;align-items:center;gap:6px}.hero-tile-cta:after{content:"→";transition:transform .18s}.hero-tile:hover .hero-tile-cta:after{transform:translate(4px)}.hero-tile-training{background:linear-gradient(135deg,#fff8e0,#f4e3a8);color:#4a3d12}.hero-tile-training .hero-tile-icon{color:#8a6f17;background:#ffffffb3}.hero-tile-training .hero-tile-bg{color:#8a6f17}.hero-tile-tests{background:linear-gradient(135deg,#e6f3f8,#a4d4e3);color:#1a4a5a}.hero-tile-tests .hero-tile-icon{color:var(--accent);background:#ffffffb3}.hero-tile-tests .hero-tile-bg{color:var(--accent)}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:12px}.stat-card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:18px 18px 16px;position:relative}.stat-card-l{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);margin-bottom:12px}.stat-card-v{font-family:var(--serif);font-size:36px;font-weight:600;letter-spacing:-.8px;line-height:1}.stat-card-v small{font-size:18px;font-weight:500;color:var(--muted);margin-left:1px}.stat-card-meta{font-size:12.5px;color:var(--ink-2);margin-top:8px;line-height:1.35}.stat-card.accent{background:var(--accent-tint);border-color:var(--accent-rule)}.stat-card.accent .stat-card-v{color:var(--accent)}.stat-card.warn{background:#faf3da;border-color:#ecdd9f}.stat-card.warn .stat-card-v{color:var(--warn)}.stat-card.ok{background:#e8f3e9;border-color:#c4e0c8}.stat-card.ok .stat-card-v{color:var(--ok)}.referral-banner{display:flex;align-items:center;gap:16px;padding:18px 22px;background:linear-gradient(95deg,#fffae0,#fff5cf);border:1px solid #ecdd9f;border-radius:14px;margin-top:28px;cursor:pointer;transition:transform .12s}.referral-banner:hover{transform:translateY(-1px)}.ref-banner-icon{font-size:28px}.ref-banner-body{flex:1}.ref-banner-t{font-weight:700;font-size:15px}.ref-banner-s{font-size:13px;color:var(--ink-2);margin-top:2px}.ref-banner-arrow{font-size:22px;color:var(--accent)}.continue-card{display:flex;align-items:center;gap:16px;width:100%;background:var(--paper);border:1px solid var(--accent-rule);border-radius:14px;padding:18px 22px;cursor:pointer;text-align:left;transition:transform .12s,box-shadow .12s}.continue-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #2e92b81f}.continue-icon{width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.continue-icon svg{width:18px;height:18px;fill:currentColor;stroke:none;margin-left:2px}.continue-body{flex:1}.continue-t{font-weight:700;font-size:15.5px}.continue-s{font-size:13px;color:var(--muted);margin-top:2px}.continue-arrow{font-size:24px;color:var(--accent);font-weight:300}.train-chips{display:flex;gap:8px;margin-bottom:28px}.train-chip{padding:8px 14px;background:var(--paper);border:1.5px solid var(--rule);border-radius:999px;font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:background .12s,border-color .12s}.train-chip:hover{border-color:var(--rule-2)}.train-chip.on{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.train-chip.on .dot{box-shadow:0 0 0 2px #ffffff2e}.train-chip .dot{width:8px;height:8px;border-radius:50%}.dot.weak{background:var(--bad)}.dot.medium{background:var(--warn)}.dot.strong{background:var(--ok)}.train-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.train-track{background:var(--paper);border:1px solid var(--rule);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.train-track-h{display:flex;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid var(--rule)}.train-track-icon{width:44px;height:44px;border-radius:12px;background:#fffc;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(0,0,0,.04)}.train-track-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.train-track-info{flex:1;min-width:0}.train-track-title{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.4px;line-height:1.1}.train-track-sub{font-size:12.5px;color:var(--ink-2);margin-top:3px}.train-track-badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:999px;background:#b8341e1a;color:var(--bad)}.skill-bg-lesen{background:linear-gradient(135deg,#e6f3f8,#c5e2ec);color:#1a4a5a}.skill-bg-horen{background:linear-gradient(135deg,#e0f5f1,#b8ddd6);color:#19524b}.skill-bg-sb{background:linear-gradient(135deg,#ecf3f6,#c5d6dd);color:#2a4a55}.skill-bg-schr{background:linear-gradient(135deg,#ecf2f7,#c8d8e3);color:#294156}.lesson-list{display:flex;flex-direction:column}.lesson-row{display:flex;align-items:center;gap:14px;padding:14px 20px;background:transparent;border:none;border-top:1px solid var(--rule);cursor:pointer;text-align:left;transition:background .12s;font-family:inherit}.lesson-row:first-child{border-top:none}.lesson-row:hover{background:var(--paper-2)}.lesson-row.locked{opacity:.55;cursor:not-allowed}.lesson-row.locked:hover{background:transparent}.lesson-num{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:14px;font-weight:600;flex-shrink:0}.lesson-body{flex:1;min-width:0}.lesson-title-row{display:flex;align-items:center;gap:10px;margin-bottom:4px}.lesson-title{font-weight:600;font-size:14.5px}.lesson-level{font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:4px;background:var(--paper-2);color:var(--ink-2);border:1px solid var(--rule)}.lesson-level.lvl-a2{background:#2e92b81a;border-color:var(--accent-rule);color:var(--accent)}.lesson-level.lvl-b1{background:#2f7a3e1a;border-color:#c4e0c8;color:var(--ok)}.lesson-meta-row{display:flex;gap:14px;font-size:12.5px;color:var(--muted)}.lesson-strength{display:inline-flex;align-items:center;gap:5px}.lesson-strength.s-weak{color:var(--bad)}.lesson-strength.s-medium{color:var(--warn)}.lesson-strength.s-strong{color:var(--ok)}.lesson-arrow{color:var(--muted);flex-shrink:0}.train-tip{display:flex;gap:14px;padding:18px 22px;margin-top:32px;background:var(--accent-tint);border:1px solid var(--accent-rule);border-radius:12px}.train-tip-mark{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--serif);font-style:italic;font-weight:600;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.train-tip-t{font-weight:700;font-size:14.5px}.train-tip-s{font-size:13.5px;color:var(--ink-2);margin-top:4px;line-height:1.5}.lesson-hero{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:36px 32px;text-align:center;max-width:600px;margin:0 auto 32px}.lesson-hero-icon{width:80px;height:80px;border-radius:18px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center}.lesson-hero-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.lesson-hero-title{font-family:var(--serif);font-size:28px;font-weight:600;letter-spacing:-.5px;margin-bottom:6px}.lesson-hero-sub{font-size:14px;color:var(--muted);margin-bottom:16px}.lesson-hero-strength{display:inline-flex;align-items:center;gap:7px;font-size:13px;padding:6px 14px;border-radius:999px;background:var(--paper-2);border:1px solid var(--rule)}.lesson-block{max-width:600px;margin:0 auto 24px;background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:24px 28px}.lesson-block-h{font-weight:700;font-size:15px;margin-bottom:12px}.lesson-bullets{padding-left:20px;margin:0;color:var(--ink-2);line-height:1.7;font-size:14px}.lesson-start{max-width:320px;margin:0 auto;display:block}.lesson-foot{text-align:center;font-size:12.5px;color:var(--muted);margin-top:16px}.tests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.tests-grid .paper-card{display:flex;flex-direction:column;gap:0;text-align:left;background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:22px 22px 18px;cursor:pointer;transition:transform .12s,box-shadow .12s,border-color .12s;font-family:inherit}.tests-grid .paper-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px #1a171414;border-color:var(--accent-rule)}.tests-grid .paper-card.locked{opacity:.85}.tests-grid .paper-card.locked:hover{border-color:var(--rule-2);transform:translateY(-1px)}.paper-card-h{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.paper-num{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--muted);letter-spacing:.3px}.tests-grid .paper-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-tint);color:var(--accent);display:flex;align-items:center;justify-content:center}.tests-grid .paper-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.tests-grid .paper-card.locked .paper-icon{background:var(--paper-2);color:var(--muted)}.tests-grid .paper-title{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.4px;line-height:1.15;margin-bottom:4px;display:flex;align-items:center;gap:8px}.pro-tag{font-size:9.5px;font-weight:700;letter-spacing:1px;padding:2px 6px;border-radius:4px;background:var(--ink-1);color:#fff}.paper-topic{font-size:13.5px;color:var(--ink-2);margin-bottom:4px}.paper-meta{font-size:12px;color:var(--muted);margin-bottom:14px}.paper-meta-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);margin-top:4px}.tier-pip{display:inline-flex;align-items:center;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 7px;border-radius:999px;background:var(--rule);color:var(--muted)}.tier-pip.pro{background:#2e92b81f;color:var(--accent)}.paper-progress{display:flex;align-items:center;gap:10px;margin-bottom:14px}.paper-progress .bar{flex:1;height:6px;background:var(--paper-2);border-radius:999px;overflow:hidden;border:1px solid var(--rule)}.paper-progress .bar>div{height:100%;background:var(--accent);border-radius:999px;transition:width .4s}.paper-progress span{font-size:11.5px;font-weight:600;color:var(--accent)}.paper-foot{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--rule);font-size:12.5px}.paper-foot-l{color:var(--muted)}.paper-foot .pill{font-size:11.5px;font-weight:600;padding:5px 11px;border-radius:999px}.paper-foot .pill.primary{background:var(--ink-1);color:#fff}.paper-foot .pill.warn{background:#faf3da;color:#8a6c10;border:1px solid #ecdd9f}.paper-foot .pill.done{background:#2f7a3e1a;color:var(--ok);border:1px solid #c4e0c8}.paper-foot .pill.lock{background:var(--paper-2);color:var(--muted);border:1px solid var(--rule)}.paper-foot .pill.pro-pill{background:var(--accent);color:#fff}.prog-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;margin-bottom:28px}.prog-hero{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:28px 28px 24px;display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center}.prog-ring{position:relative;width:180px;height:180px}.prog-ring svg{width:100%;height:100%}.prog-ring-c{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.prog-ring-pct{font-family:var(--serif);font-size:44px;font-weight:600;letter-spacing:-1px;line-height:1;color:var(--accent)}.prog-ring-lab{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--muted);margin-top:6px}.prog-stats-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prog-stat-card{background:var(--paper-2);border:1px solid var(--rule);border-radius:10px;padding:12px 14px}.prog-stat-n{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:-.6px;line-height:1}.prog-stat-l{font-size:11px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.6px}.skill-list-card{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:22px 26px}.skill-list-card h3{font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:-.3px;margin:0 0 18px}.skill-row{padding:10px 0;border-bottom:1px solid var(--rule)}.skill-row:last-child{border-bottom:none}.skill-row-h{display:flex;justify-content:space-between;margin-bottom:8px;align-items:center}.skill-name{font-weight:600;font-size:14px}.skill-lvl{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;background:var(--paper-2);color:var(--muted);border:1px solid var(--rule)}.skill-lvl.b1{background:#2f7a3e1a;color:var(--ok);border-color:#c4e0c8}.skill-lvl.a2{background:#2e92b81a;color:var(--accent);border-color:var(--accent-rule)}.skill-bar-row{display:flex;align-items:center;gap:12px}.skill-bar{flex:1;height:7px;background:var(--paper-2);border-radius:999px;overflow:hidden;border:1px solid var(--rule)}.skill-bar>div{height:100%;background:var(--accent);border-radius:999px;transition:width .4s}.skill-pts{font-family:var(--serif);font-size:14px;font-weight:600;min-width:50px;text-align:right}.skill-pts span{color:var(--muted);font-weight:400}.empty-card{background:var(--paper);border:1px dashed var(--rule-2);border-radius:14px;padding:48px 32px;text-align:center;max-width:520px;margin:0 auto}.empty-card-icon{font-size:36px;margin-bottom:14px}.empty-card h3{font-family:var(--serif);font-size:22px;font-weight:600;margin:0 0 8px}.empty-card p{font-size:14px;color:var(--ink-2);margin:0 0 20px;line-height:1.5}.focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.focus-card{border-radius:12px;padding:18px 20px;border:1px solid}.focus-card.primary{background:var(--accent-tint);border-color:var(--accent-rule)}.focus-card.secondary{background:#faf3da;border-color:#ecdd9f}.focus-t{font-weight:700;font-size:14.5px;margin-bottom:6px}.focus-s{font-size:13px;color:var(--ink-2);line-height:1.5}.week-card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:22px 24px}.week-bars{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;height:130px;align-items:end;margin-bottom:14px}.week-day{display:flex;flex-direction:column;align-items:center;gap:8px;height:100%}.week-bar-wrap{width:100%;max-width:36px;flex:1;display:flex;align-items:end}.week-bar{width:100%;min-height:6px;border-radius:6px 6px 2px 2px}.week-day-l{font-size:11.5px;color:var(--muted)}.week-total{font-size:12.5px;color:var(--muted);border-top:1px solid var(--rule);padding-top:12px}.error-row{background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:16px 20px;margin-bottom:10px}.error-row-h{display:flex;gap:10px;align-items:center;margin-bottom:8px}.error-n{font-family:var(--serif);font-size:13px;color:var(--muted)}.error-sub{font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:4px;background:var(--accent-tint);color:var(--accent);border:1px solid var(--accent-rule)}.error-tag{font-size:11.5px;color:var(--muted)}.error-q{font-size:14px;font-style:italic;margin-bottom:6px}.error-plain{font-size:13px;color:var(--ink-2);line-height:1.5}.profile-grid{display:grid;grid-template-columns:360px 1fr;gap:22px;align-items:start}.profile-card-big{background:var(--paper);border:1px solid var(--rule);border-radius:16px;padding:32px 28px;text-align:center}.profile-avatar-big{width:80px;height:80px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--serif);font-size:32px;font-weight:600;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.profile-name-big{font-family:var(--serif);font-size:22px;font-weight:600;margin-bottom:4px}.profile-email-big{font-size:13.5px;color:var(--muted);margin-bottom:22px}.plan-card{background:var(--paper-2);border:1px solid var(--rule);border-radius:12px;padding:16px 18px;text-align:left}.plan-card.pro{background:var(--accent-tint);border-color:var(--accent-rule)}.plan-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.plan-name{font-weight:700;font-size:15px}.plan-meta{font-size:12.5px;color:var(--muted);margin-top:2px}.plan-pill{font-size:10.5px;font-weight:700;letter-spacing:1.2px;padding:4px 10px;border-radius:999px}.plan-pill.pro{background:var(--accent);color:#fff}.plan-pill.free{background:var(--rule);color:var(--ink-2)}.btn-pay-mini{width:100%;padding:10px;background:var(--ink-1);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;margin-top:10px;cursor:pointer}.btn-pay-mini:hover{background:#2a2520}.plan-or{text-align:center;font-size:12.5px;color:var(--accent);margin-top:10px;cursor:pointer}.plan-or:hover{text-decoration:underline}.profile-section{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:6px 4px;margin-bottom:14px}.profile-section h3{font-family:var(--serif);font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);padding:14px 20px 10px;margin:0}.profile-row{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer;border:none;border-top:1px solid var(--rule);background:transparent;color:inherit;font:inherit;text-align:left;width:100%;transition:background .12s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.profile-row:hover{background:var(--paper-2)}.profile-row-icon{width:32px;height:32px;border-radius:8px;background:var(--paper-2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ink-2)}.profile-row-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.profile-row-body{flex:1;font-size:14px}.profile-row-meta{font-size:12.5px;color:var(--muted);margin-top:2px}.profile-row-arrow{font-size:18px;color:var(--muted)}.profile-row-toggle{width:36px;height:20px;border-radius:999px;background:var(--rule);position:relative;transition:background .15s}.profile-row-toggle.on{background:var(--accent)}.profile-row-toggle>div{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:left .15s;box-shadow:0 1px 3px #0000002e}.profile-row-toggle.on>div{left:18px}.row-soon{font-size:10.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--rule);color:var(--muted)}.profile-row[aria-disabled=true] .profile-row-body{color:var(--muted)}.profile-row[aria-disabled=true]:hover{background:transparent}.exam-date-chip{position:relative;display:inline-flex;align-items:center;gap:6px;padding:6px 10px 6px 12px;background:var(--paper-2);border:1px solid var(--rule);border-radius:999px;font-size:13px;font-weight:500;color:var(--ink);white-space:nowrap;flex-shrink:0;transition:border-color .12s,background .12s}.exam-date-chip:hover{border-color:var(--rule-2);background:var(--paper)}.exam-date-chip-empty{color:var(--muted)}.exam-date-chip-label{pointer-events:none}.exam-date-chip-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;background:transparent;font:inherit;color:transparent;padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.exam-date-chip-input::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer}.exam-date-chip-clear{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:2px;border:none;border-radius:50%;background:var(--rule);color:var(--muted);font-size:14px;line-height:1;font-weight:600;cursor:pointer;transition:background .12s,color .12s}.exam-date-chip-clear:hover{background:var(--bad-bg, #fde8e8);color:var(--bad, #b1392f)}.btn-signout{width:100%;padding:12px;background:transparent;color:var(--bad);border:1.5px solid var(--rule-2);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;margin-top:8px}.btn-signout:hover{background:#b8341e0f;border-color:#b8341e4d}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#1a171473;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sheet{position:relative;background:var(--paper);border:1px solid var(--rule);border-radius:18px;width:460px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow:auto;padding:32px 32px 28px;box-shadow:0 32px 80px #00000052}.paywall-cover{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;border-radius:14px;padding:24px;margin:-8px -8px 22px}.paywall-tag{font-size:11px;font-weight:700;letter-spacing:1.5px;opacity:.85;margin-bottom:12px}.paywall-cover h2{font-family:var(--serif);font-size:28px;font-weight:600;letter-spacing:-.5px;margin:0 0 8px}.paywall-cover p{font-size:14px;line-height:1.5;opacity:.92;margin:0}.price-row{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.price{font-family:var(--serif);font-size:36px;font-weight:600;letter-spacing:-1px;color:var(--accent)}.price-meta{font-size:13px;color:var(--muted)}.paywall-feats{padding-left:20px;margin:0 0 20px;font-size:14px;color:var(--ink-2);line-height:1.7}.btn-pay{width:100%;padding:14px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:14.5px;font-weight:700;cursor:pointer}.btn-pay:hover{background:#267da0}.btn-later{width:100%;padding:12px;background:transparent;color:var(--ink-2);border:1.5px solid var(--rule-2);border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;margin-top:10px}.btn-later:hover{background:var(--paper-2)}.referral-nudge{text-align:center;font-size:13px;color:var(--accent);margin-top:14px;cursor:pointer}.referral-nudge:hover{text-decoration:underline}.referral-head{text-align:center;margin-bottom:22px}.ref-emoji{font-size:40px;margin-bottom:12px}.referral-head h2{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:-.5px;margin:0 0 8px}.referral-head p{font-size:14px;color:var(--ink-2);margin:0;line-height:1.5}.referral-progress{display:flex;gap:10px;justify-content:center;margin:20px 0 8px}.ref-pip{width:40px;height:40px;border-radius:50%;background:var(--paper-2);border:1.5px dashed var(--rule-2);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--muted)}.ref-pip.on{background:var(--accent);border:1.5px solid var(--accent);color:#fff}.referral-progress-meta{text-align:center;font-size:12.5px;color:var(--muted);margin-bottom:18px}.ref-link-row{display:flex;gap:10px;margin-bottom:14px}.ref-link{flex:1;background:var(--paper-2);border:1px solid var(--rule);border-radius:9px;padding:11px 14px;font-family:var(--serif);font-size:14px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-copy{background:var(--ink-1);color:#fff;border:none;border-radius:9px;padding:11px 18px;font-size:13px;font-weight:600;cursor:pointer}.ref-share{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.ref-share-btn{background:var(--paper);border:1.5px solid var(--rule);border-radius:10px;padding:12px 6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ink-1)}.ref-share-btn:hover{background:var(--paper-2)}.ref-share-btn svg{width:22px;height:22px}.nudge-head{text-align:center;margin-bottom:22px}.nudge-emoji{font-size:40px;margin-bottom:12px}.nudge-head h2{font-family:var(--serif);font-size:28px;font-weight:600;letter-spacing:-.6px;margin:0 0 8px;line-height:1.15}.nudge-head h2 em{font-style:italic;color:var(--accent)}.nudge-head p{font-size:14px;color:var(--ink-2);margin:0;line-height:1.55}.nudge-foot{text-align:center;font-size:12.5px;color:var(--muted);margin-top:12px}.cs-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a171473;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:110}.cs-sheet{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:111;background:var(--paper);border:1px solid var(--rule);border-radius:16px;width:420px;max-width:calc(100vw - 32px);padding:28px 28px 24px;box-shadow:0 32px 80px #00000052}.cs-icon{width:44px;height:44px;border-radius:12px;background:var(--paper-2);color:var(--ink-2);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.cs-warn .cs-icon{background:#d9a01724;color:var(--warn)}.cs-time .cs-icon{background:#2e92b824;color:var(--accent)}.cs-title{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.4px;margin:0 0 8px}.cs-body{font-size:14px;color:var(--ink-2);line-height:1.55;margin:0 0 22px}.cs-actions{display:flex;gap:10px;justify-content:flex-end}.cs-btn{padding:11px 20px;border-radius:9px;font-size:14px;font-weight:600;cursor:pointer;border:1.5px solid transparent}.cs-btn-ghost{background:transparent;border-color:var(--rule-2);color:var(--ink-2)}.cs-btn-ghost:hover{background:var(--paper-2)}.cs-btn-primary{background:var(--ink-1);color:#fff;border-color:var(--ink-1)}.cs-btn-primary:hover{background:#2a2520}.cs-warn .cs-btn-primary{background:var(--warn);border-color:var(--warn);color:#fff}.cs-time .cs-btn-primary{background:var(--accent);border-color:var(--accent)}.exam-screen-web{min-height:100vh;background:var(--bg);display:flex;flex-direction:column}.exam-top-web{display:flex;align-items:center;gap:16px;padding:14px 32px;background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:5}.exam-top-web .back-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1.5px solid var(--rule-2);padding:8px 14px;border-radius:9px;font-size:13px;font-weight:500;color:var(--ink-1);cursor:pointer}.exam-top-web .back-btn:hover{background:var(--paper-2)}.exam-top-web .back-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.exam-h-info-web{background:transparent;border:none;cursor:default;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:0 8px;flex:1;text-align:left}.exam-h-info-web .exam-h-t{font-family:var(--serif);font-size:17px;font-weight:600}.exam-h-info-web .exam-h-s{font-size:12.5px;color:var(--muted)}.exam-time-web{display:inline-flex;align-items:center;gap:10px;background:var(--paper-2);border:1px solid var(--rule);border-radius:9px;padding:8px 14px;font-variant-numeric:tabular-nums}.exam-time-web .exam-time-lbl{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.exam-time-web .exam-time-clk{font-family:var(--serif);font-size:16px;font-weight:600}.exam-time-web.warn{background:#faf3da;border-color:#ecdd9f}.exam-time-web.warn .exam-time-clk{color:var(--warn)}.exam-time-web.crit{background:#fbe8e3;border-color:#f0c4b9}.exam-time-web.crit .exam-time-clk{color:var(--bad)}.exam-prog-rail-web{height:3px;background:var(--rule)}.exam-prog-rail-web>span{display:block;height:100%;background:var(--accent);transition:width .25s}.exam-grid{display:grid;grid-template-columns:280px 1fr;flex:1;max-width:1480px;margin:0 auto;width:100%}.exam-side{border-right:1px solid var(--rule);padding:28px 18px;position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto}.exam-side-h{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);padding:12px 12px 6px}.exam-side-row{display:flex;align-items:center;gap:12px;padding:10px 12px;width:100%;background:transparent;border:none;cursor:pointer;text-align:left;border-radius:9px;transition:background .12s;font-family:inherit}.exam-side-row:hover{background:var(--paper-2)}.exam-side-row.on{background:var(--ink-1);color:#fff}.exam-side-row.on .exam-side-sub{color:#ffffffa6}.exam-side-row.on .exam-side-pill{background:#ffffff2e;color:#fff}.exam-side-row.done .exam-side-pill{background:#2f7a3e1f;color:var(--ok)}.exam-side-row.locked{opacity:.45;cursor:not-allowed}.exam-side-num{font-family:var(--serif);font-style:italic;font-size:12.5px;color:var(--muted);min-width:22px}.exam-side-row.on .exam-side-num{color:#ffffffa6}.exam-side-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.exam-side-label{font-weight:600;font-size:13.5px;line-height:1.2}.exam-side-sub{font-size:11.5px;color:var(--muted);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exam-side-pill{font-family:var(--serif);font-size:11.5px;font-weight:600;background:var(--paper-2);padding:2px 8px;border-radius:999px;color:var(--ink-2)}.exam-side-group{margin-bottom:14px}.exam-side-group+.exam-side-group{margin-top:6px;padding-top:8px;border-top:1px solid var(--rule)}.exam-side-dot{width:8px;height:8px;border-radius:999px;flex-shrink:0;background:var(--rule-2)}.exam-side-dot-lesen{background:var(--skill-lesen, var(--accent))}.exam-side-dot-sb,.exam-side-dot-lus{background:var(--skill-sb, var(--accent-2))}.exam-side-dot-horen,.exam-side-dot-hus{background:var(--skill-horen, var(--accent-2))}.exam-side-dot-schr,.exam-side-dot-schreiben{background:var(--skill-schreiben, var(--accent))}.exam-side-dot-review{background:var(--ink-2)}.exam-side-row.on .exam-side-dot{background:#ffffffd9}.exam-side-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.exam-main{padding:36px 56px 56px;max-width:880px;width:100%;margin:0 auto}.exam-main .m-content,.exam-main{font-family:var(--sans)}.exam-main .m-content .nav-row{display:none}.exam-main>.nav-row{display:flex;gap:12px;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}.exam-main>.nav-row>button{padding:12px 22px;border-radius:10px;border:1px solid var(--rule);background:var(--paper);color:var(--ink-1);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.exam-main>.nav-row>button:hover{background:var(--paper-2);border-color:var(--rule-2)}.exam-main>.nav-row>button.primary{background:var(--ink-1);color:#fff;border-color:var(--ink-1);margin-left:auto}.exam-main>.nav-row>button.primary:hover{background:#2a2724}.exam-main>.nav-row>button.primary.warn{background:var(--accent);border-color:var(--accent)}.exam-main>.nav-row>button.primary.warn:hover{background:#2a82a4}.exam-main>.nav-row>button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.exam-main .stage-h{padding:0 0 18px;border-bottom:1px solid var(--rule);margin-bottom:24px}.exam-main .stage-h .num{font-size:13px}.exam-main .stage-h .ttl{font-size:26px}.exam-main h1,.exam-main h2{text-wrap:pretty}@media (max-width: 1024px){.app-shell{grid-template-columns:88px 1fr}.sidebar{padding:24px 10px 14px}.sb-brand-sub,.sb-section-h,.sb-link span,.sb-foot-info{display:none}.sb-link{justify-content:center}.sb-foot{padding:10px;justify-content:center}.content-inner{padding:32px 28px 64px}.hero-tiles,.train-grid,.prog-grid,.profile-grid,.focus-grid{grid-template-columns:1fr}.stats-row{grid-template-columns:1fr 1fr}.sb-brand{justify-content:center;padding:0 0 8px}.sb-brand-mark{font-size:14px;letter-spacing:-.3px;border-bottom-width:2px;padding:0 2px 1px}}@media (max-width: 1180px) and (min-width: 901px){.exam-grid{grid-template-columns:240px 1fr}.exam-side{padding:22px 12px}.exam-side-label{font-size:13px}.exam-side-sub{font-size:11px}.exam-main{padding:28px 28px 56px}}@media (max-width: 900px) and (min-width: 641px){.exam-grid{grid-template-columns:64px 1fr}.exam-side{padding:16px 6px}.exam-side-h,.exam-side-info,.exam-side-pill{display:none}.exam-side-row{justify-content:center;padding:10px 6px}.exam-side-dot{width:12px;height:12px}.exam-side-row.on{background:var(--ink-1)}.exam-side-group+.exam-side-group{margin-top:4px;padding-top:4px}.exam-main{padding:24px 20px 56px}}@media (max-width: 640px){.exam-grid{grid-template-columns:1fr}.exam-side{display:none}.exam-main{padding:24px 16px 56px}}.dash-shell button{font-family:inherit;cursor:pointer}.dash-shell button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-shell .topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.dash-shell .crumbs{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;color:var(--muted);letter-spacing:.3px}.dash-shell .crumbs .sep{opacity:.6}.dash-shell .crumbs .here{color:var(--ink-1)}.dash-shell .topbar-actions{display:flex;align-items:center;gap:8px}.dash-shell .icon-btn{width:34px;height:34px;background:var(--paper);border:1px solid var(--rule);border-radius:8px;display:grid;place-items:center;color:var(--ink-2)}.dash-shell .icon-btn:hover{background:var(--paper-2);border-color:var(--rule-2)}.dash-shell .icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dash-shell .btn-cta{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:8px;background:var(--ink-1);color:var(--paper);border:1px solid var(--ink-1);font-size:13px;font-weight:600}.dash-shell .btn-cta:hover{background:#2a2520}.dash-shell .btn-cta svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dash-shell .intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.dash-shell .intro-l{min-width:0;flex:1}.dash-shell .eyebrow{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1.6px;margin-bottom:12px}.dash-shell .eyebrow .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);margin-right:8px;vertical-align:middle;box-shadow:0 0 0 3px #2f7a3e2e}.dash-shell .greeting{font-family:var(--serif);font-weight:600;font-size:46px;letter-spacing:-1.4px;line-height:1.04;margin:0 0 10px;text-wrap:balance;white-space:pre-line}.dash-shell .greeting em{font-style:italic;color:var(--accent-deep)}.dash-shell .lede{font-size:15.5px;color:var(--ink-2);line-height:1.55;max-width:640px}.dash-shell .datestamp{text-align:right;flex-shrink:0;border-left:1px solid var(--rule);padding-left:24px}.dash-shell .ds-day{font-family:var(--serif);font-style:italic;font-weight:500;font-size:14px;color:var(--muted)}.dash-shell .ds-num{font-family:var(--serif);font-weight:600;font-size:56px;letter-spacing:-2px;line-height:.9;color:var(--ink-1);margin-top:4px}.dash-shell .ds-mo{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:1.6px;margin-top:8px}.dash-shell .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.dash-shell .card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:22px;position:relative}.dash-shell .card-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.dash-shell .card-h h3{font-family:var(--serif);font-weight:600;font-size:17px;letter-spacing:-.2px;margin:0}.dash-shell .card-meta{font-family:var(--mono);font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}.dash-shell .card-link{background:transparent;border:none;color:var(--accent-deep);font-size:12.5px;font-weight:500;padding:0}.dash-shell .card-link:hover{text-decoration:underline}.dash-shell .hero-card{grid-column:span 8;background:radial-gradient(circle at 88% 12%,rgba(46,146,184,.18) 0%,transparent 55%),linear-gradient(135deg,var(--paper) 0%,var(--paper-2) 100%);border:1px solid var(--rule);border-radius:14px;padding:26px 28px;display:grid;grid-template-columns:200px 1fr;gap:30px;align-items:center;position:relative;overflow:hidden}.dash-shell .ring-wrap{position:relative;width:200px;height:200px}.dash-shell .ring-wrap svg{width:100%;height:100%;transform:rotate(-90deg)}.dash-shell .ring-wrap .ring-bg{fill:none;stroke:var(--rule);stroke-width:10}.dash-shell .ring-wrap .ring-fg{fill:none;stroke:url(#ringGrad);stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.2,.7,.2,1)}.dash-shell .ring-c{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.dash-shell .ring-pct{font-family:var(--serif);font-size:56px;font-weight:600;letter-spacing:-2px;line-height:1;color:var(--ink-1)}.dash-shell .ring-pct sup{font-size:22px;font-weight:500;color:var(--muted);margin-left:2px;vertical-align:top;top:8px;position:relative}.dash-shell .ring-lab{font-family:var(--mono);font-size:10.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--muted);margin-top:4px}.dash-shell .hero-body{position:relative}.dash-shell .hero-eye{font-family:var(--mono);font-size:11px;color:var(--accent-deep);text-transform:uppercase;letter-spacing:1.6px;margin-bottom:8px;display:inline-flex;align-items:center;gap:8px}.dash-shell .hero-eye:before{content:"";width:18px;height:1px;background:var(--accent-deep)}.dash-shell .hero-title{font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:-.8px;line-height:1.1;margin:0 0 8px;text-wrap:balance}.dash-shell .hero-title em{font-style:italic;color:var(--accent-deep)}.dash-shell .hero-sub{font-size:14px;color:var(--ink-2);line-height:1.55;margin-bottom:18px;max-width:460px}.dash-shell .hero-stats{display:flex;gap:32px;border-top:1px solid var(--rule);padding-top:16px}.dash-shell .hs-num{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:-.8px;line-height:1}.dash-shell .hs-num span{font-size:14px;color:var(--muted);margin-left:2px;font-weight:500}.dash-shell .hs-lab{font-family:var(--mono);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1.4px;margin-top:6px}.dash-shell .next-card{grid-column:span 4;background:var(--ink-1);color:var(--paper);border-radius:14px;padding:24px;position:relative;overflow:hidden;display:flex;flex-direction:column}.dash-shell .next-card:after{content:"";position:absolute;right:-30px;bottom:-30px;width:180px;height:180px;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}.dash-shell .next-card:before{content:"";position:absolute;right:20px;bottom:20px;width:80px;height:80px;border:1px solid rgba(255,255,255,.06);border-radius:50%;pointer-events:none}.dash-shell .next-eye{font-family:var(--mono);font-size:10.5px;color:#ffffff80;text-transform:uppercase;letter-spacing:1.6px;margin-bottom:14px}.dash-shell .next-title{font-family:var(--serif);font-weight:600;font-size:22px;letter-spacing:-.4px;line-height:1.2;margin-bottom:6px}.dash-shell .next-sub{font-size:13px;color:#ffffffa6;margin-bottom:22px;line-height:1.5}.dash-shell .next-progress{height:4px;background:#ffffff1f;border-radius:999px;overflow:hidden;margin-bottom:8px}.dash-shell .next-progress>span{display:block;height:100%;background:var(--accent-tint);transition:width .6s}.dash-shell .next-prog-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:#ffffff8c;letter-spacing:.3px;margin-bottom:18px}.dash-shell .next-cta{margin-top:auto;background:var(--paper);color:var(--ink-1);border:none;border-radius:8px;padding:11px 16px;font-size:13.5px;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:8px}.dash-shell .next-cta:hover{background:var(--accent-tint);color:var(--accent-deep)}.dash-shell .next-cta svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dash-shell .kpi{grid-column:span 3;background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:18px 18px 16px;position:relative}.dash-shell .kpi-eye{font-family:var(--mono);font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:1.4px;display:flex;align-items:center;gap:8px;margin-bottom:14px}.dash-shell .kpi-eye .swatch{width:8px;height:8px;border-radius:2px;background:var(--accent)}.dash-shell .kpi-row{display:flex;align-items:baseline;gap:8px}.dash-shell .kpi-num{font-family:var(--serif);font-weight:600;font-size:38px;letter-spacing:-1.2px;line-height:1}.dash-shell .kpi-num small{font-size:18px;font-weight:500;color:var(--muted);margin-left:2px}.dash-shell .kpi-trend{font-family:var(--mono);font-size:11px;font-weight:500;display:inline-flex;align-items:center;gap:3px;padding:3px 7px;border-radius:5px}.dash-shell .kpi-trend.up{background:var(--ok-tint);color:var(--ok)}.dash-shell .kpi-trend.down{background:var(--bad-tint);color:var(--bad)}.dash-shell .kpi-trend.flat{background:var(--paper-2);color:var(--muted)}.dash-shell .kpi-foot{font-size:12px;color:var(--ink-2);margin-top:12px;padding-top:12px;border-top:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:10px}.dash-shell .kpi-spark{display:flex;align-items:end;gap:2px;height:18px;flex-shrink:0}.dash-shell .kpi-spark span{width:4px;background:var(--accent);border-radius:1px;opacity:.55}.dash-shell .kpi-spark span:last-child{opacity:1}.dash-shell .kpi.weak .swatch{background:var(--bad)}.dash-shell .kpi.weak .kpi-num{color:var(--bad)}.dash-shell .kpi.streak .swatch,.dash-shell .kpi.streak .kpi-spark span{background:var(--warn)}.dash-shell .kpi.tests .swatch,.dash-shell .kpi.tests .kpi-spark span{background:var(--ok)}.dash-shell .skills-card{grid-column:span 7}.dash-shell .skill-list{display:flex;flex-direction:column;gap:16px}.dash-shell .skill{display:grid;grid-template-columns:28px 1fr 60px;gap:14px;align-items:center}.dash-shell .skill-no{font-family:var(--serif);font-style:italic;font-weight:500;font-size:13px;color:var(--muted)}.dash-shell .skill-body{min-width:0}.dash-shell .skill-row1{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.dash-shell .skill-name{font-family:var(--serif);font-weight:600;font-size:17px;letter-spacing:-.2px}.dash-shell .skill-row1-r{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.3px}.dash-shell .skill-tag{font-family:var(--mono);font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.8px}.dash-shell .skill-tag.a2{background:var(--accent-tint);color:var(--accent-deep)}.dash-shell .skill-tag.b1{background:var(--ok-tint);color:var(--ok)}.dash-shell .skill-bar{position:relative;height:8px;background:var(--paper-3);border-radius:999px;overflow:hidden}.dash-shell .skill-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-deep) 100%);transition:width .8s cubic-bezier(.2,.7,.2,1)}.dash-shell .skill-bar-target{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--ink-1)}.dash-shell .skill-bar-target:after{content:"B1";position:absolute;top:-16px;left:50%;transform:translate(-50%);font-family:var(--mono);font-size:9px;font-weight:600;background:var(--ink-1);color:var(--paper);padding:1px 4px;border-radius:3px}.dash-shell .skill-pts{font-family:var(--serif);font-weight:600;font-size:16px;text-align:right;letter-spacing:-.2px}.dash-shell .skill-pts span{color:var(--muted);font-weight:500;font-size:12px}.dash-shell .heat-card{grid-column:span 5}.dash-shell .heat-grid{display:grid;grid-template-columns:repeat(13,1fr);gap:4px;margin:14px 0 10px}.dash-shell .heat-cell{aspect-ratio:1;border-radius:3px;background:var(--paper-3);border:1px solid transparent;transition:transform .12s}.dash-shell .heat-cell:hover{transform:scale(1.25);border-color:var(--ink-1);z-index:1;position:relative}.dash-shell .heat-cell.l1{background:#d8e9ec}.dash-shell .heat-cell.l2{background:#a4d2dc}.dash-shell .heat-cell.l3{background:var(--accent)}.dash-shell .heat-cell.l4{background:var(--accent-deep)}.dash-shell .heat-cell.empty{background:var(--paper-3);opacity:.4}.dash-shell .heat-legend{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.3px}.dash-shell .heat-legend-cells{display:flex;gap:3px;align-items:center}.dash-shell .heat-legend-cells span{width:10px;height:10px;border-radius:2px;background:var(--paper-3)}.dash-shell .heat-legend-cells span.l1{background:#d8e9ec}.dash-shell .heat-legend-cells span.l2{background:#a4d2dc}.dash-shell .heat-legend-cells span.l3{background:var(--accent)}.dash-shell .heat-legend-cells span.l4{background:var(--accent-deep)}.dash-shell .heat-summary{margin-top:14px;padding-top:14px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline}.dash-shell .heat-sum-stat{display:flex;flex-direction:column;gap:2px}.dash-shell .heat-sum-stat b{font-family:var(--serif);font-weight:600;font-size:18px;letter-spacing:-.3px}.dash-shell .heat-sum-stat span{font-family:var(--mono);font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:1.2px}.dash-shell .focus-card{grid-column:span 7}.dash-shell .focus-list{display:flex;flex-direction:column}.dash-shell .focus-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:14px 4px;text-align:left;background:transparent;border:none;border-bottom:1px dashed var(--rule);width:100%}.dash-shell .focus-row:hover{background:var(--paper-2)}.dash-shell .focus-row:last-child{border-bottom:none}.dash-shell .focus-glyph{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;font-family:var(--serif);font-style:italic;font-weight:600;font-size:16px;flex-shrink:0}.dash-shell .focus-glyph.lesen{background:var(--accent-tint);color:var(--accent-deep)}.dash-shell .focus-glyph.horen{background:var(--plum-tint);color:var(--plum)}.dash-shell .focus-glyph.sb{background:var(--warn-tint);color:var(--warn)}.dash-shell .focus-glyph.schr{background:var(--ok-tint);color:var(--ok)}.dash-shell .focus-body{min-width:0}.dash-shell .focus-title{font-weight:600;font-size:14.5px;margin-bottom:3px}.dash-shell .focus-meta{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.3px}.dash-shell .focus-meta .pip{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;vertical-align:middle}.dash-shell .focus-meta .pip.weak{background:var(--bad)}.dash-shell .focus-meta .pip.medium{background:var(--warn)}.dash-shell .focus-meta .pip.strong{background:var(--ok)}.dash-shell .focus-time{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);background:var(--paper-3);padding:4px 9px;border-radius:5px;letter-spacing:.3px;white-space:nowrap}.dash-shell .focus-arrow{width:28px;height:28px;border-radius:50%;background:var(--paper-2);border:1px solid var(--rule);display:grid;place-items:center;color:var(--muted);transition:background .12s,color .12s,border-color .12s}.dash-shell .focus-row:hover .focus-arrow{background:var(--ink-1);color:var(--paper);border-color:var(--ink-1)}.dash-shell .focus-arrow svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dash-shell .tests-card{grid-column:span 5}.dash-shell .tests-rail{display:flex;flex-direction:column;gap:8px}.dash-shell .tests-row{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--rule);border-radius:9px;background:var(--paper-2);text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%}.dash-shell .tests-row.done{background:var(--ok-tint);border-color:#c4e0c8}.dash-shell .tests-row.in{background:var(--accent-tint);border-color:var(--accent-rule)}.dash-shell .tests-num{font-family:var(--serif);font-style:italic;font-weight:600;font-size:17px;background:var(--paper);width:36px;height:36px;border-radius:8px;display:grid;place-items:center;border:1px solid var(--rule)}.dash-shell .tests-row.done .tests-num{background:var(--ok);color:#fff;border-color:var(--ok)}.dash-shell .tests-row.in .tests-num{background:var(--accent);color:#fff;border-color:var(--accent)}.dash-shell .tests-info{min-width:0}.dash-shell .tests-title{font-weight:600;font-size:13.5px}.dash-shell .tests-meta{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.2px;margin-top:2px}.dash-shell .tests-pill{font-family:var(--mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:4px 9px;border-radius:5px;background:var(--paper-3);color:var(--ink-2)}.dash-shell .tests-row.done .tests-pill{background:var(--ok);color:#fff}.dash-shell .tests-row.in .tests-pill{background:var(--accent);color:#fff}.dash-shell .tests-row.pro .tests-pill{background:var(--ink-1);color:var(--paper)}.dash-shell .schedule-card{grid-column:span 4;background:linear-gradient(155deg,var(--paper) 0%,var(--accent-tint) 100%);border-color:var(--accent-rule)}.dash-shell .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:12px 0 16px}.dash-shell .cal-dow{font-family:var(--mono);font-size:10px;color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:1px;padding:4px 0}.dash-shell .cal-d{aspect-ratio:1;display:grid;place-items:center;font-family:var(--serif);font-weight:500;font-size:13.5px;color:var(--ink-2);border-radius:6px;position:relative}.dash-shell .cal-d.muted{color:var(--muted);opacity:.4}.dash-shell .cal-d.session{background:var(--paper);border:1px solid var(--accent-rule);color:var(--accent-deep);font-weight:600}.dash-shell .cal-d.session:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--accent);border-radius:50%}.dash-shell .cal-d.today{background:var(--ink-1);color:var(--paper);font-weight:600}.dash-shell .cal-d.exam{background:var(--bad);color:#fff;font-weight:700}.dash-shell .exam-banner{background:var(--paper);border:1px solid var(--rule);border-radius:10px;padding:12px 14px;display:flex;align-items:center;gap:12px}.dash-shell .exam-banner-l{width:40px;height:40px;border-radius:8px;background:var(--bad-tint);color:var(--bad);display:grid;place-items:center;font-family:var(--serif);font-style:italic;font-weight:700;font-size:18px}.dash-shell .exam-banner-body{flex:1;min-width:0}.dash-shell .exam-banner-t{font-weight:600;font-size:13px}.dash-shell .exam-banner-s{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:2px;letter-spacing:.2px}.dash-shell .phrase-card{grid-column:span 4;background:var(--ink-1);color:var(--paper);position:relative;overflow:hidden}.dash-shell .phrase-card .card-h h3{color:var(--paper)}.dash-shell .phrase-card .card-meta{color:#ffffff80}.dash-shell .phrase{font-family:var(--serif);font-style:italic;font-weight:500;font-size:24px;line-height:1.25;letter-spacing:-.3px;margin:10px 0 8px;text-wrap:pretty}.dash-shell .phrase:before{content:"“";font-size:56px;color:var(--accent);line-height:0;vertical-align:-10px;margin-right:4px}.dash-shell .phrase-en{font-family:var(--sans);font-size:13.5px;font-style:normal;color:#ffffff8c;margin-bottom:18px}.dash-shell .phrase-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.dash-shell .phrase-tag{font-family:var(--mono);font-size:10.5px;background:#ffffff14;color:#ffffffb3;padding:3px 8px;border-radius:4px;letter-spacing:.3px}.dash-shell .footnote{margin-top:28px;padding-top:18px;border-top:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.4px}.dash-shell .footnote .dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ok);margin:0 8px;vertical-align:middle}@media (max-width: 1180px){.dash-shell .hero-card{grid-column:span 12;grid-template-columns:160px 1fr}.dash-shell .next-card{grid-column:span 12}.dash-shell .kpi{grid-column:span 6}.dash-shell .skills-card,.dash-shell .heat-card,.dash-shell .focus-card,.dash-shell .tests-card,.dash-shell .schedule-card,.dash-shell .phrase-card{grid-column:span 12}.dash-shell .ring-wrap{width:160px;height:160px}}
