.v3-task{gap:var(--bf-space-2);justify-items:center;width:100%;display:grid}.v3-activity:not(.is-centered) .v3-task{justify-items:start}.v3-task-row{align-items:center;gap:var(--bf-space-1);max-width:100%;display:inline-flex}.bf-app .v3-activity .v3-task-chip,:is(.bf-app,.learn-root) .v3-task-chip{align-items:center;gap:var(--bf-space-2);min-height:36px;padding:var(--bf-space-1) var(--bf-space-3h) var(--bf-space-1) var(--bf-space-1);border-radius:var(--bf-radius-pill);background:var(--bf-learn-soft);color:var(--bf-learn-ink);font-size:var(--bf-fs-15);letter-spacing:0;text-align:left;margin:0;font-weight:700;line-height:1.2;display:inline-flex}.v3-task-ico{background:var(--bf-learn-ink);width:28px;height:28px;color:var(--bf-on-accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.v3-task-prompt{max-width:32ch;font-size:var(--bf-fs-15);color:var(--bf-ink-soft);text-wrap:balance;font-weight:500;line-height:1.5}.v3-activity.is-centered .v3-task-prompt{justify-self:center}.bf-app .bf-btn.v3-press{--v3-depth:var(--bf-accent-deep);box-shadow:0 4px 0 var(--v3-depth);transition:transform .1s,box-shadow .1s,background .12s}.bf-app .bf-btn.v3-press:active:not(:disabled){box-shadow:0 2px 0 var(--v3-depth);transform:translateY(2px)}.bf-app .bf-btn.v3-press.is-success{--v3-depth:color-mix(in srgb, var(--bf-success) 70%, var(--bf-accent-deep));background:var(--bf-success)}.bf-app .bf-btn.v3-press.is-danger{--v3-depth:color-mix(in srgb, var(--bf-error) 70%, var(--bf-accent-deep));background:var(--bf-error)}.bf-app .bf-btn.v3-press.is-secondary{--v3-depth:var(--bf-line-strong);box-shadow:inset 0 0 0 2px var(--bf-line-strong), 0 4px 0 var(--v3-depth)}.bf-app .bf-btn.v3-press.is-secondary:active:not(:disabled){box-shadow:inset 0 0 0 2px var(--bf-line-strong), 0 2px 0 var(--v3-depth)}.bf-app .bf-btn.v3-press:disabled:not([aria-busy=true]){background:var(--bf-line);box-shadow:none;opacity:1;transform:none;color:var(--bf-mist)!important}.bf-app .bf-btn.v3-press:disabled:not([aria-busy=true]):after{display:none}.bf-app .bf-btn.v3-press.is-ready{animation:.4s cubic-bezier(.34,1.56,.64,1) v3-breathe}.v3-option-row{display:grid;position:relative}.v3-activity .v3-options{margin-top:var(--bf-space-2h)}.bf-app .v3-option{border:2px solid var(--bf-line-strong);background:var(--bf-surface);box-shadow:0 4px 0 var(--bf-line-strong);font-weight:600;transition:transform .1s,box-shadow .1s,border-color .12s,background .12s}.v3-option-row.has-say .v3-option{padding-right:var(--bf-space-16)}.bf-app .v3-option:active:not(:disabled){box-shadow:0 2px 0 var(--bf-line-strong);transform:translateY(2px)}.bf-app .v3-option[aria-pressed=true]{border-color:var(--bf-learn-ink);background:var(--bf-learn-soft);box-shadow:0 4px 0 var(--bf-learn-ink)}.bf-app .v3-option[aria-pressed=true]>span[aria-hidden]{background:var(--bf-learn-ink);color:var(--bf-on-accent)}.bf-app .v3-option.is-correct{border-color:var(--bf-success);background:var(--bf-success-soft);box-shadow:0 4px 0 var(--bf-success);animation:v3-correct .52s var(--m-ease,ease-out)}.bf-app .v3-option.is-wrong{border-color:var(--bf-error);background:var(--bf-error-soft);box-shadow:0 4px 0 var(--bf-error);animation:.42s ease-in-out v3-wrong}.bf-app .v3-option.is-correct>span[aria-hidden]{background:var(--bf-success);color:var(--bf-on-accent)}.bf-app .v3-option.is-wrong>span[aria-hidden]{background:var(--bf-error);color:var(--bf-on-accent)}.bf-app .v3-option.is-answer{border-color:var(--bf-success);box-shadow:inset 0 0 0 1px var(--bf-success), 0 4px 0 var(--bf-success)}.bf-app .v3-option.is-correct:disabled,.bf-app .v3-option.is-wrong:disabled,.bf-app .v3-option.is-answer:disabled{opacity:1}.bf-app :is(.v3-option,.v3-match-tile,.v3-token){position:relative}.bf-app :is(.v3-option,.v3-match-tile,.v3-token):is(.is-correct,.is-wrong):after{content:"";border-radius:inherit;pointer-events:none;box-shadow:0 0 0 3px var(--v3-flash), 0 0 18px 4px color-mix(in srgb, var(--v3-flash) 45%, transparent);animation:v3-flash .56s var(--m-ease,ease-out) both;position:absolute;inset:-4px}.bf-app :is(.v3-option,.v3-match-tile,.v3-token).is-correct{--v3-flash:var(--bf-success)}.bf-app :is(.v3-option,.v3-match-tile,.v3-token).is-wrong{--v3-flash:var(--bf-error)}.bf-session-foot{position:relative}.bf-session-foot:is(.is-correct,.is-wrong):before{content:"";pointer-events:none;background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--bf-surface) 70%, transparent) 50%, transparent 70%) 160% 0 / 250% 100% no-repeat;animation:m-shimmer .64s var(--m-ease,ease-out) both;position:absolute;inset:0}.bf-app .v3-say{background:var(--bf-learn-soft);width:44px;height:44px;color:var(--bf-learn-ink);box-shadow:0 2px 0 var(--bf-soft-strong);border:0;border-radius:50%;place-items:center;margin-top:-24px;padding:0;transition:transform .1s,box-shadow .1s;display:grid;position:absolute;top:50%;right:10px}.bf-app .v3-say:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.bf-app .v3-say.is-playing{background:var(--bf-learn-ink);color:var(--bf-on-accent)}.bf-app .v3-audio{margin:0}.bf-app .v3-speaker{box-shadow:0 4px 0 var(--bf-accent-deep);transition:transform .1s,box-shadow .1s}.bf-app .v3-speaker:active:not(:disabled){box-shadow:0 2px 0 var(--bf-accent-deep);transform:translateY(2px)}.bf-app .v3-speaker.is-xl{width:96px;height:96px;box-shadow:0 5px 0 var(--bf-accent-deep), 0 12px 26px rgb(var(--bf-shadow-rgb) / .2)}:is(.bf-app,.learn-root) .v3-tool{justify-items:center;gap:var(--bf-space-1);min-width:56px;color:var(--bf-learn-ink);font-size:var(--bf-fs-12);background:0 0;border:0;padding:0;font-weight:700;line-height:1.2;display:inline-grid}.v3-tool-ico{background:var(--bf-surface);border:2px solid var(--bf-line-strong);width:44px;height:44px;box-shadow:0 3px 0 var(--bf-line-strong);border-radius:50%;place-items:center;transition:transform .1s,box-shadow .1s;display:grid}:is(.bf-app,.learn-root) .v3-tool:active:not(:disabled) .v3-tool-ico{box-shadow:0 1px 0 var(--bf-line-strong);transform:translateY(2px)}:is(.bf-app,.learn-root) .v3-tool:focus-visible{outline:none}:is(.bf-app,.learn-root) .v3-tool:focus-visible .v3-tool-ico{outline:3px solid var(--bf-navy);outline-offset:2px}.v3-tool-caption{font-size:var(--bf-fs-12)}.v3-listen-row{justify-content:center;align-items:center;gap:var(--bf-space-5);padding:var(--bf-space-1) 0 var(--bf-space-3h);display:flex}.v3-tools-row{justify-content:center;gap:var(--bf-space-4);display:flex}.v3-say-card{justify-items:center;gap:var(--bf-space-1h);width:100%;margin-bottom:var(--bf-space-2);padding:var(--bf-space-6) var(--bf-space-4) var(--bf-space-5);border-radius:var(--bf-radius-24);background:radial-gradient(circle at 88% 110%, var(--bf-surface), transparent 45%), var(--bf-learn-soft);text-align:center;display:grid;position:relative}.v3-say-card:after{content:"";border-radius:0 0 var(--bf-radius-6) 0;background:var(--bf-learn-soft);width:20px;height:20px;position:absolute;bottom:-9px;left:34px;transform:rotate(45deg)}.bf-app .v3-say-en{font-size:var(--bf-fs-28);letter-spacing:-.015em;color:var(--bf-title);text-wrap:balance;font-weight:700;line-height:1.3}.bf-app .v3-say-vi{font-size:var(--bf-fs-16);color:var(--bf-ink-soft);line-height:1.4}.v3-say-tools{justify-content:center;align-items:center;gap:var(--bf-space-4);margin-top:var(--bf-space-4);display:flex}.v3-tip{justify-items:center;gap:var(--bf-space-2);width:100%;display:grid}.v3-tip summary{align-items:center;gap:var(--bf-space-1h);min-height:44px;padding:var(--bf-space-2) var(--bf-space-4);border-radius:var(--bf-radius-pill);background:var(--bf-butter-soft);color:var(--bf-butter-ink);font-size:var(--bf-fs-14);cursor:pointer;box-shadow:0 2px 0 var(--bf-butter);font-weight:700;list-style:none;display:inline-flex}.v3-tip summary::-webkit-details-marker{display:none}.v3-tip[open] summary{box-shadow:none;transform:translateY(2px)}.bf-app .v3-tip p{width:100%;padding:var(--bf-space-3) var(--bf-space-3h);border-radius:var(--bf-radius-16);background:var(--bf-butter-soft);color:var(--bf-ink);font-size:var(--bf-fs-15);text-align:left;line-height:1.5;animation:.2s ease-out bf-rise}.bf-app .v3-scene.is-wide{aspect-ratio:16/10;object-fit:cover;object-position:center 43%;border-radius:var(--bf-radius-24);width:100%;height:auto}.bf-app .v3-context-title{font-size:var(--bf-fs-22);line-height:1.3}.v3-context-card h3{font-size:var(--bf-fs-16);margin-bottom:var(--bf-space-1)}.v3-lead-more summary{cursor:pointer;gap:2px;list-style:none;display:grid}.v3-lead-more summary::-webkit-details-marker{display:none}.v3-lead-more:not([open]) .v3-lead{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.v3-more{font-size:var(--bf-fs-14);color:var(--bf-learn-ink);text-underline-offset:3px;font-weight:700;text-decoration:underline}.v3-lead-more[open] .v3-more{display:none}.v3-situation{align-items:flex-start;gap:var(--bf-space-2h);text-align:left;width:100%;display:flex}.v3-avatar{background:var(--bf-learn-soft);width:40px;height:40px;box-shadow:0 0 0 2px var(--bf-surface), 0 0 0 4px var(--bf-learn-soft);border-radius:50%;flex-shrink:0;overflow:hidden}.v3-avatar img{object-fit:cover;object-position:50% 0;transform-origin:70% 40%;width:100%;height:100%;display:block;transform:scale(2)}.bf-app .v3-situation p{min-width:0;padding:var(--bf-space-3) var(--bf-space-3h);border-radius:4px var(--bf-radius-20) var(--bf-radius-20) var(--bf-radius-20);background:var(--bf-learn-soft);color:var(--bf-ink);font-size:var(--bf-fs-16);flex:1;font-weight:600;line-height:1.4}.bf-app .v3-transcript{width:100%}.v3-verdict-sheet{gap:var(--bf-space-3);animation:.22s cubic-bezier(.2,.8,.2,1) both v3-sheet-up;display:grid}.v3-verdict-head{align-items:start;gap:var(--bf-space-3);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.v3-verdict-sheet .v3-verdict-ico{background:var(--bf-learn-ink);width:40px;height:40px;color:var(--bf-on-accent);border-radius:50%;place-items:center;animation:.36s cubic-bezier(.2,.9,.3,1.2) both bf-pop;display:grid}.v3-verdict-sheet.is-correct .v3-verdict-ico{background:var(--bf-success);color:var(--bf-on-accent)}.v3-verdict-sheet.is-wrong .v3-verdict-ico{background:var(--bf-error);color:var(--bf-on-accent)}.v3-verdict-copy{gap:2px;min-width:0;display:grid}.v3-verdict-copy strong{font-size:var(--bf-fs-18);color:var(--bf-learn-ink);font-weight:700;line-height:1.3}.is-correct .v3-verdict-copy strong{color:var(--bf-success)}.is-wrong .v3-verdict-copy strong{color:var(--bf-error)}.bf-app .v3-verdict-copy p{font-size:var(--bf-fs-14);color:var(--bf-ink);line-height:1.4}.bf-app .v3-verdict-answer{margin-top:var(--bf-space-1);gap:1px;display:grid}.v3-verdict-answer>span{font-size:var(--bf-fs-13);color:var(--bf-error);font-weight:700}.v3-verdict-answer b{font-size:var(--bf-fs-16);color:var(--bf-title);font-weight:700}.v3-verdict-answer small{font-size:var(--bf-fs-13);color:var(--bf-ink-soft)}.v3-combo{align-items:center;gap:var(--bf-space-1);min-height:28px;padding:2px var(--bf-space-2h) 2px var(--bf-space-2);border-radius:var(--bf-radius-pill);background:var(--bf-surface);color:var(--bf-success);font-size:var(--bf-fs-13);white-space:nowrap;font-weight:700;animation:.42s cubic-bezier(.2,.9,.3,1.2) .12s both bf-pop;display:inline-flex}.v3-verdict-actions{gap:var(--bf-space-2);flex-wrap:wrap;display:flex}.v3-verdict-actions .bf-btn{flex:140px}.v3-progress-glow{pointer-events:none;background:radial-gradient(circle, var(--bf-surface), transparent 70%);opacity:0;border-radius:50%;width:22px;height:22px;margin-top:-11px;animation:.7s ease-out v3-glow;position:absolute;top:50%;right:-4px}.v3-coach-anchor{justify-items:center;display:inline-grid;position:relative}.v3-coach{--v3-coach-bob:-3px;z-index:6;pointer-events:none;flex-direction:column;width:max-content;animation:1.4s ease-in-out .6s 3 v3-coach-bob;display:flex;position:absolute}.v3-coach.is-below{align-items:flex-end;top:calc(100% - 8px);right:calc(50% - 20px)}.v3-coach.is-above{--v3-coach-bob:3px;flex-direction:column-reverse;align-items:flex-start;bottom:calc(100% - 8px);left:calc(50% - 20px)}.v3-coach.is-below.is-clear{align-items:center;top:calc(100% + 4px);left:50%;right:auto;translate:-50%}.v3-coach.is-above.is-clear{align-items:center;bottom:calc(100% + 4px);left:50%;right:auto;translate:-50%}.v3-coach-tail{width:16px;height:8px;margin:0 var(--bf-space-3) -1px;fill:var(--bf-ink);flex-shrink:0;display:block}.v3-coach.is-above .v3-coach-tail{margin:-1px var(--bf-space-3) 0;rotate:180deg}.v3-coach.is-clear .v3-coach-tail{margin-inline:0}.v3-coach-anchor:has(.v3-coach) .v3-audio small{visibility:hidden}.v3-coach-bubble{padding:var(--bf-space-2) var(--bf-space-3);border-radius:var(--bf-radius-12);background:var(--bf-ink);color:var(--bf-bg);font:var(--bf-t-sub);white-space:nowrap;box-shadow:var(--bf-elev-2);margin:0;font-weight:600;line-height:1.3;animation:.32s cubic-bezier(.2,.9,.3,1.2) both bf-pop;position:relative}[data-motion=lite] .v3-coach{animation:none}.v3-complete-hero{justify-items:center;display:grid;position:relative}.v3-complete.has-art .v3-complete-hero{width:200px}.bf-app .v3-complete-art{border-radius:var(--bf-radius-28);animation:m-pop .56s var(--m-spring,ease-out) both}.v3-complete.has-art .v3-xp-burst{width:108px;height:108px;position:absolute;bottom:-18px;right:-34px}.v3-complete.has-art .v3-xp-burst strong{font-size:var(--bf-fs-28)}.v3-complete.has-art .v3-xp-burst small{font-size:var(--bf-fs-12)}.v3-complete-line{justify-content:center;align-items:center;gap:2px var(--bf-space-2);flex-wrap:wrap;display:inline-flex}.v3-complete-stats.has-combo{grid-template-columns:repeat(3,minmax(0,1fr))}.v3-tile-of{font-size:var(--bf-fs-14);font-weight:600}.v3-tile.is-combo strong,.v3-tile.is-combo svg{color:var(--bf-success)}.v3-token-cell{display:inline-flex;position:relative}.bf-app .v3-token{background:var(--bf-surface);color:var(--bf-ink);box-shadow:0 3px 0 var(--bf-line-strong);border-width:2px;justify-content:center;transition:transform .1s,box-shadow .1s}.bf-app .v3-token:active:not(:disabled){box-shadow:0 1px 0 var(--bf-line-strong);transform:translateY(2px)}.bf-app .v3-token.is-placed{border-color:var(--bf-line-strong);background:var(--bf-surface);color:var(--bf-ink);box-shadow:0 3px 0 var(--bf-line-strong)}.bf-app .v3-order-slot .v3-token.is-placed{border-color:var(--bf-learn-ink);background:var(--bf-soft);color:var(--bf-ink);box-shadow:0 3px 0 var(--bf-learn-ink)}.bf-app .v3-token.is-ghost{background:var(--bf-line);color:#0000;box-shadow:none;user-select:none;border-color:#0000}.bf-app .v3-token.is-correct{border-color:var(--bf-success);background:var(--bf-success-soft);color:var(--bf-success);box-shadow:0 3px 0 var(--bf-success)}.bf-app .v3-token.is-wrong{border-color:var(--bf-error);background:var(--bf-error-soft);color:var(--bf-error);box-shadow:0 3px 0 var(--bf-error);animation:.42s ease-in-out v3-wrong}.bf-app .v3-token.is-correct{animation:v3-correct .52s var(--m-ease,ease-out)}.bf-app .v3-token.is-placed:disabled,.bf-app .v3-token.is-correct:disabled,.bf-app .v3-token.is-wrong:disabled{opacity:1}.v3-slot-empty{border-radius:var(--bf-radius-14);border:2px dashed var(--bf-line-strong);background:var(--bf-surface);min-height:44px;display:block}.v3-match-board{gap:var(--bf-space-2h);width:100%;margin-top:var(--bf-space-2h);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.v3-match-col{gap:var(--bf-space-3);align-content:start;min-width:0;display:grid}.v3-match-cell{min-width:0;display:grid;position:relative}.bf-app .v3-match-tile{min-height:64px;padding:var(--bf-space-2h) var(--bf-space-3);border-radius:var(--bf-radius-16);border:2px solid var(--bf-line-strong);background:var(--bf-surface);color:var(--bf-ink);box-shadow:0 4px 0 var(--bf-line-strong);font-size:var(--bf-fs-15);text-align:left;animation:.36s cubic-bezier(.2,.8,.2,1) both v3-enter;animation-delay:calc(var(--i,0) * 60ms + 80ms);align-items:center;font-weight:600;line-height:1.3;transition:transform .1s,box-shadow .1s,border-color .12s,background .12s;display:flex;position:relative}.v3-match-cell.has-say .v3-match-tile{padding-right:44px}.bf-app .v3-match-tile{overflow-wrap:break-word;min-width:0}@media (width<=380px){.bf-app .v3-match-tile{padding-inline:var(--bf-space-2h);font-size:var(--bf-fs-14)}.v3-match-cell.has-say .v3-match-tile{padding-right:var(--bf-space-2h);padding-bottom:var(--bf-space-10);align-items:flex-start}.bf-app .v3-match-cell .v3-say.is-mini{top:auto;bottom:8px;right:8px}}.bf-app .v3-match-tile:active:not(:disabled){box-shadow:0 2px 0 var(--bf-line-strong);transform:translateY(2px)}.bf-app .v3-match-tile[aria-pressed=true]{border-color:var(--bf-learn-ink);background:var(--bf-learn-soft);box-shadow:0 7px 0 var(--bf-learn-ink);transform:translateY(-3px)}.bf-app .v3-match-tile.is-paired{border-color:var(--pair);background:var(--pair-soft);box-shadow:0 4px 0 var(--pair);animation:.18s cubic-bezier(.2,.9,.3,1.2) v3-pop}.bf-app .v3-match-tile.is-correct{border-color:var(--bf-success);background:var(--bf-success-soft);box-shadow:0 4px 0 var(--bf-success);animation:v3-correct .52s var(--m-ease,ease-out)}.bf-app .v3-match-tile.is-wrong{border-color:var(--bf-error);background:var(--bf-error-soft);box-shadow:0 4px 0 var(--bf-error);animation:.42s ease-in-out v3-wrong}.bf-app .v3-match-tile.is-paired:disabled,.bf-app .v3-match-tile.is-correct:disabled,.bf-app .v3-match-tile.is-wrong:disabled{opacity:1}.v3-pair-dot{background:var(--pair);width:24px;height:24px;color:var(--bf-on-accent);font-size:var(--bf-fs-13);box-shadow:0 0 0 2px var(--bf-surface);border-radius:50%;place-items:center;font-weight:700;line-height:1;animation:.24s cubic-bezier(.2,.9,.3,1.2) both bf-pop;display:grid;position:absolute;top:-9px;left:-9px}.v3-match-col+.v3-match-col .v3-pair-dot{left:auto;right:-9px}.bf-app .v3-say.is-mini{width:34px;height:34px;margin-top:0;top:8px;right:6px}.bf-app .v3-say.is-mini:before{content:"";position:absolute;inset:-5px}.v3-order-board{gap:var(--bf-space-4);width:100%;display:grid}.v3-order-slots{gap:var(--bf-space-2);margin:0;padding:0;list-style:none;display:grid}.v3-order-slot{align-items:center;gap:var(--bf-space-2h);display:flex}.v3-order-slot>:last-child{flex:1;min-width:0}.v3-slot-n{background:var(--bf-learn-soft);width:28px;height:28px;color:var(--bf-learn-ink);font-size:var(--bf-fs-13);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.v3-order-slot.is-filled .v3-slot-n{background:var(--bf-learn-ink);color:var(--bf-on-accent)}.v3-order-slot.is-correct .v3-slot-n{background:var(--bf-success)}.v3-order-slot.is-wrong .v3-slot-n{background:var(--bf-error)}.bf-app .v3-order-slot .v3-token{text-align:left;justify-content:flex-start;width:100%}.v3-order-bank{gap:var(--bf-space-2);flex-wrap:wrap;display:flex}.v3-bank{gap:var(--bf-space-3h);width:100%;display:grid}.bf-app .v3-bank-vi{max-width:100%;margin-bottom:var(--bf-space-1);padding:var(--bf-space-2h) var(--bf-space-4);border-radius:var(--bf-radius-20);background:var(--bf-learn-soft);color:var(--bf-ink);font-size:var(--bf-fs-16);justify-self:center;font-weight:600;line-height:1.4;position:relative}.v3-bank-vi:after{content:"";background:var(--bf-learn-soft);border-radius:0 0 4px;width:14px;height:14px;margin-left:-7px;position:absolute;bottom:-7px;left:50%;transform:rotate(45deg)}.v3-bank-slots{justify-content:center;gap:var(--bf-space-2h) var(--bf-space-2);min-height:64px;padding:var(--bf-space-2h) var(--bf-space-1) var(--bf-space-3h);border-bottom:2px solid var(--bf-line);background:repeating-linear-gradient(to bottom, transparent 0 55px, var(--bf-line) 55px 57px) 0 0 / 100% 56px;flex-wrap:wrap;margin:0;list-style:none;display:flex}.v3-bank-slot .v3-slot-empty{border-radius:var(--bf-radius-12);width:52px}.v3-bank-tiles{justify-content:center;gap:var(--bf-space-2);flex-wrap:wrap;display:flex}.bf-app .v3-bank .v3-token{min-height:46px;padding:var(--bf-space-2) var(--bf-space-3h);font-size:var(--bf-fs-16)}.v3-mode-row{justify-content:flex-end;width:100%;margin-top:-4px;display:flex}.bf-app .v3-mode-toggle{align-items:center;gap:var(--bf-space-1h);min-height:44px;padding:var(--bf-space-1h) var(--bf-space-3h);border-radius:var(--bf-radius-pill);border:2px solid var(--bf-line-strong);background:var(--bf-surface);color:var(--bf-learn-ink);font-size:var(--bf-fs-14);box-shadow:0 3px 0 var(--bf-line-strong);font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex}.bf-app .v3-mode-toggle:active:not(:disabled){box-shadow:0 1px 0 var(--bf-line-strong);transform:translateY(2px)}.v3-mode-badge{padding:2px var(--bf-space-2);border-radius:var(--bf-radius-pill);background:var(--bf-success-soft);color:var(--bf-success);font-size:var(--bf-fs-12);white-space:nowrap;font-weight:700}.v3-mic{justify-items:center;gap:var(--bf-space-2h);width:100%;padding-top:var(--bf-space-1);display:grid}.bf-app .v3-mic-btn{background:var(--bf-cta);width:96px;height:96px;color:var(--bf-on-accent);box-shadow:0 5px 0 var(--bf-accent-deep), 0 12px 26px rgb(var(--bf-shadow-rgb) / .2);border:0;border-radius:50%;place-items:center;transition:transform .1s,box-shadow .1s;display:grid;position:relative}.bf-app .v3-mic-btn:active:not(:disabled){box-shadow:0 2px 0 var(--bf-accent-deep);transform:translateY(3px)}.v3-mic.is-recording .v3-mic-btn{background:var(--bf-error);box-shadow:0 5px 0 color-mix(in srgb, var(--bf-error) 70%, var(--bf-accent-deep))}.v3-mic.is-recording .v3-mic-btn:before,.v3-mic.is-recording .v3-mic-btn:after{content:"";border:3px solid var(--bf-error);opacity:0;pointer-events:none;border-radius:50%;animation:1.2s ease-out infinite v3-ring;position:absolute;inset:-8px}.v3-mic.is-recording .v3-mic-btn:after{animation-delay:.4s}.v3-mic:has(.v3-coach) .v3-mic-caption{visibility:hidden}.v3-mic-caption{align-items:center;gap:var(--bf-space-1h);min-height:20px;color:var(--bf-ink-soft);font-size:var(--bf-fs-14);font-variant-numeric:tabular-nums;font-weight:700;display:inline-flex}.v3-mic.is-recording .v3-mic-caption{color:var(--bf-error)}.v3-rec-dot{background:var(--bf-error);border-radius:50%;width:8px;height:8px}.v3-mic-compare{justify-content:center;gap:var(--bf-space-5);display:flex}.v3-tool.is-you .v3-tool-ico,.v3-tool.is-model .v3-tool-ico{width:56px;height:56px}.v3-tool.is-you .v3-tool-ico{background:var(--bf-learn-soft);border-color:var(--bf-learn-ink);box-shadow:0 3px 0 var(--bf-learn-ink)}.bf-app .v3-mic-error{max-width:36ch;color:var(--bf-ink-soft);font-size:var(--bf-fs-14);text-align:center}.bf-app .bf-btn.v3-skip{min-height:44px}@media (height<=700px){.bf-app .v3-scene.is-wide{aspect-ratio:2}.bf-app .v3-speaker.is-xl{width:80px;height:80px}.bf-app .v3-say-en{font-size:var(--bf-fs-22)}.v3-say-card{padding:var(--bf-space-4) var(--bf-space-4) var(--bf-space-4)}}@keyframes v3-breathe{0%{transform:scale(1)}45%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes v3-correct{0%{transform:scale(1)}22%{transform:scale(.96)}52%{transform:scale(1.05)}76%{transform:scale(.99)}to{transform:scale(1)}}@keyframes v3-wrong{0%,to{transform:translate(0)}15%{transform:translate(-8px)rotate(-1deg)}32%{transform:translate(7px)rotate(.8deg)}50%{transform:translate(-5px)}68%{transform:translate(3px)}84%{transform:translate(-1px)}}@keyframes v3-flash{0%{opacity:0;transform:scale(.97)}25%{opacity:1}to{opacity:0;transform:scale(1.06)}}@keyframes v3-sheet-up{0%{opacity:0;transform:translateY(28px)}}@keyframes v3-glow{0%{opacity:.95;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}@keyframes v3-coach-bob{0%,to{transform:translateY(0)}50%{transform:translateY(var(--v3-coach-bob,-3px))}}@media (prefers-reduced-motion:reduce){.v3-verdict-sheet,.v3-verdict-sheet .v3-verdict-ico,.v3-combo,.v3-coach,.v3-coach-bubble,.v3-progress-glow,.bf-app .bf-btn.v3-press.is-ready,.bf-app .v3-option,.v3-tip p,.bf-app .v3-match-tile,.v3-pair-dot,.bf-app .v3-token,.v3-mic-btn:before,.v3-mic-btn:after,.bf-app :is(.v3-option,.v3-match-tile,.v3-token):after,.bf-session-foot:before,.bf-app .v3-complete-art{animation:none!important}.bf-app :is(.v3-option,.v3-match-tile,.v3-token):after,.bf-session-foot:before{display:none}.bf-app .v3-option,.bf-app .v3-say,.bf-app .v3-speaker,.v3-tool-ico,.bf-app .bf-btn.v3-press,.bf-app .v3-token,.bf-app .v3-match-tile,.bf-app .v3-mic-btn,.bf-app .v3-mode-toggle{transition:none!important}.v3-progress-glow{display:none}}[data-motion=off] .v3-progress-glow,[data-motion=off] .bf-app :is(.v3-option,.v3-match-tile,.v3-token):after,[data-motion=off] .bf-session-foot:before{display:none}.bf-app .v3-activity.is-speaking .v3-say-card .v3-speaker{background:var(--bf-surface);width:48px;height:48px;color:var(--bf-learn-ink);box-shadow:inset 0 0 0 2px var(--bf-line-strong), 0 3px 0 var(--bf-line-strong)}.bf-app .v3-activity.is-speaking .v3-say-card .v3-speaker svg{width:24px;height:24px}.bf-app .v3-activity.is-speaking .v3-say-card .v3-speaker.is-playing{background:var(--bf-learn-ink);color:var(--bf-on-accent)}.bf-app .v3-say-card{background:var(--bf-learn-soft)}
