/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=JetBrains+Mono:wght@400;600&display=swap";.minna-scope{--pip-green-50:#e8f8e0;--pip-green-100:#cef2b6;--pip-green-200:#a6e678;--pip-green-300:#7ed13a;--pip-green-400:#58cc02;--pip-green-500:#4baf01;--pip-green-600:#3a8b01;--pip-green-700:#2e6e01;--pip-blue-400:#1cb0f6;--pip-blue-500:#1899d6;--pip-blue-600:#1577b0;--pip-yellow-400:#ffc800;--pip-yellow-500:#e6af00;--pip-red-400:#ff4b4b;--pip-red-500:#e24343;--pip-red-600:#b83434;--pip-purple-400:#ce82ff;--pip-purple-500:#a560e8;--pip-orange-400:#ff9600;--pip-orange-500:#e08600;--pip-pink-400:#ff86d0;--pip-white:#fff;--pip-snow:#fff9f0;--pip-eggshell:#f7f7f7;--pip-mist:#e5e5e5;--pip-cloud:#d1d5db;--pip-stone:#afafaf;--pip-slate:#777;--pip-charcoal:#4b4b4b;--pip-ink:#2b2b2b;--bg-canvas:var(--pip-snow);--bg-surface:var(--pip-white);--bg-muted:var(--pip-eggshell);--bg-sunken:var(--pip-mist);--fg-1:var(--pip-ink);--fg-2:var(--pip-charcoal);--fg-3:var(--pip-slate);--fg-muted:var(--pip-stone);--fg-inverse:var(--pip-white);--border-1:var(--pip-mist);--border-2:var(--pip-cloud);--border-strong:var(--pip-charcoal);--accent:var(--pip-green-400);--accent-hover:var(--pip-green-500);--accent-press:var(--pip-green-600);--success:var(--pip-green-400);--info:var(--pip-blue-400);--warning:var(--pip-yellow-400);--danger:var(--pip-red-400);--streak:var(--pip-orange-400);--gem:var(--pip-blue-400);--xp:var(--pip-yellow-400);--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:9999px;--drop-green:0 4px 0 0 var(--pip-green-600);--drop-blue:0 4px 0 0 var(--pip-blue-600);--drop-red:0 4px 0 0 var(--pip-red-600);--drop-yellow:0 4px 0 0 var(--pip-yellow-500);--drop-gray:0 4px 0 0 var(--pip-cloud);--drop-sm:0 2px 0 0 var(--pip-cloud);--shadow-soft:0 4px 16px -4px #2b2b2b1f;--shadow-lift:0 12px 32px -8px #2b2b2b2e;--border-width:2px;--border-width-thick:3px;--font-display:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;--font-body:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--fw-regular:400;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fw-black:900;--ease-out:cubic-bezier(.22,1,.36,1);--ease-back:cubic-bezier(.34,1.56,.64,1);--ease-bounce:cubic-bezier(.68,-.55,.27,1.55);--ease-in-out:cubic-bezier(.65,0,.35,1)}.minna-scope *{box-sizing:border-box}.minna-scope{font-family:var(--font-body);color:var(--fg-1);-webkit-font-smoothing:antialiased;pointer-events:auto;font-weight:700}.minna-root{z-index:9999;background:#eee8dc;position:fixed;inset:0;overflow:hidden}.minna-stage{pointer-events:auto;background:#eee8dc;place-items:center;width:100%;height:100%;display:grid;overflow:hidden}.minna-frame-scaler{transform-origin:top;pointer-events:auto;width:clamp(320px,100vw,1440px);height:auto;min-height:100vh}.app-frame{background:var(--pip-snow);width:100%;min-height:100vh;box-shadow:none;border:none;border-radius:0;flex-direction:column;font-size:clamp(11px,2.6vw,14px);display:flex;position:relative;overflow:hidden}@media (min-width:1200px){.app-frame,.minna-frame-scaler{width:min(1440px,100vw);height:900px;min-height:0}.app-frame{border:3px solid var(--pip-ink);border-radius:24px;font-size:14px;box-shadow:0 24px 80px -20px #0000004d}}@media (max-width:1199px){.minna-frame-scaler{transform:none!important}}@media (max-width:767px){.minna-root{z-index:auto;position:static;inset:auto;overflow:visible}.minna-stage{height:auto;min-height:100vh;overflow:visible}}.nav{border-bottom:3px solid var(--border-1);background:#fff;flex:none;gap:20px;height:72px;padding:0 24px}.nav,.nav-brand{align-items:center;display:flex}.nav-brand{cursor:pointer;gap:10px}.nav-brand-mark{background:var(--pip-green-400);width:44px;height:44px;box-shadow:0 3px 0 0 var(--pip-green-600);color:#fff;border-radius:12px;place-items:center;display:grid}.nav-brand-mark,.nav-brand-word{font-family:var(--font-display);font-size:22px;font-weight:900}.nav-brand-word{letter-spacing:-.02em;color:var(--fg-1)}.nav-brand-sub{color:var(--fg-3);text-transform:uppercase;letter-spacing:.08em;margin-top:-2px;font-size:10px;font-weight:800}.nav-spacer{flex:1}.nav-chip{font-family:var(--font-display);background:var(--bg-surface);border:2px solid var(--border-1);color:var(--fg-1);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:16px;font-weight:900;display:flex}.nav-chip img{width:24px;height:24px}.nav-chip.streak{color:var(--pip-orange-400)}.nav-chip.gems{color:var(--pip-blue-500)}.nav-chip.hearts{color:var(--pip-red-400)}.nav-chip.xp{color:var(--pip-yellow-500)}.pip-btn{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;color:#fff;transition:transform 80ms var(--ease-out),box-shadow 80ms var(--ease-out),background 80ms var(--ease-out);-webkit-user-select:none;user-select:none;border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:14px 22px;font-size:14px;font-weight:900;display:inline-flex}.pip-btn:active:not(.disabled):not(:disabled){transform:translateY(4px);box-shadow:none!important}.pip-btn.primary{background:var(--pip-green-400);box-shadow:var(--drop-green)}.pip-btn.primary:hover{background:var(--pip-green-500)}.pip-btn.danger{background:var(--pip-red-400);box-shadow:var(--drop-red)}.pip-btn.blue{background:var(--pip-blue-400);box-shadow:var(--drop-blue)}.pip-btn.yellow{background:var(--pip-yellow-400);box-shadow:var(--drop-yellow);color:var(--pip-ink)}.pip-btn.ghost{color:var(--fg-2);border:2px solid var(--border-2);box-shadow:var(--drop-sm);background:#fff}.pip-btn.ghost:hover{background:var(--bg-muted)}.pip-btn.disabled,.pip-btn:disabled{background:var(--pip-mist);color:var(--pip-stone);box-shadow:none;cursor:not-allowed}.pip-btn.full{width:100%}.pip-btn.lg{border-radius:16px;padding:16px 28px;font-size:16px}.pip-btn.sm{border-radius:10px;padding:10px 14px;font-size:12px}.home{pointer-events:auto;flex:1;grid-template-columns:300px 1fr 340px;gap:24px;padding:24px;display:grid;overflow:auto}.home-mid,.home-side{flex-direction:column;gap:16px;display:flex;overflow-y:auto}.home-mid{min-width:0;padding-right:4px}.home-right{flex-direction:column;gap:16px;display:flex;overflow-y:auto}.panel{border:3px solid var(--border-1);background:#fff;border-radius:20px;padding:20px}.panel-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.panel-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-1);font-size:18px;font-weight:900}.panel-eye{color:var(--fg-3);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900}.hero-card{background:var(--pip-green-400);border:3px solid var(--pip-green-600);box-shadow:0 6px 0 0 var(--pip-green-700);color:#fff;border-radius:20px;align-items:center;gap:14px;padding:20px;display:flex}.hero-card img{filter:drop-shadow(0 3px #0000001f);flex:none;width:76px;height:88px}.hero-card .hero-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px;font-weight:900;line-height:1.1}.hero-card .hero-sub{opacity:.95;margin-top:4px;font-size:13px;font-weight:800}.streak-card{grid-template-columns:1fr 1fr;gap:10px;display:grid}.streak-tile{border:2px solid var(--border-1);box-shadow:var(--drop-sm);background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:12px;display:flex}.streak-tile img{width:32px;height:32px}.streak-tile .v{font-family:var(--font-display);color:var(--fg-1);font-size:22px;font-weight:900}.streak-tile .l{color:var(--fg-3);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:800}.goal-bar{background:var(--pip-mist);border:2px solid var(--border-1);height:12px;overflow:hidden}.goal-bar,.goal-fill{border-radius:999px;position:relative}.goal-fill{background:var(--pip-yellow-400);height:100%}.goal-fill:after{content:"";background:#ffffff80;border-radius:999px;height:2px;position:absolute;top:2px;left:6px;right:6px}.section-strap{background:var(--pip-green-400);color:#fff;border:3px solid var(--pip-green-600);box-shadow:0 6px 0 0 var(--pip-green-700);border-radius:20px;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.section-strap.blue{background:var(--pip-blue-400);border-color:var(--pip-blue-600);box-shadow:0 6px 0 0 var(--pip-blue-600)}.section-strap.yellow{background:var(--pip-yellow-400);border-color:var(--pip-yellow-500);box-shadow:0 6px 0 0 var(--pip-yellow-500);color:var(--pip-ink)}.section-strap.purple{background:var(--pip-purple-400);border-color:var(--pip-purple-500);box-shadow:0 6px 0 0 var(--pip-purple-500)}.section-strap .eye{letter-spacing:.08em;opacity:.9;text-transform:uppercase;font-size:11px;font-weight:900}.section-strap h2{letter-spacing:-.02em;margin:0;font-size:22px}.guidebook-btn,.section-strap h2{font-family:var(--font-display);font-weight:900}.guidebook-btn{color:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#ffffff2e;border:2px solid #fff6;border-radius:10px;padding:8px 12px;font-size:11px}.lesson-grid{grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));gap:14px;display:grid}.lesson-tile{border:3px solid var(--border-1);transition:transform .12s var(--ease-out),box-shadow .12s var(--ease-out);min-height:150px;box-shadow:0 3px 0 0 var(--border-1);background:#fff;border-radius:18px;flex-direction:column;gap:8px;min-width:0;padding:14px;display:flex;position:relative;cursor:pointer!important;pointer-events:auto!important}.lesson-tile:hover:not(.locked){box-shadow:0 6px 0 0 var(--border-2);transform:translateY(-3px)}.lesson-tile.locked{opacity:.6;cursor:not-allowed;background:var(--bg-muted)}.lesson-tile.current{border-color:var(--pip-green-400);box-shadow:0 4px 0 0 var(--pip-green-600)}.lesson-tile.done{background:var(--pip-green-50);border-color:var(--pip-green-300);box-shadow:0 3px 0 0 var(--pip-green-300)}.lesson-tile .lesson-n{font-family:var(--font-mono);color:var(--fg-3);letter-spacing:.08em;font-size:10px;font-weight:700}.lesson-tile .lesson-kanji{letter-spacing:-.02em;color:var(--fg-1);font-family:Shippori Mincho,serif;font-size:28px;font-weight:700;line-height:1}.lesson-tile .lesson-title{font-family:var(--font-display);color:var(--fg-1);font-size:14px;font-weight:900;line-height:1.2}.lesson-tile .lesson-meta{color:var(--fg-3);justify-content:space-between;align-items:center;margin-top:auto;font-size:11px;font-weight:800;display:flex}.lesson-tile .lesson-dots{gap:3px;display:flex}.lesson-tile .lesson-dots span{background:var(--pip-mist);border-radius:50%;width:8px;height:8px}.lesson-tile.current .lesson-dots span:nth-child(-n+2),.lesson-tile.done .lesson-dots span{background:var(--pip-green-400)}.lesson-tile .lock-icon{width:24px;height:24px;color:var(--pip-stone);position:absolute;top:10px;right:10px}@media (min-width:1200px) and (max-width:1399px){.home{grid-template-columns:260px 1fr;gap:16px;padding:16px}.home-right{display:none}.lesson-tile{min-height:140px;padding:12px}.lesson-tile .lesson-kanji{font-size:24px}}.leader-row{border-bottom:1px dashed var(--border-1);align-items:center;gap:10px;padding:8px 0;display:flex}.leader-row:last-child{border-bottom:none}.leader-rank{font-family:var(--font-display);color:var(--fg-3);width:18px;font-size:14px;font-weight:900}.leader-rank.g{color:var(--pip-yellow-500)}.leader-avatar{background:var(--pip-green-100);border:2px solid var(--pip-green-400);width:36px;height:36px;color:var(--pip-green-700);border-radius:50%;place-items:center;font-size:14px;font-weight:900;display:grid}.leader-name{color:var(--fg-1);flex:1;font-size:13px;font-weight:800}.leader-xp{font-family:var(--font-display);color:var(--pip-yellow-500);align-items:center;gap:2px;font-size:13px;font-weight:900;display:flex}.leader-xp img{width:18px;height:18px}.lesson-screen{flex-direction:column;flex:1;display:flex;overflow:hidden}.lesson-topbar{border-bottom:3px solid var(--border-1);background:#fff;flex:none;align-items:center;gap:16px;height:56px;padding:0 24px;display:flex}.lesson-x{cursor:pointer;color:var(--fg-3);background:0 0;border:none;padding:6px}.lesson-x svg{stroke:currentColor;stroke-width:3px;fill:none;stroke-linecap:round;width:22px;height:22px}.lesson-x:hover{color:var(--fg-1)}.prog{background:var(--pip-mist);border:2px solid var(--border-1);flex:1;height:14px;overflow:hidden}.prog,.prog-fill{border-radius:999px;position:relative}.prog-fill{background:var(--pip-green-400);height:100%;transition:width .36s var(--ease-back)}.prog-fill:after{content:"";background:#ffffff80;border-radius:999px;height:2px;position:absolute;top:2px;left:6px;right:6px}.lesson-hearts{font-family:var(--font-display);color:var(--pip-red-400);align-items:center;gap:4px;font-weight:900;display:flex}.lesson-hearts img{width:24px;height:24px}.board-wrap{flex-direction:column;flex:1;padding:0}.board,.board-wrap{display:flex;position:relative;overflow:hidden}.board{background:#fefcf5;background-image:linear-gradient(var(--pip-mist) 1px,transparent 1px),linear-gradient(90deg,var(--pip-mist) 1px,transparent 1px);background-position:-1px -1px;background-size:40px 40px;flex-direction:column;flex:1 1 0;min-height:0}.board.chalk{color:#f5f1e6;background-color:#1e3a2e;background-image:radial-gradient(circle at 20% 30%,#ffffff05 0,#0000 40%),radial-gradient(circle at 80% 70%,#ffffff04 0,#0000 35%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.board.paper{background:#fffbf0 repeating-linear-gradient(0deg,#0000 0 39px,#1cb0f62e 39px 40px)}.board.plain{background:#fffdf5}.board-inner{flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:0;padding:40px 80px;display:flex;position:relative;overflow:auto}.hand-marker{pointer-events:none;z-index:20;width:140px;height:160px;transition:transform .5s var(--ease-in-out),opacity .24s var(--ease-out);transform-origin:10% 10%;position:absolute}.ink-stroke{fill:none;stroke:var(--pip-ink);stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.board.chalk .ink-stroke{stroke:#f5f1e6}.teacher{z-index:10;align-items:flex-end;gap:14px;max-width:640px;display:flex;position:absolute;bottom:24px;left:24px}.teacher-char{width:120px;height:140px;animation:bob 2.4s var(--ease-in-out) infinite;flex:none}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.teacher-bubble{border:3px solid var(--pip-ink);color:var(--fg-1);max-width:520px;box-shadow:0 4px 0 0 var(--pip-ink);background:#fff;border-radius:18px;padding:14px 18px;font-size:18px;font-weight:800;line-height:1.35;position:relative}.teacher-bubble:before{content:"";border:10px solid #0000;border-right:10px solid var(--pip-ink);position:absolute;bottom:22px;left:-14px}.teacher-bubble:after{content:"";border:9px solid #0000;border-right-color:#fff;position:absolute;bottom:23px;left:-10px}.teacher-jp{font-family:"Noto Sans JP",var(--font-body);font-weight:700}.board.chalk .teacher-bubble{color:var(--pip-ink);background:#f5f1e6}.ex-footer{border-top:3px solid var(--border-1);background:#fff;flex:none;align-items:center;gap:16px;width:100%;min-height:84px;padding:16px 24px 20px;display:flex}.ex-footer.right{background:var(--pip-green-50);border-top-color:var(--pip-green-200)}.ex-footer.wrong{background:#fff0f0;border-top-color:#ffd0d0}.ex-feedback{flex-direction:column;flex:1;gap:2px;display:flex}.ex-feedback .big{font-family:var(--font-display);letter-spacing:-.01em;font-size:22px;font-weight:900}.ex-footer.right .big{color:var(--pip-green-600)}.ex-footer.wrong .big{color:var(--pip-red-500)}.ex-feedback .sub{color:var(--fg-2);font-size:13px;font-weight:800}.ex-feedback .sub .jp{font-family:Noto Sans JP;font-weight:700}.ex-check-icon{border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid}.ex-check-icon svg{stroke-width:4px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.ex-footer.right .ex-check-icon{background:var(--pip-green-400);color:#fff}.ex-footer.wrong .ex-check-icon{background:var(--pip-red-400);color:#fff}.mc-grid{grid-template-columns:repeat(2,1fr);gap:14px;width:min(720px,100%);display:grid}.mc-tile{border:3px solid var(--border-2);box-shadow:0 4px 0 0 var(--border-2);cursor:pointer;text-align:center;transition:transform .1s var(--ease-out);font-family:"Noto Sans JP",var(--font-body);color:var(--fg-1);background:#fff;border-radius:16px;padding:22px 18px;font-size:22px;font-weight:700;position:relative}.mc-tile .mc-num{font-family:var(--font-mono);color:var(--fg-3);font-size:11px;font-weight:700;position:absolute;top:6px;left:10px}.mc-tile .mc-en{font-family:var(--font-body);color:var(--fg-3);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:14px;font-weight:900}.mc-tile:hover{transform:translateY(-2px)}.mc-tile.sel{border-color:var(--pip-blue-400);box-shadow:0 4px 0 0 var(--pip-blue-500);color:var(--pip-blue-600);background:#e6f7ff}.mc-tile.correct{border-color:var(--pip-green-400);background:var(--pip-green-50);box-shadow:0 4px 0 0 var(--pip-green-500);color:var(--pip-green-600)}.mc-tile.wrong{border-color:var(--pip-red-400);box-shadow:0 4px 0 0 var(--pip-red-500);color:var(--pip-red-500);background:#fff0f0}.mc-tile.disabled{pointer-events:none;opacity:.85}.cloze-line{font-family:"Noto Sans JP",var(--font-body);letter-spacing:.02em;color:var(--fg-1);text-align:center;font-size:42px;font-weight:700;line-height:1.6}.cloze-slot{border-bottom:4px dashed var(--pip-blue-400);min-width:140px;color:var(--pip-blue-500);vertical-align:baseline;cursor:pointer;margin:0 6px;padding:4px 18px;display:inline-block}.cloze-slot.filled{border-bottom:4px solid var(--pip-blue-400)}.cloze-slot.correct{border-bottom-color:var(--pip-green-400);color:var(--pip-green-600)}.cloze-slot.wrong{border-bottom-color:var(--pip-red-400);color:var(--pip-red-500)}.cloze-translation{font-family:var(--font-body);color:var(--fg-3);text-align:center;margin-top:12px;font-size:16px;font-weight:800}.chip-bank{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.chip-word{border:3px solid var(--border-2);box-shadow:0 3px 0 0 var(--border-2);font-family:"Noto Sans JP",var(--font-body);color:var(--fg-1);cursor:pointer;transition:transform .1s var(--ease-out);-webkit-user-select:none;user-select:none;background:#fff;border-radius:12px;padding:10px 18px;font-size:22px;font-weight:700}.chip-word:hover{transform:translateY(-2px)}.chip-word.used{opacity:.35;pointer-events:none}.shuffle-board{flex-direction:column;align-items:center;gap:14px;width:min(780px,100%);display:flex}.shuffle-prompt{color:var(--fg-2);text-align:center;font-size:16px;font-weight:800}.shuffle-line{border-bottom:3px solid var(--border-1);background:#00000005;border-radius:14px;flex-wrap:wrap;gap:8px;width:100%;min-height:80px;padding:14px;display:flex}.shuffle-line.filled{border-bottom-color:var(--pip-blue-400);background:#f2faff}.shuffle-bank{flex-wrap:wrap;justify-content:center;gap:10px;min-height:80px;padding:14px;display:flex}.shuffle-word{border:3px solid var(--border-2);box-shadow:0 3px 0 0 var(--border-2);font-family:"Noto Sans JP",var(--font-body);color:var(--fg-1);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .1s var(--ease-out);background:#fff;border-radius:12px;padding:10px 16px;font-size:22px;font-weight:700}.shuffle-word:hover{transform:translateY(-2px)}.play-big{background:var(--pip-blue-400);width:120px;height:120px;box-shadow:0 6px 0 0 var(--pip-blue-600);cursor:pointer;color:#fff;transition:transform .12s var(--ease-out);border:none;border-radius:50%;place-items:center;display:grid}.play-big:active{box-shadow:none;transform:translateY(4px)}.play-big.playing{animation:pulse .9s infinite}@keyframes pulse{0%,to{box-shadow:0 6px 0 0 var(--pip-blue-600)}50%{box-shadow:0 6px 0 0 var(--pip-blue-600),0 0 0 12px #1cb0f633}}.play-big svg{fill:currentColor;width:52px;height:52px}.play-small{background:var(--pip-blue-400);width:54px;height:54px;box-shadow:0 4px 0 0 var(--pip-blue-600);cursor:pointer;color:#fff;border:none;border-radius:50%;place-items:center;display:grid}.play-small:active{box-shadow:none;transform:translateY(4px)}.play-small svg{fill:currentColor;width:24px;height:24px}.mic-big{background:var(--pip-red-400);width:140px;height:140px;box-shadow:0 6px 0 0 var(--pip-red-600);cursor:pointer;color:#fff;border:4px solid #fff;border-radius:50%;place-items:center;display:grid;position:relative}.mic-big.recording{background:var(--pip-red-500)}.mic-big.recording:after,.mic-big.recording:before{content:"";border:4px solid var(--pip-red-400);opacity:.7;border-radius:50%;animation:ripple 1.2s infinite;position:absolute;inset:-6px}.mic-big.recording:after{animation-delay:.6s}@keyframes ripple{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.mic-big svg{stroke:currentColor;fill:currentColor;width:56px;height:56px}.mic-transcript{color:var(--fg-1);letter-spacing:.02em;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-family:Noto Sans JP;font-size:28px;font-weight:700;display:flex}.mic-transcript.placeholder{color:var(--fg-muted);font-weight:700}.trace-svg{border:3px solid var(--border-2);box-shadow:0 4px 0 0 var(--border-2);background:#fff;border-radius:20px}.wb-title{color:var(--pip-ink);letter-spacing:-.01em;text-align:center;font-family:Caveat,cursive;font-size:72px;font-weight:700;line-height:1.1}.board.chalk .wb-title{color:#f5f1e6;font-family:Kaushan Script,cursive}.wb-sub{color:var(--pip-charcoal);text-align:center;margin-top:8px;font-family:Caveat,cursive;font-size:30px}.board.chalk .wb-sub{color:#eadfc8}.vocab-card{border:3px solid var(--pip-ink);box-shadow:0 6px 0 0 var(--pip-ink);background:#fff;border-radius:24px;grid-template-columns:auto auto;align-items:center;gap:40px;padding:40px 60px;display:grid}.board.chalk .vocab-card{background:#f5f1e6}.vocab-card .jp{letter-spacing:.02em;color:var(--pip-ink);font-family:Shippori Mincho,Noto Sans JP;font-size:96px;font-weight:700;line-height:1}.vocab-card .details{flex-direction:column;gap:8px;display:flex}.vocab-card .roman{color:var(--pip-blue-500);font-family:Caveat,cursive;font-size:44px;line-height:1}.vocab-card .en{font-family:var(--font-display);letter-spacing:-.02em;color:var(--pip-ink);margin-top:6px;font-size:28px;font-weight:900}.vocab-card .notes{color:var(--fg-3);max-width:260px;font-size:15px;font-weight:700}.grammar-diagram{flex-direction:column;align-items:center;gap:24px;display:flex}.grammar-pattern{color:var(--pip-ink);align-items:center;gap:12px;font-family:Noto Sans JP;font-size:48px;font-weight:900;display:flex}.board.chalk .grammar-pattern{color:#f5f1e6}.slot-box{border:3px dashed var(--pip-blue-400);min-width:140px;color:var(--pip-blue-500);text-align:center;background:#1cb0f614;border-radius:16px;padding:12px 22px;font-weight:900}.slot-box.solid{color:var(--pip-yellow-500);border-style:solid;border-color:var(--pip-yellow-400);background:#ffc80033}.slot-box.green{background:var(--pip-green-50);color:var(--pip-green-600);border-style:solid;border-color:var(--pip-green-400)}.grammar-label{font-family:var(--font-display);color:var(--fg-3);text-transform:uppercase;letter-spacing:.08em;text-align:center;margin-top:4px;font-size:14px;font-weight:900}.grammar-example{text-align:center;border:3px solid var(--border-2);box-shadow:0 4px 0 0 var(--border-2);color:var(--pip-ink);background:#fff;border-radius:16px;padding:16px 32px;font-family:Noto Sans JP;font-size:32px;font-weight:700}.board.chalk .grammar-example{background:#f5f1e6}.grammar-example .hl{color:var(--pip-red-400)}.grammar-example .hl-g{color:var(--pip-green-500)}.grammar-example .hl-b{color:var(--pip-blue-500)}.greetings-grid{grid-template-columns:repeat(2,1fr);gap:18px;width:min(900px,100%);display:grid}.greeting-row{border:3px solid var(--pip-ink);box-shadow:0 4px 0 0 var(--pip-ink);opacity:0;animation:pop .26s var(--ease-back) forwards;background:#fff;border-radius:16px;align-items:center;gap:14px;padding:14px 18px;display:flex;transform:translateY(12px)}.board.chalk .greeting-row{background:#f5f1e6}@keyframes pop{to{opacity:1;transform:translateY(0)}}.greeting-row .jp{min-width:200px;font-family:Noto Sans JP;font-size:28px;font-weight:700}.greeting-row .en{color:var(--fg-2);flex:1;font-size:16px;font-weight:800}.greeting-row .time{width:36px;height:36px;color:var(--pip-yellow-500);place-items:center;display:grid}.result-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;min-height:0;padding:40px;display:flex;position:relative;overflow:auto}.result-wrap--sticky-cta{justify-content:flex-start;gap:0;padding:24px 16px 0}.result-wrap--sticky-cta .result-scroll{width:100%;max-width:760px;min-height:0;padding:16px 0 calc(96px + env(safe-area-inset-bottom,0px));flex-direction:column;flex:auto;align-items:center;gap:18px;margin:0 auto;display:flex;overflow-y:auto}.result-wrap--sticky-cta .result-cta-bar{width:100%;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#fff0 0,var(--pip-snow,#fff) 28%);z-index:5;justify-content:center;align-self:stretch;gap:12px;display:flex;position:sticky;bottom:0;left:0;right:0}@media (max-width:767px){.result-wrap--sticky-cta{padding:16px 12px 0}.result-wrap--sticky-cta .result-cta-bar{background:linear-gradient(180deg,#fffdee00 0,var(--pip-snow,#fff) 28%);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -1px #0000000a,0 -8px 24px -16px #0000002e}.result-wrap--sticky-cta .result-scroll{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}}.result-wrap--sticky-cta .result-cta-bar .pip-btn{min-width:132px}.result-hero{animation:bob 2s var(--ease-in-out) infinite}.result-title{font-family:var(--font-display);letter-spacing:-.02em;text-align:center;color:var(--fg-1);font-size:48px;font-weight:900}.result-sub{color:var(--fg-2);text-align:center;font-size:16px;font-weight:800}.result-stats{grid-template-columns:repeat(3,1fr);gap:14px;width:min(720px,100%);margin-top:16px;display:grid}.result-stat{border:3px solid var(--border-2);box-shadow:0 4px 0 0 var(--border-2);background:#fff;border-radius:16px;padding:16px}.result-stat.y{border-color:var(--pip-yellow-400);box-shadow:0 4px 0 0 var(--pip-yellow-500)}.result-stat.b{border-color:var(--pip-blue-400);box-shadow:0 4px 0 0 var(--pip-blue-600)}.result-stat.g{border-color:var(--pip-green-400);box-shadow:0 4px 0 0 var(--pip-green-500)}.result-stat .rl{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.result-stat.y .rl{color:var(--pip-yellow-500)}.result-stat.b .rl{color:var(--pip-blue-500)}.result-stat.g .rl{color:var(--pip-green-500)}.result-stat .rv{font-family:var(--font-display);color:var(--fg-1);align-items:center;gap:6px;font-size:30px;font-weight:900;display:flex}.result-stat .rv img{width:28px;height:28px}.tweaks{z-index:100;border:3px solid var(--pip-ink);width:280px;box-shadow:0 6px 0 0 var(--pip-ink);font-family:var(--font-body);background:#fff;border-radius:16px;flex-direction:column;gap:12px;padding:14px;display:flex;position:absolute;bottom:16px;right:16px}.tweaks-title{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-1);justify-content:space-between;align-items:center;font-size:14px;font-weight:900;display:flex}.tweaks-title button{cursor:pointer;color:var(--fg-3);background:0 0;border:none}.tweak-row{flex-direction:column;gap:6px;display:flex}.tweak-label{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);font-size:10px;font-weight:900}.tweak-options{flex-wrap:wrap;gap:4px;display:flex}.tweak-opt{border:2px solid var(--border-2);color:var(--fg-2);cursor:pointer;text-transform:capitalize;background:#fff;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:800}.tweak-opt.active{background:var(--pip-green-400);color:#fff;border-color:var(--pip-green-600)}.tweak-toggle{color:var(--fg-2);justify-content:space-between;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.tweak-switch{background:var(--pip-mist);cursor:pointer;border:2px solid var(--border-2);border-radius:999px;width:36px;height:20px;position:relative}.tweak-switch:after{content:"";width:14px;height:14px;transition:transform .18s var(--ease-back);background:#fff;border-radius:50%;position:absolute;top:1px;left:1px}.tweak-switch.on{background:var(--pip-green-400);border-color:var(--pip-green-600)}.tweak-switch.on:after{transform:translate(16px)}.confetti-piece{width:12px;height:18px;animation:fall 1.4s var(--ease-out) forwards;border-radius:2px;position:absolute}@keyframes fall{0%{opacity:1;transform:translateY(-30px)rotate(0)}to{opacity:0;transform:translateY(600px)rotate(2turn)}}.minna-scope ::-webkit-scrollbar{width:10px;height:10px}.minna-scope ::-webkit-scrollbar-thumb{background:var(--pip-cloud);border-radius:999px}.minna-scope ::-webkit-scrollbar-track{background:0 0}.pill-tag{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:900;display:inline-flex}.pill-tag.green{background:var(--pip-green-50);color:var(--pip-green-600)}.pill-tag.blue{color:var(--pip-blue-500);background:#e6f7ff}.pill-tag.yellow{color:var(--pip-yellow-500);background:#fff6d6}.placeholder-scene{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:40px;display:flex}.placeholder-scene .ph-kanji{color:var(--pip-ink);font-family:Shippori Mincho,serif;font-size:120px;line-height:1}.placeholder-scene .ph-title{font-family:var(--font-display);color:var(--fg-1);font-size:36px;font-weight:900}.placeholder-scene .ph-sub{color:var(--fg-3);max-width:420px;font-size:16px;font-weight:800}@media (min-width:768px) and (max-width:1199px){.nav{gap:12px;height:60px;padding:0 16px}.nav-brand-word{font-size:18px}.nav-chip{padding:4px 10px;font-size:13px}.home{grid-template-columns:1fr;gap:16px;padding:16px}.home-right,.home-side{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lesson-grid{grid-template-columns:repeat(3,1fr);gap:12px}.lesson-tile{min-height:140px;padding:14px}.lesson-tile .lesson-kanji{font-size:26px}.lesson-tile .lesson-title{font-size:13px}.board-inner{padding:28px 40px}.teacher{max-width:480px;bottom:16px;left:16px}.teacher-char{width:96px;height:112px}.teacher-bubble{max-width:380px;padding:12px 14px;font-size:16px}.vocab-card{gap:28px;padding:28px 40px}.vocab-card .jp{font-size:72px}.wb-title{font-size:56px}.grammar-pattern{font-size:36px}.grammar-example{padding:12px 22px;font-size:24px}.greetings-grid{grid-template-columns:repeat(2,1fr);gap:12px}}@media (min-width:1024px) and (max-width:1199px) and (orientation:landscape){.lesson-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:767px){.nav{flex-wrap:nowrap;gap:8px;height:52px;padding:0 10px;overflow-x:auto}.nav-brand-mark{border-radius:8px;width:32px;height:32px;font-size:16px}.nav-brand-word{font-size:14px}.nav-brand-sub{font-size:8px}.nav-spacer{flex:auto}.nav-chip{border-width:1px;gap:3px;padding:3px 7px;font-size:11px}.nav-chip img{width:16px;height:16px}.pip-btn.sm{padding:6px 10px;font-size:10px}.home{grid-template-columns:1fr;gap:12px;padding:12px}.home-mid,.home-right,.home-side{gap:10px;overflow-y:visible}.panel{border-width:2px;border-radius:14px;padding:14px}.panel-title{font-size:15px}.hero-card{border-width:2px;gap:10px;padding:14px}.hero-card img{width:56px;height:64px}.hero-card .hero-title{font-size:17px}.hero-card .hero-sub{font-size:11px}.streak-card{gap:8px}.streak-tile{border-width:1px;padding:8px}.streak-tile img{width:24px;height:24px}.streak-tile .v{font-size:17px}.section-strap{border-width:2px;border-radius:14px;padding:10px 14px}.section-strap h2{font-size:16px}.section-strap .eye{font-size:9px}.guidebook-btn{padding:5px 8px;font-size:9px}.lesson-grid{grid-template-columns:repeat(2,1fr);gap:10px}.lesson-tile{border-width:2px;border-radius:14px;min-height:110px;padding:10px}.lesson-tile .lesson-kanji{font-size:22px}.lesson-tile .lesson-title{font-size:12px}.lesson-tile .lesson-meta{font-size:9px}.lesson-topbar{gap:10px;height:44px;padding:0 12px}.lesson-x svg{width:18px;height:18px}.prog{border-width:1px;height:10px}.lesson-hearts{font-size:13px}.lesson-hearts img{width:18px;height:18px}.board{background-size:30px 30px}.board-inner{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:14px;padding:18px 14px 24px}.teacher{align-items:flex-start;gap:8px;max-width:100%;margin-top:8px;position:static;bottom:auto;left:auto}.teacher-char{width:64px;height:76px}.teacher-bubble{max-width:100%;box-shadow:0 3px 0 0 var(--pip-ink);border-width:2px;padding:10px 12px;font-size:13px}.wb-title{font-size:38px}.wb-sub{font-size:18px}.vocab-card{text-align:center;box-shadow:0 4px 0 0 var(--pip-ink);border-width:2px;grid-template-columns:1fr;gap:12px;padding:18px 16px}.vocab-card .jp{text-align:center;font-size:56px}.vocab-card .roman{text-align:center;font-size:26px}.vocab-card .en{text-align:center;font-size:18px}.vocab-card .notes{text-align:center;max-width:100%;font-size:12px}.grammar-pattern{flex-wrap:wrap;justify-content:center;gap:6px;font-size:24px}.slot-box{border-width:2px;min-width:80px;padding:8px 12px}.grammar-example{border-width:2px;padding:10px 14px;font-size:18px}.greetings-grid{grid-template-columns:1fr;gap:10px}.greeting-row{border-width:2px;padding:10px 12px}.greeting-row .jp{min-width:0;font-size:18px}.greeting-row .en{font-size:12px}.mc-grid{grid-template-columns:repeat(2,1fr);gap:8px;width:100%}.mc-tile{border-width:2px;min-height:56px;padding:14px 10px;font-size:16px}.mc-tile .mc-en{font-size:10px}.cloze-line{font-size:24px;line-height:1.5}.cloze-slot{min-width:80px;padding:2px 10px}.cloze-translation{font-size:12px}.chip-bank{gap:6px;margin-top:14px}.chip-word{border-width:2px;min-height:40px;padding:8px 12px;font-size:16px}.shuffle-board{gap:10px}.shuffle-prompt{font-size:13px}.shuffle-line{border-width:2px;gap:6px;min-height:56px;padding:10px}.shuffle-bank{gap:6px;min-height:56px;padding:8px}.shuffle-word{border-width:2px;min-height:40px;padding:7px 11px;font-size:16px}.play-big{width:88px;height:88px}.play-big svg{width:38px;height:38px}.play-small{width:44px;height:44px}.play-small svg{width:18px;height:18px}.mic-big{border-width:3px;width:100px;height:100px}.mic-big svg{width:40px;height:40px}.mic-transcript{min-height:36px;font-size:20px}.ex-footer{gap:12px;min-height:64px;padding:12px 14px 14px}.ex-feedback .big{font-size:16px}.ex-feedback .sub{font-size:11px}.ex-check-icon{width:32px;height:32px}.ex-check-icon svg{width:18px;height:18px}.result-wrap{gap:14px;padding:24px 16px}.result-title{font-size:32px}.result-sub{font-size:13px}.result-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.result-stat{border-width:2px;padding:10px}.result-stat .rl{font-size:9px}.result-stat .rv{font-size:20px}.tweaks{z-index:10000;border-width:2px;border-radius:14px;width:auto;max-height:75vh;position:fixed;bottom:8px;left:8px;right:8px;overflow-y:auto;box-shadow:0 6px 24px -6px #0006}.placeholder-scene .ph-kanji{font-size:80px}.placeholder-scene .ph-title{font-size:22px}.placeholder-scene .ph-sub{font-size:13px}}@media (max-width:380px){.nav-chip{padding:3px 5px}.nav-chip.gems,.nav-chip.streak,.nav-chip.xp{font-size:10px}.lesson-grid{grid-template-columns:repeat(2,1fr);gap:8px}.vocab-card .jp{font-size:44px}.wb-title{font-size:30px}}@supports (padding:max(0px)){.minna-root{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}}.minna-scope.deutsch-accent{--accent:#e2750d;--accent-hover:#c46006;--accent-press:#9f4f05}