@font-face{font-family:MiSans;src:url(https://cdn.cx1888.com/fonts/MiSans%20VF.ttf) format("truetype");font-weight:100 900;font-display:swap}:root{--color-container-bg: #FFFFFF;--color-container-subtle: rgba(0, 0, 0, .03);--color-page-bg: #F5F7F9;--color-icon-active: rgba(0, 0, 0, .6);--color-icon-inactive: rgba(0, 0, 0, .2);--color-primary: #63C794;--color-primary-hover: #46B77E;--color-primary-active: #3fa772;--color-warning: #FFB020;--color-warning-pressed: #F29D00;--color-info: #3D8BFF;--color-cell-pressed: #EDEDED;--color-chart-tooltip-bg: #FFFFFF;--color-chart-highlight: #63C794;--color-chart-dot: #7EDDAD;--color-chart-shadow: rgba(0, 0, 0, 0);--color-chart-dot-shadow: rgba(230, 230, 230, .6);--color-chart-tooltip-review-bg: #FFFFFF;--color-chart-highlight-review: #FFB020;--color-chart-dot-review: #FFC54D;--color-assistant-bg: var(--color-page-bg);--color-text-base: #000000;--color-text-secondary: rgba(0, 0, 0, .4);--color-text-unselected: rgba(0, 0, 0, .2);--color-review: #FE9C07;--color-error: #F65D3A;--color-btn-disabled: rgba(0, 0, 0, .2);--color-btn-disabled-text: rgba(0, 0, 0, .3);--color-shadow-gray: rgba(230, 230, 230, .6);--color-shadow-primary: rgba(85, 182, 133, .3);--color-divider: rgba(0, 0, 0, .08);--color-card-hover: rgba(0, 0, 0, .06);font-family:MiSans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;color-scheme:light dark}[data-theme=dark]{--color-container-bg: #2E2E2E;--color-container-subtle: rgba(255, 255, 255, .06);--color-page-bg: #262626;--color-icon-active: rgba(255, 255, 255, .6);--color-icon-inactive: rgba(255, 255, 255, .3);--color-primary: #63C794;--color-primary-hover: #4DB480;--color-primary-active: #349D68;--color-warning: #FFBE3D;--color-warning-pressed: #D9900A;--color-info: #5C9DFF;--color-cell-pressed: #383838;--color-chart-tooltip-bg: #36463E;--color-chart-highlight: #8EDDB4;--color-chart-dot: #8EDDB4;--color-chart-shadow: rgba(0, 0, 0, .4);--color-chart-dot-shadow: rgba(0, 0, 0, 0);--color-chart-tooltip-review-bg: #4F4530;--color-chart-highlight-review: #FFD27A;--color-chart-dot-review: #FFD27A;--color-text-base: #FFFFFF;--color-text-secondary: rgba(255, 255, 255, .5);--color-text-unselected: rgba(255, 255, 255, .2);--color-review: #FE9C07;--color-error: #F65D3A;--color-btn-disabled: rgba(255, 255, 255, .2);--color-btn-disabled-text: rgba(255, 255, 255, .3);--color-shadow-gray: rgba(0, 0, 0, .08);--color-shadow-primary: rgba(85, 182, 133, .3);--color-divider: rgba(255, 255, 255, .06);--color-card-hover: rgba(255, 255, 255, .1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}button,input,select,textarea{font-family:inherit}html,body{height:100%;margin:0;overflow:hidden;background-color:var(--color-page-bg);color:var(--color-text-base);transition:background-color var(--transition-normal),color var(--transition-normal)}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-icon-inactive);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-icon-active)}::selection{background-color:#63c79440;color:inherit}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-secondary)}.text-error{color:var(--color-error)}.text-review{color:var(--color-review)}.bg-container{background-color:var(--color-container-bg)}.bg-subtle{background-color:var(--color-container-subtle)}.bg-page{background-color:var(--color-page-bg)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--color-page-bg);padding:var(--space-md);position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;top:-40%;right:-20%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(85,182,133,.12) 0%,transparent 70%);pointer-events:none;animation:floatBubble 8s ease-in-out infinite}.login-page:after{content:"";position:absolute;bottom:-30%;left:-15%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(85,182,133,.08) 0%,transparent 70%);pointer-events:none;animation:floatBubble 10s ease-in-out infinite reverse}@keyframes floatBubble{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-20px) scale(1.05)}}.login-card{width:100%;max-width:420px;background-color:var(--color-container-bg);border-radius:var(--radius-xl);padding:var(--space-2xl) var(--space-xl);box-shadow:0 8px 32px var(--color-shadow-gray);position:relative;z-index:1;animation:cardEnter .6s cubic-bezier(.16,1,.3,1) both}@keyframes cardEnter{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.login-header{text-align:center;margin-bottom:var(--space-xl)}.login-logo{width:72px;height:72px;border-radius:var(--radius-lg);object-fit:contain;margin:0 auto var(--space-md);display:block}.login-title{font-size:24px;font-weight:700;color:var(--color-text-base);margin-bottom:0}.login-form{display:flex;flex-direction:column;gap:var(--space-md)}.input-group{position:relative}.input-label{display:block;font-size:13px;font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-xs);transition:color var(--transition-fast)}.input-group:focus-within .input-label{color:var(--color-primary)}.input-wrapper{display:flex;align-items:center;background:var(--color-container-subtle);border:1.5px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-fast);overflow:hidden}.input-wrapper:focus-within{border-color:var(--color-primary);background:var(--color-container-bg);box-shadow:0 0 0 3px var(--color-shadow-primary)}.input-wrapper.error{border-color:var(--color-error)}.input-wrapper.error:focus-within{box-shadow:0 0 0 3px #f65d3a26}.input-icon{display:flex;align-items:center;justify-content:center;width:44px;flex-shrink:0;color:var(--color-icon-inactive);transition:color var(--transition-fast)}.input-wrapper:focus-within .input-icon{color:var(--color-primary)}.input-field{flex:1;border:none;background:transparent;outline:none;font-family:inherit;font-size:15px;color:var(--color-text-base);padding:13px 0;min-width:0}.input-field::placeholder{color:var(--color-text-unselected)}.send-code-btn{flex-shrink:0;padding:0 var(--space-md);border:none;background:transparent;color:var(--color-primary);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);align-self:center;display:flex;align-items:center;line-height:1}.send-code-btn:hover:not(:disabled){color:var(--color-primary-hover)}.send-code-btn:disabled{color:var(--color-btn-disabled);cursor:not-allowed}.send-code-btn .countdown{color:var(--color-text-secondary);font-weight:500}.input-divider{width:1px;height:20px;background:var(--color-divider);flex-shrink:0}.login-btn{width:100%;padding:14px;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#55b685,#4aa677);color:#fff;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;margin-top:var(--space-sm);transition:all var(--transition-fast);position:relative;overflow:hidden}.login-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.15));opacity:0;transition:opacity var(--transition-fast)}.login-btn:hover:not(:disabled):before{opacity:1}.login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px var(--color-shadow-primary)}.login-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px var(--color-shadow-primary)}.login-btn:disabled{background:var(--color-btn-disabled);cursor:not-allowed;transform:none;box-shadow:none}.login-btn:disabled:before{display:none}.btn-loading{display:inline-flex;align-items:center;gap:var(--space-sm)}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#f65d3a14;border-radius:var(--radius-sm);color:var(--color-error);font-size:13px;animation:shakeIn .4s ease}@keyframes shakeIn{0%{transform:translate(-8px);opacity:0}25%{transform:translate(4px)}50%{transform:translate(-2px)}75%{transform:translate(1px)}to{transform:translate(0);opacity:1}}.error-icon{flex-shrink:0;font-size:16px}.login-footer{text-align:center;margin-top:var(--space-xl)}.login-agreement{font-size:12px;color:var(--color-text-unselected);line-height:1.8}.login-agreement a{color:var(--color-primary);font-weight:500}@media(max-width:480px){.login-card{padding:var(--space-xl) var(--space-md);border-radius:var(--radius-lg)}.login-page:before,.login-page:after{display:none}}.login-back{position:fixed;top:16px;left:16px;z-index:2;display:inline-flex;align-items:center;gap:2px;padding:8px 12px 8px 6px;border:none;border-radius:10px;background:transparent;color:var(--color-text-base);font:inherit;font-size:15px;cursor:pointer}.login-back:hover{background:var(--color-container-subtle)}.topbar-tabs-scroll{scrollbar-width:none}.topbar-tabs-scroll::-webkit-scrollbar{display:none}.topbar-review-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;height:36px;padding:0 12px;border:1px solid color-mix(in srgb,var(--color-primary) 28%,transparent);border-radius:8px;background:color-mix(in srgb,var(--color-primary) 8%,var(--color-container-bg));color:var(--color-primary);font-family:inherit;font-size:14px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.topbar-review-button:hover{background:color-mix(in srgb,var(--color-primary) 14%,var(--color-container-bg));border-color:color-mix(in srgb,var(--color-primary) 48%,transparent)}.topbar-review-button:active{background:color-mix(in srgb,var(--color-primary) 20%,var(--color-container-bg))}.topbar-review-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.topbar-ai-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:36px;padding:0;border:0;border-radius:4px;background:transparent;color:#0003;cursor:pointer;transition:color .15s ease}@media(prefers-color-scheme:dark){.topbar-ai-toggle{color:#fff3}}.topbar-ai-toggle:hover,.topbar-ai-toggle[aria-pressed=true]{color:var(--color-primary)}.topbar-ai-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}@media(prefers-reduced-motion:reduce){.topbar-review-button,.topbar-ai-toggle{transition:none}}.word-panel{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.word-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);display:flex;flex-direction:column;overflow:hidden;padding:24px 20px 0 24px;transition:background-color .2s ease}.word-book-cover{width:36px;height:48px;object-fit:cover;border-radius:4px;flex-shrink:0}@media(max-width:760px){.word-header{flex-wrap:wrap;gap:12px}.word-header-left{flex-wrap:wrap}}.word-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.word-header-left{display:flex;align-items:center;gap:var(--space-sm)}.word-header-left h2{font-size:18px;font-weight:600;color:var(--color-text-base);margin:0}.word-count{font-size:13px;font-weight:500;color:var(--color-text-secondary);background-color:var(--color-container-subtle);padding:2px 10px;border-radius:var(--radius-full)}.word-book-selector{position:relative}.word-book-btn{display:flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;white-space:nowrap}.word-book-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.word-book-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background-color:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;z-index:50;padding:4px;animation:bookDropdownFadeIn .15s ease}@keyframes bookDropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.word-book-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:none;border-radius:6px;background:transparent;color:var(--color-text-base);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;text-align:left}.word-book-option:hover{background-color:var(--color-container-subtle)}.word-book-option.active{color:var(--color-primary);background-color:#55b68514}.word-book-option svg{color:var(--color-primary);flex-shrink:0}.word-book-divider{height:1px;background-color:var(--color-divider);margin:4px 8px}.word-book-option.ime-daily{gap:8px;justify-content:flex-start}.word-book-option.ime-daily svg:first-child{color:#f5a623;flex-shrink:0}.word-book-option.ime-daily.active{color:#f5a623;background-color:#f5a62314}.word-book-option.ime-daily.active svg{color:#f5a623}.word-content-wrapper{flex:1;overflow-y:auto;padding:16px 4px 24px 0;min-height:0;display:flex;flex-direction:column;gap:24px}.word-unit-section{display:flex;flex-direction:column;gap:12px}.word-unit-title{font-size:15px;font-weight:600;color:var(--color-text-secondary);margin:0;padding-left:4px}.word-grid{display:flex;flex-direction:column;gap:8px}.word-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background-color:var(--color-container-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.word-card:hover{background-color:var(--color-card-hover)}.word-card.locked{cursor:not-allowed}.word-card.locked:hover{background-color:var(--color-container-subtle)}.word-card-content{flex:1;min-width:0}.word-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.word-card-title{font-size:14px;font-weight:600;color:var(--color-text-base);transition:color .2s ease}.word-card-count{font-size:12px;color:var(--color-text-secondary);opacity:.8}.word-card-hook{font-size:13px;line-height:1.5;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.word-card-arrow{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);opacity:0;transition:all .2s ease;flex-shrink:0}.word-card:hover .word-card-arrow{opacity:1;color:var(--color-primary)}.word-card:hover .word-card-title{color:var(--color-primary)}.word-card.locked:hover .word-card-arrow{opacity:0}.word-card.locked:hover .word-card-title{color:var(--color-text-base)}.stage-locked-overlay{position:absolute;inset:0;background:#00000059;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:#ffffffb3;z-index:2;pointer-events:none}.stage-completed-badge{font-size:11px;font-weight:600;color:var(--color-primary);background:#55b6851f;padding:2px 8px;border-radius:10px;white-space:nowrap}.stage-current-badge{font-size:11px;font-weight:600;color:#f5a623;background:#f5a6231f;padding:2px 8px;border-radius:10px;white-space:nowrap}.stage-progress{display:flex;align-items:center;gap:8px;margin-top:6px}.stage-progress-bar{flex:1;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.stage-progress-fill{display:block;height:100%;background:linear-gradient(90deg,#f5a623,#f7c948);border-radius:2px;transition:width .5s ease}.stage-progress-text{font-size:11px;color:var(--color-text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.7}.word-card-wrapper{display:flex;flex-direction:column}.word-card-wrapper .word-card:first-child:not(:last-child){border-radius:var(--radius-md) var(--radius-md) 0 0}.word-card-wrapper .word-card:only-child{border-radius:var(--radius-md)}.podcast-player-bar{display:flex;align-items:center;gap:10px;padding:8px 14px;margin-top:-2px;background-color:var(--color-container-subtle);border-radius:0 0 var(--radius-md) var(--radius-md);border-top:1px solid var(--color-divider);transition:all .2s ease}.podcast-play-btn{width:30px;height:30px;min-width:30px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:var(--color-text-base);cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0}.podcast-play-btn:hover{color:var(--color-primary);background-color:#55b6851a}.podcast-play-btn:active{transform:scale(.92)}.podcast-track-info{display:flex;align-items:center;gap:6px;min-width:0;flex-shrink:0}.podcast-track-word{font-size:12px;font-weight:600;color:var(--color-text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.podcast-track-pos{font-size:11px;color:var(--color-text-secondary);opacity:.7;white-space:nowrap}.podcast-progress-bar{flex:1;height:4px;background-color:var(--color-divider);border-radius:2px;cursor:pointer;position:relative;overflow:hidden;min-width:40px;transition:height .15s ease}.podcast-progress-bar:hover{height:6px}.podcast-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#6dd5a0);border-radius:2px;transition:width .1s linear}.podcast-speed-btn{display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;padding:2px 4px;flex-shrink:0;font-size:11px;font-weight:700;font-family:inherit;white-space:nowrap;min-width:28px;line-height:1}.podcast-speed-btn:hover{color:var(--color-primary);background-color:#55b6851a}.podcast-mode-btn{width:28px;height:28px;min-width:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0;opacity:.7}.podcast-mode-btn:hover{background-color:var(--color-container-subtle);color:var(--color-text-base);opacity:1}.podcast-mode-btn.active{color:var(--color-primary);opacity:1}.word-loading{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 0}.word-loading svg{animation:word-spin 1s linear infinite;color:var(--color-primary)}@keyframes word-spin{to{transform:rotate(360deg)}}.word-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:14px}.word-empty-icon{font-size:48px;margin-bottom:var(--space-sm)}.mode-modal-overlay{position:fixed;inset:0;background-color:#00000059;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.mode-modal{background-color:var(--color-container-bg);border-radius:var(--radius-lg);padding:32px 36px;min-width:480px;box-shadow:0 16px 48px #0000002e;animation:modalSlideUp .25s cubic-bezier(.16,1,.3,1);text-align:center}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.mode-modal-title{font-size:18px;font-weight:700;color:var(--color-text-base);margin-bottom:6px}.mode-modal-subtitle{font-size:13px;color:var(--color-text-secondary);margin-bottom:28px}.mode-modal-buttons{display:flex;flex-wrap:wrap;gap:14px}.mode-modal-btn{flex:1 1 auto;min-width:80px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;border:2px solid var(--color-divider);border-radius:var(--radius-md);background:transparent;color:var(--color-text-base);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s ease}.mode-modal-btn:hover{border-color:var(--color-primary);background-color:#55b6850f;color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 16px var(--color-shadow-primary)}.mode-modal-btn:active{transform:translateY(0)}.mode-modal-btn svg{opacity:.7;transition:opacity .2s ease}.mode-modal-btn:hover svg{opacity:1}.mode-modal-btn.pk:hover{border-color:#f43f5e;background-color:#f43f5e0f;color:#f43f5e;transform:translateY(-2px);box-shadow:0 4px 16px #f43f5e2e}.mode-modal-btn.pk svg{color:#f43f5e;opacity:.8}.mode-modal-btn.pk:hover svg{opacity:1}.mode-modal-btn.practice:hover{border-color:#6366f1;background-color:#6366f10f;color:#6366f1;transform:translateY(-2px);box-shadow:0 4px 16px #6366f12e}.mode-modal-btn.practice svg{color:#6366f1;opacity:.8}.mode-modal-btn.practice:hover svg{opacity:1}.mode-modal-btn.targeted:not(.locked):hover{border-color:#e8a317;background-color:#e8a3170f;color:#e8a317;transform:translateY(-2px);box-shadow:0 4px 16px #e8a3172e}.mode-modal-btn.targeted.locked{opacity:.6;cursor:not-allowed;border-color:#ffffff0f;flex-direction:column;gap:6px;padding:14px 12px}.mode-modal-btn.targeted.locked:hover{transform:none;box-shadow:none;border-color:#ffffff14;background-color:#ffffff04}.mode-modal-btn.targeted.locked svg{opacity:.4}.targeted-progress{display:flex;align-items:center;gap:8px;width:100%;margin-top:2px}.targeted-progress-bar{flex:1;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.targeted-progress-fill{display:block;height:100%;background:linear-gradient(90deg,#e8a317,#f0c040);border-radius:2px;transition:width .5s ease}.targeted-progress-text{font-size:11px;color:#ffffff59;white-space:nowrap;font-variant-numeric:tabular-nums}.mode-modal-btn.favorite:not(.locked):hover{border-color:#f5a623;background-color:#f5a6230f;color:#f5a623;transform:translateY(-2px);box-shadow:0 4px 16px #f5a6232e}.mode-modal-btn.favorite:not(.locked) svg{color:#f5a623}.mode-modal-btn.favorite.locked{opacity:.6;cursor:not-allowed;border-color:#ffffff0f;flex-direction:column;gap:6px;padding:14px 12px}.mode-modal-btn.favorite.locked:hover{transform:none;box-shadow:none;border-color:#ffffff14;background-color:#ffffff04}.mode-modal-btn.favorite.locked svg{opacity:.4}.favorite-count-badge{font-size:11px;font-weight:600;color:#f5a623;background:#f5a6231f;padding:2px 8px;border-radius:10px;margin-top:2px}.favorite-empty-hint{font-size:10px;font-weight:400;color:#ffffff4d;margin-top:2px;line-height:1.3}.fav-sub-options{display:flex;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-divider);animation:favSubSlideDown .2s cubic-bezier(.16,1,.3,1)}@keyframes favSubSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.fav-sub-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 12px;border:1.5px solid var(--color-divider);border-radius:var(--radius-md);background:transparent;color:var(--color-text-base);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s ease}.fav-sub-btn:hover:not(.locked){transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.fav-sub-btn.full:hover{border-color:#f5a623;background-color:#f5a6230f;color:#f5a623;box-shadow:0 4px 12px #f5a62326}.fav-sub-btn.full svg{color:#f5a623}.fav-sub-btn.weak:not(.locked):hover{border-color:#e74c3c;background-color:#e74c3c0f;color:#e74c3c;box-shadow:0 4px 12px #e74c3c26}.fav-sub-btn.weak:not(.locked) svg{color:#e74c3c}.fav-sub-btn.locked{opacity:.5;cursor:not-allowed}.fav-sub-btn.locked:hover{transform:none;box-shadow:none}.fav-sub-btn.locked svg{opacity:.4}.fav-sub-desc{font-size:10px;font-weight:400;color:var(--color-text-secondary);opacity:.6;line-height:1.3}.fav-sub-count{font-size:10px;font-weight:600;color:#e74c3c;background:#e74c3c1a;padding:2px 8px;border-radius:10px}.synonym-mode-section{width:100%;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-divider);display:flex}.mode-modal-btn.synonym{width:100%;flex-direction:row;gap:10px;padding:14px 20px;justify-content:center}.mode-modal-btn.synonym:not(.locked):hover{border-color:#14b8a6;background-color:#14b8a60f;color:#14b8a6;transform:translateY(-2px);box-shadow:0 4px 16px #14b8a62e}.mode-modal-btn.synonym:not(.locked) svg{color:#14b8a6;opacity:.8}.mode-modal-btn.synonym:not(.locked):hover svg{opacity:1}.mode-modal-btn.synonym.locked{opacity:.6;cursor:not-allowed;border-color:#ffffff0f;flex-direction:column;gap:6px;padding:14px 12px}.mode-modal-btn.synonym.locked:hover{transform:none;box-shadow:none;border-color:#ffffff14;background-color:#ffffff04}.mode-modal-btn.synonym.locked svg{opacity:.4}.synonym-locked-hint{font-size:10px;font-weight:400;color:#ffffff4d;margin-top:2px;line-height:1.3}.speaker-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-primary)}.speaker-icon.playing,.speaker-icon.loading{color:var(--color-primary)}.speaker-loading-spinner{animation:speakerSpin 1s linear infinite}@keyframes speakerSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.speaker-svg{flex-shrink:0;overflow:visible}.speaker-body{fill:currentColor}.sound-wave{fill:currentColor;transition:opacity .4s ease-out,transform .4s ease-out;transform-origin:19px 14px;transform-box:fill-box}.speaker-svg.playing .wave-small{animation:speakerWaveSmall .8s cubic-bezier(.4,0,.2,1) infinite}.speaker-svg.playing .wave-large{animation:speakerWaveLarge .8s cubic-bezier(.4,0,.2,1) infinite;animation-delay:.15s}@keyframes speakerWaveSmall{0%{opacity:0;transform:translate(-3px) scale(.8)}30%{opacity:1;transform:translate(0) scale(1)}60%{opacity:.8;transform:translate(1px) scale(1.02)}to{opacity:0;transform:translate(2px) scale(.95)}}@keyframes speakerWaveLarge{0%{opacity:0;transform:translate(-4px) scale(.85)}30%{opacity:1;transform:translate(0) scale(1)}60%{opacity:.7;transform:translate(2px) scale(1.03)}to{opacity:0;transform:translate(3px) scale(.9)}}.phonetic-panel{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.phonetic-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);display:flex;flex-direction:column;overflow:hidden;padding:24px 20px 0 24px;transition:background-color .2s ease}.phonetic-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.phonetic-header-left{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.phonetic-header-left h2{font-size:18px;font-weight:600;color:var(--color-text-base);margin:0;white-space:nowrap}.phonetic-header-right{display:flex;align-items:center;gap:8px}.phonetic-tabs{display:flex;align-items:center;gap:2px;background-color:var(--color-container-subtle);border-radius:var(--radius-sm);padding:3px}.phonetic-tab{display:flex;align-items:center;gap:5px;padding:5px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;background:transparent;color:var(--color-text-secondary);transition:all .25s ease;white-space:nowrap}.phonetic-tab.active{background-color:var(--color-primary);color:#fff;box-shadow:0 1px 3px #55b6854d}.phonetic-tab:not(.active):hover{color:var(--color-text-base)}.phonetic-tab-count{font-size:11px;font-weight:600;padding:1px 7px;border-radius:var(--radius-full);background-color:#fff3}.phonetic-tab:not(.active) .phonetic-tab-count{background-color:var(--color-container-subtle);color:var(--color-text-secondary)}.phonetic-content-wrapper{flex:1;overflow-y:auto;padding:12px 4px 24px 0;min-height:0;display:flex;flex-direction:column;gap:24px}.phonetic-category-section{display:flex;flex-direction:column;gap:8px}.phonetic-category-title{font-size:14px;font-weight:600;color:var(--color-text-secondary);margin:0;padding-left:4px}.phonetic-table-wrap{border-radius:var(--radius-md);border:1px solid var(--color-divider);overflow:hidden}.phonetic-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto}.phonetic-table thead{background-color:var(--color-container-subtle)}.phonetic-table th{padding:8px 12px;text-align:left;font-size:12px;font-weight:600;color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider);white-space:nowrap}.phonetic-table td{padding:8px 12px;border-bottom:1px solid var(--color-divider);border-right:1px solid var(--color-divider);color:var(--color-text-base);vertical-align:middle}.phonetic-table th{border-right:1px solid var(--color-divider)}.phonetic-table th:last-child,.phonetic-table td:last-child{border-right:none}.phonetic-table tbody tr:last-child td{border-bottom:none}.phonetic-tr{transition:background-color .15s ease}.phonetic-tr:hover{background-color:var(--color-card-hover)}.phonetic-tr.playing{background-color:#55b6850f}.phonetic-th-phonogram{width:90px}.phonetic-th-ipa{width:160px}.phonetic-th-note{width:110px}.phonetic-th-play{width:44px}.phonetic-inline-symbol{font-size:16px;font-weight:700;color:var(--color-text-base);font-family:JetBrains Mono,monospace;letter-spacing:.5px}.phonetic-tr.playing .phonetic-inline-symbol{color:var(--color-primary)}.phonetic-td-ipa{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--color-text-secondary);font-size:13px}.phonetic-td-examples{font-size:12px;color:var(--color-text-secondary)}.phonetic-note-badge{font-size:10px;padding:2px 7px;border-radius:var(--radius-full);background-color:#55b68514;color:var(--color-primary);font-weight:500;white-space:nowrap}.phonetic-play-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.phonetic-play-btn:hover{background-color:var(--color-container-subtle);color:var(--color-text-base)}.phonetic-play-btn.playing{color:var(--color-primary)}.phonetic-play-icon{width:18px;height:18px;opacity:.5;transition:opacity .15s ease}.phonetic-play-btn:hover .phonetic-play-icon{opacity:.9}.phonetic-th-ipa-rev{width:100px}.phonetic-th-phonograms-rev{width:auto}.phonetic-td-ipa-rev{font-size:16px;font-weight:600;color:var(--color-text-base);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;white-space:nowrap}.phonetic-td-phonograms-rev{padding:6px 12px}.phonetic-rev-chips{display:flex;flex-wrap:nowrap;gap:6px}.phonetic-rev-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-sm);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);font-size:13px;font-weight:600;color:var(--color-text-base);font-family:JetBrains Mono,monospace;white-space:nowrap}.phonetic-td-examples-rev{font-size:12px;color:var(--color-text-secondary)}.phonetic-th-desc{width:200px}.phonetic-td-desc{font-size:12px;color:var(--color-text-secondary);line-height:1.5}.phonetic-th-rule-num{width:60px}.phonetic-th-rule-content{min-width:0}.phonetic-th-rule-examples{width:200px}.phonetic-td-rule-num{text-align:center}.phonetic-rule-num-badge{display:inline-block;font-size:11px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-active));padding:2px 8px;border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;letter-spacing:.5px}.phonetic-td-rule-content{font-size:13px;font-weight:500;color:var(--color-text-base);line-height:1.6}.phonetic-td-rule-examples{font-size:12px;color:var(--color-text-secondary)}.phonetic-rule-example-text{font-family:JetBrains Mono,monospace;font-size:12px}.sound-wave{display:flex;align-items:flex-end;gap:2px;height:16px}.sound-wave-bar{width:2.5px;border-radius:1px;background-color:var(--color-primary);animation:soundWave .8s ease-in-out infinite}.sound-wave-bar:nth-child(1){height:6px;animation-delay:0s}.sound-wave-bar:nth-child(2){height:12px;animation-delay:.15s}.sound-wave-bar:nth-child(3){height:8px;animation-delay:.3s}.sound-wave-bar:nth-child(4){height:14px;animation-delay:.1s}.sound-wave-bar:nth-child(5){height:6px;animation-delay:.25s}@keyframes soundWave{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.phonetic-loading{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 0}.phonetic-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:14px}.phonetic-empty-icon{font-size:48px;margin-bottom:var(--space-sm)}.phonetic-loading{display:flex;align-items:center;justify-content:center;padding:60px 0;color:var(--color-text-secondary);font-size:15px}.phonetic-td-play{width:32px;padding:4px 4px 4px 8px!important;text-align:center;border-right:1px solid var(--color-divider)}.phonetic-th-play{width:32px;padding:4px 4px 4px 8px!important;border-right:1px solid var(--color-divider)}.phonetic-speaker{opacity:.6;transition:opacity .15s ease}.phonetic-speaker:hover{opacity:1}.grammar-panel{width:100%;height:100%;display:flex;flex-direction:column;min-height:0;--gm-edge-color: rgba(0, 0, 0, .18) }[data-theme=dark] .grammar-panel{--gm-edge-color: rgba(255, 255, 255, .22) }.gm-loading{flex:1;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--color-text-secondary);font-size:14px}.gm-spin{width:24px;height:24px;border-radius:50%;border:3px solid var(--color-divider);border-top-color:var(--color-primary);animation:sp .8s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}.gm-canvas-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background:var(--color-container-bg);position:relative;overflow:hidden;display:flex;flex-direction:column;touch-action:none;-webkit-touch-callout:none}.gm-canvas{flex:1;cursor:default;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative;overscroll-behavior:none;background-image:radial-gradient(circle,var(--color-divider) 1px,transparent 1px);background-size:24px 24px}.gm-canvas.gm-sp{cursor:grab}.gm-canvas.gm-grab{cursor:grabbing}.gm-world{position:absolute;top:0;left:0;transform-origin:0 0;will-change:transform}.gm-svg{position:absolute;top:0;left:0;width:20000px;height:10000px;pointer-events:none}.gm-toolbar{position:absolute;bottom:50px;left:16px;z-index:10;display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:10px;background:var(--color-container-bg);border:1px solid var(--color-divider);box-shadow:0 2px 12px #00000014;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.gm-tb{width:32px;height:32px;border-radius:8px;border:none;background:0;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.gm-tb:hover{background:var(--color-container-subtle);color:var(--color-text-base)}.gm-tb:disabled{opacity:.4;cursor:default;background:0}.gm-sc{font-size:11px;font-weight:600;color:var(--color-text-secondary);min-width:36px;text-align:center;font-variant-numeric:tabular-nums}.gm-tdiv{width:1px;height:18px;background:var(--color-divider);margin:0 2px}.gm-node{position:absolute;border-radius:12px;padding:8px 14px;background:var(--color-container-subtle);border:1.5px solid var(--color-divider);cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:2px;box-shadow:0 1px 4px #0000000a;overflow:hidden;contain:layout style paint;will-change:transform}.gm-node:hover{border-color:var(--nc3);box-shadow:0 4px 20px var(--nc1)}.gm-sel{border-color:var(--nc)!important;box-shadow:0 4px 24px var(--nc3)!important}.gm-end{box-shadow:0 4px 24px var(--nc3)}.gm-dim{opacity:.18}.gm-lit{z-index:2}.gm-step{border-width:2px;padding-left:36px}.gm-step-idx{position:absolute;left:0;top:0;bottom:0;width:28px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:800;border-radius:10px 0 0 10px}.gm-mount{border-style:dashed;border-width:1px;font-size:12px}.gm-mount:hover{border-style:solid}.gm-lbl{font-size:13px;font-weight:600;color:var(--color-text-base);line-height:1.3;white-space:nowrap;transition:color .25s}.gm-sub{font-size:11px;color:var(--color-text-secondary);white-space:nowrap;transition:color .25s}.gm-acc{position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;transition:opacity .25s}.gm-step .gm-acc{display:none}.gm-badge{position:absolute;top:50%;right:6px;transform:translateY(-50%);font-size:10px;font-weight:700;padding:1px 5px;border-radius:6px;line-height:1.4;font-variant-numeric:tabular-nums}.gm-detail{position:absolute;top:16px;right:16px;width:340px;max-height:calc(100% - 64px);overflow-y:auto;background:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:14px;box-shadow:0 8px 40px #0000001f;z-index:20;animation:sdin .3s cubic-bezier(.16,1,.3,1) both}.gm-detail-out{animation:sdout .25s cubic-bezier(.4,0,.7,.2) both}@keyframes sdin{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes sdout{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(24px)}}.gm-detail-hd{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--color-divider)}.gm-detail-bar{width:4px;height:20px;border-radius:2px;flex-shrink:0}.gm-detail-tt{font-size:14px;font-weight:700;color:var(--color-text-base);flex:1;line-height:1.4}.gm-detail-x{width:24px;height:24px;border-radius:6px;border:none;background:0;color:var(--color-text-secondary);cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center;transition:all .15s}.gm-detail-x:hover{background:var(--color-container-subtle);color:var(--color-text-base)}.gm-detail-desc{padding:12px 16px 0;font-size:13px;color:var(--color-text-secondary);line-height:1.6}.gm-detail-meta{padding:8px 16px;display:flex;gap:6px;flex-wrap:wrap}.gm-tag{font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--color-container-subtle);color:var(--color-text-secondary)}.gm-detail-sec{padding:10px 16px;border-top:1px solid var(--color-divider)}.gm-sec-tt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:8px}.gm-detail-sec p{margin:0;font-size:12px;line-height:1.6;color:var(--color-text-secondary)}.gm-detail-sec ul{margin:0;padding:0 0 0 16px;list-style:disc}.gm-detail-sec li{font-size:12px;line-height:1.7;color:var(--color-text-base)}.gm-pat{padding:8px 10px;border-radius:8px;background:var(--color-container-subtle);margin-bottom:6px}.gm-pat-n{font-size:12px;font-weight:600;color:var(--color-text-base);margin-bottom:4px}.gm-pat-ex{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.gm-pat-ex span{font-size:11px;padding:1px 6px;border-radius:4px;background:var(--color-container-bg);color:var(--color-text-secondary)}.gm-pat-zh{font-size:12px;color:var(--color-text-secondary);font-style:italic;margin-bottom:2px}.gm-pat-act{font-size:11px;color:var(--color-primary);font-weight:500}.gm-pat-rule{margin-top:8px;padding:8px 10px;border-radius:8px;background:#55b68514;font-size:12px;color:var(--color-text-base);line-height:1.5}.gm-hint{position:absolute;bottom:14px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:16px;padding:6px 16px;border-radius:8px;background:var(--color-container-bg);border:1px solid var(--color-divider);font-size:11px;color:var(--color-text-secondary);box-shadow:0 2px 12px #0000000f;opacity:.7;pointer-events:none}.gm-hc{font-weight:600;color:var(--color-primary)}@keyframes na{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.gm-search{position:absolute;top:16px;left:16px;z-index:15;display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;background:var(--color-container-bg);border:1px solid var(--color-divider);box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.gm-search-input{width:180px;height:28px;border:1px solid var(--color-divider);border-radius:6px;padding:0 8px;font-size:12px;color:var(--color-text-base);background:var(--color-container-subtle);outline:none;transition:border-color .15s}.gm-search-input:focus{border-color:var(--color-primary)}.gm-search-input::placeholder{color:var(--color-text-secondary);opacity:.6}.gm-search-info{font-size:11px;color:var(--color-text-secondary);min-width:50px;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.gm-search-nav{width:26px;height:26px;border-radius:6px;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;font-size:14px}.gm-search-nav:hover{background:var(--color-container-subtle);color:var(--color-text-base)}.gm-search-nav:disabled{opacity:.3;cursor:default}.gm-search-match{outline:2.5px solid var(--color-primary)!important;outline-offset:2px;z-index:3}.gm-search-current{outline-color:#e86b6b!important;outline-width:3px!important;box-shadow:0 0 16px #e86b6b59!important;z-index:4}.gm-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:10px 24px;border-radius:10px;background:#000000bf;color:#fff;font-size:13px;font-weight:600;z-index:50;pointer-events:none;animation:toast-in .3s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.gm-guide-active{border-color:var(--nc)!important;box-shadow:0 0 0 3px var(--nc2),0 4px 24px var(--nc3)!important;z-index:5}.gm-guide{position:absolute;top:16px;right:16px;width:380px;max-height:calc(100% - 64px);overflow-y:auto;background:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:14px;box-shadow:0 8px 40px #0000001f;z-index:25;animation:sdin .3s cubic-bezier(.16,1,.3,1) both}.gm-guide-out{animation:sdout .25s cubic-bezier(.4,0,.7,.2) both}.gm-guide::-webkit-scrollbar{width:4px}.gm-guide::-webkit-scrollbar-thumb{background:var(--color-divider);border-radius:4px}.gm-guide-hd{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--color-divider);position:sticky;top:0;background:var(--color-container-bg);z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.gm-guide-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.gm-guide-title{flex:1;min-width:0}.gm-guide-tt{font-size:14px;font-weight:700;color:var(--color-text-base);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gm-guide-st{font-size:11px;color:var(--color-text-secondary);font-weight:500}.gm-guide-summary{padding:14px 16px;font-size:13px;line-height:1.8;color:var(--color-text-base);border-bottom:1px solid var(--color-divider)}.gm-guide-sec{padding:12px 16px;border-top:1px solid var(--color-divider)}.gm-guide-sec:first-of-type{border-top:none}.gm-guide-branch{padding:10px 12px;border-radius:10px;background:var(--color-container-subtle);margin-bottom:8px;border-left:3px solid var(--gc, var(--color-primary));transition:all .2s}.gm-guide-branch:hover{box-shadow:0 2px 12px #0000000f}.gm-guide-bname{font-size:13px;font-weight:600;color:var(--color-text-base);display:flex;align-items:center;gap:8px;margin-bottom:6px}.gm-guide-bidx{width:20px;height:20px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.gm-guide-signal{font-size:12px;font-weight:600;color:var(--color-primary);margin-bottom:4px;padding:3px 8px;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 8%,transparent);display:inline-block}.gm-guide-when{font-size:12px;color:var(--color-text-secondary);line-height:1.6;margin-bottom:6px}.gm-guide-mini{padding:6px 10px;border-radius:8px;background:var(--color-container-bg);border:1px solid var(--color-divider)}.gm-guide-mini-cn{font-size:12px;color:var(--color-text-secondary);margin-bottom:2px}.gm-guide-mini-en{font-size:12px;font-weight:600;color:var(--color-text-base);font-style:italic}.gm-guide-pitfall{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:12px}.gm-guide-wrong{color:var(--color-error);text-decoration:line-through}.gm-guide-right{color:var(--color-primary)}.gm-guide-contrast{padding:10px 12px;border-radius:10px;background:var(--color-container-subtle);margin-bottom:8px}.gm-guide-scenario{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:4px}.gm-guide-cn{font-size:13px;color:var(--color-text-base);font-weight:500;margin-bottom:8px;line-height:1.5}.gm-guide-cbranch{padding:6px 10px;border-radius:8px;background:var(--color-container-bg);margin-bottom:4px;border:1px solid var(--color-divider)}.gm-guide-cname{font-size:11px;font-weight:700;display:inline-block;margin-bottom:2px}.gm-guide-cen{font-size:12px;color:var(--color-text-base);font-style:italic;line-height:1.5;margin-bottom:2px}.gm-guide-cnote{font-size:11px;color:var(--color-text-secondary);line-height:1.4}.gm-badge{border:0;cursor:pointer;font:inherit}.gm-text-button{width:auto;padding:0 7px;white-space:nowrap;font-size:12px}.gm-search{max-width:calc(100% - 24px);flex-wrap:wrap}.gm-lecture-detail{overscroll-behavior:contain}.gm-path-line{fill:none;stroke:var(--color-primary);stroke-width:3;stroke-dasharray:8 6;stroke-linecap:round;animation:gmPathDash 1.2s linear infinite;opacity:.85}@keyframes gmPathDash{to{stroke-dashoffset:-28}}.gm-node.gm-path{padding-right:40px;border-color:var(--nc)!important;box-shadow:0 0 0 1px var(--nc),0 6px 16px #0000001f;z-index:3}.gm-node.gm-dim{opacity:.45}.gm-path-order{position:absolute;top:50%;right:10px;transform:translateY(-50%);min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--nc);color:#fff;font-size:12px;font-weight:700;line-height:22px;text-align:center;box-sizing:border-box}.gm-path-panel{position:absolute;top:60px;right:16px;bottom:16px;z-index:6;width:320px;overflow-y:auto;padding:16px;border-radius:16px;background:var(--color-container-bg);box-shadow:0 10px 30px #0000001f}.gm-path-title{font-size:15px;font-weight:600}.gm-path-summary{margin-top:10px;padding:10px;border-radius:8px;background:var(--color-container-subtle);font-size:13px;line-height:1.65;color:var(--color-text-secondary)}.gm-path-item{display:flex;gap:10px;width:100%;margin-top:14px;padding:0;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.gm-path-dot{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--pc);color:#fff;font-size:12px;font-weight:700}.gm-path-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.gm-path-name{font-size:14px;font-weight:600;line-height:1.45}.gm-path-item:hover .gm-path-name{color:var(--pc)}.gm-path-sub{font-size:12px;color:var(--pc)}.gm-path-note{font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.gm-path-open{align-self:flex-start;font-size:12px;font-weight:600;color:var(--color-primary)}.gm-topbar{flex:none;display:flex;align-items:center;gap:4px;height:56px;padding:0 12px 0 4px}.gm-back{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;border-radius:50%;background:none;color:var(--color-text-base);cursor:pointer}.gm-back:hover{background:var(--color-container-subtle)}.gm-search.inline{position:static;min-width:0;overflow-x:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;scrollbar-width:none}.gm-search.inline::-webkit-scrollbar{display:none}.grammar-panel.has-topbar .gm-canvas-container{margin-top:0}.gm-path-panel{background:var(--color-page-bg);border:1px solid var(--color-divider)}[data-theme=dark] .gm-path-panel{background:#3a3a3a;border-color:#ffffff14;box-shadow:0 12px 32px #00000073}[data-theme=dark] .gm-path-panel .gm-path-summary{background:#ffffff0f}.grammar-panel.has-topbar .gm-path-panel{top:16px}.gm-lecture{--bg:var(--color-container-bg,#fff);--raise:var(--color-container-subtle,#f5f7f9);--ink:var(--color-text-base,#222);--ink-2:var(--color-text-secondary,#555);--muted:var(--color-text-secondary,#777);--faint:var(--color-divider,#ccc);--rule:var(--color-divider,#ddd);--rule-strong:var(--color-text-secondary,#888);--accent:#63c794;--accent-ink:#299061;--accent-wash:#63c79433;--error:#e65b46;--info:#3d8bff;--warning:#cc8700;--gutter:16px;--sans:system-ui,sans-serif;--serif-zh:system-ui,sans-serif;--serif-en:Georgia,serif;--mono:ui-monospace,monospace;color:var(--ink-2);font:15px/1.8 var(--sans);overflow-wrap:anywhere}.gm-lecture *{box-sizing:border-box}.gm-lecture button{font:inherit;color:inherit}.gm-lecture :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.gm-lecture [hidden]{display:none!important}.gm-lecture .bar{position:sticky;top:0;z-index:10;background:var(--bar);backdrop-filter:saturate(1.6) blur(16px);-webkit-backdrop-filter:saturate(1.6) blur(16px);padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid var(--rule)}.gm-lecture .bar-in{max-width:600px;margin:0 auto;height:48px;padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:12px}.gm-lecture .bar-t{font-size:13px;color:var(--muted);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gm-lecture .bar-t b{font:500 13px var(--mono);color:var(--accent-ink);margin-right:8px}.gm-lecture .bar-btn{flex:none;background:none;border:0;padding:8px 0 8px 12px;font-size:14px;color:var(--ink);cursor:pointer;display:flex;align-items:center;gap:6px}.gm-lecture .bar-btn svg{width:16px;height:16px}.gm-lecture .tabs{max-width:600px;margin:0 auto;padding-inline:var(--gutter);display:flex;gap:22px;overflow-x:auto;scrollbar-width:none}.gm-lecture .tabs::-webkit-scrollbar{display:none}.gm-lecture .tabs button{flex:none;background:none;border:0;padding:4px 0 9px;font-size:14px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}.gm-lecture .tabs button.on{color:var(--ink);border-bottom-color:var(--accent)}.gm-lecture article{max-width:600px;margin:0 auto;padding-inline:var(--gutter);padding-block:28px 24px}.gm-lecture .eyebrow{font-size:13px;color:var(--muted)}.gm-lecture h1{font-family:var(--serif-zh);font-weight:600;font-size:27px;line-height:1.38;color:var(--ink);margin:10px 0 14px;text-wrap:balance;letter-spacing:.01em}.gm-lecture .lede{font-size:17px;line-height:1.75;color:var(--ink-2);margin:0;text-wrap:pretty}.gm-lecture .meta{margin-top:14px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap}.gm-lecture .meta span+span:before{content:"·";margin:0 10px;color:var(--faint)}.gm-lecture .meta .core{color:var(--error)}.gm-lecture .overview{margin-top:28px;padding-top:22px;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:22px}.gm-lecture .label{font-size:12px;color:var(--muted);letter-spacing:.12em;margin-bottom:8px}.gm-lecture .goals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.gm-lecture .goals li{display:grid;grid-template-columns:20px 1fr;font-size:15px}.gm-lecture .goals li:before{content:"—";color:var(--faint)}.gm-lecture dl.terms{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px 20px}.gm-lecture dl.terms dt{color:var(--ink);font-size:15px}.gm-lecture dl.terms dd{margin:0;font:italic 15px/1.4 var(--serif-en);color:var(--muted)}.gm-lecture .sec{margin-top:52px;scroll-margin-top:calc(100px + env(safe-area-inset-top,0px))}.gm-lecture .sec>h2{display:flex;align-items:baseline;justify-content:space-between;gap:14px;font-family:var(--serif-zh);font-weight:600;font-size:21px;color:var(--ink);margin:0 0 18px}.gm-lecture .sec>h2 small{font:400 12px var(--sans);color:var(--muted);letter-spacing:.04em}.gm-lecture .sub+.sub{margin-top:34px}.gm-lecture h3{font-size:15px;font-weight:600;color:var(--ink);margin:0 0 12px;letter-spacing:.02em}.gm-lecture p.body{margin:0;font-size:16px;line-height:1.95;text-wrap:pretty}.gm-lecture strong{color:var(--ink);font-weight:600}.gm-lecture mark.hl{background:none;color:inherit;box-shadow:inset 0 -.42em 0 var(--accent-wash);padding:0 1px}.gm-lecture s.wrong{color:var(--error)}.gm-lecture .en{font-family:var(--serif-en);font-size:18px;color:var(--ink);line-height:1.55}.gm-lecture .zh{color:var(--muted);font-size:14px;line-height:1.7}.gm-lecture .note{color:var(--muted);font-size:13px;line-height:1.7}.gm-lecture .ok-mark,.gm-lecture .bad-mark{font-family:var(--sans);font-size:12px;margin-right:8px}.gm-lecture .ok-mark{color:var(--accent)}.gm-lecture .bad-mark{color:var(--error)}.gm-lecture .bad-text{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--error);text-decoration-thickness:1px}.gm-lecture .tw{overflow-x:auto;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none}.gm-lecture .tw::-webkit-scrollbar{display:none}.gm-lecture table{width:100%;border-collapse:collapse;border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);font-size:14px}.gm-lecture table.grid th{text-align:left;font-weight:400;font-size:12px;letter-spacing:.08em;color:var(--muted);padding:9px 16px 9px 0;border-bottom:1px solid var(--rule);white-space:nowrap}.gm-lecture table.grid td{padding:12px 16px 12px 0;border-bottom:1px solid var(--rule);vertical-align:top;min-width:92px;line-height:1.65}.gm-lecture table.grid tr:last-child td{border-bottom:0}.gm-lecture table.grid th:last-child,.gm-lecture table.grid td:last-child{padding-right:0}.gm-lecture table.grid td.head{color:var(--ink);white-space:nowrap;min-width:0;position:sticky;left:0;background:var(--bg)}.gm-lecture table.grid td.head.en{font-weight:600;font-size:16px}.gm-lecture table.grid.wide{min-width:460px}.gm-lecture table.rows thead{display:none}.gm-lecture table.rows,.gm-lecture table.rows tbody,.gm-lecture table.rows tr,.gm-lecture table.rows td{display:block;width:100%}.gm-lecture table.rows tr{padding:16px 0;border-bottom:1px solid var(--rule)}.gm-lecture table.rows tr:last-child{border-bottom:0}.gm-lecture table.rows td{padding:0}.gm-lecture table.rows td+td{margin-top:6px}.gm-lecture table.rows td[data-label]:not([data-label=""]):before{content:attr(data-label);display:block;font-size:11px;letter-spacing:.1em;color:var(--muted);margin:10px 0 2px}.gm-lecture table.rows td.lead-cell{color:var(--ink);font-size:15px}.gm-lecture table.rows td.lead-cell .note{display:block}.gm-lecture .pairs{display:flex;flex-wrap:wrap;gap:4px 20px}.gm-lecture .pair{font-family:var(--serif-en);font-size:17px;color:var(--ink-2);white-space:nowrap}.gm-lecture .pair i{font-style:normal;color:var(--faint);margin:0 6px;font-family:var(--sans);font-size:12px}.gm-lecture .pair b{font-weight:600;color:var(--ink)}.gm-lecture .pair small{font-family:var(--sans);font-size:12px;color:var(--muted);margin-left:6px}.gm-lecture .words{display:flex;flex-wrap:wrap;gap:2px 18px;font-family:var(--serif-en);font-size:17px;color:var(--ink)}.gm-lecture .words small{font-family:var(--sans);font-size:12px;color:var(--muted);margin-left:4px}.gm-lecture .cause{color:var(--muted);font-size:12px}.gm-lecture .takeaway{margin:14px 0 0;font-size:15px;color:var(--ink)}.gm-lecture .takeaway:before{content:"要點";font-size:12px;letter-spacing:.12em;color:var(--accent-ink);margin-right:12px}.gm-lecture .swipe{font-size:12px;color:var(--muted);margin-top:8px}.gm-lecture .arrow-down{color:var(--faint);font-size:12px;margin:2px 0}.gm-lecture .gloss{display:flex;flex-wrap:wrap;gap:16px 4px;margin-bottom:10px}.gm-lecture .gloss .g{display:flex;flex-direction:column}.gm-lecture .gloss .w{font-family:var(--serif-en);font-size:20px;color:var(--ink);padding:0 4px 5px;border-bottom:1px solid var(--rule-strong);white-space:nowrap}.gm-lecture .gloss .r{font-size:12px;color:var(--muted);padding:5px 4px 0;white-space:nowrap}.gm-lecture .gloss .g.key .w{border-bottom:2px solid var(--accent)}.gm-lecture .gloss .g.key .r{color:var(--accent-ink)}.gm-lecture .gloss-item+.gloss-item{margin-top:24px;padding-top:22px;border-top:1px solid var(--rule)}.gm-lecture .formula{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 10px;margin-bottom:20px;font-size:15px}.gm-lecture .formula .s{display:inline-flex;flex-direction:column;align-items:center}.gm-lecture .formula .slot b{font-weight:500;color:var(--ink);border-bottom:1px dashed var(--faint);padding:0 2px 2px}.gm-lecture .formula .word b{font:600 18px var(--serif-en);color:var(--accent-ink)}.gm-lecture .formula .optional b{font-weight:400;color:var(--muted)}.gm-lecture .formula .s small{font-size:11px;color:var(--muted);margin-top:2px}.gm-lecture .formula .plus{color:var(--faint)}.gm-lecture .dialogue{display:grid;grid-template-columns:24px 1fr;gap:16px 8px}.gm-lecture .dialogue .who{font:italic 18px/1.55 var(--serif-en);color:var(--muted)}.gm-lecture .notes{background:var(--raise);border-radius:6px;padding:0 18px}.gm-lecture .nt{padding:18px 0}.gm-lecture .nt+.nt{border-top:1px solid var(--rule)}.gm-lecture .nt-h{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.gm-lecture .nt-k{flex:none;font-size:12px;letter-spacing:.1em;color:var(--accent-ink)}.gm-lecture .nt-k.warn{color:var(--error)}.gm-lecture .nt-t{color:var(--ink);font-weight:600;font-size:15px}.gm-lecture .nt-b{font-size:15px;line-height:1.85}.gm-lecture .nt-x{margin-top:10px;display:flex;flex-direction:column;gap:8px}.gm-lecture ol.steps{list-style:none;counter-reset:s;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.gm-lecture ol.steps li{counter-increment:s;display:grid;grid-template-columns:28px 1fr;font-size:15px}.gm-lecture ol.steps li:before{content:counter(s);font:600 18px/1.45 var(--serif-en);color:var(--accent-ink)}.gm-lecture ul.bul{margin:0;padding-left:18px}.gm-lecture ul.check{list-style:none;margin:0;padding:0}.gm-lecture ul.check li:before{content:"□  ";color:var(--muted)}.gm-lecture .tf-steps{margin:4px 0 0;padding-left:18px;font-size:14px}.gm-lecture .tl svg{width:100%;height:auto;display:block;margin-top:8px}.gm-lecture .legend{margin-top:12px;display:flex;flex-wrap:wrap;gap:4px 18px;font-size:12px;color:var(--muted)}.gm-lecture .legend i{display:inline-block;width:14px;height:3px;margin-right:6px;vertical-align:middle}.gm-lecture .dec{border:1px solid var(--rule);border-radius:6px;padding:18px}.gm-lecture .dec-path{font-size:12px;color:var(--muted);margin-bottom:8px;min-height:18px}.gm-lecture .dec-path span+span:before{content:"›";margin:0 8px;color:var(--faint)}.gm-lecture .dec-q{font-family:var(--serif-zh);font-size:18px;color:var(--ink);margin-bottom:14px}.gm-lecture .dec-opts{display:flex;flex-direction:column;gap:8px}.gm-lecture .dec-opts .btn{text-align:left}.gm-lecture .dec-result{font:20px/1.5 var(--serif-en);color:var(--ink);margin-bottom:8px}.gm-lecture .btn{background:none;border:1px solid var(--faint);border-radius:6px;min-height:44px;padding:8px 16px;cursor:pointer;color:var(--ink);font-size:15px;transition:border-color .15s,background .15s}.gm-lecture .btn:active{background:var(--raise)}.gm-lecture .btn.en-font{font:17px var(--serif-en)}.gm-lecture .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding-inline:22px}.gm-lecture .btn.primary:active{background:var(--accent-press);border-color:var(--accent-press)}.gm-lecture .btn.text{border-color:transparent;color:var(--muted);padding-inline:6px}.gm-lecture .btn.right{border-color:var(--accent);color:var(--accent-ink)}.gm-lecture .btn.wrongpick{border-color:var(--error);color:var(--error)}.gm-lecture .btn:disabled{opacity:.3}.gm-lecture .qs{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong)}.gm-lecture .q{padding:20px 0 22px}.gm-lecture .q+.q{border-top:1px solid var(--rule)}.gm-lecture .qt{font-size:12px;color:var(--muted);letter-spacing:.08em}.gm-lecture .qt b{font:600 15px var(--serif-en);color:var(--ink);letter-spacing:0;margin-right:10px}.gm-lecture .qt span{letter-spacing:0;margin-left:6px}.gm-lecture .prompt{font:19px/2 var(--serif-en);color:var(--ink);margin:6px 0 12px}.gm-lecture .prompt.zh-p{font-family:var(--serif-zh);font-size:18px}.gm-lecture .opts{display:flex;flex-wrap:wrap;gap:8px}.gm-lecture .q input[type=text]{font:18px var(--serif-en);color:var(--ink);background:none;border:0;border-radius:0;border-bottom:1px solid var(--rule-strong);width:120px;margin:0 4px;padding:0 2px;text-align:center;outline:none}.gm-lecture .q input[type=text]:focus{border-bottom:2px solid var(--accent)}.gm-lecture .q textarea{width:100%;min-height:64px;font:17px/1.6 var(--serif-en);color:var(--ink);background:var(--raise);border:0;border-radius:6px;padding:10px 12px;resize:vertical;outline:none}.gm-lecture .q textarea:focus{box-shadow:inset 0 0 0 1px var(--accent)}.gm-lecture .q .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}.gm-lecture .built{min-height:36px;font:19px/1.7 var(--serif-en);color:var(--ink);border-bottom:1px solid var(--rule-strong);margin-bottom:14px}.gm-lecture .built:empty:before{content:"依次點擊下面的詞";font:14px var(--sans);color:var(--faint)}.gm-lecture .fb{display:none;margin-top:16px;font-size:14px}.gm-lecture .fb.show{display:block}.gm-lecture .fb .v{font-size:12px;letter-spacing:.12em;color:var(--muted)}.gm-lecture .fb.good .v{color:var(--accent-ink)}.gm-lecture .fb.bad .v{color:var(--error)}.gm-lecture .fb .ans{font:18px/1.6 var(--serif-en);color:var(--ink);margin:4px 0}.gm-lecture .rels{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong)}.gm-lecture .rels .ri{display:grid;grid-template-columns:52px 1fr auto;gap:4px 10px;padding:12px 0;align-items:baseline;width:100%;text-align:left}.gm-lecture .rels li+li{border-top:1px solid var(--rule)}.gm-lecture .rels .c{font:13px var(--mono);color:var(--muted)}.gm-lecture .rels .t{color:var(--ink);font-size:15px;line-height:1.6}.gm-lecture .rels .k{font-size:12px;color:var(--muted);white-space:nowrap}.gm-lecture .rels .r{grid-column:2 / -1;font-size:13px;color:var(--muted)}.gm-lecture .rels button.ri{background:none;border:0;cursor:pointer}.gm-lecture .rels button.ri .t{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px}.gm-lecture .pager{max-width:600px;margin:0 auto;padding-inline:var(--gutter);padding-bottom:calc(40px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:1fr 1fr;gap:12px}.gm-lecture .pager button{text-align:left;background:none;border:1px solid var(--rule);border-radius:6px;padding:12px 14px;cursor:pointer;min-width:0}.gm-lecture .pager button.next{text-align:right;grid-column:2}.gm-lecture .pager .d{display:block;font-size:12px;color:var(--muted)}.gm-lecture .pager .n{display:block;font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gm-lecture .pager .n b{font:500 12px var(--mono);color:var(--accent-ink);margin-right:6px}.gm-lecture .scrim{position:fixed;inset:0;z-index:20;background:var(--scrim);opacity:0;pointer-events:none;transition:opacity .2s}.gm-lecture .sheet{position:fixed;left:0;right:0;bottom:0;z-index:21;max-width:600px;margin:0 auto;background:var(--bg);border-radius:14px 14px 0 0;padding:8px var(--gutter) calc(20px + env(safe-area-inset-bottom,0px));transform:translateY(100%);visibility:hidden;transition:transform .25s ease,visibility 0s .25s;max-height:82vh;overflow-y:auto}.gm-lecture .open .scrim{opacity:1;pointer-events:auto}.gm-lecture .open .sheet{transform:none;visibility:visible;transition:transform .25s ease}.gm-lecture .grab{width:36px;height:4px;border-radius:2px;background:var(--faint);margin:0 auto 14px}.gm-lecture .sheet h3{font-family:var(--serif-zh);font-size:17px;color:var(--ink);margin:0 0 6px;font-weight:600}.gm-lecture .toc{list-style:none;margin:0 0 20px;padding:0}.gm-lecture .toc button{width:100%;display:grid;grid-template-columns:52px 1fr;gap:4px;text-align:left;background:none;border:0;padding:12px 0;cursor:pointer;border-bottom:1px solid var(--rule);line-height:1.55}.gm-lecture .toc .c{font:13px/1.7 var(--mono);color:var(--muted)}.gm-lecture .toc .t{font-size:15px;color:var(--ink-2)}.gm-lecture .toc .k{grid-column:2;font-size:12px;color:var(--muted)}.gm-lecture .toc button.on .c{color:var(--accent-ink)}.gm-lecture .toc button.on .t{color:var(--ink);font-weight:600}.gm-lecture .theme-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--ink)}.gm-lecture .seg{display:inline-flex;background:var(--raise);border-radius:8px;padding:2px}.gm-lecture .seg button{border:0;background:none;font-size:13px;color:var(--muted);padding:5px 12px;border-radius:6px;cursor:pointer}.gm-lecture .seg button.on{background:var(--bg);color:var(--ink);box-shadow:0 1px 2px #00000014}.gm-lecture b.stress{font-weight:700;color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.gm-lecture .jd{font:11px/1.6 var(--sans);color:var(--muted);border:1px solid var(--faint);border-radius:4px;padding:0 5px;margin-left:8px;vertical-align:2px;white-space:nowrap}.gm-lecture .jd.nonstd{border-style:dashed}.gm-lecture .marg-mark{font:600 14px var(--sans);color:var(--muted);margin-right:6px}.gm-lecture .into{font:12px var(--sans);color:var(--accent-ink);margin-left:8px;white-space:nowrap;vertical-align:2px}.gm-lecture .ipa{font:14px var(--serif-en);color:var(--muted)}.gm-lecture .zh-src{font:17px/1.6 var(--serif-zh);color:var(--ink-2)}.gm-lecture .tree{display:flex;align-items:flex-start;gap:2px;overflow-x:auto;padding:4px var(--gutter) 8px;margin-inline:calc(var(--gutter) * -1);scrollbar-width:none}.gm-lecture .tree::-webkit-scrollbar{display:none}.gm-lecture .lf,.gm-lecture .nd{display:inline-flex;flex-direction:column;flex:none}.gm-lecture .lf .w{font-family:var(--serif-en);font-size:19px;color:var(--ink);padding:0 4px 5px;border-bottom:1px solid var(--rule-strong);white-space:nowrap}.gm-lecture .lf .r{font-size:11.5px;color:var(--muted);padding:5px 4px 0;white-space:nowrap}.gm-lecture .lf.key .w{border-bottom:2px solid var(--accent)}.gm-lecture .lf.key .r{color:var(--accent-ink)}.gm-lecture .lf.gap .w{color:var(--faint);border-bottom-style:dashed}.gm-lecture .lf.gap .r{color:var(--accent-ink)}.gm-lecture .nd{margin:0 3px}.gm-lecture .nd>.kids{display:flex;align-items:flex-start;gap:2px}.gm-lecture .nd>.br{margin-top:6px}.gm-lecture .nd>.br i{display:block;height:7px;border:1px solid var(--faint);border-top:0;margin:0 2px}.gm-lecture .nd>.br em{display:block;font-style:normal;font-size:11.5px;color:var(--muted);text-align:center;padding-top:3px;white-space:nowrap}.gm-lecture .nd.clause>.br i{border-color:var(--accent)}.gm-lecture .nd.clause>.br em{color:var(--accent-ink)}.gm-lecture .links{list-style:none;margin:8px 0 0;padding:0;font-size:13px;color:var(--muted);display:flex;flex-direction:column;gap:2px}.gm-lecture .links b{font-weight:400;color:var(--ink-2);font-family:var(--serif-en);font-size:15px}.gm-lecture .ana-sent{font:20px/1.5 var(--serif-en);color:var(--ink);margin-bottom:4px}.gm-lecture .reading{margin-top:18px;padding-top:14px;border-top:1px dashed var(--rule)}.gm-lecture .reading .rl{font-size:12px;letter-spacing:.08em;color:var(--accent-ink)}.gm-lecture .psg{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong)}.gm-lecture .ps{display:grid;grid-template-columns:26px 1fr;gap:0 6px;padding:12px 0}.gm-lecture .ps+.ps{border-top:1px solid var(--rule)}.gm-lecture .pn{font:13px/1.9 var(--mono);color:var(--faint)}.gm-lecture .pn.who{font:italic 17px/1.6 var(--serif-en);color:var(--muted)}.gm-lecture .ptag{font:11px var(--sans);color:var(--accent-ink);letter-spacing:.08em;margin-right:8px;vertical-align:2px}.gm-lecture .mn{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.gm-lecture .mn sup{font:600 10px var(--sans);margin-left:1px}.gm-lecture .c0{text-decoration-color:var(--accent)}.gm-lecture .c0 sup,.gm-lecture .chip.c0{color:var(--accent-ink)}.gm-lecture .c1{text-decoration-color:var(--info)}.gm-lecture .c1 sup,.gm-lecture .chip.c1{color:var(--info)}.gm-lecture .c2{text-decoration-color:var(--review)}.gm-lecture .c2 sup,.gm-lecture .chip.c2{color:var(--review)}.gm-lecture .c3{text-decoration-color:var(--warning)}.gm-lecture .c3 sup,.gm-lecture .chip.c3{color:var(--warning)}.gm-lecture .psg.focusing .mn:not(.on){text-decoration-color:transparent}.gm-lecture .psg.focusing .mn:not(.on) sup{opacity:.2}.gm-lecture .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.gm-lecture .chip{background:none;border:1px solid var(--rule);border-radius:99px;min-height:34px;padding:4px 12px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.gm-lecture .chip span{color:var(--ink-2)}.gm-lecture .chip.on{border-color:currentColor}.gm-lecture .chip-hint{font-size:12px;color:var(--muted);margin-top:6px}.gm-lecture .rev-h{font-size:12px;letter-spacing:.1em;color:var(--accent-ink);margin:20px 0 6px}.gm-lecture .scale{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong)}.gm-lecture .sc-axis{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);padding:10px 0 8px;border-bottom:1px solid var(--rule)}.gm-lecture .sc-row{padding:14px 0}.gm-lecture .sc-row+.sc-row{border-top:1px solid var(--rule)}.gm-lecture .sc-h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.gm-lecture .sc-h b{font:600 18px var(--serif-en);color:var(--ink)}.gm-lecture .sc-track{position:relative;height:4px;background:var(--rule);border-radius:2px;margin:10px 6px 2px}.gm-lecture .sc-track s{position:absolute;left:0;top:0;bottom:0;background:var(--accent-wash);border-radius:2px}.gm-lecture .sc-track i{position:absolute;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--accent)}.gm-lecture .sc-row .ex{margin-top:8px}.gm-lecture .fig-panels{display:grid;grid-template-columns:1fr 1fr;gap:22px 14px}.gm-lecture .fig svg{width:100%;height:auto;display:block;background:var(--raise);border-radius:6px}.gm-lecture .fig .fl{font:600 17px var(--serif-en);color:var(--ink);margin-top:8px}.gm-lecture .fig .en{font-size:15.5px}.gm-lecture .fig .zh{font-size:13px}.gm-lecture .fig-ph{border:1px dashed var(--faint);border-radius:6px;padding:18px;font-size:14px;color:var(--muted)}.gm-lecture .fig-cap{margin-top:12px}.gm-lecture .tokens{display:flex;flex-wrap:wrap;gap:2px;font:19px/1.9 var(--serif-en);margin:6px 0 12px}.gm-lecture .tok{background:none;border:0;border-radius:4px;padding:0 3px;font:inherit;color:var(--ink);cursor:pointer}.gm-lecture .tok.on{background:var(--accent-wash)}.gm-lecture .match{display:flex;flex-direction:column;gap:12px;margin-top:6px}.gm-lecture .mrow{display:flex;flex-direction:column;gap:6px}.gm-lecture .mrow .ml{font:17px var(--serif-en);color:var(--ink)}.gm-lecture .mrow select{font:15px var(--sans);color:var(--ink);background:var(--raise);border:0;border-radius:6px;padding:10px 12px;min-height:44px}.gm-lecture .btn.picked{border-color:var(--ink);background:var(--raise)}.gm-lecture .map{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong)}.gm-lecture .map .mg{font-size:12px;letter-spacing:.1em;color:var(--accent-ink);padding:16px 0 2px}.gm-lecture .map .mi{display:grid;grid-template-columns:52px 1fr;gap:2px 10px;padding:10px 0;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--rule)}.gm-lecture .map .mi:last-child{border-bottom:0}.gm-lecture .map .c{font:13px/1.7 var(--mono);color:var(--muted)}.gm-lecture .map .t{color:var(--ink);font-size:15px;line-height:1.6}.gm-lecture .map .n{grid-column:2;font-size:13px;color:var(--muted)}.gm-lecture .map button.mi{cursor:pointer}.gm-lecture .map button.mi .t{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px}@media(prefers-reduced-motion:reduce){.gm-lecture .sheet,.gm-lecture .scrim{transition:none!important}}@media(min-width:640px){.gm-lecture h1{font-size:30px}.gm-lecture article{padding-top:44px}}.gm-lecture .sub{margin:24px 0}.gm-lecture .answer{margin:12px 0;padding:12px;background:var(--raise);border-radius:8px}.gm-lecture button{cursor:pointer}.gm-lecture details{margin:12px 0}.gm-lecture summary{cursor:pointer;color:var(--accent-ink)}.gm-lecture .related-button{display:block;width:100%;text-align:left;padding:12px 14px;border:none;background:var(--raise);border-radius:10px;margin:8px 0;color:var(--ink);line-height:1.5;transition:background-color .15s ease}.gm-lecture .related-button:hover{background:color-mix(in srgb,var(--accent) 12%,var(--raise))}.gm-lecture .related-button small{color:var(--muted);font-size:13px}.gm-lecture .overview+.sub{margin-top:36px}.gm-detail.gm-lecture-detail{width:min(720px,calc(100% - 24px));max-width:none;padding-bottom:24px;-webkit-user-select:text;user-select:text;touch-action:pan-y}.gm-lecture-detail .gm-detail-tt{overflow-wrap:anywhere}.grammar-phase-title{font-size:15px;font-weight:600;color:var(--color-text-secondary);margin:0;padding-left:4px;display:flex;align-items:center;gap:8px}.grammar-phase-count{font-size:12px;font-weight:500;color:var(--color-text-secondary);opacity:.6}.grammar-level-code{font-size:12px;font-weight:700;padding:2px 8px;border-radius:6px;flex-shrink:0;min-width:34px;text-align:center;line-height:1.4;background:var(--color-container-subtle);color:var(--color-text-secondary);border:1px solid var(--color-divider)}.grammar-level-desc{font-size:13px;line-height:1.5;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grammar-branch-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.grammar-branch-tag{display:inline-flex;align-items:center;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:500;background:var(--color-container-subtle);color:var(--color-text-secondary);opacity:.7}.grammar-side-badge{font-size:10px;font-weight:600;color:var(--color-text-secondary);background:var(--color-container-subtle);padding:2px 8px;border-radius:10px;white-space:nowrap;opacity:.6}.grammar-card-side{opacity:.65}.grammar-card-side:hover{opacity:.9}.fwq{width:100%;height:100%;display:flex;flex-direction:column;background:#0a0b10;color:#e2e8f0;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;position:relative}.fwq-inner{padding:16px;flex:1;display:flex;flex-direction:column}.fwq-fade{animation:fwqFade .35s ease-out}@keyframes fwqFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fwq-pop{animation:fwqPop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes fwqPop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fwq-setup-header{text-align:center;padding:32px 0 24px}.fwq-setup-badge{display:inline-block;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:4px 14px;border-radius:20px;margin-bottom:12px}.fwq-setup-title{font-size:24px;font-weight:800;margin:0 0 6px;background:linear-gradient(135deg,#e2e8f0,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.fwq-setup-sub{font-size:13px;color:#64748b;margin:0}.fwq-camp-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}.fwq-camp-btn{display:flex;align-items:center;gap:14px;padding:16px;border-radius:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:#e2e8f0;cursor:pointer;transition:all .2s;text-align:left;position:relative;overflow:hidden}.fwq-camp-btn:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c);opacity:.6}.fwq-camp-btn:active{transform:scale(.98);background:#ffffff0f}.fwq-camp-icon{font-size:28px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffff0a;flex-shrink:0}.fwq-camp-info{flex:1;min-width:0}.fwq-camp-name{font-size:16px;font-weight:700;color:var(--c)}.fwq-camp-desc{font-size:12px;color:#64748b;margin-top:2px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fwq-camp-arrow{font-size:16px;color:#475569}.fwq-top-bar{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}.fwq-back{background:none;border:none;color:#64748b;font-size:14px;cursor:pointer;padding:4px 0}.fwq-back:active{color:#e2e8f0}.fwq-stats{display:flex;align-items:center;gap:12px;font-size:13px;color:#64748b}.fwq-stats .correct{color:#10b981;font-weight:600}.fwq-stats .wrong{color:#ef4444;font-weight:600}.fwq-stats .num{color:#8b5cf6;font-weight:600}.fwq-question-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:32px 20px;text-align:center;margin:8px 0 20px}.fwq-seq-label{font-size:12px;color:#475569;margin-bottom:16px;letter-spacing:1px}.fwq-sentence{font-size:22px;font-weight:600;line-height:1.7;word-spacing:3px}.fwq-blank{display:inline-block;min-width:80px;padding:2px 12px;margin:0 4px;border-bottom:2.5px dashed rgba(99,102,241,.4);color:#6366f1;font-weight:700;transition:all .3s;vertical-align:baseline}.fwq-blank.filled{border-bottom-color:#6366f1;border-bottom-style:solid}.fwq-blank.correct{border-bottom-color:#10b981;color:#10b981;background:#10b98114;border-radius:6px;border-bottom-style:solid}.fwq-blank.wrong{border-bottom-color:#ef4444;color:#ef4444;background:#ef444414;border-radius:6px;border-bottom-style:solid;text-decoration:line-through}.fwq-hint{margin-top:16px;padding:12px 16px;border-radius:10px;background:#6366f10f;border:1px solid rgba(99,102,241,.12);font-size:13px;color:#94a3b8;line-height:1.5}.fwq-hint strong{color:#6366f1}.fwq-input-area{display:flex;gap:10px}.fwq-input{flex:1;padding:14px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#e2e8f0;font-size:16px;outline:none;transition:all .2s;caret-color:#6366f1}.fwq-input:focus{border-color:#6366f180;box-shadow:0 0 0 3px #6366f11a}.fwq-submit-btn{padding:14px 24px;border-radius:12px;border:none;background:#6366f1;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0}.fwq-submit-btn:active{transform:scale(.96)}.fwq-submit-btn:disabled{opacity:.4;cursor:not-allowed}.fwq-result{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px;border-radius:16px;text-align:center}.fwq-result.correct{background:#10b9810f;border:1px solid rgba(16,185,129,.15)}.fwq-result.wrong{background:#ef44440a;border:1px solid rgba(239,68,68,.1)}.fwq-result-emoji{font-size:36px}.fwq-result-text{font-size:15px;font-weight:600}.fwq-result-detail{font-size:13px;color:#64748b}.fwq-result-actions{display:flex;gap:10px;margin-top:6px;flex-wrap:wrap;justify-content:center}.fwq-action-btn{padding:10px 20px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#e2e8f0;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.fwq-action-btn:active{transform:scale(.96)}.fwq-action-btn.primary{background:#6366f1;border-color:#6366f1;color:#fff}.fwq-action-btn.danger{border-color:#ef44444d;color:#f87171}.fwq-action-btn.success{border-color:#10b9814d;color:#34d399}.fwq-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 0;flex:1}.fwq-spinner{width:36px;height:36px;border:3px solid rgba(99,102,241,.15);border-top-color:#6366f1;border-radius:50%;animation:fwqSpin .7s linear infinite}@keyframes fwqSpin{to{transform:rotate(360deg)}}.fwq-loading-text{font-size:14px;color:#64748b}.fwq-explain-overlay{position:absolute;inset:0;z-index:50;background:#0a0b10f2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;padding:16px;overflow-y:auto}.fwq-explain-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:16px}.fwq-explain-title{font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px}.fwq-explain-close{background:none;border:none;color:#64748b;font-size:20px;cursor:pointer;padding:4px 8px}.fwq-explain-content{font-size:15px;line-height:1.8;color:#cbd5e1;white-space:pre-wrap}.fwq-explain-cursor{display:inline-block;width:2px;height:16px;background:#6366f1;margin-left:2px;vertical-align:text-bottom;animation:fwqBlink .8s ease-in-out infinite}@keyframes fwqBlink{0%,to{opacity:1}50%{opacity:0}}.fwq-toast{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:200;padding:10px 20px;border-radius:10px;background:#10b98126;border:1px solid rgba(16,185,129,.3);color:#34d399;font-size:13px;font-weight:500;animation:fwqFade .3s ease-out;pointer-events:none}.word-card-container{display:flex;align-items:center;justify-content:space-between;gap:16px;width:auto;min-width:260px;padding:22px 20px;background-color:var(--color-container-bg);border-radius:var(--radius-md);transition:background-color .2s ease}.word-card-left{display:flex;flex-direction:column;align-items:flex-start}.word-card-word{font-size:32px;font-weight:600;color:var(--color-text-base);line-height:1.2}.word-card-phonetic{margin-top:17px;font-size:24px;color:var(--color-text-secondary);line-height:1.2}.word-card-pos-tag{margin-top:17px;display:inline-flex;align-items:center;justify-content:center;padding:3.5px 15px;background-color:var(--color-container-subtle);border-radius:4px}.word-card-pos-tag span{font-size:16px;color:var(--color-text-secondary);line-height:1.4}.word-card-speaker-wrapper{width:60px;height:60px;border-radius:8px;background-color:#55b6851a;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background-color .2s ease,transform .15s ease}.word-card-speaker-wrapper:hover{background-color:#55b68526}.word-card-speaker-wrapper:active{transform:scale(.95)}.word-card-speaker-icon{color:var(--color-primary)}.words-list{width:300px;height:100%;background-color:var(--color-container-bg);border-radius:12px 12px 0 0;padding:15px 0 0;display:flex;flex-direction:column;overflow:hidden}.words-list-header{flex-shrink:0;padding:0 15px}.words-list-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.words-list-divider{flex-shrink:0;height:1px;background-color:var(--color-divider);margin-top:15px}.words-list-content{flex:1;overflow-y:auto;padding:15px 15px 0;display:flex;flex-direction:column;gap:10px;scrollbar-width:none;-ms-overflow-style:none}.words-list-spacer{flex-shrink:0;height:20px}.words-list-content::-webkit-scrollbar{display:none}.words-list-item{width:100%;padding:10px 12px;font-size:14px;font-weight:500;border-radius:6px;background-color:var(--color-container-subtle);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.words-list-item-main{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.words-list-item-label{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.words-list-item-count{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;background-color:#55b68533;color:var(--color-primary);border-radius:10px;font-size:11px;font-weight:600;margin-right:2px;flex-shrink:0}.words-list-item:hover{background-color:var(--color-card-hover)}.words-list-item.selected{background-color:#55b6851a;color:var(--color-primary)}.words-list-fav-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;border-radius:4px;cursor:pointer;padding:0;flex-shrink:0;color:var(--color-text-secondary);opacity:0;transition:opacity .15s ease,color .15s ease,transform .15s ease}.words-list-item:hover .words-list-fav-btn{opacity:.6}.words-list-fav-btn:hover{opacity:1!important;color:#f5a623}.words-list-fav-btn.favorited{opacity:1;color:#f5a623}.words-list-fav-btn.favorited svg path{fill:#f5a623;stroke:#f5a623}.words-list-fav-btn:not(.favorited) svg path{fill:none;stroke:var(--color-text-secondary)}.words-list-fav-btn:active{transform:scale(1.2)}.word-meaning{width:100%;background-color:var(--color-container-bg);border-radius:12px;padding:15px;overflow:hidden}.word-meaning.no-transition,.word-meaning.no-transition *{transition:none!important}.word-meaning-header{display:flex;align-items:center;gap:10px}.word-meaning-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.wm-linked-book-badge{display:inline-flex;align-items:center;color:#10b981;font-size:11px;font-weight:500;white-space:nowrap;letter-spacing:.2px;margin-left:10px}.word-meaning-toggle{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:0;border-radius:6px;margin-left:auto;transition:color .2s ease,background-color .2s ease}.word-meaning-toggle:hover{color:var(--color-text-base);background-color:var(--color-container-subtle)}.word-meaning-toggle-arrow{display:block;flex-shrink:0;width:16px;height:16px;transform-origin:center;transition:transform .3s cubic-bezier(.4,0,.2,1)}.word-meaning-toggle-arrow.down{transform:rotate(-90deg)}.word-meaning-toggle-arrow.up{transform:rotate(90deg)}.word-meaning-content{margin-top:12px;padding-left:5px;font-size:16px;color:var(--color-text-base);line-height:1.5}.word-meaning.has-analysis{height:auto;min-height:180px;max-height:280px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.word-meaning.has-analysis::-webkit-scrollbar{display:none}.word-meaning.expanded{overflow-y:auto;border-radius:12px 12px 0 0;scrollbar-width:none;-ms-overflow-style:none}.word-meaning.expanded::-webkit-scrollbar{display:none}.wm-analysis{margin-top:10px;display:flex;flex-direction:column;gap:8px;transition:gap .4s cubic-bezier(.4,0,.2,1)}.expanded .wm-analysis{gap:16px}.wm-group{display:flex;flex-direction:column;gap:4px;transition:gap .4s cubic-bezier(.4,0,.2,1)}.expanded .wm-group{gap:8px}.wm-pos{flex-shrink:0;display:inline-block;align-self:flex-start;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px;letter-spacing:.3px;white-space:nowrap}.wm-defs{display:flex;flex-direction:column;gap:2px;transition:gap .4s cubic-bezier(.4,0,.2,1)}.expanded .wm-defs{gap:10px}.wm-def-card{display:flex;flex-direction:column;padding:2px 0;background-color:transparent;border-radius:8px;transition:padding .4s cubic-bezier(.4,0,.2,1),background-color .4s cubic-bezier(.4,0,.2,1)}.expanded .wm-def-card{padding:10px 12px;background-color:var(--color-container-subtle)}.wm-def-card.drag-over{outline:2px dashed var(--color-primary);outline-offset:-2px;background-color:color-mix(in srgb,var(--color-primary) 8%,transparent)!important}.wm-def-main{display:flex;align-items:center;gap:4px;line-height:1.5}.wm-ai-gen-mini{flex-shrink:0;width:20px;height:20px;border-radius:4px;border:none;background:transparent;color:#a78bfa;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease;margin-left:auto;padding:0}.wm-def-card:hover .wm-ai-gen-mini,.wm-ai-gen-mini.generating{opacity:1}.wm-ai-gen-mini:hover{background:color-mix(in srgb,#a78bfa 12%,transparent)}.wm-ai-gen-mini:disabled{cursor:not-allowed}.wm-def-delete-btn{flex-shrink:0;width:20px;height:20px;border-radius:4px;border:none;background:transparent;color:var(--color-text-tertiary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease;padding:0}.wm-def-card:hover .wm-def-delete-btn{opacity:1}.wm-def-delete-btn:hover{background:color-mix(in srgb,var(--color-text-tertiary) 12%,transparent);color:var(--color-text-secondary)}.wm-def-delete-btn.confirm{opacity:1;background:color-mix(in srgb,#ef4444 15%,transparent);color:#ef4444}.wm-def-delete-btn.confirm:hover{background:color-mix(in srgb,#ef4444 25%,transparent)}.wm-def-delete-btn.deleting{opacity:1;cursor:not-allowed;pointer-events:none}.wm-ai-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:repeating-linear-gradient(-45deg,color-mix(in srgb,#a78bfa 5%,transparent),color-mix(in srgb,#a78bfa 5%,transparent) 8px,color-mix(in srgb,#a78bfa 10%,transparent) 8px 16px);border:1.5px dashed #a78bfa!important;animation:wmPlaceholderShimmer 1.5s linear infinite;background-size:200% 200%}@keyframes wmPlaceholderShimmer{0%{background-position:0% 0%}to{background-position:100% 100%}}.wm-ai-placeholder-text{font-size:11px;color:#a78bfa;font-weight:500}.wm-def-dot{flex-shrink:0;color:var(--color-text-tertiary);font-size:10px}.wm-def-text{font-size:14px;color:var(--color-text-base)}.wm-images-reveal{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1)}.expanded .wm-images-reveal{grid-template-rows:1fr}.wm-images-inner{overflow:hidden;min-height:0;display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding-top:0;opacity:0;transition:opacity .35s cubic-bezier(.4,0,.2,1),padding-top .4s cubic-bezier(.4,0,.2,1)}.expanded .wm-images-inner{padding-top:8px;opacity:1}.wm-img-thumb{border-radius:8px;overflow:hidden;border:1px solid var(--color-divider);flex-shrink:0;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.wm-img-thumb:hover{transform:scale(1.03);box-shadow:0 4px 12px #00000026}.wm-img-thumb.deleting{opacity:.4;pointer-events:none}.wm-img-delete{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:none;background:#0000008c;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease;padding:0}.wm-img-thumb{position:relative}.wm-img-thumb:hover .wm-img-delete{opacity:1}.wm-img-delete:hover{background:#dc2626d9}.wm-img-prompt-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.5) 60%,transparent 100%);padding:24px 8px 6px;opacity:0;transition:opacity .2s ease;pointer-events:none;border-radius:0 0 8px 8px}.wm-img-thumb:hover .wm-img-prompt-overlay{opacity:1}.wm-img-prompt-text{display:block;font-size:11px;line-height:1.4;color:#ffffffeb;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;word-break:break-all}.wm-img-thumb img{width:100%;height:100%;object-fit:cover}.wm-img-uploading-indicator{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wm-img-ai-gen{width:56px;height:160px;border-radius:8px;border:1.5px dashed color-mix(in srgb,#a78bfa 50%,var(--color-divider));background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .2s ease,background-color .2s ease}.wm-img-ai-gen:hover{border-color:#a78bfa;background-color:color-mix(in srgb,#a78bfa 8%,transparent)}.wm-img-ai-gen:disabled{cursor:not-allowed;opacity:.4}.wm-img-ai-gen.generating{opacity:.7;border-color:#a78bfa;background-color:color-mix(in srgb,#a78bfa 5%,transparent)}.wm-ai-icon{font-size:18px;color:#a78bfa;font-weight:600;line-height:1}.wm-img-ai-gen:hover .wm-ai-icon{color:#8b5cf6}.wm-img-spinner{width:18px;height:18px;border:2px solid var(--color-divider);border-top-color:var(--color-primary);border-radius:50%;animation:wmSpin .8s linear infinite}@keyframes wmSpin{to{transform:rotate(360deg)}}.word-meaning-priority{flex-shrink:0;font-size:10px;font-weight:700;padding:1px 4px;border-radius:3px;line-height:1.4;letter-spacing:.3px}.word-meaning-priority.p1{background-color:color-mix(in srgb,#aea1ff 15%,transparent);color:#aea1ff}.word-meaning-priority.p2{background-color:color-mix(in srgb,#f59e0b 15%,transparent);color:#f59e0b}.word-meaning-priority.p3{background-color:color-mix(in srgb,#9ca3af 15%,transparent);color:#9ca3af}.wm-preview-overlay{position:fixed;inset:0;z-index:9999;background:#000000bf;display:flex;align-items:center;justify-content:center;animation:wmFadeIn .2s ease}@keyframes wmFadeIn{0%{opacity:0}to{opacity:1}}.wm-preview-modal{position:relative;max-width:90vw;max-height:90vh}.wm-preview-modal img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:12px;box-shadow:0 16px 48px #0006}.wm-preview-close{position:absolute;top:-36px;right:0;width:32px;height:32px;border-radius:50%;border:none;background:#ffffff26;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.wm-preview-close:hover{background:#ffffff4d}.wm-add-def-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;border:1.5px dashed var(--color-divider);border-radius:8px;background:none;color:var(--color-text-tertiary);font-size:13px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.wm-add-def-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.wm-add-def-form{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:8px;background-color:var(--color-container-subtle);border:1px solid var(--color-divider)}.wm-add-def-row{display:flex;gap:6px}.wm-add-def-input{flex:1;padding:6px 10px;border:1px solid var(--color-divider);border-radius:6px;background:var(--color-container-bg);color:var(--color-text-base);font-size:13px;outline:none;transition:border-color .2s ease}.wm-add-def-input:focus{border-color:var(--color-primary)}.wm-add-def-input::placeholder{color:var(--color-text-tertiary)}.wm-add-def-input.small{font-size:12px;padding:5px 8px}.wm-add-def-actions{display:flex;justify-content:flex-end;gap:8px}.wm-add-def-cancel,.wm-add-def-submit{padding:4px 14px;border-radius:6px;border:none;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .15s ease,opacity .15s ease;display:flex;align-items:center;justify-content:center;min-height:28px}.wm-add-def-cancel{background:transparent;color:var(--color-text-secondary)}.wm-add-def-cancel:hover{background:color-mix(in srgb,var(--color-text-secondary) 10%,transparent)}.wm-add-def-submit{background:var(--color-primary);color:#fff}.wm-add-def-submit:hover{opacity:.85}.wm-add-def-submit:disabled{opacity:.4;cursor:not-allowed}.word-info{width:100%;background-color:var(--color-container-bg);border-radius:12px;padding:15px}.word-info-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.word-info-content{margin-top:12px;font-size:16px;color:var(--color-text-base);line-height:1.5}.word-info-highlight{color:var(--color-primary);font-weight:500}.word-info-tabs{display:inline-flex;gap:3px;padding:3px;max-width:100%;background:var(--color-container-subtle);border-radius:8px}.word-info-tab{border:0;border-radius:6px;padding:4px 10px;font:inherit;font-size:14px;line-height:20px;color:var(--color-text-secondary);background:transparent;cursor:pointer;transition:background-color .15s,color .15s}.word-info-tab.active{color:var(--color-primary);background:var(--color-container-bg)}.word-info-tab:hover{color:var(--color-text-base)}.word-info-tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.word-info-tab-panels{display:grid}.word-info-tab-panels>.word-info-content{grid-area:1 / 1;min-width:0;max-height:150px;overflow-y:auto;scrollbar-width:thin}.word-info-tab-panels>.word-info-content[hidden]{display:block;visibility:hidden;pointer-events:none}.word-info-parts{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px}.word-info-part-group{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%}.word-info-part-plus{color:var(--color-text-secondary)}.word-info-part{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px;padding:5px 8px;border-radius:6px;background:var(--color-container-subtle);overflow-wrap:anywhere;font-size:14px}.word-info-part strong{color:var(--color-primary);font-weight:600}.word-info-part-type{color:var(--color-text-secondary);font-size:12px}.word-info-root-note{margin-top:8px;overflow-wrap:anywhere}.word-popover-backdrop{position:fixed;inset:0;background-color:#0000004d;z-index:999;animation:wpBackdropIn .2s ease forwards}.word-popover-backdrop.closing{animation:wpBackdropOut .2s ease forwards}@keyframes wpBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes wpBackdropOut{0%{opacity:1}to{opacity:0}}.word-popover{position:fixed;background-color:var(--color-container-bg);border-radius:12px;box-shadow:0 8px 24px #00000026;padding:16px;z-index:1000;width:fit-content;max-width:320px}.word-popover.quadrant-bl,.word-popover.quadrant-br,.word-popover.quadrant-tl,.word-popover.quadrant-tr,.word-popover.bottom,.word-popover.top{animation:wpFadeIn .2s ease forwards}.word-popover.closing{animation:wpFadeOut .18s ease forwards!important}@keyframes wpFadeIn{0%{opacity:0}to{opacity:1}}@keyframes wpFadeOut{0%{opacity:1}to{opacity:0}}.word-popover--pinned{box-shadow:0 8px 32px #00000038,0 0 0 1px #55b68540;cursor:grab;-webkit-user-select:none;user-select:none}.word-popover--pinned:active{cursor:grabbing}.word-popover-pin{margin-left:auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--color-text-secondary);opacity:0;transition:opacity .3s ease,background-color .2s ease,color .2s ease,transform .3s cubic-bezier(.34,1.56,.64,1);flex-shrink:0;transform:rotate(0);animation:pinFadeIn .4s .2s ease forwards}@keyframes pinFadeIn{0%{opacity:0}to{opacity:1}}.word-popover-pin:hover{background-color:#55b6851a;color:var(--color-primary)}.word-popover-pin.pinned{opacity:1;color:var(--color-primary);background-color:#55b68526;transform:rotate(45deg)}.word-popover-header{display:flex;align-items:center;gap:8px}.word-popover-title{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px}.word-popover-word{font-size:18px;font-weight:600;color:var(--color-text-base);min-width:0;overflow-wrap:anywhere}.word-popover-dots{display:inline-flex;align-items:center;gap:4px}.word-popover-dots .dot{width:5px;height:5px;border-radius:50%;background-color:var(--color-text-secondary);flex-shrink:0;animation:dotPulse 1.4s ease-in-out infinite both}.word-popover-dots .dot:nth-child(1){animation-delay:0s}.word-popover-dots .dot:nth-child(2){animation-delay:.16s}.word-popover-dots .dot:nth-child(3){animation-delay:.32s}@keyframes dotPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.word-popover-meta{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;white-space:nowrap;animation:metaFadeIn .3s ease forwards}@keyframes metaFadeIn{0%{opacity:0}to{opacity:1}}.word-popover-phonetic{font-size:14px;color:var(--color-text-secondary)}.word-popover-body-static{margin-top:12px;animation:bodyFadeIn .3s ease forwards}@keyframes bodyFadeIn{0%{opacity:0}to{opacity:1}}.word-popover-definitions{display:flex;flex-direction:column;gap:8px}.word-popover-def-item{display:flex;gap:8px;align-items:flex-start}.word-popover-pos{font-size:12px;color:var(--color-primary);background-color:#55b6851a;padding:2px 6px;border-radius:4px;flex-shrink:0}.word-popover-meaning{font-size:14px;color:var(--color-text-base);line-height:1.5}.word-popover-error{text-align:center;color:var(--color-text-secondary);padding:16px;font-size:14px}.word-popover-measure{position:fixed;visibility:hidden;pointer-events:none;top:-9999px;left:-9999px;padding:16px;width:fit-content;font-family:inherit}.word-popover-star{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--color-text-unselected);cursor:pointer;transition:color .15s ease,transform .15s ease}.word-popover-star:hover{background:var(--color-container-subtle)}.word-popover-star:active{transform:scale(.85)}.word-popover-star.on{color:var(--color-review, #FFB020)}.word-popover-meta .speaker-icon{flex-shrink:0}.example-sentences{width:100%;background-color:var(--color-container-bg);border-radius:12px;padding:15px;overflow:hidden}.example-sentences-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.example-sentences-content{margin-top:15px;padding-left:5px}.example-sentence-item{display:flex;flex-direction:column}.example-sentence-def-row{display:flex;align-items:baseline;gap:6px;margin-bottom:6px;flex-wrap:wrap}.example-sentence-pos-tag{display:inline-block;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-size:11px;font-weight:600;padding:2px 7px;border-radius:4px;white-space:nowrap;letter-spacing:.3px;flex-shrink:0}.example-sentence-definition{font-size:14px;color:var(--color-text-base);font-weight:500}.example-sentence-english{font-size:16px;color:var(--color-text-base);line-height:1.5}.example-sentence-english .speaker-icon{display:inline-flex;vertical-align:middle;margin-left:6px}.example-sentence-highlight{color:var(--color-primary);font-weight:500}.example-sentence-word{cursor:pointer;border-radius:3px;padding:1px 2px;transition:background-color .15s ease,color .15s ease}.example-sentence-word.selected{background-color:var(--color-primary);color:#fff}.example-sentence-meaning{margin-top:10px;font-size:16px;color:var(--color-text-secondary);line-height:1.5}.example-sentence-images{margin-top:10px;display:flex;gap:10px;overflow:hidden}.example-sentence-image{height:95px;width:auto;border-radius:6px;object-fit:cover;flex-shrink:0;cursor:pointer;transition:transform .15s ease}.example-sentence-image:hover{transform:scale(1.02)}.example-sentence-lightbox{position:fixed;inset:0;z-index:1001;display:flex;align-items:center;justify-content:center;animation:lightboxFadeIn .2s ease forwards}.example-sentence-lightbox.closing{animation:lightboxFadeOut .2s ease forwards}.example-sentence-lightbox-backdrop{position:absolute;inset:0;background-color:#000000d9}.example-sentence-lightbox-image{position:relative;max-width:90vw;max-height:90vh;border-radius:8px;object-fit:contain;animation:lightboxZoomIn .25s cubic-bezier(.32,.72,0,1) forwards}.example-sentence-lightbox.closing .example-sentence-lightbox-image{animation:lightboxZoomOut .2s ease forwards}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lightboxFadeOut{0%{opacity:1}to{opacity:0}}@keyframes lightboxZoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes lightboxZoomOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.example-sentence-divider{height:1px;background-color:var(--color-divider);margin:15px 0}.example-sentence-item{transition:box-shadow .2s ease,border-color .2s ease;border:2px solid transparent;border-radius:8px;padding:4px;margin:-4px}.example-sentence-drop-active{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 20%,transparent);background-color:color-mix(in srgb,var(--color-primary) 4%,transparent)}.example-sentence-item.uploading{opacity:.7;pointer-events:none}.example-sentence-upload-indicator{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:var(--color-primary)}.example-sentence-upload-spinner{display:inline-block;width:14px;height:14px;border:2px solid color-mix(in srgb,var(--color-primary) 25%,transparent);border-top-color:var(--color-primary);border-radius:50%;animation:exUploadSpin .6s linear infinite}@keyframes exUploadSpin{to{transform:rotate(360deg)}}.related-words{width:240px;background-color:var(--color-container-bg);border-radius:12px;padding:15px 15px 0;flex-shrink:0}.related-words::-webkit-scrollbar{display:none}.related-words-content{display:flex;flex-direction:column;gap:32px}.related-words-group-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.related-words-group-list{margin-top:8px;padding-left:5px}.related-words-item-wrapper{position:relative}.related-words-item{display:flex;align-items:center;justify-content:space-between;padding:5px 0}.related-words-phrase{font-size:16px;color:var(--color-text-base);line-height:1.5}.related-words-word-wrapper{position:relative;display:inline}.related-words-word{cursor:pointer;border-radius:3px;padding:1px 2px;transition:background-color .15s ease,color .15s ease}.related-words-word.selected{background-color:var(--color-primary);color:#fff}.related-words-item-divider{height:1px;background-color:var(--color-divider);margin:5px 0}.related-words-spacer{height:20px;flex-shrink:0}.drawing-board{width:100%;height:100%;display:flex;flex-direction:column;background-color:var(--color-container-bg);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px var(--color-shadow-gray)}.drawing-toolbar{display:flex;align-items:center;gap:20px;padding:10px 16px;background:var(--color-container-bg);border-bottom:1px solid var(--color-divider);flex-shrink:0;flex-wrap:wrap}.drawing-toolbar-group{display:flex;align-items:center;gap:8px}.drawing-toolbar-label{font-size:12px;color:var(--color-text-secondary);font-weight:500;white-space:nowrap}.drawing-size-control{display:flex;align-items:center;gap:8px}.drawing-size-slider{width:80px;height:4px;-webkit-appearance:none;appearance:none;background:var(--color-divider);border-radius:2px;outline:none;cursor:pointer}.drawing-size-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:2px solid var(--color-container-bg);box-shadow:0 1px 4px #00000026;transition:transform .1s ease}.drawing-size-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.drawing-size-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:2px solid var(--color-container-bg);box-shadow:0 1px 4px #00000026}.drawing-size-value{font-size:11px;color:var(--color-text-secondary);min-width:30px;text-align:right;font-variant-numeric:tabular-nums}.drawing-toolbar-btn{padding:5px 10px;border:1px solid var(--color-divider);border-radius:6px;background:var(--color-container-bg);color:var(--color-text-secondary);font-size:12px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.drawing-toolbar-btn:hover:not(:disabled){background:var(--color-container-subtle);border-color:var(--color-icon-inactive)}.drawing-toolbar-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.drawing-toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.drawing-toolbar-btn.eraser-btn.active{background:var(--color-error);border-color:var(--color-error)}.drawing-toolbar-btn.clear-btn:hover:not(:disabled){background:#f65d3a1a;color:var(--color-error);border-color:var(--color-error)}.drawing-color-swatches{display:flex;gap:5px}.drawing-color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s ease;padding:0;outline:none}.drawing-color-swatch:hover{transform:scale(1.15)}.drawing-color-swatch.active{border-color:var(--color-container-bg);box-shadow:0 0 0 2px currentColor,0 0 8px var(--color-shadow-gray);transform:scale(1.15)}.drawing-canvas-wrapper{flex:1;min-height:0;position:relative;overflow:hidden;background:repeating-linear-gradient(0deg,transparent,transparent 19px,rgba(0,0,0,.04) 19px,rgba(0,0,0,.04) 20px),repeating-linear-gradient(90deg,transparent,transparent 19px,rgba(0,0,0,.04) 19px,rgba(0,0,0,.04) 20px)}[data-theme=dark] .drawing-canvas-wrapper{background:repeating-linear-gradient(0deg,transparent,transparent 19px,rgba(255,255,255,.06) 19px,rgba(255,255,255,.06) 20px),repeating-linear-gradient(90deg,transparent,transparent 19px,rgba(255,255,255,.06) 19px,rgba(255,255,255,.06) 20px)}.drawing-canvas{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.drawing-status{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;background:var(--color-container-bg);border-top:1px solid var(--color-divider);font-size:12px;color:var(--color-text-secondary);flex-shrink:0}.drawing-pressure-hint{font-size:11px;color:var(--color-text-secondary);opacity:.7;font-style:italic}.ap-page{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--color-page-bg);color:var(--color-text-base);overflow:hidden}.ap-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ap-grow{flex:1;min-width:0}.ap-row{display:flex;align-items:center}.ap-center{flex:1;display:flex;align-items:center;justify-content:center;min-height:200px;height:100%}.ap-topbar{flex:none;display:flex;align-items:center;height:56px;gap:8px;padding-right:8px}.ap-topbar-side{flex:none;display:flex;align-items:center;min-width:52px}.ap-topbar-side.right{justify-content:flex-end}.ap-topbar-middle{flex:1;min-width:0;display:flex;align-items:center}.ap-topbar-middle.center{justify-content:center}.ap-topbar-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600}.ap-back{display:flex;align-items:center;justify-content:center;height:56px;padding:0 12px 0 14px;border:none;background:none;color:var(--color-icon-active);cursor:pointer}.ap-back:hover{color:var(--color-text-base)}.ap-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:10px;background:transparent;color:var(--color-icon-active);cursor:pointer}.ap-icon-btn:hover{background:var(--color-card-hover)}.ap-card{width:100%;padding:12px;border-radius:12px;background:var(--color-container-bg)}.ap-tag{display:inline-block;padding:3px 6px;border-radius:4px;background:var(--color-container-subtle);font-size:12px;line-height:1.3;color:var(--color-text-secondary)}.ap-color-tag{display:inline-block;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,var(--c) 12%,transparent);font-size:12px;line-height:1.3;color:var(--c)}.ap-chip{display:inline-block;padding:2px 6px;border-radius:4px;font-size:12px;line-height:1.4;font-weight:600;color:var(--c);background:color-mix(in srgb,var(--c) 10%,transparent)}.ap-solid{display:flex;align-items:center;justify-content:center;width:100%;height:54px;border:none;border-radius:8px;background:var(--bg);color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:background-color .12s ease,transform .12s ease}.ap-solid:hover:not(:disabled){filter:brightness(.97)}.ap-solid:active:not(:disabled){background:var(--bg-pressed)}.ap-solid.disabled{background:var(--color-btn-disabled);cursor:default}.ap-pill{display:flex;align-items:center;justify-content:center;width:100%;height:56px;border:none;border-radius:28px;background:color-mix(in srgb,var(--c) 15%,transparent);color:var(--c);font:inherit;font-size:18px;font-weight:600;cursor:pointer;transition:background-color .15s ease}.ap-pill:hover:not(:disabled){background:color-mix(in srgb,var(--c) 22%,transparent)}.ap-pill:disabled{cursor:default}.ap-pill.muted{background:var(--color-container-subtle);color:var(--color-text-secondary)}.ap-retry{margin-top:20px;padding:10px 28px;border:none;border-radius:20px;background:var(--color-primary);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.ap-text-btn{border:none;background:none;padding:6px 8px;font:inherit;font-size:14px;color:var(--color-primary);cursor:pointer}.ap-layered{position:relative;width:100%;overflow:hidden}.ap-layered>div{position:absolute;left:0;top:0;bottom:0;transition:width .6s ease-out}.ap-legend{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;line-height:1.3}.ap-legend i{display:inline-block;flex:none}.ap-spinner{display:inline-block;width:28px;height:28px;border:2.5px solid var(--color-primary);border-right-color:transparent;border-radius:50%;animation:apSpin .8s linear infinite}.ap-spinner.light{width:22px;height:22px;border-color:#fff;border-right-color:transparent}@keyframes apSpin{to{transform:rotate(360deg)}}.ap-message{display:flex;flex-direction:column;align-items:center;color:var(--color-text-unselected);text-align:center;padding:24px}.ap-message-text{margin-top:12px;font-size:15px;color:var(--color-text-secondary)}.ap-message-sub{margin-top:6px;font-size:12px;color:var(--color-text-secondary)}.ap-skel{display:inline-block;flex:none;background:var(--color-container-subtle);animation:apPulse 1.2s ease-in-out infinite}@keyframes apPulse{50%{opacity:.45}}.ap-nomore{display:flex;align-items:center;justify-content:center;gap:16px;font-size:13px;color:var(--color-text-unselected)}.ap-nomore i{width:40px;height:1px;background:var(--color-text-unselected)}.ap-thumb{display:inline-block;flex:none;overflow:hidden;background:var(--color-container-subtle);cursor:zoom-in}.ap-thumb img{display:block;width:100%;height:100%;object-fit:cover}.ap-viewer{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;background:#000000d9;cursor:zoom-out;animation:apFade .2s ease both}.ap-viewer img{max-width:100%;max-height:100%;border-radius:8px}@keyframes apFade{0%{opacity:0}}.ap-key-hints{flex:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;padding:16px 16px 22px;-webkit-user-select:none;user-select:none}.ap-key-hint{display:flex;align-items:center;gap:8px;padding:0;border:none;background:none;font:inherit;font-size:12px;color:var(--color-text-secondary);opacity:.65;transition:opacity .15s ease,color .15s ease}.ap-key-hint.clickable{cursor:pointer}.ap-key-hint.clickable:hover:not(:disabled){opacity:1}.ap-key-hint:disabled{opacity:.3;cursor:default}.ap-key-hint.active{opacity:1;color:var(--color-primary)}.ap-key-hint kbd{display:inline-flex;align-items:center;padding:2px 8px;font-family:inherit;font-size:11px;font-weight:500;line-height:1.6;white-space:nowrap;color:inherit;background:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px}.ap-keyboard{flex:none;background:var(--color-container-bg);padding:8px 6px 0;-webkit-user-select:none;user-select:none}.ap-kb-inner{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:8px}.ap-kb-row{display:flex;gap:6px}.ap-kb-row.r1{padding:0 5%}.ap-kb-key{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;height:48px;border:none;border-radius:8px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:20px;font-family:Inter,MiSans,sans-serif;cursor:pointer;touch-action:manipulation;transition:background-color .08s ease,transform .08s ease}.ap-kb-key:active:not(:disabled),.ap-kb-key.pressed{background:color-mix(in srgb,var(--color-primary) 18%,transparent);transform:scale(.96)}.ap-kb-key:disabled{color:var(--color-text-unselected);cursor:default}.ap-kb-key.wide{flex:1.5}.ap-kb-key.ghost{visibility:hidden;flex:1.5}.ap-kb-row.bottom .ap-kb-key{font-size:14px;color:var(--color-text-secondary)}.ap-kb-key.space{flex:3;gap:8px}.ap-kb-key.action{flex:1.4;font-size:15px;font-weight:600;color:#fff;background:var(--ac, var(--color-primary))}.ap-kb-key.action:disabled{color:#fff;opacity:.45}.ap-bottom-area{flex:none;background:var(--color-container-bg);padding:16px 24px 12px}.ap-bottom-area>.ap-bottom-inner{max-width:720px;margin:0 auto}.ap-bottom-up{position:absolute;inset:0;z-index:60;display:flex;flex-direction:column;background:var(--color-page-bg);animation:apUp .32s cubic-bezier(.22,1,.36,1) both}.ap-bottom-up.closing{animation:apDown .26s ease-in both}@keyframes apUp{0%{transform:translateY(100%)}}@keyframes apDown{to{transform:translateY(100%)}}.se-body{flex:1;min-height:0;height:auto;display:flex;flex-direction:column}.se-single{max-width:720px;margin:0 auto;padding:20px 16px 32px}.se-columns{flex:1;min-height:0;display:flex;max-width:1200px;width:100%;margin:0 auto}.se-col{padding:20px 12px 32px 24px}.se-col.right{padding:0 24px 32px 12px}.se-label{padding:24px 4px 10px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.se-error{display:flex;flex-direction:column;align-items:center;padding-top:48px;font-size:15px;color:var(--color-text-secondary)}.ap-sheet-mask{position:absolute;inset:0;z-index:70;display:flex;align-items:flex-end;justify-content:center;background:#00000052;animation:apFade .2s ease both}.ap-sheet-mask.closing{opacity:0;transition:opacity .2s ease}.ap-sheet{position:relative;width:100%;max-height:86%;display:flex;flex-direction:column;overflow:hidden;border-radius:16px 16px 0 0;background:var(--color-page-bg);color:var(--color-text-base);animation:apUp .28s cubic-bezier(.22,1,.36,1) both}.ap-sheet-mask.closing .ap-sheet{transform:translateY(40px);transition:transform .2s ease}.ap-sheet-handle{flex:none;display:block;width:36px;height:4px;margin:8px auto 0;border-radius:2px;background:var(--color-text-unselected)}.ap-switch{flex:none;position:relative;width:46px;height:28px;border:none;border-radius:14px;background:var(--color-btn-disabled);cursor:pointer;transition:background-color .2s ease}.ap-switch i{position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.ap-switch.on{background:var(--color-primary)}.ap-switch.on i{transform:translate(18px)}.ap-confetti{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:5}.ap-flow-sheet{position:fixed;z-index:1000;display:flex;flex-direction:column;background:var(--color-container-bg)}.ap-flow-body{flex:1;min-height:0;display:flex}.ap-flow-body .grammar-panel{flex:1}.se-generating{margin-top:14px;font-size:13px;color:var(--color-text-secondary);animation:ssPulse 1.4s ease-in-out infinite}.note-word-card{margin:12px 0;cursor:default;-webkit-user-select:text;user-select:text}.nwc-auto{overflow:hidden;transition:height .38s cubic-bezier(.22,1,.36,1)}.nwc-auto.instant{transition:none}.nwc-ready,.nwc-details,.nwc-spell,.nwc-speak,.nwc-body{animation:nwc-reveal .32s ease both}@keyframes nwc-reveal{0%{opacity:0;transform:translateY(3px)}}.nwc{--nwc-muted: var(--color-text-secondary);--nwc-tint: var(--color-primary);--nwc-warn: var(--color-warning);--nwc-red: var(--color-error);--nwc-line: color-mix(in srgb, var(--color-divider) 70%, transparent);position:relative;padding:14px 18px 12px;border-radius:12px;background:color-mix(in srgb,var(--color-text-base) 3%,transparent);border:1px solid var(--nwc-line);font-size:15px;line-height:1.65;color:var(--color-text-base)}.nwc p{margin:0}.nwc button{font:inherit}.nwc-eyebrow{display:flex;align-items:center;gap:8px;min-height:28px;color:var(--nwc-muted);font-size:12px;letter-spacing:.5px}.nwc-phonetic{letter-spacing:0;font-family:Lucida Sans Unicode,Arial Unicode MS,sans-serif;font-size:13px}.nwc-phonetic:before{content:"·";margin-right:8px}.nwc-actions{display:inline-flex;gap:2px;margin-left:auto}.nwc-kind{color:color-mix(in srgb,var(--nwc-tint) 85%,var(--nwc-muted));font-weight:500}.nwc-icon-btn{--btn: var(--nwc-muted);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--nwc-muted);cursor:pointer;transition:opacity .15s,background-color .15s,color .15s,transform .15s}.nwc-icon-btn:hover{color:var(--btn);background:color-mix(in srgb,var(--btn) 13%,transparent)}.nwc-icon-btn:active{transform:scale(.92)}.nwc-mode-btn{--btn: var(--color-primary);color:color-mix(in srgb,var(--color-primary) 75%,var(--nwc-muted))}.nwc-mode-btn.on{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 13%,transparent)}.nwc-star{--btn: var(--nwc-warn)}.nwc-star.on{color:var(--nwc-warn)}.nwc-close{--btn: var(--nwc-red)}@media(hover:hover){.nwc .nwc-close{opacity:0}.nwc:hover .nwc-close,.nwc .nwc-close:focus-visible{opacity:1}}.nwc-title{display:flex;align-items:center;gap:8px;margin:2px 0 6px}.nwc-term{font-size:22px;font-weight:600;line-height:1.3;letter-spacing:-.1px;overflow-wrap:anywhere}.nwc.kind-sentence .nwc-term{font-size:17px;font-weight:500;line-height:1.6;letter-spacing:0}.nwc-speaker{display:inline-flex;flex:none;padding:4px;margin:-4px 0;border-radius:50%;color:var(--color-primary);cursor:pointer;opacity:.85;transition:opacity .15s,background-color .15s}.nwc-speaker:hover{opacity:1;background:color-mix(in srgb,var(--color-primary) 13%,transparent)}.nwc-meaning{font-size:16px}.nwc-translation{color:var(--color-text-base);opacity:.88}.nwc-senses{margin:4px 0 0;padding:0;list-style:none;color:var(--nwc-muted);font-size:14px}.nwc-senses i{margin-right:8px;font-style:italic;opacity:.8}.nwc-keywords{display:flex;flex-wrap:wrap;gap:2px 16px;margin-top:6px!important;color:var(--nwc-muted);font-size:14px}.nwc-keywords b{margin-right:6px;color:var(--color-text-base);font-weight:500}.nwc-details{display:flex;flex-direction:column;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--nwc-line);font-size:14px}.nwc-details h6{margin:0 0 2px;color:color-mix(in srgb,var(--nwc-tint) 60%,var(--nwc-muted));font-size:12px;font-weight:500;letter-spacing:.5px}.nwc-example+.nwc-example{margin-top:6px}.nwc-example-speaker{display:inline-flex;margin-left:6px;vertical-align:-2px;color:var(--color-primary);cursor:pointer;opacity:.6;transition:opacity .15s}.nwc-example-speaker:hover{opacity:1}.nwc-example-zh{color:var(--nwc-muted);font-size:13px}.nwc-foot{display:flex;align-items:center;gap:12px;margin-top:8px}.nwc-more{display:inline-flex;align-items:center;gap:2px;height:24px;margin-left:-8px;padding:0 6px 0 8px;border:none;border-radius:12px;background:none;color:var(--nwc-tint);font-size:12px!important;cursor:pointer;transition:background-color .15s}.nwc-more:hover{background:color-mix(in srgb,var(--nwc-tint) 12%,transparent)}.nwc-more svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}.nwc-count{margin-left:auto;color:color-mix(in srgb,var(--color-primary) 70%,var(--nwc-muted));font-size:12px}.nwc-spell{position:relative;margin-top:4px;cursor:text}.nwc-spell-prompt{font-size:16px}.nwc-slots{display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0 10px}.nwc-slot-word{display:inline-flex;gap:5px}.nwc-slot{display:inline-flex;align-items:flex-end;justify-content:center;width:20px;height:30px;padding-bottom:3px;box-sizing:border-box;border-bottom:1.5px solid var(--nwc-line);font-size:20px;font-weight:500;line-height:1}.nwc-slot.sep{width:auto;min-width:6px;border-bottom-color:transparent;color:var(--nwc-muted)}.nwc-slot.filled{border-bottom-color:var(--nwc-muted)}.nwc-slot.active{border-bottom-color:var(--color-primary);animation:nwc-blink 1s step-end infinite}@keyframes nwc-blink{50%{border-bottom-color:transparent}}.nwc-slots.correct .nwc-slot:not(.sep){color:var(--color-primary);border-bottom-color:var(--color-primary)}.nwc-slots.error .nwc-slot:not(.sep){color:var(--nwc-red);border-bottom-color:var(--nwc-red)}.nwc-slots.error{animation:nwc-shake .3s}@keyframes nwc-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.nwc-spell-feedback{min-height:20px;color:var(--nwc-muted);font-size:12px}.nwc-spell-feedback em{margin-left:12px;font-style:normal;opacity:.8}.nwc-spell-feedback b{font-weight:500}.nwc-ok{color:var(--color-primary)}.nwc-bad{margin-right:8px;color:var(--nwc-red)}.nwc-spell-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:10px}.nwc-btn{--btn: var(--color-text-base);height:28px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:var(--nwc-muted);font-size:13px!important;cursor:pointer;transition:background-color .15s,color .15s}.nwc-btn:hover:not(:disabled){color:var(--btn);background:color-mix(in srgb,var(--btn) 10%,transparent)}.nwc-btn.tint-primary{--btn: var(--color-primary);color:color-mix(in srgb,var(--color-primary) 80%,var(--nwc-muted))}.nwc-btn.tint-warn{--btn: var(--nwc-warn);color:color-mix(in srgb,var(--nwc-warn) 80%,var(--nwc-muted))}.nwc-btn.primary{margin-left:auto;padding:0 14px;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.nwc-btn.primary:hover:not(:disabled){color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.nwc-btn:disabled{opacity:.4;cursor:default}.nwc-input{position:absolute;left:0;top:0;width:1px;height:1px;padding:0;border:0;opacity:0;font-size:16px;pointer-events:none}.nwc-speak{position:relative;cursor:default}.nwc-speak-meaning{color:var(--nwc-muted);font-size:14px}.nwc-speak-stage{display:flex;align-items:center;min-height:52px;margin:10px 0 4px}.nwc-speak-stage>canvas{flex:1}.nwc-scoring{display:inline-flex;gap:5px}.nwc-scoring i{width:6px;height:6px;border-radius:50%;background:var(--color-primary);animation:nwc-dot 1.2s infinite}.nwc-scoring i:nth-child(2){animation-delay:.2s}.nwc-scoring i:nth-child(3){animation-delay:.4s}.nwc-speak-result{animation:nwc-reveal .32s ease both}.nwc-score{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}.nwc-score b{font-size:32px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}.nwc-score>span{font-size:14px}.nwc-score-parts{color:var(--nwc-muted);font-size:12px!important}.nwc-score-words{display:flex;flex-wrap:wrap;gap:2px 7px;margin-top:4px!important;font-size:15px}.nwc-hold{display:inline-flex;align-items:center;gap:5px;touch-action:none;user-select:none;-webkit-user-select:none}.nwc-hold.active{color:#fff!important;background:var(--color-primary)!important}.nwc-count b{font-weight:600}.nwc-loading{overflow:hidden}.nwc-loading:before{content:"";position:absolute;top:0;left:-40%;width:40%;height:1.5px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);animation:nwc-sweep 1.8s ease-in-out infinite}@keyframes nwc-sweep{to{left:100%}}.nwc-spark{flex:none;color:var(--color-primary);animation:nwc-twinkle 1.8s ease-in-out infinite}@keyframes nwc-twinkle{50%{opacity:.4;transform:scale(.8)}}.nwc-loading-step{display:inline-flex;align-items:baseline;letter-spacing:0;animation:nwc-fade-in .4s ease both}.nwc-loading-step i{width:2.5px;height:2.5px;margin-left:3px;border-radius:50%;background:currentColor;animation:nwc-dot 1.2s infinite}.nwc-loading-step i:nth-child(2){animation-delay:.2s}.nwc-loading-step i:nth-child(3){animation-delay:.4s}@keyframes nwc-dot{0%,60%,to{opacity:.2}30%{opacity:1}}@keyframes nwc-fade-in{0%{opacity:0}}.nwc-loading-term{opacity:.45}.nwc-skeleton{display:flex;flex-direction:column;gap:10px;padding:4px 0 6px}.nwc-skeleton i{display:block;height:10px;border-radius:5px;background:linear-gradient(90deg,color-mix(in srgb,var(--color-text-base) 6%,transparent) 25%,color-mix(in srgb,var(--color-text-base) 12%,transparent),color-mix(in srgb,var(--color-text-base) 6%,transparent) 65%);background-size:300% 100%;animation:nwc-shimmer 1.5s linear infinite}@keyframes nwc-shimmer{0%{background-position:100% 0}to{background-position:-50% 0}}@media(prefers-reduced-motion:reduce){.nwc-auto{transition:none}.nwc-ready,.nwc-details,.nwc-spell,.nwc-speak,.nwc-body,.nwc-scoring i,.nwc-loading:before,.nwc-spark,.nwc-skeleton i,.nwc-loading-step i{animation:none}}.note-panel{width:100%;height:100%;display:flex;flex-direction:row;background-color:var(--color-container-bg);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px var(--color-shadow-gray)}.note-panel-left{display:flex;flex-direction:column;min-width:0;overflow:hidden;transition:width .25s ease,min-width .25s ease,opacity .2s ease}.note-panel-left.no-transition{transition:none!important}.note-panel-left.collapsed{width:0!important;min-width:0!important;opacity:0;overflow:hidden}.note-panel-left-header{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px 18px;flex-shrink:0}.note-panel-left-header>div{display:flex;align-items:center}.note-panel-left-title{font-size:15px;font-weight:600;color:var(--color-text-base)}.note-panel-left-count{font-size:11px;color:var(--color-text-secondary);background-color:var(--color-container-subtle);padding:1px 7px;border-radius:8px;margin-left:6px}.note-panel-add-btn{width:28px;height:28px;border:none;border-radius:7px;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.note-panel-add-btn:hover{background-color:var(--color-container-subtle);color:var(--color-primary)}.note-panel-add-btn svg{width:16px;height:16px}.note-list{flex:1;min-height:0;overflow-y:auto;padding:0 8px 8px}.note-list::-webkit-scrollbar{width:3px}.note-list::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.note-list-item{display:flex;align-items:center;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background-color .15s ease;gap:8px;margin-bottom:2px}.note-list-item:hover,.note-list-item.active{background-color:var(--color-container-subtle)}.note-list-item-info{flex:1;min-width:0}.note-list-item-title{font-size:13px;font-weight:500;color:var(--color-text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-list-item-title-input{font-size:13px;font-weight:500;color:var(--color-text-base);border:1px solid var(--color-primary);background:var(--color-container-bg);border-radius:4px;padding:1px 6px;outline:none;width:100%;font-family:inherit}.note-list-item-time{font-size:11px;color:var(--color-text-secondary);opacity:.7;margin-top:2px}.note-list-item-delete{width:24px;height:24px;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s ease;flex-shrink:0}.note-list-item:hover .note-list-item-delete{opacity:1}.note-list-item-delete:hover{background-color:#f65d3a1a;color:var(--color-error)}.note-list-item-delete svg{width:13px;height:13px}.note-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:var(--color-text-secondary);padding:20px}.note-list-empty-icon{font-size:32px;opacity:.5}.note-list-empty-text{font-size:13px}.note-panel-divider{width:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:col-resize;position:relative;-webkit-user-select:none;user-select:none;z-index:2}.note-panel-divider:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background-color:var(--color-divider);transform:translate(-50%)}.note-panel-divider:hover:before,.note-panel-divider.dragging:before{width:2px;background-color:var(--color-primary);opacity:.5}.note-panel-divider-toggle{width:20px;height:40px;border:1px solid var(--color-divider);border-radius:6px;background:var(--color-container-bg);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:all .15s ease;padding:0}.note-panel-divider-toggle:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-container-subtle)}.note-panel-divider-toggle svg{width:14px;height:14px;transition:transform .25s ease}.note-panel-divider-toggle.collapsed svg{transform:rotate(180deg)}.note-panel-right{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.note-editor-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--color-text-secondary)}.note-editor-empty-icon{font-size:40px;opacity:.4}.note-editor-empty-text{font-size:14px}.note-editor-empty-hint{font-size:12px;opacity:.6}.note-editor-wrapper{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative}.note-editor-toolbar{display:flex;align-items:center;gap:4px;padding:8px 12px;border-bottom:1px solid var(--color-divider);background:var(--color-container-bg);flex-shrink:0}.note-toolbar-btn{width:32px;height:32px;border:none;border-radius:7px;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s ease;padding:0}.note-toolbar-btn:hover{background-color:var(--color-container-subtle);color:var(--color-text-base)}.note-toolbar-btn:active{background-color:#55b6851f;color:var(--color-primary)}.note-toolbar-btn-active{background-color:color-mix(in srgb,var(--color-primary) 12%,transparent)!important;color:var(--color-primary)!important}.note-toolbar-btn svg{width:16px;height:16px}.note-pixabay-search{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.note-pixabay-search-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;flex-shrink:0}.note-pixabay-search-input{flex:1;height:34px;border:1.5px solid var(--color-divider);border-radius:8px;padding:0 12px;font-size:13px;font-family:inherit;color:var(--color-text-base);background:var(--color-container-bg);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.note-pixabay-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #55b6851f}.note-pixabay-search-input::placeholder{color:var(--color-text-secondary);opacity:.5}.note-pixabay-search-btn{width:34px;height:34px;border:none;border-radius:8px;background:var(--color-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease,transform .1s ease;flex-shrink:0}.note-pixabay-search-btn:hover{opacity:.88}.note-pixabay-search-btn:active{transform:scale(.95)}.note-pixabay-search-btn:disabled{opacity:.5;cursor:not-allowed}.note-pixabay-masonry{flex:1;min-height:0;overflow-y:auto;padding:0 14px 14px}.note-pixabay-masonry::-webkit-scrollbar{width:4px}.note-pixabay-masonry::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}.note-pixabay-masonry-grid{display:flex;width:auto;margin-left:-10px}.note-pixabay-masonry-col{padding-left:10px;background-clip:padding-box}.note-pixabay-card{margin-bottom:10px;border-radius:10px;overflow:hidden;position:relative;cursor:grab;background:var(--color-container-subtle);transition:transform .2s ease,box-shadow .2s ease}.note-pixabay-card:active{cursor:grabbing}.note-pixabay-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001f}.note-pixabay-card img{display:block;width:100%;height:auto;transition:opacity .3s ease}.note-pixabay-card-overlay{position:absolute;bottom:0;left:0;right:0;padding:24px 10px 8px;background:linear-gradient(transparent,#0000008c);display:flex;align-items:center;justify-content:space-between;opacity:0;transition:opacity .2s ease}.note-pixabay-card:hover .note-pixabay-card-overlay{opacity:1}.note-pixabay-card-user{display:flex;align-items:center;gap:4px;font-size:11px;color:#ffffffe6;font-weight:500}.note-pixabay-card-stats{font-size:11px;color:#fffc}.note-pixabay-loading-center{display:flex;align-items:center;justify-content:center;padding:60px 0}.note-pixabay-sentinel{display:flex;align-items:center;justify-content:center;padding:16px 0;min-height:40px}.note-pixabay-end{font-size:12px;color:var(--color-text-secondary);opacity:.5}.note-pixabay-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 20px;color:var(--color-text-secondary);font-size:14px;opacity:.7}.note-pixabay-empty span:first-child{font-size:32px}.note-pixabay-attribution{flex-shrink:0;padding:6px 14px;text-align:right;font-size:11px;color:var(--color-text-secondary);opacity:.5;border-top:1px solid var(--color-divider)}.note-pixabay-attribution a{color:var(--color-primary);text-decoration:none}.note-pixabay-attribution a:hover{text-decoration:underline}.note-pixabay-preview-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:noteOverlayIn .2s ease}.note-pixabay-preview-modal{position:relative;max-width:90vw;max-height:85vh;border-radius:14px;overflow:hidden;background:var(--color-container-bg);box-shadow:0 12px 48px #0000004d;animation:noteModalIn .25s cubic-bezier(.34,1.56,.64,1)}.note-pixabay-preview-modal img{display:block;max-width:90vw;max-height:calc(85vh - 48px);object-fit:contain}.note-pixabay-preview-info{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;font-size:13px;color:var(--color-text-secondary)}.note-pixabay-preview-user{font-weight:500;color:var(--color-text-base)}.note-pixabay-preview-stats{font-size:12px;opacity:.7}.note-pixabay-preview-close{position:absolute;top:10px;right:10px;width:32px;height:32px;border:none;border-radius:50%;background:#00000080;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.note-pixabay-preview-close:hover{background:#000000b3}.note-editor-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 24px;font-family:MiSans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:18px;line-height:1.75;color:var(--color-text-base);outline:none;cursor:text;word-wrap:break-word;overflow-wrap:break-word}.note-editor-content::-webkit-scrollbar{width:4px}.note-editor-content::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}.note-editor-content:empty:before{content:attr(data-placeholder);color:var(--color-text-secondary);opacity:.45;font-style:italic;pointer-events:none}.note-editor-content ::selection{background-color:#55b68540}.note-editor-content b,.note-editor-content strong{font-weight:700}.note-editor-content mark{color:var(--color-primary);background-color:transparent}.note-editor-content i,.note-editor-content em{font-style:italic}.note-editor-content u{text-decoration:underline;text-underline-offset:2px}.note-editor-content hr{border:none;border-top:1px solid var(--color-divider);margin:14px 0}.note-toolbar-sep{width:1px;height:18px;background-color:var(--color-divider);margin:0 4px;flex-shrink:0}.note-toolbar-btn-red{position:relative}.note-toolbar-color-dot{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:12px;height:2px;border-radius:1px}.note-editor-status{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;border-top:1px solid var(--color-divider);flex-shrink:0;background:var(--color-container-bg)}.note-editor-status-text{font-size:11px;color:var(--color-text-secondary);opacity:.7}.note-editor-status-saved{font-size:11px;color:var(--color-primary);opacity:.8}.note-delete-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:noteOverlayIn .2s ease}@keyframes noteOverlayIn{0%{opacity:0}to{opacity:1}}.note-delete-modal{background:var(--color-container-bg);border-radius:14px;padding:28px 32px 22px;min-width:300px;max-width:360px;text-align:center;box-shadow:0 8px 32px #0000002e;animation:noteModalIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes noteModalIn{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.note-delete-modal-icon{font-size:36px;margin-bottom:10px}.note-delete-modal-title{font-size:16px;font-weight:600;color:var(--color-text-base);margin-bottom:6px}.note-delete-modal-text{font-size:13px;color:var(--color-text-secondary);line-height:1.5;margin-bottom:20px}.note-delete-modal-actions{display:flex;gap:10px;justify-content:center}.note-delete-modal-btn{flex:1;padding:8px 0;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.note-delete-modal-btn.cancel{background:var(--color-container-subtle);color:var(--color-text-base)}.note-delete-modal-btn.cancel:hover{background:var(--color-card-hover)}.note-delete-modal-btn.confirm{background:var(--color-error);color:#fff}.note-delete-modal-btn.confirm:hover{opacity:.88}.note-table-picker-overlay{position:fixed;inset:0;z-index:1000;background:transparent}.note-table-picker{position:absolute;top:52px;right:12px;background:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:10px;padding:12px 14px;box-shadow:0 6px 24px #00000024;z-index:1001;animation:noteTablePickerIn .15s ease}@keyframes noteTablePickerIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.note-table-picker-label{font-size:12px;color:var(--color-text-secondary);text-align:center;margin-bottom:8px;font-weight:500;min-height:16px}.note-table-picker-grid{display:flex;flex-direction:column;gap:3px}.note-table-picker-row{display:flex;gap:3px}.note-table-picker-cell{width:20px;height:20px;border-radius:3px;border:1.5px solid var(--color-divider);cursor:pointer;transition:all .08s ease;background:transparent}.note-table-picker-cell:hover{border-color:#55b68580}.note-table-picker-cell.active{background:#55b6852e;border-color:var(--color-primary)}.note-editor-content .note-table-wrapper{margin:12px 20px 12px 0;border-radius:8px;border:1px solid var(--color-divider);position:relative;width:fit-content;max-width:calc(100% - 20px)}.note-editor-content .note-table-wrapper .note-table-scroll{overflow-x:auto;overflow-y:hidden;border-radius:8px;position:relative;z-index:1}.note-editor-content .note-table-wrapper .note-table-scroll::-webkit-scrollbar{height:5px}.note-editor-content .note-table-wrapper .note-table-scroll::-webkit-scrollbar-track{background:transparent}.note-editor-content .note-table-wrapper .note-table-scroll::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}.note-editor-content .note-table-wrapper .note-table-scroll::-webkit-scrollbar-thumb:hover{background:#00000038}.note-editor-content table.note-table{border-collapse:collapse;table-layout:auto}.note-editor-content .note-table thead th{background:var(--color-container-subtle);font-weight:600;font-size:13px;color:var(--color-text-base);padding:8px 12px;border:1px solid var(--color-divider);text-align:left;outline:none;min-width:100px;position:relative;white-space:nowrap}.note-editor-content .note-table thead th:empty:before{content:attr(data-placeholder);color:var(--color-text-secondary);opacity:.4;font-weight:400;font-style:italic;pointer-events:none}.note-editor-content .note-table thead th.has-content:before{display:none}.note-editor-content .note-table tbody td{padding:7px 12px;border:1px solid var(--color-divider);font-size:14px;color:var(--color-text-base);outline:none;min-width:100px;transition:background .1s ease;vertical-align:top;white-space:nowrap}.note-editor-content .note-table tbody td:focus,.note-editor-content .note-table thead th:focus{background:#55b6850f;box-shadow:inset 0 0 0 1.5px #55b68559}.note-editor-content .note-table-wrapper .note-table-add-row-bar{position:absolute;left:0;right:0;bottom:-18px;height:16px;display:flex;align-items:center;justify-content:center;border:1px dashed transparent;border-radius:0 0 6px 6px;font-size:14px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;opacity:0;transition:all .15s ease;-webkit-user-select:none;user-select:none}.note-editor-content .note-table-wrapper:hover .note-table-add-row-bar{opacity:.6;border-color:var(--color-divider)}.note-editor-content .note-table-wrapper .note-table-add-row-bar:hover{opacity:1;border-color:var(--color-primary);color:var(--color-primary);background:#55b6850f}.note-editor-content .note-table-wrapper .note-table-add-col-bar{position:absolute;top:0;right:-18px;width:16px;bottom:0;display:flex;align-items:center;justify-content:center;border:1px dashed transparent;border-radius:0 6px 6px 0;font-size:14px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;opacity:0;transition:all .15s ease;-webkit-user-select:none;user-select:none;writing-mode:vertical-lr}.note-editor-content .note-table-wrapper:hover .note-table-add-col-bar{opacity:.6;border-color:var(--color-divider)}.note-editor-content .note-table-wrapper .note-table-add-col-bar:hover{opacity:1;border-color:var(--color-primary);color:var(--color-primary);background:#55b6850f}.note-table-lp-del-row{position:absolute;left:-22px;width:20px;display:flex;align-items:center;justify-content:center;background:#f65d3a1f;border:1px solid rgba(246,93,58,.3);border-radius:4px 0 0 4px;color:var(--color-error);font-size:16px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:10;animation:lpBtnIn .15s ease;transition:all .12s ease}.note-table-lp-del-row.active{background:#f65d3ad9;border-color:#f65d3ae6;color:#fff;transform:scaleX(1.15)}.note-table-lp-del-col{position:absolute;top:-22px;height:20px;display:flex;align-items:center;justify-content:center;background:#f65d3a1f;border:1px solid rgba(246,93,58,.3);border-radius:4px 4px 0 0;color:var(--color-error);font-size:16px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:10;animation:lpBtnIn .15s ease;transition:all .12s ease}.note-table-lp-del-col.active{background:#f65d3ad9;border-color:#f65d3ae6;color:#fff;transform:scaleY(1.15)}@keyframes lpBtnIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.note-editor-content .note-table-wrapper .note-table-fullscreen-btn{position:absolute;top:4px;right:4px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--color-container-bg);border:1px solid var(--color-divider);color:var(--color-text-secondary);cursor:pointer;opacity:0;pointer-events:none;transition:all .18s ease;z-index:5;box-shadow:0 1px 4px #00000014}.note-editor-content .note-table-wrapper:hover .note-table-fullscreen-btn{opacity:.7;pointer-events:auto}.note-editor-content .note-table-wrapper .note-table-fullscreen-btn:hover{opacity:1;background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 2px 8px #55b6854d;transform:scale(1.08)}.note-table-fs-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:noteTableFsOverlayIn .2s ease}@keyframes noteTableFsOverlayIn{0%{opacity:0}to{opacity:1}}.note-table-fs-modal{background:var(--color-container-bg);border-radius:12px;padding:0;width:96vw;max-height:90vh;overflow:auto;box-shadow:0 16px 64px #00000040;animation:noteTableFsModalIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes noteTableFsModalIn{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.note-table-fs-modal::-webkit-scrollbar{width:6px;height:6px}.note-table-fs-modal::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}.note-table-fs-modal::-webkit-scrollbar-thumb:hover{background:#00000038}.note-table-fs-close{position:fixed;top:16px;right:16px;width:36px;height:36px;border:none;border-radius:50%;background:#00000073;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;z-index:10001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.note-table-fs-close:hover{background:var(--color-error);color:#fff;transform:scale(1.1)}.note-table-fs-content{width:100%;overflow-x:auto}.note-table-fs-content table.note-table{border-collapse:collapse;table-layout:auto;width:100%}.note-table-fs-content .note-table thead th{background:var(--color-container-subtle);font-weight:600;font-size:14px;color:var(--color-text-base);padding:10px 16px;border:1px solid var(--color-divider);text-align:left;white-space:nowrap}.note-table-fs-content .note-table tbody td{padding:9px 16px;border:1px solid var(--color-divider);font-size:14px;color:var(--color-text-base);vertical-align:top;white-space:nowrap}.note-table-fs-content .note-table tbody tr:hover td{background:#55b6850a}.note-slash-overlay{position:fixed;inset:0;z-index:999;background:transparent}.note-slash-popup{position:absolute;z-index:1000;display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:8px;box-shadow:0 4px 16px #0000001f;animation:noteSlashIn .12s ease}@keyframes noteSlashIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.note-slash-label{font-size:12px;font-weight:600;color:var(--color-primary);white-space:nowrap}.note-slash-input{width:38px;padding:3px 6px;font-size:13px;font-family:inherit;border:1px solid var(--color-divider);border-radius:5px;outline:none;background:var(--color-container-bg);color:var(--color-text-base);text-align:center;-moz-appearance:textfield;appearance:textfield}.note-slash-input::-webkit-inner-spin-button,.note-slash-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.note-slash-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #55b68526}.note-slash-sep{font-size:12px;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.note-jimeng-panel{flex:1;display:flex;flex-direction:column;padding:16px;gap:12px;overflow-y:auto}.note-jimeng-form{display:flex;flex-direction:column;gap:14px}.note-jimeng-field{display:flex;flex-direction:column;gap:6px}.note-jimeng-field label{font-size:12px;font-weight:600;color:var(--color-text-secondary);letter-spacing:.5px}.note-jimeng-prompt{width:100%;padding:10px 12px;font-size:13px;line-height:1.5;border-radius:8px;border:1px solid var(--color-divider);background:var(--color-container-bg);color:var(--color-text-primary);resize:vertical;min-height:60px;transition:border-color .2s ease;font-family:inherit;box-sizing:border-box}.note-jimeng-prompt:focus{outline:none;border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa26}.note-jimeng-prompt:disabled{opacity:.6}.note-jimeng-chips{display:flex;flex-wrap:wrap;gap:6px}.note-jimeng-chip{padding:4px 10px;font-size:12px;border-radius:14px;border:1px solid var(--color-divider);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease;white-space:nowrap}.note-jimeng-chip:hover{border-color:#a78bfa;color:#a78bfa}.note-jimeng-chip.active{background:color-mix(in srgb,#a78bfa 15%,transparent);border-color:#a78bfa;color:#a78bfa;font-weight:500}.note-jimeng-chip:disabled{opacity:.5;cursor:not-allowed}.note-jimeng-gen-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 0;width:100%;font-size:13px;font-weight:600;border-radius:8px;border:none;cursor:pointer;color:#fff;background:linear-gradient(135deg,#8b5cf6,#a78bfa);transition:all .2s ease}.note-jimeng-gen-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#8b5cf6);box-shadow:0 4px 12px #8b5cf64d}.note-jimeng-gen-btn:disabled{opacity:.5;cursor:not-allowed}.note-jimeng-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:noteSpin .8s linear infinite}@keyframes noteSpin{to{transform:rotate(360deg)}}.note-jimeng-error{font-size:12px;color:#ef4444;padding:8px 12px;border-radius:6px;background:color-mix(in srgb,#ef4444 8%,transparent)}.note-jimeng-results{display:flex;flex-direction:column;gap:8px}.note-jimeng-results-title{font-size:12px;font-weight:600;color:var(--color-text-secondary);letter-spacing:.5px}.note-jimeng-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.note-jimeng-result-card{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--color-divider);cursor:grab;transition:transform .15s ease,box-shadow .15s ease}.note-jimeng-result-card:active{cursor:grabbing}.note-jimeng-result-card:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.note-jimeng-result-card img{width:100%;display:block;object-fit:cover;aspect-ratio:1}.note-jimeng-drag-hint{position:absolute;bottom:0;left:0;right:0;padding:4px 0;text-align:center;font-size:10px;color:#fff;background:linear-gradient(transparent,#00000080);opacity:0;transition:opacity .15s ease}.note-jimeng-result-card:hover .note-jimeng-drag-hint{opacity:1}.note-asr-mic-wrapper{position:absolute;bottom:40px;right:18px;display:flex;align-items:center;gap:8px;z-index:20;animation:noteAsrMicIn .25s cubic-bezier(.34,1.56,.64,1)}@keyframes noteAsrMicIn{0%{opacity:0;transform:scale(.5) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.note-asr-mic-btn{width:40px;height:40px;border:none;border-radius:50%;background:var(--color-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #55b68559;transition:all .2s ease;position:relative}.note-asr-mic-btn:hover{transform:scale(1.08);box-shadow:0 6px 20px #55b68573}.note-asr-mic-btn:active{transform:scale(.95)}.note-asr-mic-btn.recording{background:#e53e3e;box-shadow:0 4px 16px #e53e3e59;animation:noteAsrPulse 1.5s ease-in-out infinite}.note-asr-mic-btn.recording:hover{box-shadow:0 6px 20px #e53e3e80}.note-asr-mic-btn.recording:before{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(229,62,62,.4);animation:noteAsrRing 1.5s ease-out infinite}@keyframes noteAsrPulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes noteAsrRing{0%{transform:scale(1);opacity:.6}to{transform:scale(1.45);opacity:0}}.note-asr-mic-label{font-size:12px;color:#e53e3e;font-weight:500;white-space:nowrap;padding:3px 10px;background:#e53e3e14;border-radius:12px;animation:noteAsrLabelIn .3s ease}@keyframes noteAsrLabelIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.note-asr-inline-text{background-color:#e53e3e14;border-radius:2px;padding:0 1px}.note-editor-toolbar{container-type:inline-size}.note-toolbar-btn.note-toolbar-btn-card{width:auto;min-width:32px;padding:0 8px;gap:4px;color:var(--color-primary)}.note-toolbar-btn-label{font-size:13px;font-weight:600;white-space:nowrap}@container (max-width: 440px){.note-toolbar-btn.note-toolbar-btn-card{padding:0}.note-toolbar-btn-label{display:none}}.spelling-peek-overlay{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background-color:var(--color-container-bg);border-radius:10px;opacity:0;pointer-events:none;transition:opacity .12s ease-out}.spelling-peek-overlay.show{opacity:1;transition:opacity .18s ease-in}.spelling-peek-overlay.single{border-radius:10px;padding:0 16px}.spelling-peek-text{font-size:15px;font-weight:500;color:var(--color-text-secondary);text-align:center;line-height:1.6;-webkit-user-select:none;user-select:none;white-space:pre-line}.spelling-slots-wrap{position:relative;display:flex;align-items:center;justify-content:center;min-height:48px}.spelling-peek-word{font-size:24px;font-weight:600;color:var(--color-text-secondary);letter-spacing:2px;-webkit-user-select:none;user-select:none}.spelling-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.spelling-panel.visible{transform:translateY(0)}.spelling-panel-loading{flex:1;display:flex;align-items:center;justify-content:center}.spelling-panel-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;opacity:0;transition:opacity .3s ease}.spelling-panel-content.fade-in{opacity:1}.spelling-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);padding:15px;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:background-color .2s ease}.spelling-progress-section{display:flex;align-items:center;gap:12px;flex-shrink:0}.spelling-progress-bar{width:254px;height:10px;background-color:var(--color-container-subtle);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0}.spelling-progress-fill{height:100%;background-color:var(--color-primary);border-radius:var(--radius-full);transition:width .4s cubic-bezier(.4,0,.2,1)}.spelling-progress-text{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none}.spelling-toolbar-right{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.spelling-toolbar-divider{width:1px;height:16px;background-color:var(--color-divider);margin:0 4px;flex-shrink:0}.spelling-toolbar-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;border-radius:6px;cursor:pointer;padding:0;color:var(--color-text-secondary);transition:background-color .2s ease,color .2s ease;flex-shrink:0}.spelling-toolbar-btn svg{width:16px;height:16px}.spelling-toolbar-btn svg path{fill:var(--color-text-secondary);transition:fill .2s ease}.spelling-toolbar-btn.active{color:var(--color-primary)}.spelling-toolbar-btn.active svg path{fill:var(--color-primary)}.spelling-toolbar-btn:hover{background-color:var(--color-container-subtle)}.spelling-fav-btn.favorited{color:#f5a623}.spelling-fav-btn.favorited svg path{fill:#f5a623;stroke:#f5a623}.spelling-fav-btn:not(.favorited) svg path{fill:none;stroke:var(--color-text-secondary)}.spelling-fav-btn:active{transform:scale(1.25)}.spelling-image-menu-wrap{position:relative;display:flex;align-items:center}.spelling-image-dropdown{position:absolute;top:calc(100% + 6px);right:0;background-color:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:10px;padding:4px;display:flex;flex-direction:column;gap:2px;min-width:140px;box-shadow:0 4px 16px #0000001a,0 1px 4px #0000000f;z-index:10;animation:dropdownFadeIn .15s ease both}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.spelling-image-dropdown-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:none;background:none;border-radius:7px;cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text-secondary);transition:background-color .15s ease,color .15s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.spelling-image-dropdown-item:hover{background-color:var(--color-container-subtle);color:var(--color-text-base)}.spelling-image-dropdown-item.active{color:var(--color-primary)}.spelling-image-dropdown-item svg{flex-shrink:0;opacity:.7}.spelling-image-dropdown-item.active svg{opacity:1;stroke:var(--color-primary)}.spelling-image-dropdown-check{margin-left:auto;font-size:12px;font-weight:700;color:var(--color-primary);opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .15s ease}.spelling-image-dropdown-check.show{opacity:1;transform:scale(1)}.spelling-mode-selector{display:flex;align-items:center;gap:2px;background-color:var(--color-container-subtle);border-radius:8px;padding:2px}.spelling-mode-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;color:var(--color-text-secondary);transition:all .2s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.spelling-mode-btn:hover{color:var(--color-text-base)}.spelling-mode-btn.active{background-color:var(--color-container-bg);color:var(--color-text-base);box-shadow:0 1px 3px #00000014}.spelling-mode-icon{font-size:13px;line-height:1}.spelling-mode-label{font-size:12px;line-height:1}.spelling-divider{height:1px;background-color:var(--color-divider);margin:15px -15px 0;flex-shrink:0}.spelling-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:20px 0}.spelling-body.translate-layout{flex-direction:row;justify-content:center;gap:0;padding:0}.spelling-translate-area{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.spelling-translate-area.with-gallery{flex-direction:row;align-items:stretch}.spelling-gallery-sidebar{width:400px;min-width:400px;flex-shrink:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:0;padding:12px;border-right:1px solid var(--color-divider);scrollbar-width:thin;scrollbar-color:var(--color-divider) transparent}.spelling-gallery-sidebar::-webkit-scrollbar{width:4px}.spelling-gallery-sidebar::-webkit-scrollbar-track{background:transparent}.spelling-gallery-sidebar::-webkit-scrollbar-thumb{background-color:var(--color-divider);border-radius:4px}.spelling-gallery-card{position:relative;border-radius:12px;overflow:hidden;cursor:default;flex-shrink:0}.spelling-gallery-card+.spelling-gallery-card{margin-top:12px}.spelling-gallery-img{width:100%;height:auto;display:block;object-fit:cover;transition:transform .3s ease}.spelling-gallery-card:hover .spelling-gallery-img{transform:scale(1.03)}.spelling-gallery-overlay{position:absolute;left:0;right:0;bottom:0;padding:48px 16px 16px;background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.45) 50%,transparent 100%);display:flex;flex-direction:column;gap:6px;opacity:0;transition:opacity .25s ease;pointer-events:none}.spelling-gallery-card:hover .spelling-gallery-overlay{opacity:1}.spelling-gallery-pos{display:inline-block;align-self:flex-start;background-color:#ffffff2e;color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;letter-spacing:.3px}.spelling-gallery-def{font-size:14px;font-weight:600;color:#fff;line-height:1.5}.spelling-gallery-prompt{font-size:12px;font-weight:400;color:#ffffffb3;line-height:1.4}.spelling-translate-right-col{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.spelling-translate-top{flex-shrink:0;display:flex;flex-direction:column;align-items:center;width:100%}.spelling-translate-content{flex:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:0;gap:0;transition:gap .4s cubic-bezier(.4,0,.2,1)}.spelling-translate-content.submitted{gap:32px}.spelling-translate-left{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;transition:opacity .3s ease,filter .3s ease;min-width:0}.spelling-translate-left.scoring{opacity:.5;filter:grayscale(40%)}.spelling-translate-middle{flex-shrink:0;width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.spelling-translate-right{flex:0;width:0;overflow:hidden;opacity:0;transform:translate(20px);transition:flex .4s cubic-bezier(.4,0,.2,1),width .4s cubic-bezier(.4,0,.2,1),opacity .35s ease .15s,transform .4s cubic-bezier(.4,0,.2,1)}.spelling-translate-right.show{flex:1;width:auto;overflow:visible;opacity:1;transform:translate(0);display:flex;flex-direction:column;align-items:center;justify-content:center}.spelling-scoring-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px 20px;color:var(--color-text-secondary);font-size:14px;font-weight:500}.spelling-definition{text-align:center;width:70%;display:flex;flex-direction:column;align-items:center;gap:10px}.spelling-hint-pos-tag{display:inline-block;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-size:13px;font-weight:600;padding:4px 12px;border-radius:6px;white-space:nowrap;letter-spacing:.3px}.spelling-cn{font-size:18px;font-weight:600;color:var(--color-text-base);line-height:1.6}.spelling-cn-row{display:flex;align-items:center;gap:8px;justify-content:center}.spelling-weak-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;border:none;background:none;border-radius:6px;cursor:pointer;padding:0;color:var(--color-text-secondary);opacity:.4;transition:all .2s ease;flex-shrink:0}.spelling-weak-btn:hover{opacity:.8;background-color:#e74c3c14;color:#e74c3c}.spelling-weak-btn.active{opacity:1;color:#e74c3c}.spelling-weak-btn.active svg{filter:drop-shadow(0 0 4px rgba(231,76,60,.3))}.spelling-weak-btn:active{transform:scale(1.2)}.spelling-example{display:flex;flex-direction:column;gap:4px;margin-top:4px;padding:10px 16px;background-color:var(--color-container-subtle);border-radius:10px;max-width:520px;width:100%;animation:fadeInUp .3s ease both}.spelling-example-en{font-size:15px;font-weight:500;color:var(--color-text-base);line-height:1.5}.spelling-example-cn{font-size:16px;font-weight:500;color:var(--color-text-secondary);line-height:1.5}.spelling-example-image-wrap{margin-top:6px;display:flex;justify-content:center;position:relative;min-height:48px;animation:fadeInUp .35s ease both;animation-delay:.05s}.spelling-example-image-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s ease;pointer-events:none}.spelling-example-image-loader.show{opacity:1}.spelling-example-image{max-height:300px;width:auto;border-radius:10px;object-fit:cover;box-shadow:0 2px 8px #00000014;transition:transform .2s ease,opacity .3s ease;opacity:1}.spelling-example-image.loading{opacity:0}.spelling-example-image:hover{transform:scale(1.02)}.spelling-body.with-hint-images{min-height:0;overflow-y:auto;justify-content:safe center;gap:20px;padding:12px 0}.spelling-body.with-hint-images>*{flex-shrink:0}.spelling-hint-images{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:100%}.spelling-hint-image-card{flex:1 1 220px;min-width:0;max-width:340px;margin:0;padding:10px;border:1px solid var(--color-divider);border-radius:12px;background:var(--color-container-subtle)}.spelling-hint-image-card.image-only{padding:0;border:none;border-radius:0;background:transparent}.spelling-hint-image-card.image-only .spelling-example-image-wrap{margin-top:0}.spelling-hint-image-card.image-only .spelling-example-image{box-shadow:none}.spelling-hint-image-label,.spelling-gallery-image-label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.spelling-gallery-image-label{display:block;padding:6px 10px;background:var(--color-container-subtle)}.spelling-hint-image-card .spelling-example-image{max-width:100%;max-height:min(180px,24vh);object-fit:contain}.spelling-hint-image-empty{padding:24px 8px;font-size:13px;color:var(--color-text-secondary)}.spelling-hint-image-prompt{max-height:54px;overflow-y:auto;margin-top:8px;font-size:12px;line-height:18px;color:var(--color-text-secondary);overflow-wrap:anywhere}.spelling-phonetic{font-size:15px;color:var(--color-text-secondary);font-weight:400;margin-top:-16px;opacity:0;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;min-height:22px}.spelling-phonetic.show{opacity:1;transform:translateY(0)}.spelling-separator{display:inline-block;min-width:.5em;align-self:center;white-space:pre;font-size:32px;color:var(--color-text-base)}.spelling-slots{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center}.spelling-slot{width:36px;height:44px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600;color:var(--color-text-base);border-bottom:3px solid var(--color-divider);transition:border-color .2s ease,color .2s ease,transform .15s ease;-webkit-user-select:none;user-select:none}.spelling-slot.active{border-color:var(--color-primary);transform:translateY(-2px)}.spelling-slot.filled{border-color:var(--color-text-secondary)}.spelling-slot.answer{color:var(--color-text-secondary);border-color:var(--color-text-secondary);opacity:.6}.spelling-slot.correct{color:var(--color-primary);border-color:var(--color-primary);animation:slotCorrect .35s ease}.spelling-slot.error{color:var(--color-error);border-color:var(--color-error);animation:slotShake .4s ease}@keyframes slotCorrect{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes slotShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.spelling-hidden-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.spelling-feedback{text-align:center;min-height:28px;display:flex;align-items:center;justify-content:center;gap:8px}.spelling-feedback-text{font-size:14px;font-weight:500;opacity:0;transition:opacity .25s ease}.spelling-feedback-text.show{opacity:1}.spelling-feedback-text.correct{color:var(--color-primary)}.spelling-feedback-text.error{color:var(--color-error)}.spelling-hint{font-size:15px;font-weight:500;color:var(--color-text-secondary);margin-top:4px;opacity:0;transition:opacity .3s ease}.spelling-hint.show{opacity:1}.spelling-hint span{color:var(--color-primary);font-weight:600;letter-spacing:1px}.spelling-shortcuts{display:flex;align-items:center;justify-content:center;gap:32px;padding:16px 0;flex-shrink:0}.spelling-shortcut-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-secondary);opacity:.65;-webkit-user-select:none;user-select:none}.spelling-shortcut-item kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6;white-space:nowrap}.spelling-complete{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) both}.spelling-complete-icon{font-size:56px;animation:floatIcon 3s ease-in-out infinite}.spelling-complete-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.spelling-complete-stats{font-size:14px;color:var(--color-text-secondary);display:flex;align-items:center;gap:16px}.spelling-complete-stat{display:flex;align-items:center;gap:4px}.spelling-complete-stat .correct-count{color:var(--color-primary);font-weight:600}.spelling-complete-stat .error-count{color:var(--color-error);font-weight:600}.spelling-complete-stat .skip-count{color:var(--color-text-secondary);font-weight:600}.spelling-skip-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.8);display:flex;align-items:center;gap:8px;padding:10px 20px;background-color:color-mix(in srgb,var(--color-container-subtle) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;font-size:15px;font-weight:600;color:var(--color-text-secondary);opacity:0;pointer-events:none;z-index:20;transition:opacity .15s ease,transform .15s ease;-webkit-user-select:none;user-select:none}.spelling-skip-toast.show{opacity:1;transform:translate(-50%,-50%) scale(1);animation:skipToastPop .6s ease both}@keyframes skipToastPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}40%{transform:translate(-50%,-50%) scale(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-60%) scale(.95)}}.spelling-complete-hint{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);opacity:.6;margin-top:8px;-webkit-user-select:none;user-select:none}.spelling-complete-hint kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6}.spelling-instruction{font-size:12px;color:var(--color-text-secondary);opacity:.6;-webkit-user-select:none;user-select:none}.spelling-translate-word{display:flex;flex-direction:column;align-items:center;gap:8px}.spelling-en-word{font-size:32px;font-weight:700;color:var(--color-text-base);letter-spacing:1px}.spelling-en-phonetic{font-size:15px;color:var(--color-text-secondary);font-weight:400}.spelling-listen-prompt{display:flex;flex-direction:column;align-items:center;gap:16px}.spelling-listen-btn{width:72px;height:72px;border:none;background:none;color:var(--color-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.spelling-listen-btn:hover{transform:scale(1.08)}.spelling-listen-btn:active{transform:scale(.96)}.spelling-listen-hint{font-size:13px;color:var(--color-text-secondary);opacity:.7;-webkit-user-select:none;user-select:none}.spelling-mind-map{display:flex;flex-direction:column;gap:20px;width:100%;max-width:600px;align-items:center}.spelling-mind-map-group{display:flex;align-items:stretch;width:100%}.spelling-mind-map-label{display:flex;align-items:center;flex-shrink:0}.spelling-multi-pos-tag{display:inline-block;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;white-space:nowrap;letter-spacing:.3px}.spelling-mind-map-stem{width:12px;height:2px;flex-shrink:0;background-color:var(--color-divider);align-self:center}.spelling-mind-map-connector{width:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.spelling-mind-map-single-line{width:100%;height:2px;background-color:var(--color-divider)}.spelling-mind-map-tree{width:100%;height:100%;display:flex;flex-direction:column;gap:8px;position:relative}.spelling-mind-map-trunk{position:absolute;left:0;top:20px;bottom:20px;width:2px;background-color:var(--color-divider)}.spelling-mind-map-branch{flex:1;display:flex;align-items:center}.spelling-mind-map-branch:after{content:"";display:block;width:100%;height:2px;background-color:var(--color-divider)}.spelling-mind-map-items{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.spelling-multi-input-row{position:relative;display:flex;align-items:center;border:2px solid var(--color-divider);border-radius:10px;padding:4px 12px;background-color:var(--color-container-bg);transition:border-color .2s ease}.spelling-multi-input-row.correct{border-color:var(--color-primary)}.spelling-multi-input-row.error{border-color:var(--color-error)}.spelling-multi-input-row.scoring{border-color:var(--color-text-secondary);opacity:.7}.spelling-multi-input{flex:1;border:none;outline:none;background:transparent;font-size:15px;font-weight:500;color:var(--color-text-base);padding:8px 0;font-family:inherit;min-width:0}.spelling-multi-input::placeholder{color:var(--color-text-secondary);opacity:.45;font-weight:400}.spelling-multi-input:disabled{opacity:.6}.spelling-multi-submit-row{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px}.spelling-translate-input-wrapper{display:flex;align-items:center;gap:8px;width:100%;max-width:400px;position:relative;border:2px solid var(--color-divider);border-radius:12px;padding:4px 4px 4px 16px;transition:border-color .2s ease,box-shadow .2s ease;background-color:var(--color-container-bg)}.spelling-translate-input-wrapper:focus-within{border-color:var(--color-divider);box-shadow:none}.spelling-translate-input-wrapper.correct{border-color:var(--color-primary)}.spelling-translate-input-wrapper.error{border-color:var(--color-error);animation:slotShake .4s ease}.spelling-translate-input-wrapper.scoring{border-color:var(--color-text-secondary);opacity:.7}.spelling-translate-input{flex:1;border:none;outline:none;background:transparent;font-size:16px;font-weight:500;color:var(--color-text-base);padding:10px 0;font-family:inherit;min-width:0}.spelling-translate-input::placeholder{color:var(--color-text-secondary);opacity:.5}.spelling-translate-input:disabled{opacity:.6}.spelling-translate-submit{flex-shrink:0;padding:8px 18px;border:none;border-radius:8px;background-color:var(--color-primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,opacity .2s ease;font-family:inherit}.spelling-translate-submit:hover{opacity:.9}.spelling-translate-submit:disabled{opacity:.4;cursor:not-allowed}.spelling-translate-scoring{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;color:var(--color-text-secondary);white-space:nowrap}.spelling-score-result{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;border-radius:12px;animation:fadeInUp .3s ease both;max-width:400px;width:100%;position:relative}.spelling-score-result.good{background-color:rgba(from var(--color-primary) r g b / .08);border:1px solid rgba(from var(--color-primary) r g b / .2)}.spelling-score-result.bad{background-color:rgba(from var(--color-error) r g b / .08);border:1px solid rgba(from var(--color-error) r g b / .2)}.spelling-score-header{display:flex;align-items:baseline;gap:2px}.spelling-score-number{font-size:32px;font-weight:800;line-height:1}.spelling-score-result.good .spelling-score-number{color:var(--color-primary)}.spelling-score-result.bad .spelling-score-number{color:var(--color-error)}.spelling-score-max{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.spelling-score-review{font-size:14px;font-weight:500;color:var(--color-text-base);text-align:center;line-height:1.5}.spelling-score-definition{font-size:13px;color:var(--color-text-secondary);text-align:center;line-height:1.6;margin-top:4px;padding-top:8px;border-top:1px solid var(--color-divider);width:100%}.spelling-score-def-label{font-weight:600;color:var(--color-text-base);opacity:.7}.spelling-pin-btn{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--color-text-secondary);opacity:.6;transition:opacity .3s ease,background-color .2s ease,color .2s ease,transform .3s cubic-bezier(.34,1.56,.64,1);transform:rotate(0)}.spelling-pin-btn:hover{opacity:1;background-color:rgba(from var(--color-error) r g b / .1);color:var(--color-error)}.spelling-pin-btn.active{opacity:1;color:var(--color-error);background-color:rgba(from var(--color-error) r g b / .15);transform:rotate(45deg)}.spelling-pin-btn.active:hover{background-color:rgba(from var(--color-error) r g b / .2)}.spelling-continue-hint{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary);opacity:.6;margin-top:12px;-webkit-user-select:none;user-select:none;animation:fadeInUp .3s ease both;animation-delay:.3s}.spelling-continue-hint kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6}.spelling-read-aloud-prompt{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:8px}.spelling-read-aloud-word{font-size:36px;font-weight:700;color:var(--color-text-base);letter-spacing:1.5px}.spelling-read-aloud-phonetic{font-size:16px;color:var(--color-text-secondary);font-weight:400}.spelling-read-aloud-play-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:none;background:none;color:var(--color-primary);font-size:13px;cursor:pointer;margin-top:4px;font-family:inherit}.spelling-read-aloud-content{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:420px}.spelling-read-aloud-mic-area{display:flex;flex-direction:column;align-items:center;gap:12px}.spelling-read-aloud-mic-btn{width:72px;height:72px;border:none;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),hsl(from var(--color-primary) h s calc(l - 10)));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background .3s ease;box-shadow:0 4px 16px #0000001f;position:relative}.spelling-read-aloud-mic-btn:hover{transform:scale(1.08);box-shadow:0 6px 24px #0000002e}.spelling-read-aloud-mic-btn:active{transform:scale(.96)}.spelling-read-aloud-mic-btn.recording{background:linear-gradient(135deg,var(--color-error),hsl(from var(--color-error) h s calc(l - 10)));animation:micPulse 1.5s ease-in-out infinite}.spelling-read-aloud-mic-btn.correct{background:linear-gradient(135deg,var(--color-primary),hsl(from var(--color-primary) h s calc(l + 10)));pointer-events:none;opacity:.7}.spelling-read-aloud-mic-btn.error{background:linear-gradient(135deg,var(--color-error),hsl(from var(--color-error) h s calc(l + 10)));pointer-events:none;opacity:.7}@keyframes micPulse{0%,to{box-shadow:0 4px 16px #0000001f,0 0 rgba(from var(--color-error) r g b / .4)}50%{box-shadow:0 4px 16px #0000001f,0 0 0 16px rgba(from var(--color-error) r g b / 0)}}.spelling-read-aloud-mic-hint{font-size:13px;color:var(--color-text-secondary);opacity:.7;-webkit-user-select:none;user-select:none}.spelling-read-aloud-wave{display:flex;align-items:center;justify-content:center;gap:3px;height:24px}.spelling-read-aloud-wave .wave-bar{display:inline-block;width:3px;height:8px;border-radius:2px;background-color:var(--color-error);animation:waveAnim .8s ease-in-out infinite}.spelling-read-aloud-wave .wave-bar:nth-child(1){animation-delay:0s}.spelling-read-aloud-wave .wave-bar:nth-child(2){animation-delay:.1s}.spelling-read-aloud-wave .wave-bar:nth-child(3){animation-delay:.2s}.spelling-read-aloud-wave .wave-bar:nth-child(4){animation-delay:.3s}.spelling-read-aloud-wave .wave-bar:nth-child(5){animation-delay:.4s}@keyframes waveAnim{0%,to{height:6px;opacity:.4}50%{height:22px;opacity:1}}.spelling-read-aloud-scoring{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--color-text-secondary);font-size:14px}.spelling-read-aloud-result{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 24px;border-radius:16px;animation:fadeInUp .35s ease both;width:100%}.spelling-read-aloud-result.good{background-color:rgba(from var(--color-primary) r g b / .06);border:1px solid rgba(from var(--color-primary) r g b / .15)}.spelling-read-aloud-result.bad{background-color:rgba(from var(--color-error) r g b / .06);border:1px solid rgba(from var(--color-error) r g b / .15)}.spelling-read-aloud-score-row{display:flex;align-items:center;gap:24px}.spelling-read-aloud-score-item{display:flex;flex-direction:column;align-items:center;gap:4px}.spelling-read-aloud-score-item.main .spelling-read-aloud-score-value{font-size:36px;font-weight:800}.spelling-read-aloud-score-value{font-size:22px;font-weight:700;line-height:1}.spelling-read-aloud-result.good .spelling-read-aloud-score-value{color:var(--color-primary)}.spelling-read-aloud-result.bad .spelling-read-aloud-score-value{color:var(--color-error)}.spelling-read-aloud-score-label{font-size:12px;color:var(--color-text-secondary);font-weight:500}.spelling-read-aloud-feedback{font-size:14px;font-weight:500;text-align:center}.spelling-read-aloud-feedback.good{color:var(--color-primary)}.spelling-read-aloud-feedback.warn{color:#e8a100}.spelling-read-aloud-feedback.bad{color:var(--color-error)}.spelling-asr-mic-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border:none;border-radius:50%;background:transparent;color:var(--color-text-secondary);cursor:pointer;opacity:.5;transition:opacity .2s ease,background-color .2s ease,color .2s ease,transform .15s ease}.spelling-asr-mic-btn:hover{opacity:1;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.spelling-asr-mic-btn:active{transform:scale(.92)}.spelling-asr-mic-btn.recording{opacity:1;color:#fff;background:linear-gradient(135deg,var(--color-error),hsl(from var(--color-error) h s calc(l - 8)));animation:asrMicPulse 1.5s ease-in-out infinite}.spelling-asr-mic-btn:disabled{opacity:.25;cursor:not-allowed;pointer-events:none}.spelling-asr-mic-btn.single{width:32px;height:32px;margin-right:4px}@keyframes asrMicPulse{0%,to{box-shadow:0 0 rgba(from var(--color-error) r g b / .4)}50%{box-shadow:0 0 0 8px rgba(from var(--color-error) r g b / 0)}}.spelling-multi-input-row{gap:4px}.word-learning-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1)}.word-learning-panel.visible{transform:translateY(0)}.word-learning-panel-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.word-learning-panel-content{width:100%;height:100%;padding:20px 20px 0;display:flex;overflow:hidden;opacity:0;transition:opacity .3s ease}.word-learning-panel-content.fade-in{opacity:1}.word-learning-words-list{width:324px;margin-right:20px;flex-shrink:0;overflow:hidden;transition:width .35s cubic-bezier(.4,0,.2,1),margin-right .35s cubic-bezier(.4,0,.2,1)}.word-learning-words-list.collapsed{width:0;margin-right:0}.word-learning-words-list .words-list{width:324px}.word-learning-info{flex:1;display:flex;flex-direction:column;gap:16px;margin-right:20px;min-width:0;overflow:hidden}.word-learning-info-top{display:flex;gap:20px;flex-shrink:0}.word-learning-info-top .word-card-container{flex-shrink:0}.word-learning-info-top .word-info{flex:1;height:auto;min-width:0}.word-learning-info>.word-meaning{flex-shrink:0;height:auto;min-height:0;transition:height .4s cubic-bezier(.4,0,.2,1)}.word-learning-info>.word-meaning.has-analysis{height:auto;min-height:0;max-height:none}.word-learning-info-bottom{display:flex;gap:20px;flex:1;min-height:0;overflow:hidden;transition:height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease}.word-learning-info-bottom .example-sentences{flex:1;min-width:0;overflow-y:auto;border-radius:12px 12px 0 0;scrollbar-width:none;-ms-overflow-style:none}.word-learning-info-bottom .example-sentences::-webkit-scrollbar{display:none}.word-learning-info-bottom .related-words{width:240px;flex-shrink:0;overflow-y:auto;border-radius:12px 12px 0 0;scrollbar-width:none;-ms-overflow-style:none}.word-learning-info-bottom .related-words::-webkit-scrollbar{display:none}.word-learning-chat{width:0;flex-shrink:0;overflow:hidden;transition:width .35s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.word-learning-chat.open{width:348px}.word-learning-chat.dragging{transition:none}.word-learning-chat-resize-handle{width:8px;height:100%;cursor:col-resize;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:10}.word-learning-chat-resize-handle:hover .word-learning-chat-resize-line,.word-learning-chat-resize-handle.dragging .word-learning-chat-resize-line{background-color:var(--color-primary);width:4px}.word-learning-chat-resize-line{width:2px;height:40px;background-color:var(--color-divider);border-radius:2px;transition:background-color .15s ease,width .15s ease}.word-learning-chat-content{flex:1;min-width:0;height:100%;opacity:0;transition:opacity .25s ease}.word-learning-chat-content.visible{opacity:1}.word-learning-chat-content .chat-panel{width:100%;height:100%;border-radius:12px 12px 0 0}.word-learning-practice-overlay{position:absolute;inset:0;z-index:200;background-color:var(--color-page-bg);opacity:0;pointer-events:none;transition:opacity .25s ease}.word-learning-practice-overlay.visible{opacity:1;pointer-events:auto}.word-learning-practice-overlay .spelling-panel{position:relative;inset:0;transform:none;z-index:auto;width:100%;height:100%}.word-learning-practice-overlay .spelling-panel.visible{transform:none}@keyframes practiceOverlayIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.wlp-toast{position:absolute;top:24px;right:32px;z-index:500;padding:10px 20px;background:#1e1e1ed9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#f0f0f0;font-size:13px;font-weight:500;border-radius:8px;box-shadow:0 4px 16px #0003;animation:wlpToastIn .25s ease,wlpToastOut .3s ease 1.2s forwards;pointer-events:none}@keyframes wlpToastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes wlpToastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.practice-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.practice-panel.visible{transform:translateY(0)}.practice-panel-loading{flex:1;display:flex;align-items:center;justify-content:center}.practice-panel-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;opacity:0;transition:opacity .3s ease}.practice-panel-content.fade-in{opacity:1}.practice-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);padding:15px;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:background-color .2s ease}.practice-progress-section{display:flex;align-items:center;gap:12px;flex-shrink:0}.practice-progress-bar{width:254px;height:10px;background-color:var(--color-container-subtle);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0}.practice-progress-fill{height:100%;background-color:var(--color-primary);border-radius:var(--radius-full);transition:width .4s cubic-bezier(.4,0,.2,1)}.practice-progress-text{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none}.practice-toolbar-right{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.practice-toolbar-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;border-radius:6px;cursor:pointer;padding:0;color:var(--color-text-secondary);transition:background-color .2s ease,color .2s ease;flex-shrink:0}.practice-toolbar-btn svg{width:16px;height:16px}.practice-toolbar-btn svg path{fill:var(--color-text-secondary);transition:fill .2s ease}.practice-toolbar-btn.active{color:var(--color-primary)}.practice-toolbar-btn.active svg path{fill:var(--color-primary)}.practice-toolbar-btn:hover{background-color:var(--color-container-subtle)}.practice-divider{height:1px;background-color:var(--color-divider);margin:15px -15px 0;flex-shrink:0}.practice-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:20px 0}.practice-definition{text-align:center;width:70%;display:flex;flex-direction:column;align-items:center;gap:10px}.practice-hint-pos-tag{display:inline-block;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-size:13px;font-weight:600;padding:4px 12px;border-radius:6px;white-space:nowrap;letter-spacing:.3px}.practice-cn{font-size:18px;font-weight:600;color:var(--color-text-base);line-height:1.6}.practice-slots-wrap{position:relative;display:flex;align-items:center;justify-content:center;min-height:64px}.practice-separator{display:inline-block;min-width:.5em;align-self:center;white-space:pre;font-size:32px;color:var(--color-text-base)}.practice-slots{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center}.practice-slot{width:36px;display:flex;flex-direction:column;align-items:center;gap:2px;-webkit-user-select:none;user-select:none}.practice-slot-letter{height:36px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600;color:var(--color-text-secondary);transition:color .2s ease,transform .15s ease}.practice-slot-letter.filled{color:var(--color-primary)}.practice-slot-letter.error{color:var(--color-error);animation:practiceSlotShake .4s ease}@keyframes practiceSlotShake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.practice-slot-underline{width:100%;height:3px;background-color:var(--color-divider);border-radius:2px;transition:background-color .2s ease}.practice-slot.is-filled .practice-slot-underline{background-color:var(--color-text-secondary)}.practice-slot.is-correct .practice-slot-underline{background-color:var(--color-primary)}.practice-slot.is-error .practice-slot-underline{background-color:var(--color-error)}.practice-phonetic{font-size:15px;color:var(--color-text-secondary);font-weight:400;margin-top:-16px;opacity:0;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;min-height:22px}.practice-phonetic.show{opacity:1;transform:translateY(0)}.practice-feedback{text-align:center;min-height:28px;display:flex;align-items:center;justify-content:center;gap:8px}.practice-feedback-text{font-size:14px;font-weight:500;opacity:0;transition:opacity .25s ease}.practice-feedback-text.show{opacity:1}.practice-feedback-text.correct{color:var(--color-primary)}.practice-feedback-text.error{color:var(--color-error)}.practice-instruction{font-size:12px;color:var(--color-text-secondary);opacity:.6;-webkit-user-select:none;user-select:none}.practice-hidden-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.practice-shortcuts{display:flex;align-items:center;justify-content:center;gap:32px;padding:16px 0;flex-shrink:0}.practice-shortcut-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-secondary);opacity:.65;-webkit-user-select:none;user-select:none}.practice-shortcut-item kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6;white-space:nowrap}.practice-complete{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;animation:practiceCompleteIn .5s cubic-bezier(.16,1,.3,1) both}@keyframes practiceCompleteIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.practice-complete-icon{font-size:56px;animation:practiceFloat 3s ease-in-out infinite}@keyframes practiceFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.practice-complete-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.practice-complete-stats{font-size:14px;color:var(--color-text-secondary);display:flex;align-items:center;gap:16px}.practice-complete-stat{display:flex;align-items:center;gap:4px}.practice-complete-stat .correct-count{color:var(--color-primary);font-weight:600}.practice-complete-stat .error-count{color:var(--color-error);font-weight:600}.practice-complete-hint{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary);opacity:.6;margin-top:8px;-webkit-user-select:none;user-select:none}.practice-complete-hint kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6}.practice-fav-btn.favorited{color:#f5a623}.practice-fav-btn.favorited svg path{fill:#f5a623;stroke:#f5a623}.practice-fav-btn:not(.favorited) svg path{fill:none;stroke:var(--color-text-secondary)}.practice-fav-btn:active{transform:scale(1.25)}.practice-example{display:flex;flex-direction:column;gap:4px;margin-top:4px;padding:10px 16px;background-color:var(--color-container-subtle);border-radius:10px;max-width:520px;width:100%;animation:practiceCompleteIn .3s ease both}.practice-example-cn{font-size:16px;font-weight:500;color:var(--color-text-secondary);line-height:1.5}.practice-image-wrap{margin-top:6px;display:flex;justify-content:center;position:relative;min-height:48px;animation:practiceCompleteIn .35s ease both;animation-delay:.05s}.practice-image-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s ease;pointer-events:none}.practice-image-loader.show{opacity:1}.practice-image{max-height:300px;width:auto;border-radius:10px;object-fit:cover;box-shadow:0 2px 8px #00000014;transition:transform .2s ease,opacity .3s ease;opacity:1}.practice-image.loading{opacity:0}.practice-image:hover{transform:scale(1.02)}.practice-image-menu-wrap{position:relative;display:flex;align-items:center}.practice-image-dropdown{position:absolute;top:calc(100% + 6px);right:0;background-color:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:10px;padding:4px;display:flex;flex-direction:column;gap:2px;min-width:140px;box-shadow:0 4px 16px #0000001a,0 1px 4px #0000000f;z-index:10;animation:practiceDropdownIn .15s ease both}@keyframes practiceDropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.practice-image-dropdown-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:none;background:none;border-radius:7px;cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text-secondary);transition:background-color .15s ease,color .15s ease;white-space:nowrap;-webkit-user-select:none;user-select:none}.practice-image-dropdown-item:hover{background-color:var(--color-container-subtle);color:var(--color-text-base)}.practice-image-dropdown-item.active{color:var(--color-primary)}.practice-image-dropdown-item svg{flex-shrink:0;opacity:.7}.practice-image-dropdown-item.active svg{opacity:1;stroke:var(--color-primary)}.practice-image-dropdown-check{margin-left:auto;font-size:12px;font-weight:700;color:var(--color-primary);opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .15s ease}.practice-image-dropdown-check.show{opacity:1;transform:scale(1)}.sa-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.sa-panel.visible{transform:translateY(0)}.sa-panel-loading{flex:1;display:flex;align-items:center;justify-content:center}.sa-panel-content{flex:1;display:flex;flex-direction:column;opacity:0;transition:opacity .3s ease;min-height:0}.sa-panel-content.fade-in{opacity:1}.sa-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);padding:15px;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:background-color .2s ease}.sa-progress-section{display:flex;align-items:center;gap:12px;flex-shrink:0}.sa-progress-bar{width:254px;height:10px;background-color:var(--color-container-subtle);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0}.sa-progress-fill{height:100%;background-color:var(--color-primary);border-radius:var(--radius-full);transition:width .4s cubic-bezier(.4,0,.2,1)}.sa-progress-text{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none}.sa-divider{height:1px;background-color:var(--color-divider);margin:15px -15px 0;flex-shrink:0}.sa-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:20px 0;min-height:0}.sa-sentence-area{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:700px}.sa-sentence-label{font-size:12px;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;opacity:.7}.sa-sentence-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;line-height:1.8}.sa-segment{display:inline-flex;align-items:center;padding:6px 16px;border-radius:var(--radius-sm);font-size:17px;font-weight:500;color:var(--color-text-base);background-color:var(--color-container-subtle);border:2px solid var(--color-divider);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;position:relative}.sa-segment:hover{border-color:var(--color-primary);background-color:#55b6850f}.sa-segment.active{border-color:var(--color-primary);background-color:#55b6851a;box-shadow:0 0 0 3px #55b68526;transform:translateY(-2px)}.sa-segment.labeled{border-color:transparent;cursor:default}.sa-segment.labeled:hover{transform:none;box-shadow:none}.sa-segment.correct{border-color:var(--color-primary);background-color:#55b6851f;animation:sa-pulse-correct .5s ease}.sa-segment.error{border-color:var(--color-error);background-color:#f65d3a14;animation:sa-shake .4s ease}@keyframes sa-pulse-correct{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes sa-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.sa-segment-label{position:absolute;bottom:-22px;left:50%;transform:translate(-50%);font-size:10px;font-weight:600;white-space:nowrap;padding:1px 8px;border-radius:var(--radius-full);animation:sa-label-in .3s cubic-bezier(.16,1,.3,1) both;pointer-events:none}@keyframes sa-label-in{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.sa-segment-label.subject{color:#5b8def;background-color:#5b8def1f}.sa-segment-label.predicate{color:#55b685;background-color:#55b6851f}.sa-segment-label.object{color:#f0974e;background-color:#f0974e1f}.sa-segment-label.predicative{color:#c77dba;background-color:#c77dba1f}.sa-segment-label.attribute{color:#5b8def;background-color:#5b8def1f}.sa-segment-label.adverbial{color:#e86b6b;background-color:#e86b6b1f}.sa-segment-label.obj-comp{color:#4ecdc4;background-color:#4ecdc41f}.sa-segment-label.subj-comp{color:#95a5a6;background-color:#95a5a61f}.sa-segment-label.appositive{color:#e67e22;background-color:#e67e221f}.sa-segment-label.independent{color:#9b59b6;background-color:#9b59b61f}.sa-sentence-cn{font-size:14px;color:var(--color-text-secondary);text-align:center}.sa-prompt{display:flex;flex-direction:column;align-items:center;gap:8px}.sa-prompt-text{font-size:14px;color:var(--color-text-secondary)}.sa-prompt-highlight{font-size:20px;font-weight:700;color:var(--color-text-base);padding:4px 20px;background-color:var(--color-container-subtle);border-radius:var(--radius-sm);border:2px solid var(--color-primary);animation:sa-prompt-glow 2s ease-in-out infinite}@keyframes sa-prompt-glow{0%,to{box-shadow:0 0 #55b68500}50%{box-shadow:0 0 0 6px #55b6851a}}.sa-role-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;width:100%;max-width:680px}.sa-role-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 6px;border:1px solid var(--color-divider);border-radius:var(--radius-md);background-color:var(--color-container-bg);color:var(--color-text-base);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;font-family:inherit;position:relative;overflow:hidden}.sa-role-btn:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:3px 3px 0 0;opacity:0;transition:opacity .2s ease}.sa-role-btn:hover{border-color:var(--color-primary);background-color:#55b6850a;transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.sa-role-btn:hover:before{opacity:1}.sa-role-btn:active{transform:translateY(0)}.sa-role-btn.subject{border-color:#5b8def4d}.sa-role-btn.subject:before{background:#5b8def}.sa-role-btn.subject:hover{border-color:#5b8def;background-color:#5b8def0f}.sa-role-btn.predicate{border-color:#55b6854d}.sa-role-btn.predicate:before{background:#55b685}.sa-role-btn.predicate:hover{border-color:#55b685;background-color:#55b6850f}.sa-role-btn.object{border-color:#f0974e4d}.sa-role-btn.object:before{background:#f0974e}.sa-role-btn.object:hover{border-color:#f0974e;background-color:#f0974e0f}.sa-role-btn.predicative{border-color:#c77dba4d}.sa-role-btn.predicative:before{background:#c77dba}.sa-role-btn.predicative:hover{border-color:#c77dba;background-color:#c77dba0f}.sa-role-btn.attribute{border-color:#5b8def4d}.sa-role-btn.attribute:before{background:#5b8def}.sa-role-btn.attribute:hover{border-color:#5b8def;background-color:#5b8def0f}.sa-role-btn.adverbial{border-color:#e86b6b4d}.sa-role-btn.adverbial:before{background:#e86b6b}.sa-role-btn.adverbial:hover{border-color:#e86b6b;background-color:#e86b6b0f}.sa-role-btn.obj-comp{border-color:#4ecdc44d}.sa-role-btn.obj-comp:before{background:#4ecdc4}.sa-role-btn.obj-comp:hover{border-color:#4ecdc4;background-color:#4ecdc40f}.sa-role-btn.subj-comp{border-color:#95a5a64d}.sa-role-btn.subj-comp:before{background:#95a5a6}.sa-role-btn.subj-comp:hover{border-color:#95a5a6;background-color:#95a5a60f}.sa-role-btn.appositive{border-color:#e67e224d}.sa-role-btn.appositive:before{background:#e67e22}.sa-role-btn.appositive:hover{border-color:#e67e22;background-color:#e67e220f}.sa-role-btn.independent{border-color:#9b59b64d}.sa-role-btn.independent:before{background:#9b59b6}.sa-role-btn.independent:hover{border-color:#9b59b6;background-color:#9b59b60f}.sa-role-cn{font-size:14px;font-weight:600}.sa-role-en{font-size:10px;color:var(--color-text-secondary);font-weight:500}.sa-feedback{text-align:center;min-height:24px;display:flex;align-items:center;justify-content:center}.sa-feedback-text{font-size:14px;font-weight:500;opacity:0;transition:opacity .25s ease}.sa-feedback-text.show{opacity:1}.sa-feedback-text.correct{color:var(--color-primary)}.sa-feedback-text.error{color:var(--color-error)}.sa-shortcuts{display:flex;align-items:center;justify-content:center;gap:32px;padding:16px 0;flex-shrink:0}.sa-shortcut-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-text-secondary);opacity:.65;-webkit-user-select:none;user-select:none}.sa-shortcut-item kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:500;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6;white-space:nowrap}.sa-ref-toggle{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--color-divider);border-radius:var(--radius-full);background-color:var(--color-container-bg);color:var(--color-text-secondary);cursor:pointer;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s ease;-webkit-user-select:none;user-select:none;flex-shrink:0}.sa-ref-toggle:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:#55b6850a}.sa-ref-toggle svg{transition:transform .3s ease}.sa-ref-toggle.open svg{transform:rotate(180deg)}.sa-ref-panel{position:absolute;bottom:56px;left:15px;right:15px;max-height:0;overflow:hidden;background-color:var(--color-container-bg);border-radius:var(--radius-md);border:1px solid var(--color-divider);box-shadow:0 -8px 32px #00000014;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease;opacity:0;z-index:10}.sa-ref-panel.open{max-height:400px;opacity:1}.sa-ref-table{width:100%;border-collapse:collapse;font-size:12px}.sa-ref-table thead{position:sticky;top:0;z-index:1}.sa-ref-table th{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-align:left;padding:10px 12px;background-color:var(--color-container-subtle);border-bottom:1px solid var(--color-divider);white-space:nowrap}.sa-ref-table td{font-size:12px;color:var(--color-text-base);padding:8px 12px;border-bottom:1px solid var(--color-divider);vertical-align:middle}.sa-ref-table tr:last-child td{border-bottom:none}.sa-ref-table tr:hover td{background-color:var(--color-container-subtle)}.sa-ref-table-inner{overflow-y:auto;max-height:380px}.sa-ref-category{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:600;white-space:nowrap}.sa-ref-category.trunk{color:#55b685;background-color:#55b6851a}.sa-ref-category.modifier{color:#5b8def;background-color:#5b8def1a}.sa-ref-category.complement{color:#f0974e;background-color:#f0974e1a}.sa-ref-category.explanation{color:#c77dba;background-color:#c77dba1a}.sa-ref-category.indep{color:#9b59b6;background-color:#9b59b61a}.sa-ref-code{font-family:Courier New,monospace;font-size:11px;color:var(--color-primary);font-weight:500}.sa-complete{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;animation:sa-fade-in-up .5s cubic-bezier(.16,1,.3,1) both}.sa-complete-icon{font-size:56px;animation:sa-float 3s ease-in-out infinite}@keyframes sa-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.sa-complete-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.sa-complete-stats{font-size:14px;color:var(--color-text-secondary);display:flex;align-items:center;gap:16px}.sa-complete-stat{display:flex;align-items:center;gap:4px}.sa-complete-stat .correct-count{color:var(--color-primary);font-weight:600}.sa-complete-stat .error-count{color:var(--color-error);font-weight:600}.sa-complete-btn{margin-top:8px;padding:10px 28px;border-radius:var(--radius-full);background-color:var(--color-primary);color:#fff;font-size:14px;font-weight:600;border:none;cursor:pointer;font-family:inherit;transition:all .2s ease}.sa-complete-btn:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #55b6854d}@keyframes sa-fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.sa-instruction{font-size:12px;color:var(--color-text-secondary);opacity:.6;-webkit-user-select:none;user-select:none}.sa-sentence-number{font-size:11px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--color-primary),#3a9d6a);padding:2px 10px;border-radius:var(--radius-full);-webkit-user-select:none;user-select:none}.sa-top-row{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.sa-streak{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--color-primary);opacity:0;transform:translateY(4px);transition:opacity .3s ease,transform .3s ease}.sa-streak.show{opacity:1;transform:translateY(0)}.sa-streak-fire{font-size:16px}.sa-sentence-row{padding-bottom:28px}.pk-score-section{display:flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}.pk-score-me{font-size:14px;font-weight:700;color:var(--color-primary)}.pk-score-divider{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.pk-score-op{font-size:14px;font-weight:700;color:var(--color-error)}.pk-round-timer{font-size:14px;font-weight:700;color:var(--color-text-base);font-variant-numeric:tabular-nums;min-width:32px;text-align:center}.pk-round-timer.warning{color:var(--color-review)}.pk-round-timer.danger{color:var(--color-error);animation:pk-timer-blink .5s infinite}@keyframes pk-timer-blink{0%,to{opacity:1}50%{opacity:.4}}.pk-timer-bar{height:3px;background:var(--color-container-subtle);margin:0;border-radius:0;overflow:hidden;flex-shrink:0}.pk-timer-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-review),var(--color-error));border-radius:0;transition:width 1s linear}.pk-images{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:8px}.pk-opponent-audio-toast{display:flex;align-items:center;gap:4px;position:absolute;top:60px;right:16px;padding:6px 14px;border-radius:var(--radius-sm);background:#fe9c071f;color:var(--color-review);font-size:12px;animation:pk-toast-in .3s ease,pk-toast-out .3s ease 2.7s forwards;pointer-events:none;z-index:10}@keyframes pk-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pk-toast-out{0%{opacity:1}to{opacity:0}}.pk-round-toast{position:absolute;bottom:80px;left:50%;transform:translate(-50%) translateY(0);display:flex;align-items:center;gap:8px;padding:8px 20px;border-radius:var(--radius-sm);background:var(--color-container-bg);border:1px solid var(--color-divider);box-shadow:0 4px 20px #00000026;font-size:14px;pointer-events:none;z-index:10;animation:pk-toast-slide-in .25s ease,pk-toast-slide-out .3s ease 1.2s forwards;border-left:3px solid var(--color-text-secondary)}.pk-round-toast.win{border-left-color:var(--color-primary)}.pk-round-toast.lose{border-left-color:var(--color-error)}.pk-round-toast.timeout{border-left-color:var(--color-text-secondary)}.pk-round-toast-icon{font-size:16px}.pk-round-toast-word{font-weight:700;color:var(--color-text-base);font-family:JetBrains Mono,monospace;letter-spacing:1px}.pk-round-toast-text{color:var(--color-text-secondary);font-size:12px}@keyframes pk-toast-slide-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes pk-toast-slide-out{0%{opacity:1}to{opacity:0}}.pk-matching-phase{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:60px 40px}.pk-matching-icon{font-size:56px;animation:pk-pulse 1.5s infinite}@keyframes pk-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.pk-matching-title{font-size:22px;color:var(--color-text-base);font-weight:600}.pk-matching-dots{display:flex;gap:8px}.pk-matching-dots span{width:10px;height:10px;border-radius:50%;background:var(--color-btn-disabled);animation:pk-dot-bounce 1.4s infinite}.pk-matching-dots span:nth-child(2){animation-delay:.2s}.pk-matching-dots span:nth-child(3){animation-delay:.4s}@keyframes pk-dot-bounce{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;background:var(--color-primary);transform:scale(1.3)}}.pk-matching-hint{font-size:13px;color:var(--color-text-secondary)}.pk-cancel-btn{margin-top:12px;padding:10px 32px;border-radius:var(--radius-sm);border:1px solid var(--color-divider);background:var(--color-container-subtle);color:var(--color-text-secondary);font-size:14px;font-family:inherit;cursor:pointer;transition:all .2s}.pk-cancel-btn:hover{background:var(--color-card-hover);color:var(--color-text-base)}.pk-countdown-phase{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:60px 40px}.pk-vs-row{display:flex;align-items:center;gap:24px;margin-bottom:16px}.pk-player-card{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:100px}.pk-player-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid var(--color-divider)}.pk-player-avatar-placeholder{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-active));display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;font-weight:700;border:2px solid var(--color-divider)}.pk-player-name{font-size:14px;color:var(--color-text-base);font-weight:500;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pk-player-tag{font-size:11px;color:var(--color-text-secondary)}.pk-vs-text{font-size:32px;font-weight:800;color:var(--color-error);text-shadow:0 0 20px rgba(246,93,58,.3)}.pk-countdown-number{font-size:96px;font-weight:800;color:var(--color-primary);text-shadow:0 0 40px var(--color-shadow-primary);animation:pk-countdown-pop 1s ease infinite}@keyframes pk-countdown-pop{0%{transform:scale(1.3);opacity:.5}20%{transform:scale(1);opacity:1}to{transform:scale(.95);opacity:.6}}.pk-game-over-phase{flex:1;display:flex;flex-direction:column;align-items:center;padding:40px 32px;gap:24px;overflow-y:auto}.pk-result-icon{font-size:64px}.pk-result-title{font-size:28px;font-weight:800;color:var(--color-text-base)}.pk-result-title.win{color:var(--color-primary)}.pk-result-title.lose{color:var(--color-error)}.pk-result-title.draw{color:var(--color-review)}.pk-final-score{display:flex;align-items:center;gap:24px;margin:8px 0}.pk-final-player{display:flex;flex-direction:column;align-items:center;gap:4px}.pk-final-player-name{font-size:13px;color:var(--color-text-secondary)}.pk-final-player-score{font-size:42px;font-weight:800;color:var(--color-text-base)}.pk-final-vs{font-size:18px;color:var(--color-text-secondary);font-weight:600}.pk-stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;width:100%;max-width:400px}.pk-stat-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border-radius:var(--radius-md);background:var(--color-container-subtle);border:1px solid var(--color-divider)}.pk-stat-label{font-size:11px;color:var(--color-text-secondary)}.pk-stat-value{font-size:18px;font-weight:700;color:var(--color-text-base)}.pk-rounds-detail{width:100%;max-width:520px}.pk-rounds-title{font-size:14px;color:var(--color-text-secondary);margin-bottom:10px;font-weight:600}.pk-rounds-list{display:flex;flex-direction:column;gap:6px}.pk-round-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--color-container-subtle);border:1px solid var(--color-divider)}.pk-round-idx{font-size:12px;color:var(--color-text-secondary);width:24px;text-align:center;font-variant-numeric:tabular-nums}.pk-round-word{font-size:14px;color:var(--color-text-base);font-weight:600;flex:1;font-family:JetBrains Mono,monospace}.pk-round-winner-badge{font-size:11px;padding:2px 10px;border-radius:6px;font-weight:600}.pk-round-winner-badge.me{background:#55b6851f;color:var(--color-primary)}.pk-round-winner-badge.opponent{background:#f65d3a1f;color:var(--color-error)}.pk-round-winner-badge.none{background:var(--color-container-subtle);color:var(--color-text-secondary)}.pk-round-time{font-size:12px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;width:50px;text-align:right}.pk-round-audio-badge{display:inline-flex;font-size:11px;opacity:.4}.pk-actions{display:flex;gap:12px;margin-top:8px}.pk-action-btn{padding:12px 32px;border-radius:var(--radius-md);border:none;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s}.pk-action-btn.primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-active));color:#fff}.pk-action-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px var(--color-shadow-primary)}.pk-action-btn.secondary{background:var(--color-container-subtle);color:var(--color-text-secondary);border:1px solid var(--color-divider)}.pk-action-btn.secondary:hover{background:var(--color-card-hover);color:var(--color-text-base)}.pk-error-phase{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 40px}.pk-error-icon{font-size:48px}.pk-error-msg{font-size:16px;color:var(--color-text-secondary);text-align:center}.synonym-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1)}.synonym-panel.visible{transform:translateY(0)}.synonym-panel-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.synonym-panel-error{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.synonym-error-icon{font-size:48px}.synonym-error-text{font-size:15px;color:var(--color-text-secondary);max-width:320px;text-align:center;line-height:1.6}.synonym-error-btn{margin-top:8px;padding:8px 28px;border:1px solid var(--color-divider);border-radius:8px;background:transparent;color:var(--color-text-base);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease}.synonym-error-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.synonym-panel-content{width:100%;height:100%;padding:20px 20px 0;display:flex;overflow:hidden;opacity:0;transition:opacity .3s ease}.synonym-panel-content.fade-in{opacity:1}.synonym-list-wrapper{width:324px;margin-right:20px;flex-shrink:0;overflow:hidden}.synonym-list{width:324px;height:100%;background-color:var(--color-container-bg);border-radius:12px 12px 0 0;padding:15px 0 0;display:flex;flex-direction:column;overflow:hidden}.synonym-list-header{flex-shrink:0;padding:0 15px}.synonym-list-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.synonym-list-divider{flex-shrink:0;height:1px;background-color:var(--color-divider);margin-top:15px}.synonym-list-content{flex:1;overflow-y:auto;padding:15px 15px 0;display:flex;flex-direction:column;gap:8px;scrollbar-width:none;-ms-overflow-style:none}.synonym-list-content::-webkit-scrollbar{display:none}.synonym-list-spacer{flex-shrink:0;height:20px}.synonym-list-item{width:100%;padding:10px 12px;font-size:13px;font-weight:500;border-radius:6px;background-color:var(--color-container-subtle);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);flex-shrink:0;display:flex;align-items:center;gap:8px}.synonym-list-item:hover{background-color:var(--color-card-hover)}.synonym-list-item.selected{background-color:#55b6851a;color:var(--color-primary)}.synonym-list-item-num{font-size:12px;font-weight:700;color:var(--color-primary);flex-shrink:0;min-width:20px}.synonym-list-item-meaning{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.synonym-list-item.selected .synonym-list-item-meaning{color:var(--color-primary);font-weight:600}.synonym-list-item-count{display:inline-flex;align-items:center;justify-content:center;padding:1px 6px;background-color:#55b68526;color:var(--color-primary);border-radius:10px;font-size:11px;font-weight:600;flex-shrink:0}.synonym-list-ungrouped-hint{font-size:11px;color:var(--color-text-secondary);opacity:.5;text-align:center;padding:8px 0}.synonym-detail{flex:1;min-width:0;overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:20px 24px 40px;background-color:var(--color-container-bg);border-radius:12px 12px 0 0;scrollbar-width:none;-ms-overflow-style:none}.synonym-detail::-webkit-scrollbar{display:none}.synonym-detail-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:14px}.synonym-detail-header{display:flex;align-items:center;gap:10px;padding:4px 0 12px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.synonym-detail-num{font-size:16px;font-weight:800;color:var(--color-primary)}.synonym-detail-title{font-size:18px;font-weight:700;color:var(--color-text-base);margin:0}.synonym-detail-badge{font-size:12px;font-weight:600;color:var(--color-primary);background:#55b6851f;padding:3px 10px;border-radius:10px;flex-shrink:0}.synonym-words-grid{display:flex;flex-direction:column;gap:12px}.synonym-word-card{background:var(--color-container-bg);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--color-divider);transition:border-color .2s ease}.synonym-word-card:hover{border-color:#55b68540}.synonym-word-top{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.synonym-word-name{font-size:17px;font-weight:700;color:var(--color-primary)}.synonym-word-pos{font-size:12px;color:var(--color-text-secondary);opacity:.6}.synonym-word-def{font-size:14px;color:var(--color-text-base);font-weight:500}.synonym-word-usage{display:flex;flex-direction:column;gap:4px}.synonym-usage-label{font-size:12px;color:var(--color-text-secondary);font-weight:600}.synonym-word-usage p{margin:0;font-size:13px;color:var(--color-text-base);line-height:1.8;opacity:.85}.synonym-word-examples{display:flex;flex-direction:column;gap:8px;padding-left:14px;border-left:3px solid rgba(85,182,133,.2)}.synonym-example-item{display:flex;flex-direction:column;gap:2px}.synonym-example-en{font-size:13px;color:var(--color-text-base);font-style:italic;opacity:.9;line-height:1.5}.synonym-example-cn{font-size:12px;color:var(--color-text-secondary);line-height:1.5}.synonym-section{border-radius:12px;padding:16px 18px;border:1px solid var(--color-divider)}.synonym-section-label{font-size:14px;font-weight:700;color:var(--color-text-base);margin-bottom:10px}.synonym-comparison{background:#6366f108;border-color:#6366f11f}.synonym-comparison-text{margin:0;font-size:13px;line-height:1.9;color:var(--color-text-base);opacity:.9}.synonym-mistakes{background:#f43f5e05;border-color:#f43f5e1a}.synonym-mistake-item{display:flex;flex-direction:column;gap:4px;padding:10px 0}.synonym-mistake-item+.synonym-mistake-item{border-top:1px solid var(--color-divider)}.synonym-mistake-wrong{font-size:13px;color:#f43f5e;display:flex;align-items:flex-start;gap:6px;line-height:1.5}.synonym-mistake-correct{font-size:13px;color:var(--color-primary);display:flex;align-items:flex-start;gap:6px;line-height:1.5}.mistake-icon{font-weight:800;font-size:14px;width:18px;text-align:center;flex-shrink:0;line-height:1.5}.mistake-icon.wrong{color:#f43f5e}.mistake-icon.correct{color:var(--color-primary)}.synonym-mistake-explain{font-size:12px;color:var(--color-text-secondary);line-height:1.7;padding-left:24px;margin-top:2px}.synonym-fill{background:#f5a62305;border-color:#f5a6231a}.synonym-fill-item{padding:12px 0;display:flex;flex-direction:column;gap:6px}.synonym-fill-item+.synonym-fill-item{border-top:1px solid var(--color-divider)}.synonym-fill-question{font-size:14px;color:var(--color-text-base);font-weight:500;line-height:1.7}.fill-number{font-weight:700;color:var(--color-primary);margin-right:4px}.synonym-fill-options{font-size:12px;color:var(--color-text-secondary)}.synonym-fill-reveal-btn{align-self:flex-start;padding:6px 16px;border:1px solid var(--color-divider);border-radius:8px;background:transparent;color:var(--color-text-secondary);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;margin-top:4px}.synonym-fill-reveal-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#55b6850f}.synonym-fill-answer{display:flex;flex-direction:column;gap:4px;animation:synonymFadeIn .2s ease}@keyframes synonymFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.fill-answer-text{font-size:13px;color:var(--color-primary)}.fill-answer-text strong{font-weight:700}.fill-answer-explain{font-size:12px;color:var(--color-text-secondary);line-height:1.7}.video-panel{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.video-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);display:flex;flex-direction:column;overflow:hidden;padding:24px 20px 0 24px;transition:background-color .2s ease}.video-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.video-header-left{display:flex;align-items:center;gap:var(--space-sm)}.video-header-left h2{font-size:18px;font-weight:600;color:var(--color-text-base);margin:0}.video-series-count{font-size:13px;font-weight:500;color:var(--color-text-secondary);background-color:var(--color-container-subtle);padding:2px 10px;border-radius:var(--radius-full)}.video-content-wrapper{flex:1;overflow-y:auto;padding:16px 4px 24px 0;min-height:0;display:flex;flex-direction:column;gap:28px}.video-series-section{display:flex;flex-direction:column;gap:14px;background-color:var(--color-container-subtle);border-radius:var(--radius-md);padding:18px 18px 14px;transition:background-color .2s ease}.video-series-title{font-size:15px;font-weight:600;color:var(--color-text-base);margin:0;padding-left:2px}.video-series-desc{font-size:13px;color:var(--color-text-secondary);opacity:.7;margin:0;padding-left:2px;line-height:1.5}.video-scroll-container{display:flex;gap:14px;overflow-x:auto;padding:4px 4px 12px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.video-scroll-container::-webkit-scrollbar{height:4px}.video-scroll-container::-webkit-scrollbar-track{background:transparent}.video-scroll-container::-webkit-scrollbar-thumb{background:var(--color-divider);border-radius:2px}.video-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.video-card{flex-shrink:0;width:220px;cursor:pointer;transition:transform .2s ease;-webkit-user-select:none;user-select:none}.video-card:hover{transform:translateY(-3px)}.video-card:active{transform:translateY(-1px)}.video-card-cover{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-container-subtle)}.video-card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.video-card:hover .video-card-cover img{transform:scale(1.05)}.video-card-duration{position:absolute;bottom:6px;right:6px;background:#000000b8;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.02em}.video-card-play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:transparent;opacity:0;transition:opacity .25s ease;border-radius:var(--radius-md)}.video-card:hover .video-card-play-overlay{opacity:1}.video-card-play-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#0000008c;border-radius:50%;color:#fff;transition:transform .15s ease,background .15s ease}.video-card:hover .video-card-play-icon{transform:scale(1.06)}.video-card-play-icon svg{width:20px;height:20px}.video-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:32px;opacity:.4}.video-card-info{padding:8px 2px 0}.video-card-title{font-size:13px;font-weight:600;color:var(--color-text-base);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease}.video-card:hover .video-card-title{color:var(--color-primary)}.video-card-topic{font-size:12px;color:var(--color-text-secondary);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.7}.video-loading{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 0}.video-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:14px}.video-empty-icon{font-size:48px;margin-bottom:var(--space-sm)}.video-card.locked{cursor:not-allowed;opacity:.55}.video-card.locked:hover,.video-card.locked:hover .video-card-cover img{transform:none}.video-card.locked:hover .video-card-title{color:var(--color-text-base)}.video-card-lock-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0006;border-radius:var(--radius-md)}.video-card-lock-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#0000008c;border-radius:50%;color:#fffc}.video-card-completed-badge{position:absolute;top:6px;left:6px;background:var(--color-primary);color:#fff;font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;line-height:1.4;letter-spacing:.02em}.video-card-quiz-badge{position:absolute;top:6px;right:6px;background:#f5a623e6;color:#fff;font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;line-height:1.4;letter-spacing:.02em}.video-mode-choice-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background-color:#00000073;animation:modeOverlayFadeIn .2s ease both}@keyframes modeOverlayFadeIn{0%{opacity:0}to{opacity:1}}.video-mode-choice-card{background-color:var(--color-container-bg);border-radius:16px;padding:32px 36px;display:flex;flex-direction:column;align-items:center;gap:24px;min-width:340px;box-shadow:0 12px 40px #00000026,0 2px 8px #00000014;animation:modeCardPop .3s cubic-bezier(.16,1,.3,1) both}@keyframes modeCardPop{0%{opacity:0;transform:scale(.9) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.video-mode-choice-title{font-size:18px;font-weight:700;color:var(--color-text-base)}.video-mode-choice-subtitle{font-size:13px;font-weight:400;color:var(--color-text-secondary);margin-top:-16px}.video-mode-choice-buttons{display:flex;gap:16px;width:100%}.video-mode-choice-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;border:2px solid var(--color-divider);border-radius:12px;background:none;cursor:pointer;transition:all .2s ease}.video-mode-choice-btn:hover{border-color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary) 5%,transparent);transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.video-mode-choice-btn:active{transform:translateY(0)}.video-mode-choice-btn-icon{font-size:36px;line-height:1}.video-mode-choice-btn-label{font-size:15px;font-weight:600;color:var(--color-text-base)}.video-mode-choice-btn-desc{font-size:12px;color:var(--color-text-secondary);text-align:center;line-height:1.4}.video-player-outer{flex:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;padding:20px 20px 0;position:relative}.video-fullscreen-backdrop{background:#0000;transition:background .35s ease}.video-fullscreen-backdrop.visible{background:#000000eb}.video-player-container{position:relative;width:100%;max-height:100%;aspect-ratio:16 / 9;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #00000040}.video-player-container video{width:100%;height:100%;display:block;object-fit:contain!important;cursor:pointer;background:#000}.video-player-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff6;background:linear-gradient(135deg,#1a1a2e,#16213e)}.video-player-placeholder-icon{font-size:48px;opacity:.6}.video-player-placeholder-text{font-size:14px;font-weight:500}.video-player-cover-overlay{position:absolute;inset:0;z-index:3;cursor:pointer;background:#000}.video-player-cover-overlay img{width:100%;height:100%;object-fit:contain;display:block}.video-player-big-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5;opacity:0;transition:opacity .2s ease}.video-player-big-play.show{opacity:1}.video-player-big-play-circle{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#0000008c;border-radius:50%;color:#fff;pointer-events:auto;cursor:pointer;transition:transform .15s ease,background .15s ease}.video-player-big-play-circle:hover{transform:scale(1.08);background:#000000b3}.video-player-big-play-circle svg{width:28px;height:28px}.video-controls-overlay{position:absolute;left:0;right:0;bottom:0;z-index:10;display:flex;flex-direction:column;padding:0 0 10px;background:linear-gradient(transparent 0%,#000000a6);opacity:0;transition:opacity .3s ease;pointer-events:none}.video-controls-overlay.visible{opacity:1;pointer-events:auto}.video-progress-row{padding:0 16px;margin-bottom:6px}.video-progress-track{position:relative;height:4px;background:#ffffff40;border-radius:2px;cursor:pointer;transition:height .15s ease}.video-progress-track:hover{height:6px}.video-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#6dd5a0);border-radius:2px;position:relative;z-index:1;transition:width .1s linear}.video-progress-marker{position:absolute;top:50%;width:6px;height:6px;background:#fff;border-radius:50%;transform:translate(-50%,-50%);z-index:2;opacity:.85;transition:transform .15s ease,opacity .15s ease;pointer-events:auto}.video-progress-marker:hover{transform:translate(-50%,-50%) scale(1.6);opacity:1}.video-progress-marker-tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#000000d9;color:#fff;font-size:11px;padding:4px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease;max-width:200px;overflow:hidden;text-overflow:ellipsis}.video-progress-marker:hover .video-progress-marker-tip{opacity:1}.video-controls-row{display:flex;align-items:center;gap:4px;padding:0 12px}.video-ctrl-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:#ffffffd9;cursor:pointer;transition:all .15s ease;padding:0;flex-shrink:0}.video-ctrl-btn:hover{color:#fff;background:#ffffff1f}.video-ctrl-btn:active{transform:scale(.92)}.video-ctrl-btn:disabled{opacity:.3;cursor:not-allowed}.video-ctrl-btn svg{width:18px;height:18px}.video-ctrl-btn.play-pause{width:38px;height:38px}.video-ctrl-btn.play-pause svg{width:22px;height:22px}.video-ctrl-btn.play-pause:hover{background:#ffffff2e}.video-time-label{font-size:12px;color:#fffc;font-variant-numeric:tabular-nums;white-space:nowrap;margin:0 4px;-webkit-user-select:none;user-select:none}.video-controls-spacer{flex:1}.video-speed-btn{display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:#fffc;cursor:pointer;transition:all .15s ease;padding:3px 6px;flex-shrink:0;font-size:12px;font-weight:700;font-family:inherit;white-space:nowrap;min-width:34px;line-height:1}.video-speed-btn:hover{color:#fff;background:#ffffff1f}.video-subtitle-overlay{position:absolute;left:0;right:0;bottom:56px;z-index:8;display:flex;justify-content:center;padding:0 24px;pointer-events:none;transition:bottom .3s ease}.video-subtitle-text{display:inline-block;max-width:85%;padding:6px 16px;background:#000000b3;color:#fff;font-size:15px;line-height:1.6;border-radius:6px;text-align:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);letter-spacing:.3px;text-shadow:0 1px 2px rgba(0,0,0,.5);animation:subtitleFadeIn .15s ease}@keyframes subtitleFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.video-subtitle-toggle{opacity:.6;transition:all .15s ease}.video-subtitle-toggle.active{opacity:1;color:var(--color-primary, #6dd5a0)}.video-subtitle-toggle:hover{opacity:1}.video-subtitle-controls{position:relative;display:flex;align-items:center;gap:0}.video-subtitle-settings-btn{opacity:.5;transition:all .15s ease}.video-subtitle-settings-btn:hover{opacity:1}.video-subtitle-settings-btn svg{width:15px;height:15px}.video-subtitle-settings-panel{position:absolute;bottom:calc(100% + 12px);right:0;width:240px;background:#14141eeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;z-index:100;box-shadow:0 12px 40px #00000080,0 0 0 1px #ffffff0d inset;animation:subtitleSettingsFadeIn .2s ease}@keyframes subtitleSettingsFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.video-subtitle-settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.video-subtitle-settings-header span{font-size:13px;font-weight:600;color:#ffffffe6;letter-spacing:.3px}.video-subtitle-settings-reset{font-size:11px;color:var(--color-primary, #6dd5a0);background:#6dd5a01a;border:none;border-radius:6px;padding:3px 10px;cursor:pointer;font-weight:600;transition:all .15s ease;font-family:inherit}.video-subtitle-settings-reset:hover{background:#6dd5a033}.video-subtitle-settings-item{margin-bottom:12px}.video-subtitle-settings-item:last-child{margin-bottom:0}.video-subtitle-settings-item label{display:block;font-size:12px;color:#ffffff8c;margin-bottom:8px;font-weight:500}.video-subtitle-slider-row{display:flex;align-items:center;gap:10px}.video-subtitle-slider{flex:1;-webkit-appearance:none;appearance:none;height:4px;background:#ffffff26;border-radius:2px;outline:none;cursor:pointer;transition:background .15s ease}.video-subtitle-slider:hover{background:#ffffff40}.video-subtitle-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:var(--color-primary, #6dd5a0);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #6dd5a059;transition:transform .15s ease,box-shadow .15s ease}.video-subtitle-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 2px 10px #6dd5a080}.video-subtitle-slider::-moz-range-thumb{width:14px;height:14px;background:var(--color-primary, #6dd5a0);border-radius:50%;border:none;cursor:pointer;box-shadow:0 2px 6px #6dd5a059}.video-subtitle-slider-value{font-size:12px;color:#ffffffb3;font-variant-numeric:tabular-nums;min-width:38px;text-align:right;font-weight:500;flex-shrink:0}.video-player-placeholder{width:100%;aspect-ratio:16 / 9;background:var(--color-container-subtle);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.video-player-placeholder-icon{font-size:48px;opacity:.5}.video-player-placeholder-text{font-size:14px;color:var(--color-text-secondary);opacity:.7}.video-learning-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1)}.video-learning-panel.visible{transform:translateY(0)}.video-learning-panel-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.video-learning-panel-content{width:100%;height:100%;padding:20px 20px 0;display:flex;overflow:hidden;opacity:0;transition:opacity .3s ease}.video-learning-panel-content.fade-in{opacity:1}.video-learning-episodes{width:324px;margin-right:20px;flex-shrink:0;overflow:hidden;transition:width .35s cubic-bezier(.4,0,.2,1),margin-right .35s cubic-bezier(.4,0,.2,1)}.video-learning-episodes.collapsed{width:0;margin-right:0}.video-episode-list{width:324px;height:100%;background-color:var(--color-container-bg);border-radius:12px 12px 0 0;padding:15px 0 0;display:flex;flex-direction:column;overflow:hidden}.video-episode-list-header{flex-shrink:0;padding:0 15px}.video-episode-list-tag{display:inline-block;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 8px;font-size:14px;color:var(--color-text-secondary)}.video-episode-list-divider{flex-shrink:0;height:1px;background-color:var(--color-divider);margin-top:15px}.video-episode-list-content{flex:1;overflow-y:auto;padding:15px 15px 0;display:flex;flex-direction:column;gap:10px;scrollbar-width:none;-ms-overflow-style:none}.video-episode-list-content::-webkit-scrollbar{display:none}.video-episode-item{width:100%;padding:10px 12px;font-size:13px;font-weight:500;border-radius:6px;background-color:var(--color-container-subtle);color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);flex-shrink:0;display:flex;align-items:center;gap:10px;line-height:1.4}.video-episode-item:hover{background-color:var(--color-card-hover)}.video-episode-item.selected{background-color:#55b6851a;color:var(--color-primary)}.video-episode-ring{flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:28px}.episode-progress-ring,.episode-lock-icon{display:block}.video-episode-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-episode-duration{font-size:10px;color:var(--color-text-secondary);opacity:.55;flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.02em}.video-episode-list-spacer{flex-shrink:0;height:20px}.video-episode-item.locked{opacity:.45;cursor:not-allowed}.video-episode-item.locked:hover{background-color:var(--color-container-subtle)}.video-episode-item.completed .video-episode-duration{color:var(--color-primary);opacity:.7}.video-note-panel{width:0;flex-shrink:0;overflow:hidden;transition:width .35s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.video-note-panel.open{width:488px}.video-note-panel.dragging{transition:none}.video-note-resize-handle{width:8px;height:100%;cursor:col-resize;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:10}.video-note-resize-handle:hover .video-note-resize-line,.video-note-resize-handle.dragging .video-note-resize-line{background-color:var(--color-primary);width:4px}.video-note-resize-line{width:2px;height:40px;background-color:var(--color-divider);border-radius:2px;transition:background-color .15s ease,width .15s ease}.video-note-content{flex:1;min-width:0;height:100%;opacity:0;transition:opacity .25s ease}.video-note-content.visible{opacity:1}.video-note-content .note-panel{width:100%;height:100%;border-radius:12px 12px 0 0}.video-quiz-panel{position:fixed;inset:64px 0 0 64px;background-color:var(--color-page-bg);z-index:100;transform:translateY(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.video-quiz-panel.visible{transform:translateY(0)}.video-quiz-loading{flex:1;display:flex;align-items:center;justify-content:center}.video-quiz-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;opacity:0;transition:opacity .3s ease}.video-quiz-content.fade-in{opacity:1}.video-quiz-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);padding:15px;display:flex;flex-direction:column;overflow:hidden;position:relative}.video-quiz-progress-row{display:flex;align-items:center;gap:12px;flex-shrink:0}.video-quiz-progress-bar{width:254px;height:10px;background-color:var(--color-container-subtle);border-radius:var(--radius-full, 999px);overflow:hidden;flex-shrink:0}.video-quiz-progress-fill{height:100%;background-color:var(--color-primary);border-radius:var(--radius-full, 999px);transition:width .4s cubic-bezier(.4,0,.2,1)}.video-quiz-progress-text{font-size:13px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none}.video-quiz-title-tag{margin-left:auto;display:inline-flex;align-items:center;gap:6px;background-color:var(--color-container-subtle);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.video-quiz-hint-toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--color-divider);border-radius:8px;background:none;cursor:pointer;font-size:16px;transition:all .2s ease;opacity:.6;flex-shrink:0}.video-quiz-hint-toggle:hover{opacity:1;border-color:var(--color-primary)}.video-quiz-hint-toggle.active{opacity:1;border-color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary) 10%,transparent)}.video-quiz-divider{height:1px;background-color:var(--color-divider);margin:15px -15px 0;flex-shrink:0}.video-quiz-body-layout{flex:1;display:flex;min-height:0;overflow:hidden;gap:0}.video-quiz-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:20px 0;min-height:0;cursor:text;overflow-y:auto}.video-quiz-sidebar{width:240px;flex-shrink:0;display:flex;flex-direction:column;border-left:1px solid var(--color-divider);background-color:color-mix(in srgb,var(--color-container-subtle) 50%,transparent);overflow-y:auto;animation:sidebarSlideIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes sidebarSlideIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.video-quiz-sidebar-header{display:flex;align-items:center;gap:8px;padding:16px 16px 12px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.video-quiz-sidebar-icon{font-size:16px}.video-quiz-sidebar-title{font-size:13px;font-weight:700;color:var(--color-text-base);letter-spacing:.3px}.video-quiz-sidebar-list{display:flex;flex-direction:column;gap:2px;padding:8px;overflow-y:auto}.video-quiz-sidebar-word{padding:10px 12px;border-radius:8px;background-color:var(--color-container-bg);transition:background-color .15s ease}.video-quiz-sidebar-word:hover{background-color:color-mix(in srgb,var(--color-primary) 6%,var(--color-container-bg))}.video-quiz-sidebar-word-header{display:flex;align-items:center;gap:6px;margin-bottom:2px}.video-quiz-sidebar-word-text{font-size:14px;font-weight:700;color:#f5a623}.video-quiz-sidebar-word-pos{font-size:10px;font-weight:600;color:var(--color-text-secondary);background-color:var(--color-container-subtle);padding:1px 6px;border-radius:4px;opacity:.8}.video-quiz-sidebar-word-phonetic{font-size:12px;color:var(--color-text-secondary);opacity:.7;margin-bottom:3px;font-family:serif}.video-quiz-sidebar-word-meaning{font-size:12px;font-weight:500;color:var(--color-text-base);line-height:1.5;opacity:.85}.video-quiz-grammar-tag{display:inline-block;background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-size:13px;font-weight:600;padding:4px 12px;border-radius:6px;white-space:nowrap;letter-spacing:.3px;flex-shrink:0}.video-quiz-chinese{text-align:center;width:70%;display:flex;flex-direction:column;align-items:center;gap:10px;flex-shrink:0}.video-quiz-cn-text{font-size:22px;font-weight:600;color:var(--color-text-base);line-height:1.6}.video-quiz-input-section{width:100%;max-width:700px;display:flex;flex-direction:column;align-items:center;gap:16px;flex-shrink:0}.quiz-slots-container{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:4px;min-height:52px;padding:8px 0}.quiz-word-group{display:flex;align-items:flex-end;gap:0}.quiz-word-space{width:16px;flex-shrink:0}.quiz-char-slot{display:flex;flex-direction:column;align-items:center;min-width:18px;position:relative}.quiz-char-slot.active-empty{min-width:20px}.quiz-char-letter{font-size:22px;font-weight:600;color:var(--color-text-base);line-height:1.4;min-height:31px;display:flex;align-items:flex-end;justify-content:center;transition:color .2s ease}.quiz-char-slot.correct .quiz-char-letter{color:var(--color-primary)}.quiz-char-slot.error .quiz-char-letter{color:var(--color-error, #e74c3c)}.quiz-char-underline{width:100%;height:3px;background-color:var(--color-divider);transition:background-color .2s ease}.quiz-char-slot.filled .quiz-char-underline{background-color:var(--color-text-secondary);opacity:.5}.quiz-char-slot.correct .quiz-char-underline{background-color:var(--color-primary);opacity:.6}.quiz-char-slot.error .quiz-char-underline{background-color:var(--color-error, #e74c3c);opacity:.6}.quiz-cursor{position:absolute;left:50%;bottom:5px;transform:translate(-50%);width:2px;height:24px;background-color:var(--color-primary);border-radius:1px;animation:quizCursorBlink 1s step-end infinite}@keyframes quizCursorBlink{0%,to{opacity:1}50%{opacity:0}}.quiz-hidden-input{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.video-quiz-shortcuts{display:flex;align-items:center;gap:20px}.video-quiz-hint{font-size:13px;color:var(--color-text-secondary);opacity:.6;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:6px}.video-quiz-hint kbd{display:inline-block;padding:1px 6px;font-size:11px;font-weight:600;font-family:inherit;color:var(--color-text-secondary);background-color:var(--color-container-subtle);border:1px solid var(--color-divider);border-radius:4px;line-height:1.6}.video-quiz-result{width:100%;max-width:600px;animation:quizSlideUp .35s cubic-bezier(.16,1,.3,1) both;flex-shrink:0}@keyframes quizSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.video-quiz-result-card{background-color:var(--color-container-subtle);border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.video-quiz-result-row{display:flex;align-items:flex-start;gap:10px}.video-quiz-result-label{flex-shrink:0;font-size:12px;font-weight:600;color:var(--color-text-secondary);opacity:.7;min-width:56px;padding-top:2px}.video-quiz-result-value{font-size:14px;font-weight:500;color:var(--color-text-base);line-height:1.6}.video-quiz-result-value.correct-answer{color:var(--color-primary);font-weight:600}.video-quiz-difficult-words{display:flex;flex-wrap:wrap;gap:8px}.video-quiz-word-chip{display:inline-flex;align-items:center;gap:4px;background-color:#f5a6231a;color:#f5a623;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;line-height:1.4}.video-quiz-word-detail{font-size:11px;font-weight:400;color:var(--color-text-secondary);opacity:.8}.video-quiz-completed{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:0 20px}.video-quiz-completed-icon{font-size:56px;animation:quizBounce .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes quizBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.video-quiz-completed-title{font-size:22px;font-weight:700;color:var(--color-text-base)}.video-quiz-completed-stats{display:flex;gap:24px;margin-top:8px}.video-quiz-stat{display:flex;flex-direction:column;align-items:center;gap:4px}.video-quiz-stat-value{font-size:28px;font-weight:700;color:var(--color-primary)}.video-quiz-stat-value.error-val{color:var(--color-error, #e74c3c)}.video-quiz-stat-label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.video-quiz-completed-btn{margin-top:16px;padding:10px 32px;font-size:15px;font-weight:600;color:#fff;background-color:var(--color-primary);border:none;border-radius:10px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.video-quiz-completed-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--color-primary) 30%,transparent)}.video-quiz-completed-btn:active{transform:translateY(0)}@keyframes quizShake{0%,to{transform:translate(0)}10%,50%,90%{transform:translate(-4px)}30%,70%{transform:translate(4px)}}.quiz-char-slot.error{animation:quizShake .4s ease}.friend-modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;animation:friendOverlayIn .15s ease}@keyframes friendOverlayIn{0%{opacity:0}to{opacity:1}}.friend-modal{width:480px;height:520px;background:var(--color-container-bg);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000026;animation:friendModalIn .2s ease}@keyframes friendModalIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.friend-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;flex-shrink:0}.friend-modal-title{font-size:18px;font-weight:700;color:var(--color-text-base)}.friend-modal-close{width:32px;height:32px;border:none;background:transparent;color:var(--color-text-secondary);font-size:16px;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.friend-modal-close:hover{background:#0000000f;color:var(--color-text-base)}[data-theme=dark] .friend-modal-close:hover{background:#ffffff1a}.friend-modal-tabs{display:flex;gap:0;padding:0 24px;border-bottom:1px solid var(--color-divider);flex-shrink:0}.friend-modal-tab{padding:10px 20px;border:none;background:transparent;font-size:14px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;position:relative;transition:color var(--transition-fast);display:flex;align-items:center;gap:6px}.friend-modal-tab:hover{color:var(--color-text-base)}.friend-modal-tab.active{color:var(--color-primary)}.friend-modal-tab.active:after{content:"";position:absolute;bottom:-1px;left:20px;right:20px;height:2px;background:var(--color-primary);border-radius:1px}.friend-modal-tab-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--color-error);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1}.friend-modal-body{flex:1;overflow-y:auto;padding:16px 24px 24px}.friend-search-bar{display:flex;gap:10px;margin-bottom:16px}.friend-search-input{flex:1;height:40px;padding:0 14px;border:1px solid var(--color-divider);border-radius:10px;background:var(--color-container-subtle);color:var(--color-text-base);font-size:14px;outline:none;caret-color:var(--color-primary);transition:border-color var(--transition-fast)}.friend-search-input:focus{border-color:var(--color-primary)}.friend-search-input::placeholder{color:var(--color-text-unselected)}.friend-search-btn{height:40px;padding:0 20px;border:none;border-radius:10px;background:var(--color-primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast)}.friend-search-btn:hover{background:var(--color-primary-hover)}.friend-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;margin-bottom:8px;transition:background var(--transition-fast)}.friend-item:hover{background:#00000008}[data-theme=dark] .friend-item:hover{background:#ffffff0d}.friend-item-avatar{width:44px;height:44px;border-radius:12px;background:var(--color-container-subtle);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--color-text-secondary);flex-shrink:0;overflow:hidden}.friend-item-avatar img{width:100%;height:100%;object-fit:cover}.friend-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.friend-item-name{font-size:14px;font-weight:600;color:var(--color-text-base)}.friend-item-phone{font-size:12px;color:var(--color-text-secondary)}.friend-item-msg{font-size:12px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-item-time{font-size:11px;color:var(--color-text-unselected)}.friend-item-actions{display:flex;gap:8px;flex-shrink:0}.friend-action-btn{height:32px;padding:0 16px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.friend-action-btn.primary{background:var(--color-primary);color:#fff}.friend-action-btn.primary:hover{background:var(--color-primary-hover)}.friend-action-btn.secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-divider)}.friend-action-btn.secondary:hover{border-color:var(--color-text-secondary);color:var(--color-text-base)}.friend-status-label{font-size:12px;font-weight:500;flex-shrink:0;padding:4px 10px;border-radius:6px}.friend-status-label.accepted{color:var(--color-primary);background:#55b6851a}.friend-status-label.rejected{color:var(--color-text-secondary);background:#0000000a}[data-theme=dark] .friend-status-label.rejected{background:#ffffff0f}.friend-request-section{margin-bottom:20px}.friend-request-section-title{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding-left:4px}.friend-search-empty,.friend-search-tip{text-align:center;padding:40px 20px;color:var(--color-text-secondary);font-size:14px}.kc{position:relative;display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:12px;background:var(--color-container-bg);min-width:0;color:var(--color-text-base);font-size:14px}.kc.clickable{cursor:pointer}.kc.clickable:hover{background:var(--color-cell-pressed)}.kc button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}.kc-z{position:relative;z-index:2}.kc-head{display:flex;align-items:center;gap:8px;min-width:0;font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.kc-kicker{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kc-kicker b{font-weight:500;color:var(--color-icon-active)}.kc-count{flex:none;margin-left:auto;font-variant-numeric:tabular-nums}.kc-text{display:flex;flex-direction:column;gap:4px}.kc-title{margin:0;font-size:16px;line-height:1.45;font-weight:600}.kc-take{margin:0;font-size:14px;line-height:1.65;color:var(--color-icon-active)}.kc-mark{text-decoration:underline 2px var(--color-primary);text-underline-offset:3px;text-decoration-skip-ink:none}.kc-mark-no{color:var(--color-text-secondary);text-decoration:line-through 1px var(--color-text-secondary)}.kc-ghost{color:var(--color-text-secondary);font-weight:400}.kc-rows>*{border-top:1px solid var(--color-divider);padding:9px 0}.kc-rows>*:last-child{padding-bottom:0}.kc-en{font-weight:500;line-height:1.55}.kc-sub{display:block;font-size:12px;line-height:1.55;font-weight:400;color:var(--color-text-secondary)}.kc-speak{flex:none;margin:-3px -6px -3px 0}.kc-speak .speaker-icon{box-sizing:content-box;padding:6px}.kc-line{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;line-height:1.55}.kc-soft{font-size:13px;line-height:1.6;color:var(--color-icon-active)}.kc-lead{font-size:16px;line-height:1.55;font-weight:500}.kc-head-word{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.kc-head-word b{font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.01em}.kc-head-word span{font-size:13px;color:var(--color-text-secondary)}.kc-head-word .kc-speak{margin-left:auto;align-self:center}.kc-display{font-size:24px;line-height:1.3;font-weight:600}.kc-quote{display:flex;flex-direction:column;gap:12px}.kc-quote:before{content:"";width:20px;height:3px;border-radius:2px;background:var(--color-primary)}.kc-quote p{margin:0;font-size:20px;line-height:1.5;font-weight:600}.kc-quote small{font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.kc-pair{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;line-height:1.55}.kc-pair svg{margin-top:3px}.kc-ok{color:var(--color-primary)}.kc-no{color:var(--color-icon-inactive)}.kc-pair.bad .kc-en{color:var(--color-text-secondary);font-weight:400}.kc-segs{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px 10px;padding-top:2px}.kc-seg{display:flex;flex-direction:column;gap:4px;min-width:0}.kc-seg b{font-size:15px;line-height:1.4;font-weight:500;padding-bottom:4px;border-bottom:1px solid var(--color-icon-inactive)}.kc-seg.focus b{font-weight:600;border-bottom:2px solid var(--color-primary);padding-bottom:3px}.kc-seg span{font-size:11px;line-height:1.3;color:var(--color-text-secondary)}.kc-segs.big{gap:14px 16px}.kc-segs.big b{font-size:22px;line-height:1.3;font-weight:600}.kc-segs.big span{font-size:12px}.kc-op{font-size:16px;line-height:25px;color:var(--color-icon-inactive)}.kc-result{font-size:14px;line-height:1.55;font-weight:500;padding-top:10px;border-top:1px solid var(--color-divider)}.kc-table{display:grid;font-size:13px;line-height:1.5}.kc-table>*{padding:8px 8px 8px 0;border-top:1px solid var(--color-divider);overflow-wrap:anywhere;min-width:0}.kc-table .th{font-size:12px;color:var(--color-text-secondary);border-top:0;padding-top:0}.kc-table .th em{font-style:normal;float:right;margin-right:12px;color:var(--color-icon-inactive)}.kc-table .rl{font-size:12px;color:var(--color-text-secondary);padding-right:14px;white-space:nowrap;overflow-wrap:normal}.kc-table .c0{font-weight:500}.kc-kv{display:flex;align-items:baseline;justify-content:space-between;gap:12px;line-height:1.55}.kc-kv>:first-child{min-width:0}.kc-kv .v{flex:0 0 auto;max-width:52%;text-align:right;font-size:12px;color:var(--color-text-secondary)}.kc-shift .lab{display:block;font-size:12px;color:var(--color-text-secondary);margin-bottom:2px}.kc-shift .t{line-height:1.55;color:var(--color-icon-active)}.kc-shift .last .t{font-size:16px;line-height:1.5;font-weight:500;color:var(--color-text-base)}.kc-cols{display:grid;border-top:1px solid var(--color-divider)}.kc-col{padding:12px 10px 0 0;min-width:0}.kc-col+.kc-col{padding-left:12px;border-left:1px solid var(--color-divider)}.kc-col h4{margin:0 0 6px;font-size:16px;line-height:1.35;font-weight:600;overflow-wrap:anywhere}.kc-col p{margin:0;font-size:13px;line-height:1.6;color:var(--color-icon-active);overflow-wrap:anywhere}.kc-meter{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.kc-meter .top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px}.kc-meter small{font-size:12px;color:var(--color-text-secondary)}.kc-meter .track{height:4px;border-radius:2px;background:var(--color-container-subtle);overflow:hidden}.kc-meter .track i{display:block;height:100%;border-radius:2px;background:var(--color-primary)}.kc-dots-cap{text-align:right;font-size:11px;color:var(--color-text-secondary);margin-bottom:6px}.kc-dots-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.kc-dots{flex:none;display:inline-flex;gap:4px}.kc-dots i{width:6px;height:6px;border-radius:50%;background:var(--color-divider)}.kc-dots i.on{background:var(--color-primary)}.kc-spec{position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));padding-top:6px}.kc-spec:before{content:"";position:absolute;left:calc(50% / var(--n));right:calc(50% / var(--n));top:10px;height:1px;background:var(--color-icon-inactive)}.kc-spec>div{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:13px;line-height:1.4;font-weight:500;text-align:center}.kc-spec i{width:9px;height:9px;border-radius:50%;background:var(--color-primary);margin-bottom:6px}.kc-spec small{font-size:11px;font-weight:400;color:var(--color-text-secondary)}.kc-tiles{display:grid;gap:6px}.kc-tile{padding:10px;border-radius:8px;background:var(--color-container-subtle);font-size:13px;line-height:1.4;font-weight:500;overflow-wrap:anywhere}.kc-tile-t{display:flex;justify-content:space-between;gap:4px}.kc-tile small{display:block;margin-top:2px;font-size:11px;font-weight:400;color:var(--color-text-secondary)}.kc-tag-group+.kc-tag-group{margin-top:10px}.kc-tag-group>span{display:block;font-size:12px;line-height:1.4;color:var(--color-text-secondary);margin-bottom:6px}.kc-tags{display:flex;flex-wrap:wrap;gap:6px}.kc-tag{padding:4px 9px;border-radius:6px;background:var(--color-container-subtle);font-size:13px;line-height:1.4;font-weight:500}.kc-flow{position:relative;list-style:none;margin:2px 0 0;display:flex;flex-direction:column;gap:12px;padding:0 0 0 16px}.kc-flow:before{content:"";position:absolute;left:3px;top:7px;bottom:7px;width:1px;background:var(--color-icon-inactive)}.kc-flow li{position:relative}.kc-flow li:before{content:"";position:absolute;left:-16px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--color-primary)}.kc-flow .q{display:block;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.kc-flow .a{display:block;font-size:15px;line-height:1.45;font-weight:600}.kc-chain{list-style:none;margin:0;padding:0}.kc-chain li{display:flex;align-items:baseline;gap:10px;padding:8px 0;border-top:1px solid var(--color-divider);font-size:15px;font-weight:500}.kc-chain li:last-child{padding-bottom:0;font-weight:600}.kc-chain small,.kc-tree small,.kc-ladder small{font-size:12px;font-weight:400;color:var(--color-text-secondary)}.kc-tree{list-style:none;margin:0 0 0 4px;padding:0;border-left:1px solid var(--color-icon-inactive)}.kc-tree li{position:relative;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;padding:5px 0 5px 16px;font-size:15px;line-height:1.45;font-weight:500}.kc-tree li:before{content:"";position:absolute;left:0;top:16px;width:10px;height:1px;background:var(--color-icon-inactive)}.kc-ladder{list-style:none;margin:0;padding:0}.kc-ladder li{position:relative;display:flex;align-items:baseline;gap:8px;padding:5px 0 5px calc(var(--i) * 18px);font-size:15px;line-height:1.45;font-weight:500}.kc-ladder li:not(:first-child):before{content:"";position:absolute;left:calc((var(--i) - 1) * 18px + 4px);top:0;width:9px;height:16px;border:solid var(--color-icon-inactive);border-width:0 0 1px 1px}.kc-stack{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:4px}.kc-stack li{min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 8px;border-radius:8px;text-align:center;background:color-mix(in srgb,var(--color-primary) var(--a),transparent);font-size:15px;line-height:1.3;font-weight:600}.kc-stack small{font-size:11px;font-weight:400;color:var(--color-icon-active)}.kc-spots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.kc-spot{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px 10px;border-radius:8px;background:var(--color-container-subtle);font-size:15px;font-weight:600}.kc-spot small{font-size:11px;font-weight:400;color:var(--color-text-secondary);text-align:center}.kc-spot .line{fill:none;stroke:var(--color-icon-inactive);stroke-width:1.5}.kc-spot .dot{fill:var(--color-primary)}.kc-axis{position:relative;height:14px;margin-top:8px}.kc-axis:before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;border-radius:1px;background:var(--color-divider)}.kc-axis u{position:absolute;left:26%;top:6px;right:0;height:2px;background:var(--color-primary)}.kc-axis i{position:absolute;left:26%;top:2px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--color-primary)}.kc-axis s{position:absolute;right:0;top:2px;width:2px;height:10px;background:var(--color-icon-inactive)}.kc-axis-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-secondary);margin-top:6px}.kc-pron{display:flex;align-items:center;gap:12px}.kc-sylls{display:flex;align-items:flex-end;gap:2px;font-size:20px;line-height:1.3}.kc-sylls span{padding-bottom:5px;color:var(--color-text-secondary);border-bottom:3px solid transparent}.kc-sylls span.st{color:var(--color-text-base);font-weight:600;border-bottom-color:var(--color-primary)}.kc-pron .meta{margin-left:auto;text-align:right;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.kc-pron .meta b{display:block;font-weight:400;color:var(--color-icon-active)}.kc-linking{font-size:20px;line-height:1.4;font-weight:600}.kc-linking .lk{display:inline-block;width:12px;height:8px;margin:0 1px;border-bottom:2px solid var(--color-primary);border-radius:0 0 12px 12px;vertical-align:-1px}.kc-contour{display:block;width:100%;height:34px;margin-top:6px}.kc-contour path{fill:none;stroke:var(--color-primary);stroke-width:2;stroke-linecap:round;vector-effect:non-scaling-stroke}.kc-dialog{display:flex;flex-direction:column;gap:6px}.kc-say{max-width:86%;align-self:flex-start;padding:8px 12px;border-radius:14px 14px 14px 4px;background:var(--color-container-subtle);line-height:1.5}.kc-say.me{align-self:flex-end;border-radius:14px 14px 4px;background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.kc-mail{padding:12px;border-radius:8px;background:var(--color-container-subtle);font-size:13px;line-height:1.7}.kc-mail p{margin:4px 0 0}.kc-mail .subj{padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--color-divider);font-weight:600}.kc-hint{font-size:13px;line-height:1.55;color:var(--color-text-secondary);margin-bottom:4px}.kc-big{font-size:18px;line-height:1.45;font-weight:600}.kc-sense{display:flex;align-items:baseline;gap:6px;line-height:1.55;color:var(--color-icon-active)}.kc-sense i{font-size:12px;color:var(--color-text-secondary);font-style:italic}.kc-sense.cur{color:var(--color-text-base);font-weight:600}.kc-sense.cur i{font-weight:400}.kc-sense em{margin-left:auto;font-style:normal;font-weight:500;font-size:12px;color:var(--color-primary)}.kc-template{font-size:19px;line-height:1.5;font-weight:600}.kc-template i{display:inline-block;width:44px;height:3px;margin:0 3px;vertical-align:1px;background:var(--color-primary);border-radius:2px}.kc-flip{display:block;width:100%;perspective:800px;text-align:center}.kc-flip .in{display:grid;transition:transform .45s cubic-bezier(.3,.8,.3,1);transform-style:preserve-3d}.kc-flip.on .in{transform:rotateY(180deg)}.kc-flip .face{grid-area:1 / 1;min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:14px;border-radius:10px;background:var(--color-container-subtle);border:1px solid var(--color-divider);backface-visibility:hidden;font-size:19px;line-height:1.4;font-weight:600}.kc-flip .face.back{transform:rotateY(180deg);font-size:16px}.kc-flip small{font-size:11px;font-weight:400;color:var(--color-text-secondary)}.kc-opts{display:flex;flex-direction:column;gap:6px}.kc-opts.row{flex-direction:row}.kc-opts.row .kc-opt{flex:1;justify-content:center}.kc .kc-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:9px 12px;border-radius:10px;border:1px solid var(--color-divider);line-height:1.45;text-align:left}.kc-opt svg{color:var(--color-primary)}.kc .kc-opt.right{border-color:var(--color-primary);font-weight:600}.kc .kc-opt.wrong{color:var(--color-text-secondary);text-decoration:line-through}.kc .kc-opt.on{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent);font-weight:600}.kc-why{font-size:13px;line-height:1.6;color:var(--color-icon-active)}.kc-why b{font-weight:600;color:var(--color-text-base)}.kc-built{min-height:40px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0;border-bottom:2px solid var(--color-primary)}.kc-pool{display:flex;flex-wrap:wrap;gap:6px;min-height:30px}.kc .kc-word{padding:5px 10px;border-radius:8px;background:var(--color-container-subtle);line-height:1.4;font-weight:500}.kc .kc-built .kc-word{background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.kc-match{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kc-match>div{display:flex;flex-direction:column;gap:6px}.kc-m-r{padding:9px 12px;border-radius:10px;border:1px solid transparent;background:var(--color-container-subtle);line-height:1.45}.kc-m-r.on{border-color:var(--color-primary);font-weight:600}.kc-tok-line{display:flex;flex-wrap:wrap;align-items:center;gap:4px 5px;font-size:16px;line-height:1.5;font-weight:500}.kc .kc-tok{padding:1px 4px;border-radius:5px;font-weight:500}.kc .kc-tok:hover,.kc .kc-tok.miss{background:var(--color-container-subtle)}.kc-reveal{display:flex;align-items:center;gap:10px;min-height:40px}.kc-answer{font-size:16px;line-height:1.5;font-weight:500;padding-top:10px;border-top:1px solid var(--color-divider)}.kc .kc-link,.kc-link{color:var(--color-primary);font-weight:600;font-size:inherit;background:none;border:0;padding:0;cursor:pointer}.kc-cloze{font-size:16px;line-height:1.8;font-weight:500}.kc .kc-blank{display:inline-block;min-width:76px;height:26px;line-height:22px;margin:0 2px;padding:0 8px;vertical-align:-2px;text-align:center;border-bottom:2px solid var(--color-primary);color:var(--color-text-secondary);font-size:12px;font-weight:400}.kc .kc-blank.on{color:var(--color-text-base);font-size:16px;font-weight:600}.kc-note{display:flex;gap:8px;font-size:13px;line-height:1.6;color:var(--color-icon-active)}.kc-note svg{flex:none;margin-top:3px;color:var(--color-primary)}.kc-note b{font-weight:600;color:var(--color-text-base)}.kc-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--color-divider);font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.kc-saved{display:inline-flex;align-items:center;gap:4px;color:var(--color-icon-active)}.kc-saved svg{color:var(--color-primary)}.kc .kc-rm{color:var(--color-text-secondary);padding:4px 0 4px 8px}.kc .kc-rm:hover{color:var(--color-text-base)}.kc-src{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kc-btn-review{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:32px;padding:0 14px;border:0;border-radius:10px;background:var(--color-primary);color:#fff!important;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer}.kc-btn-review:hover{background:var(--color-primary-hover)}.kc-btn-review.on{background:var(--color-container-subtle);color:var(--color-icon-active)!important}.kc-btn-review.on svg{color:var(--color-primary)}.kc-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:11px 12px;border:0;border-radius:10px;background:var(--color-container-bg);font:inherit;font-size:13px;line-height:1.5;color:var(--color-icon-active);cursor:pointer}.kc-row:hover{background:var(--color-cell-pressed)}.kc-row svg{color:var(--color-icon-inactive)}.kc-row strong{color:var(--color-text-base);font-weight:600}.kc-sheet{display:flex;flex-direction:column;min-height:0;flex:1;height:100%;background:var(--color-page-bg)}.kc-sheet-body{flex:1;min-height:0;overflow-y:auto;padding:8px 16px 16px;display:flex;flex-direction:column;gap:10px}.kc-sec{background:var(--color-container-bg);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px;color:var(--color-text-base);font-size:14px}.kc-sec-tag{font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.kc-sec p{margin:0;line-height:1.75}.kc-point{display:flex;align-items:flex-start;gap:8px;line-height:1.55}.kc-point code{flex:none;font:inherit;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.kc-pill{height:40px;width:100%;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:10px;color:var(--color-text-base);background:var(--color-container-subtle);font:inherit;font-size:14px;font-weight:500;cursor:pointer}.kc-pill svg{color:var(--color-primary)}.kc-muted{font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.kc-hist{list-style:none;margin:0;padding:0}.kc-hist li+li{border-top:1px solid var(--color-divider)}.kc-hist-item{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px;text-align:left;padding:9px 0;background:none;border:0;font:inherit;color:inherit}button.kc-hist-item{cursor:pointer}.kc-hist li:first-child .kc-hist-item{padding-top:0}.kc-hist li:last-child .kc-hist-item{padding-bottom:0}.kc-hist q{quotes:none;display:block;font-size:13px;line-height:1.55}.kc-hist small{display:block;margin-top:1px;font-size:12px;color:var(--color-text-secondary)}.kc-hist svg{flex:none;color:var(--color-icon-inactive)}.kc-sec textarea{width:100%;box-sizing:border-box;min-height:76px;resize:vertical;border:0;border-radius:8px;padding:10px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:14px;line-height:1.6;outline:none}.kc-sec textarea::placeholder{color:var(--color-text-secondary)}.kc-old{font-size:13px;line-height:1.6;color:var(--color-text-secondary);padding-top:10px;border-top:1px solid var(--color-divider)}.kc-old b{display:block;font-weight:500;color:var(--color-icon-active)}.kc-sheet-foot{flex:none;display:flex;align-items:center;gap:10px;padding:10px 16px 14px;background:var(--color-container-bg);border-top:1px solid var(--color-divider)}.kc-sheet-foot .kc-btn-review{flex:1;height:44px;font-size:15px;border-radius:12px}.kc-sheet-rm{flex:none;height:44px;padding:0 16px;border:0;border-radius:12px;background:var(--color-container-subtle);color:var(--color-icon-active);font:inherit;font-size:14px;cursor:pointer}.kl-page{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;height:100%;background:var(--color-page-bg);color:var(--color-text-base)}.kl-scroll{flex:1;min-height:0;overflow-y:auto;padding-bottom:24px}.kl-inner{max-width:1040px;margin:0 auto}.kl-search{margin:2px 16px 10px;height:38px;display:flex;align-items:center;gap:8px;padding:0 6px 0 12px;border-radius:19px;background:var(--color-container-subtle);color:var(--color-text-secondary)}.kl-search input{flex:1;min-width:0;height:100%;border:0;outline:0;background:none;color:var(--color-text-base);font:inherit;font-size:14px}.kl-search input::placeholder{color:var(--color-text-secondary)}.kl-search button{width:28px;height:28px;display:grid;place-items:center;background:none;border:0;color:inherit;cursor:pointer}.kl-tabs{display:flex;gap:6px;padding:0 16px 10px;overflow-x:auto;scrollbar-width:none}.kl-tabs::-webkit-scrollbar,.kl-chips::-webkit-scrollbar,.kl-rail::-webkit-scrollbar{display:none}.kl-tab{flex:none;padding:0 14px;height:34px;border:0;border-radius:17px;background:var(--color-container-subtle);color:var(--color-text-secondary);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer}.kl-tab em{font-style:normal;font-size:11px;color:var(--color-text-unselected);margin-left:3px}.kl-tab.on{background:var(--color-primary);color:#fff;font-weight:600}.kl-tab.on em{color:#ffffffd9}.kl-chips{display:flex;gap:14px;overflow-x:auto;padding:2px 18px 14px;scrollbar-width:none}.kl-chip{flex:none;font:inherit;font-size:13px;line-height:1.5;color:var(--color-text-secondary);white-space:nowrap;background:none;border:0;padding:0;cursor:pointer}.kl-chip.on{color:var(--color-text-base);font-weight:600;text-decoration:underline 2px var(--color-primary);text-underline-offset:5px}.kl-group{padding:0 16px;margin-bottom:16px}.kl-group>h3{margin:0 0 8px;font-size:13px;font-weight:400;color:var(--color-text-secondary)}.kl-grid{columns:1;column-gap:10px}.kl-grid>*{break-inside:avoid;margin-bottom:10px}.kl-grid.c2{columns:2}.kl-grid.c3{columns:3}.kl-rail{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:0 16px;scrollbar-width:none}.kl-rep{flex:none;width:196px;min-height:92px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:14px;border:0;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.kl-rep:hover{background:var(--color-cell-pressed)}.kl-rep b{font-size:14px;font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.kl-rep small{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--color-text-secondary)}.kl-rep small em{font-style:normal;color:var(--color-icon-active)}.kl-empty{padding:56px 24px;text-align:center;font-size:14px;line-height:1.7;color:var(--color-text-secondary)}.kl-review-entry{margin:0 16px 14px;width:calc(100% - 32px);box-sizing:border-box}.kl-review{flex:1;min-height:0;overflow-y:auto;padding:12px 16px 16px;display:flex;flex-direction:column;gap:12px;max-width:640px;width:100%;margin:0 auto;box-sizing:border-box}.kl-review-q{font-size:18px;line-height:1.55;font-weight:600;padding:20px 4px 8px}.kl-review-hint{font-size:12px;color:var(--color-text-secondary)}.kl-review-rates{flex:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 16px 14px;max-width:640px;width:100%;margin:0 auto;box-sizing:border-box}.kl-rate{height:44px;border:0;border-radius:12px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:14px;font-weight:500;cursor:pointer}.kl-rate.good{background:var(--color-primary);color:#fff;font-weight:600}.gv-card{margin:20px 0 4px}.gv-frame{position:relative;aspect-ratio:16 / 9;border-radius:14px;overflow:hidden;background:#111;box-shadow:0 6px 20px #0000001f}.gv-frame video{display:block;width:100%;height:100%;object-fit:contain;background:#000}.gv-frame video::cue{font-size:.9em;line-height:1.5;background:#0000008c}.gv-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:none;padding:0;background:linear-gradient(180deg,#0000 55%,#00000073);color:#fff;cursor:pointer}.gv-play{display:flex;align-items:center;justify-content:center;width:60px;height:60px;padding-left:4px;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 92%,transparent);box-shadow:0 4px 16px #00000040;transition:transform .2s ease}.gv-cover:hover .gv-play{transform:scale(1.08)}.gv-cover:active .gv-play{transform:scale(.96)}.gv-duration{position:absolute;right:10px;bottom:10px;padding:2px 8px;border-radius:10px;background:#0000008c;font-size:12px;font-variant-numeric:tabular-nums}.gv-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.gv-meta{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;color:var(--color-text-secondary)}.gv-meta .gv-sub:before{content:"·";margin-right:6px}@media(prefers-reduced-motion:reduce){.gv-play{transition:none}}.ai-ask{--ai-info: #3D8BFF;--ai-unselected: var(--color-text-unselected);--ai-faint: rgba(0, 0, 0, .12);position:relative;display:flex;flex-direction:column;min-height:0;height:100%;background:var(--color-page-bg);color:var(--color-text-base);font-size:15px}[data-theme=dark] .ai-ask{--ai-info: #5C9DFF;--ai-faint: rgba(255, 255, 255, .14)}.ai-grow{flex:1;min-width:0}.ai-primary,.ai-ok{color:var(--color-primary)}.ai-bad{color:var(--color-error)}.ai-right{display:flex;justify-content:flex-end}.ai-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:10px;color:var(--color-icon-active);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.ai-icon-btn:hover:not(:disabled){background:var(--color-card-hover)}.ai-icon-btn:disabled{opacity:.35;cursor:default}.ai-link-btn{display:inline-flex;align-items:center;gap:2px;border:none;background:none;padding:0;font:inherit;font-size:13px;font-weight:600;color:var(--color-primary);cursor:pointer}.ai-ask-hd{flex:none;display:flex;align-items:center;gap:4px;height:52px;padding:0 10px}.ai-ask-title{flex:1;font-size:17px;font-weight:600;padding-left:4px}.ai-ask-panel .ai-ask-title{text-align:center;padding-left:0;padding-right:36px}.ai-ask-hd-actions{display:flex;gap:2px}.ai-ask-list{flex:1;min-height:0;overflow-y:auto;padding:4px 16px 20px;display:flex;flex-direction:column;gap:22px;overscroll-behavior:contain}.ai-ask-embedded .ai-ask-list{padding-inline:max(16px,calc((100% - 760px)/2))}.ai-user{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.ai-user.appear{animation:aiSendIn .36s cubic-bezier(.22,1,.36,1) both;transform-origin:bottom right}@keyframes aiSendIn{0%{opacity:0;transform:translateY(14px) scale(.92)}to{opacity:1;transform:none}}.ai-user-bubble{max-width:78%;padding:10px 14px;background:var(--color-primary);color:#fff;border-radius:18px 18px 4px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.ai-user-images{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.ai-user-images img{display:block;object-fit:cover;border-radius:12px;background:var(--color-container-subtle)}.ai-user-images.n1 img{width:168px;height:168px}.ai-user-images.n2 img{width:120px;height:120px}.ai-user-images.n3 img{width:96px;height:96px}.ai-answer{display:flex;flex-direction:column;gap:10px}.ai-avatar-row{display:flex;align-items:center;gap:8px;margin-bottom:-2px}.ai-name{font-size:13px;font-weight:600}.ai-appear{animation:aiAppear .28s cubic-bezier(.22,1,.36,1) both}@keyframes aiAppear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ai-status-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary)}.ai-copy{align-self:flex-start;border:none;background:none;padding:2px 0;color:var(--color-icon-inactive);cursor:pointer}.ai-copy:hover{color:var(--color-icon-active)}.ai-bot{position:relative;display:inline-block;flex:none}.ai-bot svg{display:block}.ai-bot-badge{position:absolute;display:flex;align-items:center;justify-content:center;background:var(--color-review);border-radius:50%;border-style:solid;border-color:var(--color-page-bg);box-sizing:border-box}.ai-shimmer{font-size:13px;background:linear-gradient(90deg,var(--color-text-secondary) 0%,var(--color-text-secondary) 35%,var(--color-text-base) 50%,var(--color-text-secondary) 65%,var(--color-text-secondary) 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:aiShimmer 1.6s linear infinite}@keyframes aiShimmer{0%{background-position:100% 0}to{background-position:-50% 0}}.ai-steps{padding:8px 10px;border-radius:10px;background:var(--color-container-subtle);font-size:12px;color:var(--color-text-secondary)}.ai-steps.done{cursor:pointer}.ai-steps-hd{display:flex;align-items:center;justify-content:space-between}.ai-step{display:flex;align-items:center;gap:6px;margin-top:6px}.ai-step-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center}.ai-spinner{width:10px;height:10px;border:1.5px solid var(--color-primary);border-right-color:transparent;border-radius:50%;animation:aiSpin .8s linear infinite}.ai-spinner.light{width:18px;height:18px;border-width:2px;border-color:#fff;border-right-color:transparent}@keyframes aiSpin{to{transform:rotate(360deg)}}.ai-skeleton{display:flex;flex-direction:column;gap:12px;padding-top:8px}.ai-skel{border-radius:10px;background:var(--color-container-subtle);animation:aiPulse 1.2s ease-in-out infinite}.ai-skel-user{align-self:flex-end;width:46%;height:40px;border-radius:18px}.ai-skel-line{width:82%;height:14px}.ai-skel-line.short{width:54%}.ai-skel-card{height:140px;border-radius:16px}@keyframes aiPulse{50%{opacity:.45}}.ai-welcome{padding:24px 4px 4px}.ai-welcome-title{margin-top:18px;font-size:22px;line-height:1.35;font-weight:700}.ai-welcome-sub{margin:6px 0 20px;font-size:14px;line-height:1.6;color:var(--color-text-secondary)}.ai-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.ai-entry{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;min-height:108px;padding:12px;border:none;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);text-align:left;font:inherit;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.ai-entry:hover{box-shadow:0 4px 14px var(--color-shadow-gray)}.ai-entry:active{transform:scale(.98)}.ai-entry.wide{flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;min-height:0;width:100%}.ai-entry.wide>span:last-child{display:flex;flex-direction:column;gap:3px}.ai-entry-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-bottom:5px;border-radius:8px;color:var(--tint);background:color-mix(in srgb,var(--tint) 14%,transparent)}.ai-entry.wide .ai-entry-icon{margin-bottom:0}.ai-entry-title{font-size:14px;font-weight:600}.ai-entry-sub{font-size:12px;color:var(--color-text-secondary)}.ai-preset{display:flex;align-items:center;gap:8px;width:100%;margin-bottom:10px;padding:12px 10px 12px 14px;border:none;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;font-size:14px;line-height:1.5;text-align:left;cursor:pointer}.ai-preset>span{flex:1}.ai-preset svg{color:var(--color-text-secondary)}.ai-dialog-mask,.ai-history-mask{position:absolute;inset:0;z-index:20;display:flex;align-items:flex-end;background:#00000052;animation:aiFade .2s ease both}@keyframes aiFade{0%{opacity:0}}.ai-dialog,.ai-history{width:100%;background:var(--color-container-bg);border-radius:16px 16px 0 0;animation:aiUp .28s cubic-bezier(.22,1,.36,1) both}@keyframes aiUp{0%{transform:translateY(40px);opacity:0}}.ai-dialog{padding:18px 16px 16px;display:flex;flex-direction:column;gap:12px}.ai-dialog-title{font-size:16px;font-weight:600}.ai-dialog-input{width:100%;box-sizing:border-box;resize:none;padding:10px 12px;border:none;border-radius:10px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:15px;line-height:1.55;outline:none}.ai-dialog-example{font-size:13px;color:var(--color-text-secondary)}.ai-dialog-example .ai-link-btn{font-weight:500;text-align:left}.ai-solid-btn{height:44px;border:none;border-radius:12px;background:var(--color-primary);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.ai-solid-btn:disabled{background:var(--color-btn-disabled);color:var(--color-btn-disabled-text);cursor:default}.ai-history{height:72%;display:flex;flex-direction:column}.ai-history-hd{display:flex;align-items:center;justify-content:space-between;padding:12px 10px 6px 18px;font-size:17px;font-weight:600}.ai-history-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 12px}.ai-history-skel{display:flex;align-items:center;gap:12px;height:48px;padding:0 12px}.ai-history-skel>div{height:14px;border-radius:7px;background:var(--color-container-subtle);animation:aiPulse 1.2s ease-in-out infinite}.ai-history-skel>div:first-child{flex:1;max-width:62%}.ai-history-skel>div:last-child{width:40px;margin-left:auto}.ai-history-empty{padding:40px 0;text-align:center;color:var(--color-text-secondary);font-size:13px}.ai-history-item{display:flex;align-items:center;gap:10px;padding:6px 4px 6px 12px;border-radius:10px;cursor:pointer}.ai-history-item:hover{background:var(--color-container-subtle)}.ai-history-item.on .ai-history-title{color:var(--color-primary);font-weight:600}.ai-history-title{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px}.ai-history-time{flex:none;font-size:12px;color:var(--color-text-secondary)}.ai-history-del{width:30px;height:30px;opacity:0}.ai-history-item:hover .ai-history-del{opacity:1}.ai-composer{flex:none;padding:6px 12px 12px}.ai-ask-embedded .ai-composer{padding-inline:max(12px,calc((100% - 784px)/2))}.ai-composer-card{padding:4px 8px 8px;border-radius:20px;background:var(--color-container-bg);box-shadow:0 2px 12px var(--color-shadow-gray)}.ai-composer-input{display:block;width:100%;box-sizing:border-box;resize:none;padding:8px 6px;border:none;background:transparent;color:var(--color-text-base);font:inherit;font-size:15px;line-height:24px;outline:none}.ai-composer-input::placeholder{color:var(--color-text-unselected)}.ai-composer-bar{display:flex;align-items:center;gap:8px}.ai-composer-plus{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-divider);border-radius:50%;background:transparent;color:var(--color-icon-active);cursor:pointer}.ai-composer-plus.off{opacity:.4}.ai-reasoning-picker{position:relative}.ai-reasoning-trigger{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 12px;border:1px solid var(--color-divider);border-radius:16px;background:transparent;color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer;transition:all var(--transition-fast)}.ai-reasoning-trigger.on{color:var(--color-text-base)}.ai-reasoning-trigger:not(:disabled):hover,.ai-reasoning-trigger[aria-expanded=true]{background:var(--color-card-hover);color:var(--color-text-base)}.ai-reasoning-trigger:disabled{opacity:.55;cursor:default}.ai-reasoning-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:30;min-width:148px;max-height:min(320px,55vh);overflow-y:auto;padding:6px;border:1px solid var(--color-divider);border-radius:14px;background:var(--color-container-bg);box-shadow:0 8px 30px var(--color-shadow-gray)}.ai-reasoning-menu-title{padding:5px 9px 7px;color:var(--color-text-unselected);font-size:12px}.ai-reasoning-option{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--color-text-base);font:inherit;font-size:13px;text-align:left;cursor:pointer}.ai-reasoning-option:hover{background:var(--color-card-hover)}.ai-reasoning-option.selected{color:var(--color-text-base);font-weight:600}.ai-send{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:50%;background:var(--color-primary);color:#fff;cursor:pointer;transition:background-color var(--transition-fast)}.ai-send:disabled{background:var(--color-btn-disabled);cursor:default}.ai-send.stop{background:var(--color-text-base)}.ai-stop-square{width:11px;height:11px;border-radius:2px;background:var(--color-page-bg)}.ai-composer-images{display:flex;gap:8px;padding:6px 4px 2px}.ai-composer-thumb{position:relative;width:56px;height:56px;border-radius:10px;overflow:hidden;background:var(--color-container-subtle)}.ai-composer-thumb img{width:100%;height:100%;object-fit:cover}.ai-composer-thumb.loading img{filter:brightness(.6)}.ai-composer-thumb .ai-spinner{position:absolute;left:50%;top:50%;margin:-9px 0 0 -9px}.ai-composer-thumb button{position:absolute;top:3px;right:3px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer}.ai-text{font-size:15px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.ai-text strong{font-weight:600}.ai-card{padding:16px;border-radius:16px;background:var(--color-container-bg);box-shadow:0 2px 10px var(--color-shadow-gray)}.ai-stack{display:flex;flex-direction:column;gap:10px}.ai-row{display:flex;align-items:center;gap:6px}.ai-row-top{align-items:flex-start}.ai-chips{display:flex;flex-wrap:wrap;gap:6px}.ai-chip{display:inline-block;padding:2px 6px;border-radius:4px;font-size:12px;line-height:1.4;font-weight:600;color:var(--chip);background:color-mix(in srgb,var(--chip) 10%,transparent)}[data-theme=dark] .ai-chip{background:color-mix(in srgb,var(--chip) 18%,transparent)}.ai-label{margin-bottom:8px;font-size:12px;color:var(--color-text-secondary)}.ai-label-row{display:flex;align-items:center;gap:4px;margin:10px 0 4px}.ai-section-tag{display:inline-block;margin-bottom:6px;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:600;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.ai-card-title{margin:10px 0 6px;font-size:16px;line-height:1.45;font-weight:600}.ai-rule-text{font-size:14px;line-height:1.65}.ai-note{margin-top:10px;padding:10px;border-radius:8px;background:var(--color-container-subtle);font-size:13px;line-height:1.65;color:var(--color-text-secondary)}.ai-muted-note{margin-top:6px;font-size:13px;line-height:1.65;color:var(--color-text-secondary)}.ai-divider{height:1px;margin:12px 0;background:var(--color-divider)}.ai-pill{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:40px;margin-top:12px;border:none;border-radius:10px;--pill: var(--color-primary);color:var(--pill);background:color-mix(in srgb,var(--pill) 12%,transparent);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.ai-pill:hover{background:color-mix(in srgb,var(--pill) 18%,transparent)}.ai-star{display:inline-flex;padding:4px;border:none;background:none;color:var(--color-icon-inactive);cursor:pointer;transition:color var(--transition-fast),transform var(--transition-fast)}.ai-star:hover{color:var(--color-icon-active)}.ai-star.on{color:var(--color-review)}.ai-star:active{transform:scale(.85)}.ai-tap{cursor:pointer;border-radius:3px;transition:background-color var(--transition-fast)}.ai-tap:hover{background:color-mix(in srgb,var(--color-primary) 16%,transparent)}.ai-tap.hl{color:var(--color-primary);font-weight:600}.ai-reasoning{font-size:13px;color:var(--color-text-secondary)}.ai-reasoning-hd{display:inline-flex;align-items:center;gap:5px;padding:0;border:none;background:none;color:inherit;font:inherit;cursor:pointer}.ai-reasoning-hd:disabled{cursor:default}.ai-reasoning-body{margin-top:8px;padding-left:12px;border-left:2px solid var(--color-divider);line-height:1.65;white-space:pre-wrap}.ai-reasoning-body.live{max-height:6.6em;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 30%);mask-image:linear-gradient(to bottom,transparent,#000 30%)}.ai-word-title{font-size:28px;line-height:1.2;font-weight:700}.ai-word-phonetic{margin-top:2px;font-size:15px;color:var(--color-text-secondary)}.ai-speaker-box{display:flex;align-items:center;justify-content:center;width:44px;height:44px}.ai-word-card .ai-chips{margin:10px 0 6px}.ai-sense{display:flex;margin-top:6px;font-size:14px;line-height:1.55}.ai-sense-pos{flex:none;width:34px;font-style:italic;color:var(--color-text-secondary)}.ai-example{margin-top:12px;padding:10px;border-radius:8px;background:var(--color-container-subtle);font-size:14px;line-height:1.55}.ai-example-cn{margin-top:3px;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.ai-related{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:10px}.ai-related-label{font-size:12px;color:var(--color-text-secondary)}.ai-related-word{font-size:13px;font-weight:500}.ai-sentence{font-size:18px;line-height:1.75;font-weight:500}.ai-sentence .hl{color:var(--color-primary);font-weight:600}.ai-sentence .ul{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}.ai-sentence-speaker{display:inline-block;vertical-align:middle;margin-left:6px}.ai-sentence-cn{margin-top:6px;font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.ai-sense-line{display:flex;align-items:baseline;gap:10px;font-size:14px}.ai-sense-word{font-size:16px;font-weight:600;color:var(--color-primary)}.ai-grammar-body{margin-top:8px}.ai-grammar-note{font-size:14px;line-height:1.7}.ai-rule{margin-top:10px;padding:10px 12px;border-radius:8px;background:var(--color-container-subtle);font-size:13px;line-height:1.65;color:var(--color-text-secondary)}.ai-grammar-body .ai-right .ai-link-btn{padding:10px 0 2px 16px;font-size:14px}.ai-fold{padding:0 16px}.ai-fold-item+.ai-fold-item{border-top:1px solid var(--color-divider)}.ai-fold-hd{display:flex;align-items:center;gap:8px;width:100%;padding:14px 0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.ai-fold-title{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600}.ai-fold-title.open{white-space:normal}.ai-fold-arrow{color:var(--color-text-unselected);transition:transform .2s ease}.ai-fold-arrow.open{transform:rotate(180deg)}.ai-fold-item .ai-grammar-body{margin:0 0 4px}.ai-unmatched{padding:4px 0;font-size:14px;line-height:1.6}.ai-unmatched span{color:var(--color-text-secondary)}.seg-tree{--accent: var(--color-primary)}.seg-scroll{overflow-x:auto;padding:4px 0 8px}.seg-row{display:flex;align-items:flex-start;width:max-content}.seg-group{display:flex;flex-direction:column;padding:0 3px}.seg-bracket{height:7px;margin:6px 2px 0;border:1px solid var(--ai-faint);border-top:none}.seg-bracket.accent{border-color:var(--accent)}.seg-leaf{display:flex;flex-direction:column;padding-right:2px}.seg-word{padding:0 4px 5px;border-bottom:1px solid var(--color-text-secondary);font-family:Georgia,Times New Roman,serif;font-size:17px;white-space:nowrap}.seg-word.strong{border-bottom:2px solid var(--accent)}.seg-word.faint{border-bottom-color:var(--ai-faint)}.seg-word.gap{color:var(--ai-faint)}.seg-role{padding:3px 4px 0;font-size:11.5px;line-height:1.4;text-align:center;white-space:nowrap;color:var(--color-text-secondary)}.seg-leaf .seg-role{padding-top:5px;text-align:left}.seg-role.focus{color:var(--accent)}.seg-role.accent-ink{color:#299061}[data-theme=dark] .seg-role.accent-ink{color:#77d2a3}.seg-links{margin-top:6px;font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.seg-link-word{font-family:Georgia,serif;font-size:15px;color:var(--color-text-base)}.ai-path-source{margin-top:12px;font-size:17px;line-height:1.75;font-weight:600}.ai-path-target{margin-top:2px;font-size:14px;line-height:1.6;color:var(--color-text-secondary)}.ai-path-mark{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--step) 75%,transparent);text-decoration-thickness:2px;text-underline-offset:5px;border-radius:3px;transition:background-color .15s ease}.ai-path-target .ai-path-mark{color:var(--color-text-base)}.ai-path-mark.on{background:color-mix(in srgb,var(--step) 22%,transparent);color:var(--step);text-decoration-color:var(--step)}.ai-path-summary{margin-top:12px;padding-left:10px;border-left:2px solid var(--color-divider);font-size:13px;line-height:1.7;color:var(--color-text-secondary)}.ai-path{margin:14px -8px 0}.ai-path-step{display:flex;gap:10px;width:100%;padding:0 8px;border:none;border-radius:10px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.ai-path-step.on{background:var(--color-container-subtle)}.ai-path-rail{flex:none;width:22px;padding-top:10px;display:flex;flex-direction:column;align-items:center}.ai-path-dot{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--step) 16%,transparent);color:var(--step);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.ai-path-step.on .ai-path-dot{background:var(--step);color:#fff}.ai-path-line{flex:1;width:1.5px;margin-top:6px;background:var(--color-divider)}.ai-path-body{flex:1;min-width:0;padding:10px 0 12px}.ai-path-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:22px}.ai-path-step-name{font-size:12px;font-weight:600;color:var(--step)}.ai-path-title{margin-top:2px;font-size:14px;line-height:1.5;font-weight:600}.ai-path-code{margin-right:6px;font-weight:500;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.ai-path-reason{margin-top:4px;font-size:13px;line-height:1.65;color:var(--color-text-secondary)}.ai-path-anchor{margin-right:6px;padding:1px 6px;border-radius:4px;background:color-mix(in srgb,var(--step) 14%,transparent);color:var(--step);font-weight:600;white-space:nowrap}.ai-table-wrap{overflow-x:auto}.ai-table{width:100%;border-collapse:collapse}.ai-table th{padding:8px 4px;font-size:15px;font-weight:600;text-align:left}.ai-table td{padding:8px 4px;border-top:1px solid var(--color-divider);font-size:13px;line-height:1.55;vertical-align:top}.ai-table th:first-child,.ai-table-label{width:56px}.ai-table-label{font-size:12px!important;line-height:1.6!important;color:var(--color-text-secondary)}.ai-correction-text{font-size:16px;line-height:1.7}.ai-del{color:var(--color-error);text-decoration:line-through}.ai-ins{color:var(--color-primary);font-weight:600}.ai-edit{display:flex;gap:10px;font-size:13px;line-height:1.6}.ai-edit+.ai-edit{margin-top:10px}.ai-edit b{font-weight:600}.ai-edit-num{flex:none;display:flex;align-items:center;justify-content:center;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--color-error);color:#fff;font-size:11px}.ai-quiz-q{margin:4px 0 0;font-size:16px;line-height:1.6;font-weight:500}.ai-option{display:flex;align-items:center;gap:10px;width:100%;margin-top:8px;padding:11px 12px;border:1.5px solid transparent;border-radius:10px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:14px;text-align:left;cursor:pointer}.ai-option:disabled{cursor:default}.ai-option:not(:disabled):hover{border-color:var(--color-divider)}.ai-option.right{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.ai-option.wrong{border-color:var(--color-error);background:color-mix(in srgb,var(--color-error) 8%,transparent)}.ai-option-key{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:var(--color-container-bg);color:var(--color-text-secondary);font-size:12px;font-weight:700}.ai-option.right .ai-option-key{background:var(--color-primary);color:#fff}.ai-option.wrong .ai-option-key{background:var(--color-error);color:#fff}.ai-word-list{padding:14px 14px 6px}.ai-word-list-item{display:flex;align-items:flex-start;gap:10px;padding:9px 0}.ai-word-list-item+.ai-word-list-item{border-top:1px solid var(--color-divider)}.ai-word-list-word{min-width:76px;font-size:15px;font-weight:600}.ai-word-list-note{flex:1;font-size:13px;line-height:1.55;color:var(--color-text-secondary)}.ai-review-hd{display:flex;align-items:baseline;gap:6px;font-size:13px;color:var(--color-text-secondary)}.ai-review-count{font-size:28px;font-weight:700;color:var(--color-review)}.ai-review-item{display:flex;margin-top:8px;font-size:13px}.ai-review-word{flex:none;width:100px;font-size:14px;font-weight:600}.ai-review-def{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-secondary)}.ai-suggestions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.ai-suggestion{display:inline-flex;align-items:center;gap:4px;max-width:100%;padding:7px 12px;border:1px solid var(--color-divider);border-radius:16px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;font-size:13px;text-align:left;cursor:pointer}.ai-suggestion svg{flex:none;color:var(--color-text-secondary)}.ai-suggestion:hover{border-color:color-mix(in srgb,var(--color-primary) 50%,transparent)}.ai-lecture-mask{position:fixed;inset:0;z-index:990;display:flex;align-items:center;justify-content:center;padding:32px 16px;background:#00000073;animation:aiFade .2s ease both}.ai-lecture-mask.closing{opacity:0;transition:opacity .2s ease}.ai-lecture{display:flex;flex-direction:column;width:min(760px,100%);height:min(880px,100%);border-radius:20px;background:var(--color-container-bg);color:var(--color-text-base);box-shadow:0 24px 64px #00000047;overflow:hidden;animation:aiUp .28s cubic-bezier(.22,1,.36,1) both}.ai-lecture-hd{flex:none;display:flex;align-items:center;gap:8px;height:52px;padding:0 10px 0 20px;border-bottom:1px solid transparent;transition:border-color .2s ease}.ai-lecture-hd.scrolled{border-bottom-color:var(--color-divider)}.ai-lecture-hd .ai-icon-btn:first-child{margin-left:-12px}.ai-lecture-title{position:relative;flex:1;min-width:0;height:22px;overflow:hidden;font-size:15px;line-height:22px}.ai-lecture-title>span{position:absolute;inset:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:opacity .2s ease,transform .2s ease}.ai-lecture-kicker{color:var(--color-text-secondary);font-size:14px}.ai-lecture-name{font-weight:600;opacity:0;transform:translateY(8px)}.ai-lecture-hd.scrolled .ai-lecture-kicker{opacity:0;transform:translateY(-8px)}.ai-lecture-hd.scrolled .ai-lecture-name{opacity:1;transform:none}.ai-lecture-chip{flex:none;padding:2px 8px;border-radius:6px;background:var(--color-container-subtle);color:var(--color-text-secondary);font-size:12px;line-height:18px}.ai-lecture-chip.learned,.ai-lecture-chip.tested{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.ai-lecture-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 32px 40px}.ai-lecture-status{display:flex;align-items:center;justify-content:center;gap:10px;padding:80px 20px;font-size:14px;color:var(--color-text-secondary)}.ai-lecture-empty{padding:32px 0;text-align:center;font-size:14px;color:var(--color-text-secondary)}.ai-lecture-body .gm-lecture h1{margin:6px 0 10px;font-size:26px}.ai-lecture-body .gm-lecture .lede{font-size:16px}.ai-lecture-body .gm-lecture .meta{margin-top:10px}@media(max-width:600px){.ai-lecture-mask{align-items:flex-end;padding:0}.ai-lecture{width:100%;height:92%;border-radius:20px 20px 0 0}.ai-lecture-body{padding:4px 16px 32px}.ai-lecture-body .gm-lecture h1{font-size:22px}}.ai-pill-btn{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:8px 14px;border:none;border-radius:18px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.ai-pill-btn:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.ai-add-card{margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-divider);display:flex;flex-direction:column;gap:6px}.ai-add-card-usage{font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.ai-add-card .ai-example{margin-top:2px}.ai-add-card-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;margin-top:4px;height:32px;padding:0 14px;border:none;border-radius:16px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.ai-add-card-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 22%,transparent)}.ai-add-card-btn.on{background:var(--color-container-subtle);color:var(--color-text-secondary)}.ai-add-card-btn:disabled{opacity:.55;cursor:default}.chat-panel{position:absolute;inset:0;display:flex;flex-direction:row;background-color:var(--color-page-bg);overflow:hidden}.chat-conversation-list{display:flex;flex-direction:column;background-color:var(--color-container-bg);transition:background-color var(--transition-normal)}.chat-conv-title-bar{display:flex;align-items:center;justify-content:space-between;padding:20px 10px;flex-shrink:0}.chat-conv-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.chat-conv-add-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:var(--color-container-subtle);color:var(--color-text-secondary);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.chat-conv-add-btn:hover{background:var(--color-primary);color:#fff}.chat-conv-divider{height:1px;margin:0;background:var(--color-divider);flex-shrink:0}.chat-conv-search{padding:12px 10px;flex-shrink:0}.chat-conv-search-input{width:100%;height:32px;padding:0 12px;border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-container-subtle);color:var(--color-text-base);font-size:13px;outline:none;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.chat-conv-search-input::placeholder{color:var(--color-text-unselected)}.chat-conv-search-input:focus{border-color:var(--color-primary);background:var(--color-container-bg)}.chat-conv-items{flex:1;overflow-y:auto;padding:0 10px}.chat-conv-item{display:flex;align-items:center;gap:12px;padding:12px 10px;margin:0 0 12px;border-radius:8px;cursor:pointer;transition:background-color var(--transition-fast);position:relative}.chat-conv-item:hover{background-color:#0000000a}.chat-conv-item.active{background-color:#0000000f}[data-theme=dark] .chat-conv-item:hover{background-color:#ffffff14}[data-theme=dark] .chat-conv-item.active{background-color:#ffffff1f}.chat-conv-item-avatar{width:52px;height:52px;border-radius:var(--radius-md);background:var(--color-container-subtle);flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--color-text-secondary)}.chat-conv-item-avatar img{width:100%;height:100%;object-fit:cover}.chat-conv-item-badge{position:absolute;top:8px;left:48px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-full);background:var(--color-error);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1}.chat-conv-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-conv-item-top{display:flex;align-items:center;justify-content:space-between}.chat-conv-item-name{font-size:14px;font-weight:600;color:var(--color-text-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-conv-item-time{font-size:12px;color:var(--color-text-secondary);flex-shrink:0;margin-left:8px}.chat-conv-item-msg{font-size:13px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-divider{width:1px;flex-shrink:0;cursor:col-resize;background:var(--color-divider);position:relative;z-index:5;transition:background-color var(--transition-fast)}.chat-divider:before{content:"";position:absolute;inset:0 -4px}.chat-divider:hover{background:#55b68599}.chat-message-area{flex:1;display:flex;flex-direction:column;min-width:0;background-color:#fff;transition:background-color var(--transition-normal)}[data-theme=dark] .chat-message-area{background-color:var(--color-container-bg)}.chat-msg-header{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--color-divider);background-color:var(--color-container-bg);flex-shrink:0;transition:background-color var(--transition-normal)}.chat-msg-header-avatar{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-container-subtle);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;font-weight:600;color:var(--color-text-secondary)}.chat-msg-header-avatar img{width:100%;height:100%;object-fit:cover}.chat-msg-header-name{font-size:15px;font-weight:600;color:var(--color-text-base)}.chat-msg-header-info{display:flex;flex-direction:column;gap:2px}.chat-msg-header-status{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--color-text-secondary)}.chat-msg-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.chat-msg-header-status.online .chat-msg-status-dot{background-color:var(--color-primary)}.chat-msg-header-status.offline .chat-msg-status-dot{background-color:var(--color-warning, #faad14)}.chat-msg-list{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.chat-msg-row{display:flex;align-items:flex-start;gap:10px;max-width:70%}@keyframes slideInLeft{0%{opacity:.4;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:.4;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.chat-msg-row.slide-in-left{animation:slideInLeft .25s ease-out both}.chat-msg-row.slide-in-right{animation:slideInRight .25s ease-out both}.chat-scroll-bottom-btn{position:absolute;bottom:12px;right:16px;height:32px;padding:0 12px;border-radius:var(--radius-full);border:1px solid rgba(0,0,0,.1);background:var(--color-container-bg);color:var(--color-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:0 2px 8px #0000000f;transition:all var(--transition-fast);z-index:10;animation:fadeInUp .2s ease-out}[data-theme=dark] .chat-scroll-bottom-btn{border-color:#ffffff1f;box-shadow:0 2px 8px #0003}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-scroll-bottom-btn:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #55b68526}[data-theme=dark] .chat-scroll-bottom-btn:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #55b68533}.chat-msg-row.self{align-self:flex-end;flex-direction:row-reverse}.chat-msg-avatar{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-container-subtle);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.chat-msg-avatar img{width:100%;height:100%;object-fit:cover}.chat-msg-bubble{padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5;word-break:break-word;white-space:pre-wrap;max-width:100%}.chat-msg-row:not(.self) .chat-msg-bubble{background-color:#f0f0f0;color:var(--color-text-base);border-top-left-radius:4px}[data-theme=dark] .chat-msg-row:not(.self) .chat-msg-bubble{background-color:#ffffff14}.chat-msg-row.self .chat-msg-bubble{background-color:var(--color-primary);color:#fff;border-top-right-radius:4px}.chat-msg-row.self .chat-msg-bubble::selection{background:#ffffff59;color:#fff}.chat-msg-row.self .chat-msg-bubble *::selection{background:#ffffff59;color:#fff}.chat-msg-input-wrapper{display:flex;flex-direction:column;padding:0 12px 12px}.chat-msg-input-drag{height:3px;cursor:row-resize;position:relative;flex-shrink:0}.chat-msg-input-drag:before{content:"";position:absolute;inset:-4px 0}.chat-msg-input-drag:hover{cursor:row-resize}.chat-msg-input-panel{flex:1;display:flex;border:1px solid var(--color-divider);border-radius:12px;overflow:hidden;transition:border-color var(--transition-fast)}.chat-msg-textarea{flex:1;padding:12px 14px;border:none;outline:none;overflow-y:auto;background:transparent;color:var(--color-text-base);font-size:14px;line-height:1.5;font-family:inherit;caret-color:var(--color-primary);white-space:pre-wrap;word-break:break-word;min-height:40px}.chat-msg-textarea:empty:before{content:attr(data-placeholder);color:var(--color-text-unselected);pointer-events:none}.chat-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-secondary);gap:12px}.chat-empty-state-icon{font-size:48px;opacity:.5}.chat-empty-state-text{font-size:14px}.chat-conv-title-actions{display:flex;align-items:center;gap:6px}.chat-conv-title{display:inline-block;animation:titleEnter .3s ease-out both}.chat-conv-title-exit{animation:titleExit .15s ease-in both}.chat-conv-title-enter{animation:titleEnter .3s ease-out both}@keyframes titleExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes titleEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-conv-toggle-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:var(--color-container-subtle);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.chat-conv-toggle-btn:hover{background:var(--color-primary);color:#fff;transform:rotate(12deg)}.chat-conv-toggle-btn:active{transform:scale(.92)}.chat-conv-item.ai-conv-item{padding-left:16px}.ai-conv-loading-name{display:block;width:120px;height:16px;border-radius:4px;overflow:hidden;position:relative;background:var(--color-container-subtle)}.ai-conv-shimmer{display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);background-size:200% 100%;animation:shimmerSlide 1.5s ease-in-out infinite}[data-theme=dark] .ai-conv-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%);background-size:200% 100%;animation:shimmerSlide 1.5s ease-in-out infinite}@keyframes shimmerSlide{0%{background-position:-200% 0}to{background-position:200% 0}}.chat-conv-items{transition:transform .3s ease}.chat-conv-item.ai-conv-item.ai-conv-new{animation:aiConvSlideIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes aiConvSlideIn{0%{opacity:0;transform:translate(-30px);max-height:0;padding-top:0;padding-bottom:0;margin-bottom:0}to{opacity:1;transform:translate(0);max-height:80px;padding-top:12px;padding-bottom:12px}}.ai-chat-settings-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast);margin-left:auto}.ai-chat-settings-btn:hover{background:var(--color-container-subtle);color:var(--color-text-base);transform:rotate(45deg)}.ai-chat-stop-inline{position:absolute;right:20px;bottom:16px;display:flex;align-items:center;gap:4px;padding:4px 12px;border:1px solid var(--color-divider);border-radius:16px;background:var(--color-container-bg);color:var(--color-text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast);z-index:2}.ai-chat-stop-inline:hover{border-color:var(--color-error);color:var(--color-error);background:#f65d3a0f}.ai-chat-stop-inline:active{transform:scale(.95)}.ai-prompt-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;animation:aiPromptOverlayIn .25s ease forwards}.ai-prompt-overlay.closing{animation:aiPromptOverlayOut .25s ease forwards}@keyframes aiPromptOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes aiPromptOverlayOut{0%{opacity:1}to{opacity:0}}.ai-prompt-modal{width:520px;max-height:80vh;background:var(--color-container-bg);border-radius:16px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;animation:aiPromptModalIn .3s cubic-bezier(.16,1,.3,1) forwards;overflow:hidden}.ai-prompt-modal.closing{animation:aiPromptModalOut .22s cubic-bezier(.4,0,1,1) forwards}@keyframes aiPromptModalIn{0%{opacity:0;transform:translateY(24px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes aiPromptModalOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(16px) scale(.97)}}.ai-prompt-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px}.ai-prompt-modal-title{font-size:18px;font-weight:700;color:var(--color-text-base)}.ai-prompt-modal-close{width:28px;height:28px;border-radius:50%;border:none;background:var(--color-container-subtle);color:var(--color-text-secondary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.ai-prompt-modal-close:hover{background:var(--color-error);color:#fff}.ai-prompt-modal-body{padding:12px 24px;overflow-y:auto;flex:1}.ai-prompt-vars-section{margin-bottom:16px}.ai-prompt-vars-label{font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px}.ai-prompt-vars-hint{font-weight:400;color:var(--color-text-unselected);font-size:12px}.ai-prompt-vars-list{display:flex;flex-wrap:wrap;gap:8px}.ai-prompt-var-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;border:1px solid var(--color-divider);background:var(--color-container-subtle);cursor:pointer;font-size:12px;color:var(--color-text-base);transition:all var(--transition-fast)}.ai-prompt-var-chip:hover{border-color:var(--color-primary);background:#55b68514}.ai-prompt-var-tag{font-family:SF Mono,Monaco,Consolas,monospace;color:var(--color-primary);background:#55b6851a;padding:2px 6px;border-radius:4px;font-weight:600;font-size:11px}.ai-prompt-var-label{color:var(--color-text-secondary)}.ai-prompt-var-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;font-size:10px;font-weight:700;color:var(--color-primary);background:#55b6851f;border-radius:9px;margin-left:2px}.ai-prompt-textarea-wrap{position:relative}.ai-prompt-textarea{width:100%;min-height:180px;padding:14px;border:1px solid var(--color-divider);border-radius:12px;background:var(--color-container-subtle);color:var(--color-text-base);font-size:14px;font-family:inherit;line-height:1.6;resize:vertical;outline:none;transition:border-color var(--transition-fast);box-sizing:border-box}.ai-prompt-textarea:focus{border-color:var(--color-primary)}.ai-prompt-textarea::placeholder{color:var(--color-text-unselected)}.ai-prompt-slash-menu{position:fixed;z-index:1010;background:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:10px;box-shadow:0 8px 24px #00000024;padding:4px;min-width:240px;animation:slashMenuIn .18s cubic-bezier(.16,1,.3,1) forwards}@keyframes slashMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-prompt-slash-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;border-radius:8px;background:transparent;cursor:pointer;font-size:13px;color:var(--color-text-base);transition:background-color .12s ease;text-align:left}.ai-prompt-slash-item:hover,.ai-prompt-slash-item.active{background:#55b6851a}.ai-prompt-slash-tag{font-family:SF Mono,Monaco,Consolas,monospace;color:var(--color-primary);background:#55b6851a;padding:2px 6px;border-radius:4px;font-weight:600;font-size:11px;flex-shrink:0}.ai-prompt-slash-label{color:var(--color-text-secondary);flex:1}.ai-prompt-slash-count{font-size:11px;color:var(--color-text-unselected);flex-shrink:0}.ai-prompt-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 20px}.ai-prompt-btn-cancel{padding:8px 20px;border-radius:8px;border:1px solid var(--color-divider);background:transparent;color:var(--color-text-secondary);font-size:14px;cursor:pointer;transition:all var(--transition-fast)}.ai-prompt-btn-cancel:hover{background:var(--color-container-subtle)}.ai-prompt-btn-save{padding:8px 24px;border-radius:8px;border:none;background:var(--color-primary);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.ai-prompt-btn-save:hover{filter:brightness(1.1)}.ai-prompt-btn-save:disabled{opacity:.6;cursor:not-allowed}.ai-chat-messages{flex:1;min-height:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}.ai-chat-messages::-webkit-scrollbar{width:4px}.ai-chat-messages::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}.ai-chat-messages::-webkit-scrollbar-track{background:transparent}.ai-chat-loading-history{flex:1;display:flex;align-items:center;justify-content:center}.ai-chat-message{display:flex;max-width:100%}.ai-chat-message-user{justify-content:flex-end}.ai-chat-message-ai{justify-content:flex-start}.ai-chat-bubble{padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.ai-chat-message-user .ai-chat-bubble{max-width:80%;background-color:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.ai-chat-message-ai .ai-chat-bubble{max-width:95%;background-color:var(--color-container-subtle);color:var(--color-text-base);border-bottom-left-radius:4px;white-space:normal}.ai-chat-message-error .ai-chat-bubble{background-color:#f65d3a1a;color:var(--color-error)}.ai-chat-message-cancelled .ai-chat-bubble{color:var(--color-text-secondary);font-style:italic}.ai-chat-message-ai .ai-chat-bubble p{margin:0 0 8px}.ai-chat-message-ai .ai-chat-bubble p:last-child{margin-bottom:0}.ai-chat-message-ai .ai-chat-bubble ul,.ai-chat-message-ai .ai-chat-bubble ol{margin:8px 0;padding-left:20px}.ai-chat-message-ai .ai-chat-bubble li{margin:4px 0}.ai-chat-message-ai .ai-chat-bubble h1,.ai-chat-message-ai .ai-chat-bubble h2,.ai-chat-message-ai .ai-chat-bubble h3{margin:12px 0 8px;font-weight:600}.ai-chat-message-ai .ai-chat-bubble h1{font-size:18px}.ai-chat-message-ai .ai-chat-bubble h2{font-size:16px}.ai-chat-message-ai .ai-chat-bubble h3{font-size:15px}.ai-chat-message-ai .ai-chat-bubble strong{font-weight:600}.ai-chat-message-ai .ai-chat-bubble blockquote{margin:8px 0;padding:8px 12px;border-left:3px solid var(--color-primary);background-color:#00000008;border-radius:0 8px 8px 0}.ai-chat-message-ai .ai-chat-bubble table{width:100%;margin:8px 0;border-collapse:collapse;font-size:13px}.ai-chat-message-ai .ai-chat-bubble th,.ai-chat-message-ai .ai-chat-bubble td{padding:8px 10px;border:1px solid var(--color-divider);text-align:left}.ai-chat-message-ai .ai-chat-bubble th{background-color:#0000000a;font-weight:600}.ai-chat-loading-dots{display:inline-flex;align-items:center;gap:6px;padding:4px 0}.ai-chat-loading-dots .dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-text-secondary);animation:aiDotPulse 1.4s ease-in-out infinite}.ai-chat-loading-dots .dot:nth-child(1){animation-delay:0s}.ai-chat-loading-dots .dot:nth-child(2){animation-delay:.2s}.ai-chat-loading-dots .dot:nth-child(3){animation-delay:.4s}@keyframes aiDotPulse{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.ai-chat-input-area{flex-shrink:0;padding:12px 16px;border-top:1px solid var(--color-divider);background-color:var(--color-container-bg)}.ai-chat-input-wrapper{display:flex;align-items:center;gap:8px}.ai-chat-input{flex:1;height:44px;min-height:44px;max-height:134px;padding:11px 14px;border:1px solid transparent;border-radius:12px;background-color:var(--color-container-subtle);color:var(--color-text-base);font-size:14px;font-family:inherit;line-height:20px;outline:none;resize:none;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.ai-chat-input::-webkit-scrollbar{display:none}.ai-chat-input:focus{border-color:var(--color-text-secondary);background-color:var(--color-container-bg)}.ai-chat-input:disabled{opacity:.6;cursor:not-allowed}.ai-chat-input::placeholder{color:var(--color-text-secondary)}.ai-chat-btn{flex-shrink:0;width:36px;height:36px;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast)}.ai-chat-btn svg{width:18px;height:18px}.ai-chat-btn-send{background-color:var(--color-primary);color:#fff}.ai-chat-btn-send:hover:not(:disabled){background-color:var(--color-primary-hover)}.ai-chat-btn-send:disabled{background-color:var(--color-container-subtle);color:var(--color-text-secondary);cursor:not-allowed}.ai-chat-btn-stop{background-color:var(--color-error);color:#fff}.ai-chat-btn-stop:hover{background-color:#e04d2d}.chat-inline-code{padding:2px 6px;background-color:#0000000f;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px}.chat-code-block{margin:8px 0!important;border-radius:8px!important;font-size:13px!important}.chat-code-block code{font-family:SF Mono,Monaco,Consolas,monospace!important}.ai-chat-welcome-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px}.ai-chat-welcome-icon{font-size:56px;animation:aiWelcomeBounce 2s ease-in-out infinite}@keyframes aiWelcomeBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.ai-chat-welcome-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.ai-chat-welcome-desc{font-size:14px;color:var(--color-text-secondary)}.ai-chat-message-user .ai-chat-bubble::selection{background:#ffffff59;color:#fff}.ai-chat-message-user .ai-chat-bubble *::selection{background:#ffffff59;color:#fff}.qz-actions{display:flex;align-items:center;gap:4px}.qz-fav{display:flex;padding:6px;border:none;background:none;color:var(--color-text-unselected);cursor:pointer}.qz-fav.on{color:#ffb800}.qz-question{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;padding:16px 20px 12px;animation:qzIn .42s cubic-bezier(.22,1,.36,1) both}@keyframes qzIn{0%{opacity:0;transform:translate(22%) scale(.96)}}.qz-prompt{flex:0 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding-bottom:24px}.qz-pos{padding:4px 12px;margin-bottom:12px;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 10%,transparent);font-size:13px;font-weight:600;color:var(--color-primary)}.qz-definition{text-align:center;font-size:20px;line-height:1.5;font-weight:600}.qz-images{display:flex;gap:8px;margin-top:14px;overflow-x:auto;max-width:100%}.qz-image{flex:none;display:flex;align-items:center;justify-content:center;width:160px;height:120px;border-radius:8px;overflow:hidden;background:var(--color-container-subtle)}.qz-image img{width:100%;height:100%;object-fit:cover}.qz-image em{font-style:normal;font-size:12px;color:var(--color-text-unselected)}.qz-slots{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.qz-slots.error{animation:qzShake .4s ease}@keyframes qzShake{20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.qz-slot{display:flex;align-items:center;justify-content:center;width:34px;height:44px;border-bottom:2.5px solid var(--color-text-unselected);font-family:Inter,MiSans,sans-serif;font-size:26px;font-weight:600;transition:border-color .15s ease,color .15s ease}.qz-slot.sep{width:14px;border-bottom-color:transparent;color:var(--color-text-secondary)}.qz-slot.active{border-bottom-color:var(--color-primary)}.qz-slot.peek{color:var(--color-info)}.qz-slots.correct .qz-slot.filled{color:var(--color-primary);border-bottom-color:var(--color-primary)}.qz-slots.error .qz-slot.filled{color:var(--color-error);border-bottom-color:var(--color-error)}.qz-feedback{min-height:36px;margin-top:10px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;color:var(--color-text-secondary);animation:apFade .2s ease both}.qz-ok{font-size:16px;font-weight:600;color:var(--color-primary)}.qz-bad{font-weight:600;color:var(--color-error)}.qz-answer{font-family:Inter,MiSans,sans-serif;color:var(--color-text-base)}.qz-speaker{align-self:center;display:flex;margin-top:12px;padding:8px;border:none;background:none;cursor:pointer}.qz-phonetic-key{color:var(--color-info)!important}.qz-phonetic-key span{display:flex;flex-direction:column;align-items:center;line-height:1.1}.qz-phonetic-key b{font-size:15px;font-weight:600}.qz-phonetic-key small{font-size:10px;opacity:.8}.qz-complete{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.qz-emoji{font-size:64px;animation:qzPop .7s cubic-bezier(.34,1.56,.64,1) both,qzWiggle 1.2s .7s ease-in-out}@keyframes qzPop{0%{transform:scale(0)}}@keyframes qzWiggle{25%{transform:rotate(-12deg)}75%{transform:rotate(12deg)}}.qz-complete-title{margin-top:16px;font-size:22px;font-weight:700;animation:apUp .5s .2s ease both}.qz-complete-sub{margin-top:6px;font-size:14px;color:var(--color-text-secondary);animation:apUp .5s .3s ease both}.qz-complete-stats{display:flex;gap:16px;margin-top:24px;width:min(360px,100%);animation:apUp .5s .4s ease both}.qz-complete-stats>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 0;border-radius:12px;background:var(--color-container-bg)}.qz-complete-stats b{font-family:Inter,MiSans,sans-serif;font-size:28px}.qz-complete-stats small{font-size:13px;color:var(--color-text-secondary)}.qz-complete-actions{display:flex;gap:12px;margin-top:32px;width:min(360px,100%);animation:apUp .5s .6s ease both}.qz-restart,.qz-finish{flex:1;height:50px;border:none;border-radius:25px;font:inherit;font-size:16px;font-weight:600;cursor:pointer}.qz-restart{background:color-mix(in srgb,var(--color-primary) 15%,transparent);color:var(--color-primary)}.qz-finish{background:var(--color-primary);color:#fff}.qz-settings{padding:12px 16px 24px;overflow-y:auto}.qz-settings-title{text-align:center;font-size:17px;font-weight:600}.qz-settings-sub{margin-top:4px;text-align:center;font-size:12px;color:var(--color-text-secondary)}.qz-group-title{margin:18px 4px 8px;font-size:13px;color:var(--color-text-secondary)}.qz-group{border-radius:12px;background:var(--color-container-bg);overflow:hidden}.qz-setting{display:flex;align-items:center;gap:12px;padding:14px;cursor:pointer}.qz-setting+.qz-setting{border-top:1px solid var(--color-divider)}.qz-setting-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.qz-setting b{display:block;font-size:15px;font-weight:600}.qz-setting small{display:block;margin-top:2px;font-size:12px;color:var(--color-text-secondary)}.ss-page{position:absolute;inset:0;z-index:950;display:flex;flex-direction:column;background:var(--color-page-bg);color:var(--color-text-base);animation:apUp .32s cubic-bezier(.22,1,.36,1) both}.ss-bar{flex:none;height:54px;display:flex;align-items:center;gap:4px;padding:0 16px 0 6px}.ss-bar b{font-size:16px;font-weight:600}.ss-bar .ss-progress{margin-left:auto}.ss-back{display:flex;padding:8px;border:none;border-radius:10px;background:none;color:var(--color-text-base);cursor:pointer}.ss-back:hover{background:var(--color-container-subtle)}.ss-progress{font-size:14px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.ss-progress b{color:var(--color-primary);font-weight:700}.ss-center{flex:1;min-height:0;display:flex;justify-content:center}.ss-center .ss-pane{width:100%;max-width:960px}.ss-pane{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8px 20px 12px}.ss-source{margin-bottom:6px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-unselected)}.ss-prompt{max-width:640px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-align:center;font-size:16px;line-height:1.5}.ss-prompt.muted{font-size:14px;color:var(--color-text-secondary)}.ss-slots-wrap{flex:0 1 auto;min-height:0;max-width:100%;overflow-y:auto;margin-top:20px;padding-top:4px}.ss-slots{display:flex;flex-wrap:wrap;justify-content:center;column-gap:calc(var(--slot) * .6);row-gap:calc(var(--slot) * .5)}.ss-slots.error{animation:qzShake .4s ease}.ss-slots.correct{animation:ssPop .35s ease}.ss-word{display:inline-flex;align-items:flex-end;gap:calc(var(--slot) * .12)}.ss-slot{display:inline-flex;align-items:flex-end;justify-content:center;width:calc(var(--slot) * .78);height:calc(var(--slot) * 1.25);border-bottom:2px solid var(--color-divider);font-family:Inter,MiSans,sans-serif;font-size:var(--slot);line-height:1.1;font-weight:600;color:color-mix(in srgb,var(--color-text-base) 80%,transparent);transition:transform .15s ease,border-color .15s ease}.ss-slot.filled{border-bottom-color:color-mix(in srgb,var(--color-text-base) 20%,transparent)}.ss-slot.active{border-bottom-color:var(--color-primary);transform:translateY(-2px)}.ss-slot.peek{color:var(--color-info)}.ss-slot.wrong{color:var(--color-error);border-bottom-color:var(--color-error)}.ss-slots.correct .ss-slot{color:var(--color-primary);border-bottom-color:var(--color-primary)}.ss-char{font-size:var(--slot);line-height:1.1;font-weight:600;color:var(--color-text-secondary);padding-bottom:2px}.ss-feedback{min-height:36px;margin-top:14px;display:flex;flex-direction:column;align-items:center;animation:ssUp .2s ease both}.ss-ok{font-size:16px;font-weight:600;color:var(--color-primary)}.ss-error{text-align:center;font-size:14px;font-weight:600;color:var(--color-error)}.ss-actions{display:flex;gap:12px;margin-top:12px}.ss-pill{height:40px;padding:0 22px;border:1px solid var(--color-primary);border-radius:20px;background:none;color:var(--color-primary);font:inherit;font-size:15px;font-weight:600;cursor:pointer}.ss-pill.filled{background:var(--color-primary);color:#fff}.ss-speaking{color:var(--color-primary);animation:ssPulse .8s ease-in-out infinite}@keyframes ssPop{50%{transform:scale(1.04)}}@keyframes ssUp{0%{opacity:0;transform:translateY(8px)}}@keyframes ssPulse{50%{opacity:.45}}.sh-panel{height:100%;display:flex;flex-direction:column;background:var(--color-page-bg);color:var(--color-text-base)}.sh-hd{flex:none;height:56px;display:flex;align-items:center;padding:0 10px}.sh-titles{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px}.sh-titles b{font-size:17px;font-weight:600}.sh-titles small{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.sh-body{flex:1;min-height:0;overflow-y:auto;padding:8px 16px;display:flex;flex-direction:column}.sh-card{padding:16px 18px 18px;border-radius:16px;background:var(--color-container-bg)}.sh-sentence{font-size:20px;line-height:1.4;font-weight:700}.sh-weak{color:var(--c);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.sh-translation{margin-top:8px;font-size:14px;line-height:1.5;color:var(--color-text-secondary)}.sh-listen{display:flex;margin-top:20px}.sh-listen-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0;border:none;background:none;color:var(--color-text-base);font:inherit;cursor:pointer;transition:transform .12s ease}.sh-listen-btn:active:not(:disabled){transform:scale(.9)}.sh-listen-btn:disabled{cursor:default;opacity:.4}.sh-listen-btn>span{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--color-container-bg);color:var(--color-icon-active);transition:background-color .15s ease,color .15s ease}.sh-listen-btn.toggled>span{background:color-mix(in srgb,var(--color-primary) 15%,var(--color-container-bg));color:var(--color-primary)}.sh-listen-btn.active>span{background:var(--color-primary);color:#fff}.sh-listen-btn small{font-size:12px;color:var(--color-text-secondary)}.sh-status{flex:1;min-height:150px;margin-top:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.sh-status-title{font-size:15px;font-weight:600}.sh-status-title.cancel{color:var(--color-error)}.sh-status-sub{font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.sh-result{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:12px}.sh-summary{display:flex;align-items:center;gap:16px;padding:14px 16px;border-radius:16px;background:var(--color-container-bg)}.sh-total{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px}.sh-total b{font-size:40px;line-height:1;font-weight:800;font-family:Inter,MiSans,sans-serif}.sh-total small,.sh-stat small{font-size:12px;color:var(--color-text-secondary)}.sh-stats{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.sh-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.sh-stat b{font-size:17px;font-weight:700;font-family:Inter,MiSans,sans-serif}.sh-tip{display:flex;align-items:flex-start;gap:6px;text-align:left;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--c) 10%,transparent);color:var(--c);font-size:13px;line-height:1.5}.sh-tip svg{flex:none;margin-top:2px}.sh-tip.good{--c: var(--color-primary)}.sh-hold{flex:none;display:flex;align-items:center;justify-content:center;gap:8px;height:56px;margin:8px 24px 16px;border:none;border-radius:28px;font:inherit;font-size:16px;font-weight:600;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;transition:background-color .15s ease,color .15s ease}.sh-hold:disabled{cursor:default}.tvp{position:fixed;inset:0;z-index:900;display:flex;background:#000;color:#fff;-webkit-user-select:none;user-select:none;animation:tvpIn .22s ease both}@keyframes tvpIn{0%{opacity:0}}.tvp.seamless{animation:none}.tvp-stage{position:relative;flex:1;min-width:0;overflow:hidden}.tvp-stage.idle{cursor:none}.tvp-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.tvp-libmedia{overflow:hidden}.tvp-libmedia canvas,.tvp-libmedia video{display:block;width:100%;height:100%}.tvp-hit{position:absolute;inset:0}.tvp-grow{flex:1}.tvp-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:background-color .15s ease,opacity .15s ease}.tvp-btn:hover{background:#ffffff24}.tvp-btn.off{opacity:.5}.tvp-btn.big{width:56px;height:56px}.tvp-play{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:none;border-radius:50%;background:#00000059;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .12s ease,background-color .15s ease}.tvp-play:hover{background:#00000080}.tvp-play{position:relative}.tvp-play-ring{position:absolute;inset:-6px;border:3px solid rgba(255,255,255,.16);border-top-color:#fff;border-radius:50%;pointer-events:none;animation:tvSpin .8s linear infinite,tvpFade .2s ease .3s both}.tvp-play:active{transform:scale(.94)}.tvp-skip{position:relative;display:inline-flex;align-items:center;justify-content:center}.tvp-skip b{position:absolute;font-size:10px;font-weight:700;margin-top:2px}.tvp-pill{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 12px;border:none;border-radius:16px;background:#ffffff24;color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s ease}.tvp-pill:hover{background:#ffffff3d}.tvp-pill.accent.on{background:var(--color-primary)}.tvp-controls{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .25s ease}.tvp-controls.show{opacity:1}.tvp-controls.show .tvp-top,.tvp-controls.show .tvp-middle>*,.tvp-controls.show .tvp-bottom{pointer-events:auto}.tvp-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:6px;padding:14px 20px 40px 12px;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent)}.tvp-title{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600}.tvp-middle{position:absolute;left:50%;top:50%;display:flex;align-items:center;gap:40px;transform:translate(-50%,-50%)}.tvp-bottom{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 12px;background:linear-gradient(to top,rgba(0,0,0,.7),transparent)}.tvp-bar{display:flex;align-items:center;gap:6px;margin-top:4px}.tvp-bar-play{width:36px;height:36px;margin:0 4px 0 -6px}.tvp-bar-play:disabled{opacity:.4;cursor:default}.tvp-bar-play:disabled:hover{background:transparent}.tvp-bar-left{display:flex;align-items:center;gap:6px;margin-left:12px}.tvp-time{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:#ffffffe6}.tvp-time.dim{color:#fff9}.tvp-progress{position:relative;height:18px;padding:0 4px;cursor:pointer;touch-action:none}.tvp-progress-track{position:relative;top:7px;height:4px;border-radius:2px;background:#ffffff40;transition:height .15s ease,top .15s ease}.tvp-progress:hover .tvp-progress-track,.tvp-progress.active .tvp-progress-track{top:6px;height:6px}.tvp-progress-buffer{position:absolute;left:0;top:0;bottom:0;border-radius:2px;background:#ffffff59}.tvp-progress-fill{position:absolute;left:0;top:0;bottom:0;border-radius:2px;background:var(--color-primary)}.tvp-progress-knob{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0006;transform:scale(0);transition:transform .15s ease}.tvp-progress:hover .tvp-progress-knob,.tvp-progress.active .tvp-progress-knob{transform:scale(1)}.tvp-progress-tip{position:absolute;bottom:22px;padding:3px 7px;border-radius:6px;background:#000000bf;font-size:12px;font-variant-numeric:tabular-nums;transform:translate(-50%);pointer-events:none}.tvp-volume{display:flex;align-items:center}.tvp-volume input{width:0;opacity:0;transition:width .2s ease,opacity .2s ease}.tvp-volume:hover input,.tvp-volume input:focus{width:80px;opacity:1}.tvp input[type=range]{accent-color:var(--color-primary);cursor:pointer}.tvp-pop-wrap{position:relative}.tvp-pop{position:absolute;bottom:calc(100% + 10px);left:0;z-index:5;width:260px;padding:14px;border-radius:14px;background:#1c1c1ef0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 30px #0006;font-size:13px;animation:tvpPop .18s ease both}.tvp-pop.wide{width:320px}@keyframes tvpPop{0%{opacity:0;transform:translateY(6px)}}.tvp-pop-title{display:flex;justify-content:space-between;margin-bottom:10px;font-size:14px;font-weight:600}.tvp-pop-title b{color:var(--color-primary)}.tvp-pop input[type=range]{width:100%}.tvp-pop-empty{padding:10px 0;color:#fff9}.tvp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tvp-chips button,.tvp-delay button{padding:5px 10px;border:none;border-radius:12px;background:#ffffff1f;color:#fff;font:inherit;font-size:12px;cursor:pointer}.tvp-chips button.on{background:var(--color-primary)}.tvp-track{display:flex;align-items:center;gap:8px;width:100%;margin-bottom:6px;padding:9px 10px;border:1.5px solid transparent;border-radius:10px;background:#ffffff14;color:#fff;font:inherit;text-align:left;cursor:pointer}.tvp-track.on{border-color:var(--color-primary);background:#55b68529}.tvp-track-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tvp-track-text small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;color:#ffffff80}.tvp-track-role{flex:none;font-size:12px;font-weight:600;color:var(--color-primary)}.tvp-slider{display:flex;align-items:center;gap:10px;margin-top:12px}.tvp-slider>span{flex:none;width:30px;color:#ffffffb3}.tvp-delay{display:flex;align-items:center;gap:6px}.tvp-delay b{min-width:48px;text-align:center;font-variant-numeric:tabular-nums}.tvp-subtitles{position:absolute;left:7%;right:7%;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none;transition:bottom .25s ease}.tvp-sub{max-width:100%;padding:3px 10px;border-radius:6px;background:#00000061;text-align:center;font-size:calc(clamp(16px,2.9vh,34px) * .8 * var(--sub-scale, 1));font-weight:500;line-height:1.35;color:#ffffffe0;text-shadow:0 1px 2px rgba(0,0,0,.6);pointer-events:auto;-webkit-user-select:text;user-select:text;cursor:default}.tvp-sub.primary{font-size:calc(clamp(16px,2.9vh,34px) * var(--sub-scale, 1));font-weight:600;color:#fff}.tvp-word{border-radius:4px;cursor:pointer;transition:background-color .12s ease,color .12s ease}.tvp-word:hover{background:#55b6858c}.tvp-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}.tvp-center.buffering{animation:tvpFade .2s ease .3s both}.tvp-spinner{display:block;width:44px;height:44px;border:3px solid rgba(255,255,255,.16);border-top-color:#fff;border-radius:50%;animation:tvSpin .8s linear infinite}@keyframes tvpFade{0%{opacity:0}}.tvp-cover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000;pointer-events:none;transition:opacity .45s ease,visibility .45s}.tvp-cover.gone{opacity:0;visibility:hidden}.tvp-cover-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(32px) brightness(.42) saturate(1.2);transform:scale(1.2);animation:tvpFade .6s ease both}.tvp-cover-status{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;white-space:nowrap}.tvp-cover-text{font-size:14px;font-weight:500;color:#ffffffd1;font-variant-numeric:tabular-nums;animation:tvpFade .25s ease both}.tvp-hud{position:absolute;top:18%;left:50%;padding:8px 16px;border-radius:18px;background:#0009;font-size:14px;font-weight:600;transform:translate(-50%);pointer-events:none}.tvp-notice{position:absolute;top:72px;left:50%;max-width:min(560px,90%);padding:10px 16px;border-radius:12px;background:#000000b3;font-size:13px;line-height:1.6;text-align:center;transform:translate(-50%);pointer-events:none}.tvp-error{position:absolute;left:50%;top:50%;display:flex;flex-direction:column;align-items:center;gap:14px;width:min(420px,86%);color:#ffffffbf;font-size:14px;line-height:1.6;text-align:center;transform:translate(-50%,-50%)}.tvp-error button{padding:8px 18px;border:none;border-radius:18px;background:var(--color-primary);color:#fff;font:inherit;font-size:14px;cursor:pointer}.tvp-side{position:relative;flex:none;height:100%;overflow:hidden;color:var(--color-text-base);background:var(--color-page-bg);transition:width .32s cubic-bezier(.22,1,.36,1)}.tvp-side-inner{position:absolute;top:0;right:0;bottom:0;-webkit-user-select:text;user-select:text}.tvp-side-drag{position:absolute;top:0;bottom:0;left:0;z-index:3;width:6px;cursor:col-resize}.tvp-side-drag:hover{background:color-mix(in srgb,var(--color-primary) 35%,transparent)}.tvp-side-pane{height:100%;flex-direction:column}.tvp-side-pane>.ai-ask{flex:1;min-height:0}.tvp-side-inner>.sh-panel{position:absolute;inset:0}.tv-page{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--color-page-bg);color:var(--color-text-base)}.tv-grow{flex:1}.tv-icon-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;border:none;border-radius:10px;background:transparent;color:var(--color-icon-active);cursor:pointer;transition:background-color var(--transition-fast)}.tv-icon-btn:hover{background:var(--color-card-hover)}.tv-text-btn{border:none;background:none;padding:6px 8px;font:inherit;font-size:14px;color:var(--color-text-base);cursor:pointer}.tv-text-btn.primary{color:var(--color-primary)}.tv-spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--color-primary);border-right-color:transparent;border-radius:50%;animation:tvSpin .8s linear infinite}.tv-spinner.light{border-color:#fff;border-right-color:transparent}@keyframes tvSpin{to{transform:rotate(360deg)}}.tv-header{flex:none;display:flex;align-items:center;gap:4px;height:56px;padding:0 20px 0 24px}.tv-header-title{flex:1;font-size:20px;font-weight:700}.tv-search{flex:1;display:flex;align-items:center;gap:8px;max-width:560px;height:38px;padding:0 6px 0 14px;border-radius:19px;background:var(--color-container-bg);color:var(--color-icon-inactive)}.tv-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--color-text-base);font:inherit;font-size:14px}.tv-search input::placeholder{color:var(--color-text-secondary)}.tv-catalog{flex:1;min-height:0;overflow-y:auto;padding:4px 0 24px}.tv-shelf{margin-bottom:28px}.tv-shelf-hd{display:flex;align-items:baseline;gap:8px;padding:0 24px 12px}.tv-shelf-level{font-size:22px;font-weight:800}.tv-shelf-label{font-size:13px;color:var(--color-text-secondary)}.tv-shelf-count{font-size:12px;color:var(--color-text-secondary)}.tv-shelf-body{position:relative}.tv-shelf-scroll{display:flex;gap:14px;overflow-x:auto;padding:2px 24px 8px;scroll-padding:0 24px;scrollbar-width:none}.tv-shelf-scroll::-webkit-scrollbar{display:none}.tv-shelf-arrow{position:absolute;top:0;z-index:2;display:flex;align-items:center;justify-content:center;width:44px;height:225px;border:none;color:#fff;cursor:pointer;opacity:0;transition:opacity var(--transition-normal)}.tv-shelf-body:hover .tv-shelf-arrow{opacity:1}.tv-shelf-arrow.left{left:0;background:linear-gradient(to right,rgba(0,0,0,.45),transparent)}.tv-shelf-arrow.right{right:0;background:linear-gradient(to left,rgba(0,0,0,.45),transparent)}.tv-poster-card{flex:none;width:150px;padding:0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .12s ease}.tv-poster-card:active{transform:scale(.96)}.tv-poster{width:150px;height:225px;border-radius:10px;overflow:hidden;background:var(--color-container-subtle);box-shadow:0 4px 10px var(--color-shadow-gray);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.tv-poster-card:hover .tv-poster{transform:translateY(-3px);box-shadow:0 10px 22px var(--color-shadow-gray)}.tv-poster-img{display:block;width:100%;height:100%;object-fit:cover}.tv-poster-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--color-container-subtle);color:var(--color-icon-inactive)}.tv-poster-title{margin-top:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:1.3;font-weight:600}.tv-poster-meta{margin-top:2px;min-height:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;color:var(--color-text-secondary)}.tv-shelf-tail{flex:none;display:flex;align-items:center;justify-content:center;width:90px;height:225px;text-align:center}.tv-shelf-tail .tv-text-btn{font-size:12px;color:var(--color-text-secondary)}.tv-message{display:flex;flex-direction:column;align-items:center;gap:8px;padding:120px 24px;color:var(--color-icon-inactive)}.tv-message-title{margin-top:8px;font-size:15px;font-weight:500;color:var(--color-text-base)}.tv-message-sub{font-size:12px;color:var(--color-text-secondary)}.tv-skeleton{padding:4px 0 0 24px;overflow:hidden}.tv-skeleton-row{margin-bottom:28px}.tv-skeleton-posters{display:flex;gap:14px}.tv-skel{border-radius:10px;background:var(--color-container-subtle);animation:tvPulse 1.2s ease-in-out infinite}.tv-skel-title{width:64px;height:20px;margin-bottom:14px;border-radius:6px}.tv-skel-poster{flex:none;width:150px;height:225px}@keyframes tvPulse{50%{opacity:.45}}.tv-sheet-mask{position:fixed;inset:0;z-index:800;display:flex;justify-content:flex-end;background:#00000052;animation:tvFadeIn .24s ease both}.tv-sheet-mask.closing{animation:tvFadeOut .24s ease both}@keyframes tvFadeIn{0%{opacity:0}}@keyframes tvFadeOut{to{opacity:0}}.tv-sheet{width:min(460px,100vw);height:100%;background:var(--color-container-bg);box-shadow:-8px 0 30px #0000001f;animation:tvSlideIn .32s cubic-bezier(.22,1,.36,1) both}.tv-sheet.wide{width:min(880px,100vw)}.tv-sheet-mask.closing .tv-sheet{animation:tvSlideOut .24s ease both}@keyframes tvSlideIn{0%{transform:translate(100%)}}@keyframes tvSlideOut{to{transform:translate(100%)}}.tv-sheet-scroll{height:100%;overflow-y:auto;padding:20px 20px 24px;box-sizing:border-box}.tv-sheet-gap{height:20px}.tv-sheet-columns{display:flex;height:100%}.tv-sheet-columns>.tv-sheet-scroll{flex:1;min-width:0}.tv-sheet-right{border-left:1px solid var(--color-divider);padding-left:8px;padding-right:8px}.tv-hero{display:flex;align-items:flex-start;gap:16px}.tv-hero-poster{flex:none;width:96px;height:144px;border-radius:10px;overflow:hidden;box-shadow:0 6px 14px var(--color-shadow-gray)}.tv-hero-text{flex:1;min-width:0;padding-top:4px}.tv-hero-title{font-size:20px;line-height:1.25;font-weight:700}.tv-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tv-tag{padding:4px 8px;border-radius:6px;background:var(--color-container-subtle);font-size:11px;color:var(--color-text-secondary)}.tv-tag.accent{background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font-weight:600}.tv-continue{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:48px;margin-top:16px;padding:0 16px;border:none;border-radius:14px;background:var(--color-primary);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:background-color var(--transition-fast)}.tv-continue span:last-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tv-continue:hover:not(:disabled){background:var(--color-primary-hover)}.tv-continue:disabled{cursor:progress}.tv-continue-placeholder{height:48px;margin-top:16px}.tv-info{margin-top:16px}.tv-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.6;color:var(--color-text-secondary);cursor:pointer}.tv-summary.open{display:block}.tv-info-more{display:flex;flex-direction:column;gap:8px;margin-top:12px;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.tv-error-link{margin-bottom:8px;padding:0;border:none;background:none;font:inherit;font-size:12px;color:var(--color-error);cursor:pointer}.tv-episodes-status{display:flex;justify-content:center;padding:32px;color:var(--color-text-secondary);font-size:14px}.tv-episodes-title{padding:0 0 8px;font-size:16px;font-weight:600}.tv-sheet-right .tv-episodes-title{padding-left:12px}.tv-seasons{display:flex;gap:8px;overflow-x:auto;padding:4px 0 8px;scrollbar-width:none}.tv-sheet-right .tv-seasons{padding-left:12px}.tv-season{flex:none;height:36px;padding:0 14px;border:none;border-radius:18px;background:var(--color-container-subtle);color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer;transition:all .18s ease}.tv-season.on{background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font-weight:600}.tv-episode-list{margin:8px -8px 0}.tv-episode{display:flex;align-items:center;gap:12px;padding:10px 8px;border-radius:12px;cursor:pointer;transition:background-color var(--transition-fast)}.tv-episode:hover{background:var(--color-container-subtle)}.tv-episode-num{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:var(--color-container-subtle);font-size:15px;font-weight:700;color:var(--color-text-base)}.tv-episode-num svg{color:var(--color-icon-inactive)}.tv-episode.current .tv-episode-num{background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.tv-episode.current .tv-episode-num svg{color:var(--color-primary)}.tv-episode-text{flex:1;min-width:0}.tv-episode-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600}.tv-episode.current .tv-episode-label{color:var(--color-primary)}.tv-episode-sub{margin-top:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.tv-episode-progress{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:11px;font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.tv-bar{flex:1;height:3px;border-radius:2px;background:var(--color-container-subtle);overflow:hidden}.tv-bar span{display:block;height:100%;background:var(--color-primary)}.tv-episode-done{margin-top:2px;font-size:11px;color:var(--color-primary)}.tv-episode-icon{flex:none;display:flex;justify-content:center;width:28px;color:var(--color-icon-inactive)}.tv-episode-icon.done{color:var(--color-primary)}.tv-version{position:relative;flex:none}.tv-version-btn{display:inline-flex;align-items:center;gap:2px;padding:4px 6px;border:none;border-radius:6px;background:none;color:var(--color-text-secondary);font:inherit;font-size:11px;cursor:pointer}.tv-version-btn:hover{background:var(--color-card-hover)}.tv-version-menu{position:absolute;top:100%;right:0;z-index:5;min-width:170px;padding:6px;border-radius:12px;background:var(--color-container-bg);box-shadow:0 8px 28px #00000029}.tv-version-menu button{display:block;width:100%;padding:9px 10px;border:none;border-radius:8px;background:none;color:var(--color-text-base);font:inherit;font-size:14px;text-align:left;white-space:nowrap;cursor:pointer}.tv-version-menu button:hover{background:var(--color-container-subtle)}.tv-version-menu button.on{color:var(--color-primary)}.floating-chat-container{position:fixed;z-index:8001;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--color-page-bg);box-shadow:0 0 0 1px var(--color-divider),0 12px 48px #0000002e;animation:floatingPanelIn .3s cubic-bezier(.34,1.56,.64,1)}.floating-chat-container>.ai-ask{flex:1;min-height:0}.floating-chat-container .ai-ask-hd{cursor:grab}.floating-chat-container.drag,.floating-chat-container.drag .ai-ask-hd{cursor:grabbing;-webkit-user-select:none;user-select:none}.floating-chat-container.resize{-webkit-user-select:none;user-select:none}.floating-chat-resize{position:absolute;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,var(--color-divider) 50%,var(--color-divider) 58%,transparent 58%,transparent 70%,var(--color-divider) 70%,var(--color-divider) 78%,transparent 78%)}@keyframes floatingPanelIn{0%{opacity:0;transform:scale(.92) translateY(12px)}}.home-layout{display:flex;height:100vh;background-color:var(--color-page-bg);overflow:hidden;transition:background-color .2s ease}.home-layout.embedded{position:absolute;inset:0;height:auto}.home-layout.embedded .home-main{margin-left:0}.home-main{flex:1;display:flex;flex-direction:column;min-height:0;margin-left:64px}.home-content{flex:1;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:0}.home-content-inner{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column}.home-panel-container{flex:1;margin:12px 12px 0;border-radius:12px 12px 0 0;background-color:var(--color-container-bg);display:flex;flex-direction:column;overflow:hidden;transition:background-color .2s ease}.content-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-2xl) var(--space-xl);margin-top:80px;animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) both}.placeholder-icon{font-size:64px;margin-bottom:var(--space-lg);animation:floatIcon 3s ease-in-out infinite}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.content-placeholder h2{font-size:24px;font-weight:700;color:var(--color-text-base);margin-bottom:var(--space-sm)}.content-placeholder p{font-size:15px;color:var(--color-text-secondary);max-width:360px;line-height:1.6}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.context-menu-overlay{position:fixed;inset:0;z-index:9998}.context-menu{position:fixed;z-index:9999;min-width:180px;background-color:var(--color-container-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;padding:6px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:contextMenuIn .18s cubic-bezier(.32,.72,0,1) forwards;transform-origin:top left}.context-menu.closing{animation:contextMenuOut .15s cubic-bezier(.32,.72,0,1) forwards}@keyframes contextMenuIn{0%{opacity:0;transform:scale(.92) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes contextMenuOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.92) translateY(-4px)}}.context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-base);transition:background-color var(--transition-fast),color var(--transition-fast);white-space:nowrap;text-align:left;font-family:inherit}.context-menu-item:hover{background-color:var(--color-primary);color:#fff}.context-menu-item:hover .context-menu-item-icon{color:#fff}.context-menu-item:active{background-color:var(--color-primary-active)}.context-menu-item-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--color-text-secondary);transition:color var(--transition-fast);flex-shrink:0}.context-menu-item-label{flex:1;overflow:hidden;text-overflow:ellipsis}.context-menu-item.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}[data-theme=dark] .context-menu{box-shadow:0 8px 32px #0000004d,0 2px 8px #0003;border-color:#ffffff14}.screen-pin-selector{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:99998;cursor:crosshair;overflow:hidden}.screen-pin-selector-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.screen-pin-selector-mask{position:absolute;inset:0;background-color:#00000073;pointer-events:none}.screen-pin-selector-rect{position:absolute;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 0 1px #0000004d,0 0 0 9999px #00000073;overflow:hidden;pointer-events:none;z-index:1}.screen-pin-selector-rect-img{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none}.screen-pin-selector-size{position:absolute;bottom:-28px;left:50%;transform:translate(-50%);padding:3px 10px;background-color:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:11px;font-weight:500;border-radius:6px;white-space:nowrap;pointer-events:none;font-family:SF Mono,Menlo,monospace}.screen-pin-selector-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;background-color:#0009;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;font-size:15px;font-weight:500;border-radius:12px;white-space:nowrap;pointer-events:none;animation:hintFadeIn .3s ease both;letter-spacing:.5px}@keyframes hintFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.screen-pin-overlay{position:fixed;z-index:10000;cursor:grab;border-radius:10px;overflow:hidden;box-shadow:0 8px 32px #00000040,0 2px 8px #0000001a;border:2px solid rgba(255,255,255,.15);animation:pinPopIn .25s cubic-bezier(.34,1.56,.64,1) both;transition:box-shadow .2s ease;-webkit-user-select:none;user-select:none}.screen-pin-overlay:active{cursor:grabbing}.screen-pin-overlay:hover{box-shadow:0 12px 40px #0000004d,0 4px 12px #00000026}.screen-pin-overlay.closing{animation:pinPopOut .2s ease forwards}@keyframes pinPopIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes pinPopOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}.screen-pin-image{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none}.screen-pin-close{position:absolute;top:8px;right:8px;width:28px;height:28px;border:none;border-radius:50%;background-color:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:opacity .15s ease,transform .15s ease,background-color .15s ease}.screen-pin-overlay:hover .screen-pin-close{opacity:1;transform:scale(1)}.screen-pin-close:hover{background-color:#dc3232cc}.screen-pin-resize{position:absolute;right:0;bottom:0;width:20px;height:20px;cursor:nwse-resize;opacity:0;transition:opacity .15s ease}.screen-pin-overlay:hover .screen-pin-resize{opacity:1}.screen-pin-resize:before{content:"";position:absolute;right:4px;bottom:4px;width:10px;height:10px;border-right:2px solid rgba(255,255,255,.6);border-bottom:2px solid rgba(255,255,255,.6);border-radius:0 0 3px}.shell{display:flex;height:100vh;background:var(--color-page-bg);overflow:hidden}.shell-rail{position:relative;flex:none;width:88px;display:flex;flex-direction:column;align-items:center}.shell-logo{width:44px;height:44px;margin-top:14px;border-radius:12px;object-fit:contain}.shell-tabs{flex:1;display:flex;flex-direction:column;justify-content:center;gap:12px;padding-bottom:58px}.shell-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:88px;height:72px;border:none;background:none;color:var(--color-icon-inactive);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:color .15s ease,transform .05s ease}.shell-tab:hover{color:var(--color-icon-active)}.shell-tab:active{transform:scale(.8)}.shell-tab.on{color:var(--color-icon-active)}.shell-tab svg{display:block}.shell-main{position:relative;flex:1;min-width:0;height:100%;overflow:hidden}.ln-page{--ln-new: color-mix(in srgb, var(--color-warning) 82%, var(--color-container-bg));--ln-old: color-mix(in srgb, var(--color-warning) 20%, transparent);--ln-known: color-mix(in srgb, var(--color-primary) 16%, transparent);--ln-tint: color-mix(in srgb, var(--color-primary) 10%, var(--color-container-bg))}.ln-body{width:100%;max-width:760px;margin:0 auto;padding:12px 16px 32px;display:flex;flex-direction:column;gap:12px}.ln-body.narrow{max-width:640px}.ln-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.ln-sub{font-size:13px;color:var(--color-text-secondary)}.ln-row{display:flex;align-items:center;gap:8px}.ln-between{display:flex;align-items:center;justify-content:space-between;gap:8px}.ln-grow{flex:1;min-width:0}.ln-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:11px;font-size:12px;font-weight:600;background:color-mix(in srgb,var(--c, var(--color-text-secondary)) 14%,transparent);color:var(--c, var(--color-text-secondary));white-space:nowrap}.ln-link{border:none;background:none;padding:0;color:var(--color-primary);font-size:14px;font-weight:600;cursor:pointer}.ln-link:hover{text-decoration:underline}.ln-muted{color:var(--color-text-secondary)}.ln-en{font-family:Inter,MiSans,sans-serif}.ln-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ln-stat{background:var(--color-container-subtle);border-radius:10px;padding:10px 12px}.ln-stat b{display:block;font-size:20px;font-weight:700;color:var(--color-text-base);font-family:Inter,MiSans,sans-serif}.ln-stat span{font-size:12px;color:var(--color-text-secondary)}@media(max-width:520px){.ln-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.ln-levels{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--color-container-subtle)}.ln-levels i{display:block;height:100%}.ln-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--color-text-secondary);margin-top:8px}.ln-legend span{display:inline-flex;align-items:center;gap:5px}.ln-legend i{width:8px;height:8px;border-radius:2px;display:inline-block}.ln-advice{font-size:13px;color:var(--color-warning-pressed, var(--color-warning));background:color-mix(in srgb,var(--color-warning) 10%,transparent);border-radius:8px;padding:8px 12px}.ln-panel{background:var(--color-container-bg);border-radius:12px;overflow:hidden}.ln-panel img{width:100%;aspect-ratio:3 / 2;object-fit:cover;display:block;background:var(--color-container-subtle)}.ln-lines{padding:6px 14px 10px}.ln-line{display:grid;grid-template-columns:22px 1fr;gap:6px;padding:8px 0;border-top:1px dashed var(--color-divider)}.ln-line:first-child{border-top:none}.ln-line-no{font-size:12px;color:var(--color-text-unselected);padding-top:3px}.ln-speaker{font-size:12px;color:var(--color-text-secondary);margin-bottom:2px}.ln-line-en{font-size:17px;line-height:1.6;color:var(--color-text-base);font-family:Inter,MiSans,sans-serif}.ln-line-zh{font-size:14px;color:var(--color-text-secondary);margin-top:2px}.ln-w{border-radius:4px;padding:0 2px;cursor:pointer;transition:filter .15s ease}.ln-w:hover{filter:brightness(.95)}.ln-w.new{background:var(--ln-new);color:#1f1606;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;font-weight:600}.ln-w.old{background:var(--ln-old)}.ln-w.known{background:var(--ln-known)}.ln-w.focus{background:color-mix(in srgb,var(--color-info) 18%,transparent);color:var(--color-text-base);font-weight:600;cursor:default}.ln-pop{position:fixed;z-index:80;width:260px;background:var(--color-container-bg);border-radius:12px;padding:12px 14px;box-shadow:0 6px 24px #0000002e;border:1px solid var(--color-divider)}.ln-pop-en{font-size:18px;font-weight:700;font-family:Inter,MiSans,sans-serif}.ln-bottom{position:sticky;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--color-page-bg);border-top:1px solid var(--color-divider);display:flex;gap:10px;justify-content:center}.ln-bottom>*{max-width:360px;flex:1}.ln-screen-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--color-divider)}.ln-screen-row:last-child{border-bottom:none}.ln-screen-en{font-size:16px;font-weight:600;font-family:Inter,MiSans,sans-serif;color:var(--color-text-base)}.ln-seg{display:inline-flex;background:var(--color-container-subtle);border-radius:8px;padding:2px;flex:none}.ln-seg button{border:none;background:none;font-size:13px;padding:5px 10px;border-radius:6px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}.ln-seg button.on{background:var(--color-container-bg);color:var(--c, var(--color-primary));font-weight:600;box-shadow:0 1px 3px #00000014}.ln-session{display:flex;flex-direction:column;min-height:0;flex:1}.ln-progress{height:4px;border-radius:2px;background:var(--color-container-subtle);overflow:hidden;flex:1}.ln-progress i{display:block;height:100%;background:var(--c, var(--color-primary));transition:width .3s ease}.ln-card{background:var(--color-container-bg);border-radius:20px;padding:24px 24px 20px;display:flex;flex-direction:column;gap:14px;width:100%;max-width:680px;margin:0 auto;animation:apFade .2s ease both}.ln-card-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.ln-q-zh{font-size:20px;line-height:1.6;color:var(--color-text-base);text-align:center}.ln-q-zh .cue{color:var(--color-warning);font-weight:700}.ln-q-en{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:4px 6px;font-size:19px;line-height:1.9;color:var(--color-text-secondary);font-family:Inter,MiSans,sans-serif;text-align:center}.ln-q-en .ln-slots .qz-slot{width:24px;height:34px;font-size:21px}.ln-q-en .ln-slots.big .qz-slot{width:30px;height:42px;font-size:25px}.ln-blank-wrap{display:inline-flex;align-items:flex-end;white-space:nowrap}.ln-slots .ce-slot-given{align-self:flex-end;padding-bottom:4px;font-size:19px;color:var(--color-text-secondary);white-space:nowrap}.ln-q-hint{font-size:13px;color:var(--color-text-secondary);text-align:center}.ln-q-hint button{border:none;background:none;color:var(--color-primary);font-size:13px;cursor:pointer;padding:0 2px}.ln-form-hint{color:var(--color-info);font-weight:600}.ln-big{font-size:28px;font-weight:700;color:var(--color-text-base);text-align:center}.ln-big-en{font-size:30px;font-weight:700;color:var(--color-primary);text-align:center;font-family:Inter,MiSans,sans-serif;display:flex;align-items:center;justify-content:center;gap:8px}.ln-meaning{font-size:14px;color:var(--color-text-secondary);text-align:center}.ln-example{background:var(--color-container-subtle);border-radius:10px;padding:10px 14px;font-size:15px}.ln-example .ln-line-en{font-size:16px}.ln-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.ln-actions>button{min-width:140px}.ln-feedback{border-radius:12px;padding:12px 14px;background:color-mix(in srgb,var(--c) 10%,transparent);border:1px solid color-mix(in srgb,var(--c) 30%,transparent)}.ln-feedback-title{font-size:16px;font-weight:700;color:var(--c)}.ln-feedback-detail{font-size:14px;color:var(--color-text-base);margin-top:4px;line-height:1.6}.ln-feedback-meta{font-size:12px;color:var(--color-text-secondary);margin-top:6px;display:flex;flex-wrap:wrap;gap:6px 12px}.ln-options{display:grid;grid-template-columns:1fr;gap:8px}.ln-option{border:1.5px solid var(--color-divider);background:var(--color-container-bg);border-radius:10px;padding:12px 14px;font-size:16px;text-align:left;cursor:pointer;color:var(--color-text-base);font-family:Inter,MiSans,sans-serif}.ln-option:hover:not(:disabled){border-color:var(--color-primary)}.ln-option.on{border-color:var(--color-primary);background:var(--ln-tint)}.ln-option.right{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.ln-option.wrong{border-color:var(--color-error);background:color-mix(in srgb,var(--color-error) 10%,transparent)}.ln-input{width:100%;height:48px;border-radius:10px;border:1.5px solid var(--color-divider);background:var(--color-container-subtle);padding:0 14px;font-size:18px;color:var(--color-text-base);font-family:Inter,MiSans,sans-serif;outline:none}.ln-input:focus{border-color:var(--color-primary)}.ln-grammar-title{font-size:20px;font-weight:700;color:var(--color-text-base)}.ln-one-liner{font-size:15px;line-height:1.7;color:var(--color-text-base);background:var(--ln-tint);border-radius:10px;padding:10px 14px}.ln-goals{margin:0;padding-left:18px;font-size:14px;color:var(--color-text-secondary);line-height:1.8}.ln-record{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:60px;justify-content:center}.ln-summary-head{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;text-align:center}.ln-item-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--color-divider);cursor:pointer}.ln-item-row:last-child{border-bottom:none}.ln-item-en{font-weight:600;font-family:Inter,MiSans,sans-serif;color:var(--color-text-base)}.ln-bars{display:flex;align-items:flex-end;gap:3px;height:90px}.ln-bars div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;height:100%}.ln-bars i{width:100%;border-radius:3px 3px 0 0;background:var(--c, var(--color-primary));min-height:1px;display:block}.ln-bars small{font-size:10px;color:var(--color-text-unselected)}.ln-calib{position:relative;width:100%;aspect-ratio:1.6;max-height:260px}.ln-kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.ln-kv div{background:var(--color-container-subtle);border-radius:8px;padding:8px 10px}.ln-kv b{display:block;font-size:17px;font-family:Inter,MiSans,sans-serif;color:var(--color-text-base)}.ln-kv span{font-size:12px;color:var(--color-text-secondary)}.ln-check{display:flex;align-items:center;gap:8px;font-size:14px;padding:4px 0;color:var(--color-text-base)}.ln-check i{width:18px;height:18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;color:#fff;flex:none}.ln-table{width:100%;border-collapse:collapse;font-size:13px}.ln-table td,.ln-table th{padding:7px 6px;border-bottom:1px solid var(--color-divider);text-align:left;vertical-align:top}.ln-table th{color:var(--color-text-secondary);font-weight:600}.ln-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-divider);font-size:15px}.ln-field:last-of-type{border-bottom:none}.ln-field input[type=range]{width:180px;accent-color:var(--color-primary)}.ln-scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.ln-scene{background:var(--color-container-bg);border-radius:12px;overflow:hidden;cursor:pointer;border:none;padding:0;text-align:left}.ln-scene img{width:100%;aspect-ratio:3 / 2;object-fit:cover;display:block;background:var(--color-container-subtle)}.ln-scene div{padding:10px 12px}.ln-lesson-row{display:grid;grid-template-columns:96px 1fr auto;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-divider);cursor:pointer}.ln-lesson-row:last-child{border-bottom:none}.ln-lesson-row img{width:96px;aspect-ratio:3 / 2;object-fit:cover;border-radius:6px;background:var(--color-container-subtle)}.ln-placement{gap:14px}.ln-placement-cue{font-size:24px;font-weight:600;margin-top:24px}.ln-placement-detail{text-align:center}.pl-body{gap:12px;padding-top:20px}.pl-hero{width:140px;height:140px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,color-mix(in srgb,var(--color-primary) 22%,transparent),transparent 70%)}.pl-hero img{width:100px;height:100px}.pl-title{margin:4px 0 0;text-align:center;font-size:22px;line-height:1.3;font-weight:800;color:var(--color-text-base)}.pl-sub{margin:0 0 10px;text-align:center;font-size:14px;line-height:1.5;color:var(--color-text-secondary)}.pl-sub-top{margin:2px 0 0}.pl-center{text-align:center}.pl-big{text-align:center;font-family:Inter,MiSans,sans-serif;font-size:46px;line-height:1.15;font-weight:800;color:var(--color-primary)}.pl-big span{margin-left:4px;font-family:MiSans,sans-serif;font-size:16px;font-weight:600;color:var(--color-text-secondary)}.pl-chip{display:inline-block;padding:3px 8px;border-radius:10px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.pl-facts{display:grid;grid-template-columns:repeat(3,1fr);padding:14px 0;border-radius:16px;background:var(--color-container-bg)}.pl-facts>div{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:0 6px;border-left:1px solid var(--color-divider)}.pl-facts>div:first-child{border-left:none}.pl-facts b{font-family:Inter,MiSans,sans-serif;font-size:20px;line-height:1.2;font-weight:700;color:var(--color-text-base);white-space:nowrap}.pl-facts span{font-size:12px;color:var(--color-text-secondary)}.pl-card{padding:16px;border-radius:16px;background:var(--color-container-bg)}.pl-card h3{display:flex;align-items:center;margin:0 0 14px;font-size:15px;font-weight:700;color:var(--color-text-base)}.pl-card h3 small{margin-left:auto;font-size:12px;font-weight:400;color:var(--color-text-secondary)}.pl-step{display:grid;grid-template-columns:26px 1fr;gap:12px;margin-bottom:14px}.pl-step:last-child{margin-bottom:0}.pl-step i{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;font-style:normal;font-family:Inter,sans-serif;font-size:13px;font-weight:700;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.pl-step b{display:block;font-size:15px;line-height:1.3;font-weight:600;color:var(--color-text-base)}.pl-step small{display:block;margin-top:3px;font-size:13px;line-height:1.45;color:var(--color-text-secondary)}.pl-last{display:flex;align-items:center;gap:12px;padding:14px 16px}.pl-ico{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:11px;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.pl-last small{display:block;font-size:12px;color:var(--color-text-secondary)}.pl-last em{font-style:normal;font-size:13px;color:var(--color-text-secondary)}.pl-last b{margin:0 4px;font-family:Inter,MiSans,sans-serif;font-size:20px;font-weight:700;color:var(--color-text-base)}.pl-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;font-size:13px;line-height:1.5;color:var(--color-text-base);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.pl-note svg{flex:none;margin-top:1px;color:var(--color-primary)}.pl-level{display:grid;grid-template-columns:36px 1fr 44px;align-items:center;gap:12px;padding:6px 0}.pl-level b{height:22px;display:grid;place-items:center;border-radius:6px;font-family:Inter,sans-serif;font-size:12px;font-weight:700;color:var(--color-text-secondary);background:var(--color-container-subtle)}.pl-level span{height:8px;border-radius:4px;overflow:hidden;background:var(--color-container-subtle)}.pl-level span i{display:block;height:100%;border-radius:4px;background:color-mix(in srgb,var(--color-primary) 60%,transparent)}.pl-level em{text-align:right;font-style:normal;font-family:Inter,sans-serif;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.pl-level.current b{color:#fff;background:var(--color-primary)}.pl-level.current span i{background:var(--color-primary)}.pl-level.current em{color:var(--color-text-base)}.pl-bottom{flex:none;width:100%;max-width:640px;margin:0 auto;box-sizing:border-box;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.pl-btn{width:100%;height:50px;display:flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:12px;font:inherit;font-size:15px;font-weight:600;color:#fff;cursor:pointer;background:var(--color-primary);transition:filter .15s ease}.pl-btn:hover{filter:brightness(1.06)}.pl-btn:active{filter:brightness(.94)}.pl-caption{margin-top:8px;text-align:center;font-size:12px;color:var(--color-text-unselected)}.lh{width:100%;margin:0 auto}.lh-num,.lh-big b,.lh-facts b,.lh-metric b,.lh-inline b,.lh-levels b{font-family:Inter,MiSans,sans-serif;font-variant-numeric:tabular-nums}.lh-triple{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,28%,400px);grid-template-rows:auto 1fr;gap:16px;max-width:1920px;min-height:100%;padding:8px 32px 20px 16px}.lh-triple.has-advice{grid-template-rows:auto auto 1fr}.lh-triple>.lh-advice{grid-column:1 / -1}.lh-col{display:flex;flex-direction:column;gap:16px;min-width:0}.lh-col>.lh-mastery{flex:1}.lh-triple .lh-today .lh-forecast{flex:1;min-height:0}.lh-triple .lh-today .lh-chart{flex:1;height:auto;min-height:170px}.lh-triple .lh-mastery .lh-strip{margin-top:auto}.lh-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:880px;padding:8px 24px 32px}.lh-dual>.lh-advice,.lh-dual>.lh-hero,.lh-dual>.lh-today,.lh-dual>.lh-links{grid-column:1 / -1}.lh-dual .lh-links{flex-direction:row}.lh-dual .lh-links button{flex:1;min-width:0}.lh-single{display:flex;flex-direction:column;gap:12px;padding:4px 16px 28px}.lh-advice{display:flex;align-items:center;gap:8px;border-radius:14px;padding:10px 14px}.lh-advice svg{flex:none}.lh-advice.clickable{cursor:pointer}.lh-advice.clickable:hover{filter:brightness(.97)}.lh-advice.clickable svg:last-child{margin-left:auto}.lh-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:20px;border-radius:24px;background:var(--color-container-bg)}.lh-card-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.lh-title{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--color-text-base);white-space:nowrap}.lh-ico{width:28px;height:28px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}.lh-card-sub{margin:0;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.lh-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;font:inherit;font-size:13px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:color .15s ease}.lh-link:hover{color:var(--color-primary)}.lh-big{display:flex;align-items:baseline;gap:8px;margin-top:6px}.lh-big b{font-size:44px;line-height:1;font-weight:700;letter-spacing:-.02em;color:var(--c)}.lh-big span{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.lh-big em{margin-left:auto;font-style:normal;font-size:12px;color:var(--color-text-secondary)}.lh-btn{height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;border:none;border-radius:12px;font:inherit;font-size:15px;font-weight:600;color:#fff;cursor:pointer;background:var(--c, var(--color-primary));transition:filter .15s ease,background-color .15s ease}.lh-btn:hover{filter:brightness(1.06)}.lh-btn:active{filter:brightness(.94)}.lh-btn svg{transition:transform .2s ease}.lh-btn:hover svg{transform:translate(3px)}.lh-btn.block{width:100%}.lh-btn.ghost{max-width:280px;min-width:0;color:var(--color-text-base);background:transparent;border:1px solid color-mix(in srgb,var(--color-text-base) 16%,transparent)}.lh-btn.ghost:hover{filter:none;background:var(--color-card-hover)}.lh-btn.ghost span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lh-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:center;padding:20px;border-radius:24px;background:var(--color-container-bg)}.lh-hero-media{position:relative;display:block;width:100%;aspect-ratio:3 / 2;padding:0;border:none;border-radius:16px;overflow:hidden;cursor:pointer;background:var(--color-container-subtle)}.lh-hero-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.lh-hero-media:hover img{transform:scale(1.04)}.lh-hero-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-unselected)}.lh-hero-day{position:absolute;left:12px;top:12px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;color:#fff;background:#0000006b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lh-hero-body{display:flex;flex-direction:column;min-width:0;padding:4px 8px 4px 0}.lh-eyebrow{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--color-primary);min-width:0}.lh-eyebrow i{width:6px;height:6px;flex:none;border-radius:50%;background:currentColor}.lh-eyebrow em{font-style:normal;font-weight:500;color:var(--color-text-secondary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lh-eyebrow em:before{content:"·";margin-right:8px}.lh-hero-title{margin:12px 0 0;font-size:clamp(24px,2.3vw,32px);line-height:1.25;font-weight:800;letter-spacing:-.01em;color:var(--color-text-base);overflow-wrap:anywhere}.lh-hero-en{margin:6px 0 0;font-size:15px;line-height:1.4;color:var(--color-text-secondary);font-family:Inter,MiSans,sans-serif}.lh-facts{display:flex;gap:36px;margin:20px 0 22px;padding:14px 0;border-block:1px solid var(--color-divider)}.lh-facts div{display:flex;flex-direction:column;gap:2px}.lh-facts b{font-size:24px;line-height:1.2;font-weight:700;color:var(--color-text-base)}.lh-facts span{font-size:12px;color:var(--color-text-secondary)}.lh-hero-actions{display:flex;flex-wrap:wrap;gap:10px}.lh-hero-empty{grid-template-columns:1fr;min-height:220px}.lh-hero-empty .lh-hero-body{padding:12px}.lh-hero-empty .lh-hero-actions{margin-top:22px}.lh-inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:6px;padding-top:14px;border-top:1px solid var(--color-divider)}.lh-inline span{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:12px;color:var(--color-text-secondary)}.lh-inline span+span{padding-left:14px;border-left:1px solid var(--color-divider)}.lh-inline b{font-size:18px;line-height:1.3;font-weight:700;color:var(--color-text-base)}.lh-review .lh-inline{margin-bottom:8px}.lh-review .lh-btn,.lh-done{margin-top:auto}.lh-done{height:48px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;font-size:14px;font-weight:600;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent)}.lh-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:4px}.lh-metric{display:flex;flex-direction:column;gap:4px;min-width:0;padding:0 18px;border-left:1px solid var(--color-divider)}.lh-metric:first-child{padding-left:0;border-left:none}.lh-metric>span{font-size:12px;color:var(--color-text-secondary)}.lh-metric b{font-size:28px;line-height:1.15;font-weight:700;color:var(--color-text-base);white-space:nowrap}.lh-metric small{margin-left:4px;font-size:13px;font-weight:500;color:var(--color-text-secondary)}.lh-meter{height:4px;max-width:120px;margin-top:6px;border-radius:2px;overflow:hidden;background:var(--color-container-subtle)}.lh-meter i{display:block;height:100%;border-radius:2px;background:var(--c);transition:width .6s ease-out}.lh-forecast{display:flex;flex-direction:column;gap:14px;margin-top:8px;padding-top:16px;border-top:1px solid var(--color-divider)}.lh-forecast-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:600;color:var(--color-text-base)}.lh-forecast-hd b{font-weight:700;color:var(--color-warning)}.lh-chart{position:relative;height:190px;touch-action:pan-y;-webkit-user-select:none;user-select:none}.lh-chart-svg{position:absolute;inset:0;display:block;overflow:visible}.lh-grid{stroke:var(--color-divider);stroke-width:1;stroke-dasharray:3 5}.lh-axis{stroke:var(--color-divider);stroke-width:1}.lh-tick{font-size:11px;font-family:Inter,MiSans,sans-serif;fill:var(--color-text-unselected);transition:fill .15s ease}.lh-tick.today{fill:var(--color-warning);font-weight:600}.lh-tick.on{fill:var(--color-text-base)}.lh-stop-top{stop-color:var(--color-warning);stop-opacity:.32}.lh-stop-bottom{stop-color:var(--color-warning);stop-opacity:0}.lh-line{fill:none;stroke:var(--color-warning);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:lhDraw 1s cubic-bezier(.4,0,.2,1) .1s forwards}.lh-area{opacity:0;animation:lhFade .8s ease .4s forwards}.lh-dot{fill:var(--color-container-bg);stroke:var(--color-warning);stroke-width:2;transition:r .15s ease}.lh-dot.today,.lh-dot.on{fill:var(--color-warning)}.lh-dot.on{stroke:var(--color-container-bg);stroke-width:2.5}.lh-peak{font-size:12px;font-weight:700;font-family:Inter,MiSans,sans-serif;fill:var(--color-warning)}.lh-cross{stroke:color-mix(in srgb,var(--color-text-base) 22%,transparent);stroke-width:1;stroke-dasharray:3 3}.lh-tip{position:absolute;z-index:2;pointer-events:none;display:flex;flex-direction:column;gap:2px;padding:7px 10px;border-radius:10px;white-space:nowrap;background:var(--color-container-bg);border:1px solid var(--color-divider);box-shadow:0 4px 16px #0000002e}.lh-tip small{font-size:11px;color:var(--color-text-secondary)}.lh-tip b{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--color-text-base)}.lh-tip b i{width:8px;height:8px;border-radius:50%;background:var(--color-warning)}.lh-forecast.empty .lh-line{stroke:var(--color-text-unselected);stroke-width:2;stroke-dasharray:2 7;stroke-dashoffset:0;animation:none;opacity:.7}.lh-forecast.empty .lh-area{display:none}.lh-forecast.empty .lh-tick.today{fill:var(--color-text-secondary)}.lh-forecast-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;min-width:0}.lh-forecast-hint{font-size:12px;font-weight:500;color:var(--color-text-secondary)}@keyframes lhDraw{to{stroke-dashoffset:0}}@keyframes lhFade{to{opacity:1}}.lh-strip{display:flex;gap:3px;height:10px;margin-top:6px;border-radius:5px;overflow:hidden;background:var(--color-container-subtle)}.lh-strip i{display:block;flex-basis:0;min-width:4px}.lh-levels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-top:4px}.lh-levels div{display:flex;flex-direction:column;gap:4px;min-width:0}.lh-levels span{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--color-text-secondary);white-space:nowrap}.lh-levels i{width:6px;height:6px;flex:none;border-radius:50%}.lh-levels b{padding-left:11px;font-size:16px;font-weight:700;color:var(--color-text-base)}.lh-links{gap:0;padding:6px}.lh-links button{display:flex;align-items:center;gap:12px;padding:12px 14px;border:none;border-radius:18px;background:none;font:inherit;color:var(--color-text-base);text-align:left;cursor:pointer;transition:background-color .15s ease}.lh-links button:hover{background:var(--color-card-hover)}.lh-links-icon{flex:none;color:var(--color-text-secondary)}.lh-links-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.lh-links-text b{font-size:14px;font-weight:600}.lh-links-text small{font-size:12px;color:var(--color-text-secondary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lh-links-arrow{flex:none;color:var(--color-text-unselected);transition:transform .2s ease}.lh-links button:hover .lh-links-arrow{transform:translate(3px)}.lh-hero.stack{grid-template-columns:1fr;gap:16px;padding:12px}.lh-hero.stack .lh-hero-media{aspect-ratio:16 / 9}.lh-hero.stack .lh-hero-body{padding:0 8px 8px}.lh-hero.stack .lh-hero-title{margin-top:10px;font-size:24px}.lh-hero.stack .lh-facts{gap:28px;margin:16px 0 18px}.lh-hero.stack .lh-hero-actions .lh-btn{flex:1 1 140px}.lh-hero.stack .lh-hero-actions .lh-btn.ghost{max-width:none}.lh-single .lh-card,.lh-single .lh-hero{border-radius:20px}.lh-single .lh-card{padding:16px}.lh-single .lh-hero .lh-hero-media{aspect-ratio:3 / 2}.lh-single .lh-hero-title{font-size:22px}.lh-single .lh-big b{font-size:38px}.lh-single .lh-metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.lh-single .lh-metric:nth-child(odd){padding-left:0;border-left:none}.lh-single .lh-metric b{font-size:24px}.lh-single .lh-chart{height:170px}.lh-dual .lh-hero{gap:22px}.ck-ring{position:relative;flex:none;display:inline-flex;align-items:center;justify-content:center}.ck-ring>svg{position:absolute;inset:0}.ck-ring-arc{transition:stroke-dashoffset .7s cubic-bezier(.22,1,.36,1)}.ck-ring-center{position:relative;display:flex;align-items:center;justify-content:center}.ck-ring-num{display:flex;flex-direction:column;align-items:center;line-height:1.1}.ck-ring-num b{font-family:Inter,MiSans,sans-serif;font-size:22px;font-weight:700}.ck-ring-num b.on{color:var(--color-primary)}.ck-ring-num small{font-size:10px;color:var(--color-text-secondary)}@media(prefers-reduced-motion:reduce){.ck-ring-arc,.ck-bar i{transition:none}}.ck-flame{flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-container-subtle);color:var(--color-icon-inactive)}.ck-flame.on{background:color-mix(in srgb,var(--flame) 14%,transparent);color:var(--flame)}.ck-item{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.ck-item span{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ck-item b{font-family:Inter,MiSans,sans-serif;font-weight:600;color:var(--color-primary)}.ck-strip{flex:none;display:flex;align-items:center;gap:8px;width:calc(100% - 32px);margin:8px 16px 0;padding:8px 8px 8px 10px;border:none;border-radius:14px;background:var(--color-container-bg);color:var(--color-icon-inactive);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.ck-strip:hover{background:color-mix(in srgb,var(--color-container-bg) 92%,var(--color-text-base))}.ck-strip.in-card{width:calc(100% - 24px);margin:4px 12px;background:var(--color-container-subtle)}.ck-strip.in-card:hover{background:var(--color-card-hover)}.ck-strip-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ck-strip-text b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;color:var(--color-text-base)}.ck-strip-text small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;color:var(--color-text-secondary)}.ck-strip-text small.ok{color:var(--color-primary)}.ck-strip-text small.warn{color:var(--color-warning)}.ck-strip-goal{flex:none;font-size:13px;font-weight:600;color:var(--color-text-base);white-space:nowrap}.ck-strip-goal em{font-style:normal;color:var(--color-primary)}.ck-single{display:flex;flex-direction:column;gap:12px;max-width:720px;margin:0 auto;padding:8px 16px 24px}.ck-wide{flex:1;min-height:0;display:flex}.ck-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.ck-col.side{flex:none;width:380px}.ck-col.side>*{flex-shrink:0}.ck-col.side>:first-child{margin-top:auto}.ck-col.side>:last-child{margin-bottom:auto}.ck-col-inner{display:flex;flex-direction:column;gap:12px;width:100%;margin:0 auto}.ck-card{flex:none;padding:14px 16px 16px;border-radius:14px}.ck-card-hd{display:flex;align-items:center;justify-content:space-between;gap:8px}.ck-card-title{font-size:16px;font-weight:600}.ck-card-title small{margin-left:6px;font-size:12px;font-weight:400;color:var(--color-text-secondary)}.ck-link{display:inline-flex;align-items:center;gap:2px;padding:4px 0;border:none;background:none;font:inherit;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.ck-link:hover:not(:disabled){color:var(--color-text-base)}.ck-link:disabled{cursor:default}.ck-link.muted{font-size:12px;gap:3px}.ck-card-ft{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;font-size:12px;color:var(--color-text-secondary)}.ck-streak-hd{display:flex;align-items:center;gap:12px}.ck-streak-num{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ck-streak-num small{font-size:13px;font-weight:500;color:var(--color-text-secondary)}.ck-streak-num>span{font-size:14px;font-weight:600}.ck-streak-num b{font-family:Inter,MiSans,sans-serif;font-size:30px;line-height:1.1;font-weight:700}.ck-streak-num b.on{color:#ff8a3d}.ck-level-chip{flex:none;padding:6px 10px;border-radius:20px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font-family:Inter,MiSans,sans-serif;font-size:13px;font-weight:700}.ck-notice{display:flex;align-items:center;gap:6px;margin-top:12px;padding:8px 10px;border-radius:8px;font-size:12px;font-weight:500;--c: var(--color-info);background:color-mix(in srgb,var(--c) 10%,transparent);color:var(--c)}.ck-notice+.ck-notice{margin-top:8px}.ck-notice svg{flex:none}.ck-notice.ok{--c: var(--color-primary)}.ck-notice.warn{--c: var(--color-warning)}.ck-notice.info{--c: var(--color-info)}.ck-minis{display:flex;gap:8px;margin-top:14px}.ck-minis>span{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 0;border-radius:8px;background:var(--color-container-subtle)}.ck-minis b{display:inline-flex;align-items:center;gap:3px;font-family:Inter,MiSans,sans-serif;font-size:17px;font-weight:700}.ck-minis b svg{color:var(--color-info)}.ck-minis b small{font-family:MiSans,sans-serif;font-size:11px;font-weight:400;color:var(--color-text-secondary)}.ck-minis i{font-style:normal;font-size:11px;color:var(--color-text-secondary)}.ck-hint{margin-top:8px;font-size:11px;color:var(--color-text-secondary)}.ck-level{margin-top:16px}.ck-level>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.ck-level b{font-size:13px;font-weight:600}.ck-level small{font-size:11px;color:var(--color-text-secondary)}.ck-bar{height:8px;border-radius:4px;overflow:hidden;background:var(--color-container-subtle)}.ck-bar i{display:block;height:100%;border-radius:4px;background:var(--color-primary);transition:width .7s cubic-bezier(.22,1,.36,1)}.ck-today{display:flex;align-items:center;gap:16px;margin-top:12px}.ck-today-detail{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ck-today-status{display:flex;align-items:center;gap:4px;margin-bottom:4px;font-size:14px;font-weight:600}.ck-today-status.ok{color:var(--color-primary)}.ck-empty-text{font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.ck-week{display:flex;margin-top:16px}.ck-week-day{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.ck-week-day small{font-size:11px;font-weight:500;color:var(--color-text-secondary)}.ck-week-day.future small{color:var(--color-text-unselected)}.ck-week-day.today small{color:var(--color-primary);font-weight:600}.ck-week-dot{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-container-subtle);box-shadow:0 0 0 2px var(--color-container-bg),0 0 0 3.5px transparent}.ck-week-day.today .ck-week-dot{box-shadow:0 0 0 2px var(--color-container-bg),0 0 0 3.5px var(--color-primary)}.ck-week-dot.met{background:var(--color-primary);color:#fff}.ck-week-dot.active{background:color-mix(in srgb,var(--color-primary) 20%,transparent);color:var(--color-primary)}.ck-week-dot.shield{background:color-mix(in srgb,var(--color-info) 14%,transparent);color:var(--color-info)}.ck-cal-card{padding:16px 16px 14px}.ck-cal-nav{display:inline-flex;align-items:center;gap:2px;padding:2px;border-radius:10px;background:var(--color-container-subtle)}.ck-cal-nav b{min-width:92px;text-align:center;font-family:Inter,MiSans,sans-serif;font-size:13px;font-weight:600}.ck-cal-nav button{display:inline-flex;padding:5px;border:none;border-radius:8px;background:none;color:var(--color-icon-active);cursor:pointer}.ck-cal-nav button:hover:not(:disabled){background:var(--color-card-hover)}.ck-cal-nav button:disabled{color:var(--color-text-unselected);cursor:default}.ck-cal-stats{display:flex;gap:8px;margin-top:14px}.ck-cal-stats>span{--c: var(--color-text-base);flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 9px;border-radius:12px;background:var(--color-container-subtle)}.ck-cal-stats>span.ok{--c: var(--color-primary);background:color-mix(in srgb,var(--color-primary) 9%,transparent)}.ck-cal-stats>span.xp{--c: #FF8A3D;background:color-mix(in srgb,#FF8A3D 9%,transparent)}.ck-cal-stats>span.info{--c: var(--color-info);background:color-mix(in srgb,var(--color-info) 9%,transparent)}.ck-cal-stats b{font-family:Inter,MiSans,sans-serif;font-size:20px;line-height:1.15;font-weight:700;color:var(--c)}.ck-cal-stats small{font-size:11px;color:var(--color-text-secondary)}.ck-cal-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:18px;text-align:center;font-size:11px;font-weight:500;color:var(--color-text-secondary)}.ck-cal-week .now{color:var(--color-primary);font-weight:700}.ck-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:8px;transition:opacity .15s ease}.ck-cal-grid.dim{opacity:.6}.ck-cal-cell{min-width:0}.ck-day{--bg: var(--color-container-subtle);--fg: var(--color-text-secondary);position:relative;display:block;width:100%;height:40px;padding:0;border:none;border-radius:10px;background:var(--bg);color:var(--fg);font-family:Inter,MiSans,sans-serif;cursor:pointer;overflow:hidden;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.ck-day-num{position:absolute;top:50%;left:50%;font-size:14px;font-weight:600;line-height:1;transform:translate(-50%,-50%)}.ck-day-xp,.ck-day-tag{display:none}.ck-day-mark{position:absolute;top:3px;right:3px;display:flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:50%}.ck-day-mark svg{width:8px;height:8px}.ck-day-bar{position:absolute;left:6px;right:6px;bottom:5px;height:3px;border-radius:2px;background:color-mix(in srgb,var(--color-primary) 22%,transparent)}.ck-day-bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p, 10%);border-radius:inherit;background:var(--color-primary)}.ck-day:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 3px 10px #0000001f}.ck-day.idle:hover{--bg: var(--color-card-hover)}.ck-day.future{--bg: color-mix(in srgb, var(--color-container-subtle) 45%, transparent);--fg: var(--color-text-unselected);cursor:default}.ck-day.active{--bg: color-mix(in srgb, var(--color-primary) var(--a, 16%), transparent);--fg: var(--color-primary)}.ck-day.met{--bg: linear-gradient(145deg, #7ED9A9, #4DB480);--fg: #fff;box-shadow:0 2px 8px color-mix(in srgb,var(--color-primary) 30%,transparent)}.ck-day.met .ck-day-mark{background:#ffffff47;color:#fff}.ck-day.shield{--bg: color-mix(in srgb, var(--color-info) 16%, transparent);--fg: var(--color-info)}.ck-day.shield .ck-day-mark{background:var(--color-info);color:#fff}.ck-day.today{box-shadow:inset 0 0 0 2px var(--color-primary)}.ck-day.today.idle .ck-day-num{color:var(--color-primary)}.ck-day.met.today{box-shadow:0 0 0 2px var(--color-container-bg),0 0 0 4px var(--color-primary)}.ck-day.sel,.ck-day.sel:hover,.ck-day.today.sel{box-shadow:inset 0 0 0 2px var(--color-text-base)}.ck-day-skel{cursor:default;animation:ckPulse 1.2s ease-in-out infinite}@keyframes ckPulse{50%{opacity:.5}}@container ckcal (min-width: 460px){.ck-day{height:clamp(52px,9cqw,64px);border-radius:12px}.ck-day-num{top:8px;left:10px;font-size:14px;transform:none}.ck-day-xp,.ck-day-tag{display:block;position:absolute;left:10px;bottom:8px;font-size:11px;font-weight:600;line-height:1;opacity:.85}.ck-day.active .ck-day-xp{bottom:12px}.ck-day-tag{color:var(--color-primary)}.ck-day.active .ck-day-tag,.ck-day.shield .ck-day-tag{display:none}.ck-day-mark{top:7px;right:7px;width:16px;height:16px}.ck-day-mark svg{width:10px;height:10px}.ck-day-bar{left:10px;right:10px;bottom:6px;height:3px}}.ck-cal-card{container:ckcal / inline-size}.ck-cal-error{display:block;width:100%;height:200px;border:none;background:none;font:inherit;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.ck-cal-detail{--c: var(--color-text-secondary);display:flex;align-items:flex-start;gap:12px;margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--color-container-subtle)}.ck-cal-detail.ok{--c: var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.ck-cal-detail.go{--c: #FF8A3D;background:color-mix(in srgb,#FF8A3D 8%,transparent)}.ck-cal-detail.info{--c: var(--color-info);background:color-mix(in srgb,var(--color-info) 8%,transparent)}.ck-cal-detail-icon{flex:none;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c)}.ck-cal-detail.idle .ck-cal-detail-icon{background:var(--color-container-subtle);color:var(--color-icon-inactive)}.ck-cal-detail-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.ck-cal-detail-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px;font-size:12px;font-weight:600;color:var(--c)}.ck-cal-detail-hd b{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--color-text-base)}.ck-cal-detail-hd em{padding:1px 6px;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font-style:normal;font-size:10px;font-weight:600}.ck-cal-detail-bar{height:5px;border-radius:3px;overflow:hidden;background:color-mix(in srgb,var(--c) 16%,transparent)}.ck-cal-detail-bar i{display:block;height:100%;border-radius:3px;background:var(--c)}.ck-cal-detail-items{display:flex;flex-direction:column;gap:2px}.ck-cal-detail .ck-empty-text{margin-top:-4px}.ck-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;padding:0 2px;font-size:11px;color:var(--color-text-secondary)}.ck-legend span{display:inline-flex;align-items:center;gap:5px}.ck-legend i{position:relative;display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;border-radius:50%}.ck-legend i.lg-met{border-radius:4px;background:linear-gradient(145deg,#7ed9a9,#4db480)}.ck-legend i.lg-active{width:22px;border-radius:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 12%,transparent),color-mix(in srgb,var(--color-primary) 34%,transparent))}.ck-legend i.lg-shield{border-radius:4px;background:var(--color-info);color:#fff}.ck-legend i.lg-today{border-radius:4px;box-shadow:inset 0 0 0 2px var(--color-primary)}@media(prefers-reduced-motion:reduce){.ck-day{transition:none}.ck-day:not(:disabled):hover{transform:none}}.ck-ach-card{padding:16px 16px 18px}.ck-ach-hd{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.ck-ach-count{font-size:12px;color:var(--color-text-secondary)}.ck-ach-count b{margin-right:2px;font-family:Inter,MiSans,sans-serif;font-size:18px;font-weight:700;color:var(--color-text-base)}.ck-ach-total{height:6px;margin-top:10px;border-radius:3px;overflow:hidden;background:var(--color-container-subtle)}.ck-ach-total i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#f0a20a,#ffe380);transition:width .7s cubic-bezier(.22,1,.36,1)}.ck-next{display:flex;align-items:center;gap:12px;width:100%;margin-top:14px;padding:10px 14px 10px 12px;border:none;border-radius:12px;background:color-mix(in srgb,var(--c) 8%,transparent);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.ck-next:hover{background:color-mix(in srgb,var(--c) 13%,transparent)}.ck-next-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.ck-next-title{display:flex;align-items:baseline;gap:8px;min-width:0}.ck-next-title em{flex:none;font-style:normal;font-size:11px;font-weight:600;color:var(--c)}.ck-next-title b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600}.ck-next-bar{display:flex;align-items:center;gap:8px}.ck-next-bar>span{flex:1;height:5px;border-radius:3px;overflow:hidden;background:var(--color-container-subtle)}.ck-next-bar i{display:block;height:100%;border-radius:3px;background:var(--c)}.ck-next-bar small{flex:none;font-family:Inter,MiSans,sans-serif;font-size:11px;font-weight:600;color:var(--color-text-secondary)}.ck-next-text>small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;color:var(--color-text-secondary)}.ck-ach-group{margin-top:20px}.ck-ach-label{display:flex;align-items:center;gap:8px}.ck-ach-label i{width:4px;height:14px;border-radius:2px;background:var(--c)}.ck-ach-label b{font-size:14px;font-weight:600}.ck-ach-label span{padding:1px 6px;border-radius:8px;background:color-mix(in srgb,var(--c) 6%,transparent);color:var(--color-text-secondary);font-family:Inter,MiSans,sans-serif;font-size:11px;font-weight:600}.ck-ach-label span.on{background:color-mix(in srgb,var(--c) 14%,transparent);color:var(--c)}.ck-ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:14px 4px;margin:12px -4px 0}.ck-ach{min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px 4px;border:none;border-radius:12px;background:none;color:var(--color-text-secondary);font:inherit;cursor:pointer;transition:background-color .15s ease}.ck-ach:hover{background:var(--color-card-hover)}.ck-ach:hover .ck-badge{transform:translateY(-2px)}.ck-ach b{width:100%;margin-top:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500}.ck-ach.on b{color:var(--color-text-base)}.ck-ach small{font-family:Inter,MiSans,sans-serif;font-size:10px;color:var(--color-text-unselected)}.ck-ach small.prog{font-weight:600;color:var(--c)}.ck-badge{flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .2s ease}.ck-badge.on{padding:5.5%;background:linear-gradient(135deg,var(--m1),var(--m2));box-shadow:0 calc(var(--s) * .05) calc(var(--s) * .14) color-mix(in srgb,var(--m2) 32%,transparent)}.ck-badge-disc{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 32% 28%,color-mix(in srgb,var(--c) 14%,#fff),color-mix(in srgb,var(--c) 40%,#fff));color:var(--c)}.ck-badge-disc img{display:block;width:74%;height:74%;object-fit:contain;pointer-events:none}.ck-badge{position:relative}.ck-badge-stars{position:absolute;top:calc(var(--s) * -.1);left:50%;display:flex;align-items:flex-end;gap:calc(var(--s) * .01);transform:translate(-50%);pointer-events:none}.ck-badge-stars svg{width:calc(var(--s) * .22);height:calc(var(--s) * .22);fill:#ffd23f;stroke:#c27a00;stroke-width:1.6;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgba(0,0,0,.18))}.ck-badge-stars.n3 svg:nth-child(2){width:calc(var(--s) * .27);height:calc(var(--s) * .27);margin-bottom:calc(var(--s) * .05)}.ck-badge-lv{position:absolute;bottom:calc(var(--s) * -.08);left:50%;min-width:calc(var(--s) * .34);padding:0 calc(var(--s) * .07);border-radius:calc(var(--s) * .12);background:linear-gradient(135deg,var(--m1),var(--m2));box-shadow:0 0 0 1.5px var(--color-container-bg);color:var(--mt);font-family:Inter,MiSans,sans-serif;font-size:max(9px,calc(var(--s) * .17));font-weight:800;line-height:calc(var(--s) * .24);letter-spacing:.02em;text-align:center;transform:translate(-50%);pointer-events:none}.ck-badge:not(.on) .ck-badge-lv{background:color-mix(in srgb,var(--color-container-bg) 86%,var(--color-text-base));color:var(--color-text-secondary)}.ck-badge-locked{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-container-subtle);color:var(--color-icon-inactive)}.ck-badge-locked img{display:block;width:70%;height:70%;object-fit:contain;filter:grayscale(1);opacity:.42;pointer-events:none}.ck-ach-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:20px}.ck-ach-chips span{padding:2px 8px;border-radius:10px;background:color-mix(in srgb,var(--c) 14%,transparent);color:var(--c);font-size:11px;font-weight:600}@media(prefers-reduced-motion:reduce){.ck-badge,.ck-ach-total i{transition:none}.ck-ach:hover .ck-badge{transform:none}}.ck-sheet{display:flex;flex-direction:column;padding:12px 20px 24px;overflow-y:auto}.ck-sheet.center{align-items:center;text-align:center;padding-top:20px}.ck-sheet-title{font-size:18px;font-weight:800}.ck-sheet-sub{margin-top:6px;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.ck-sheet-section{margin:20px 0 8px;font-size:15px;font-weight:600}.ck-sheet-note{margin-top:14px;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.ck-presets{display:flex;flex-direction:column;gap:8px;margin-top:16px}.ck-preset{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1.5px solid transparent;border-radius:12px;background:var(--color-container-bg);color:var(--color-primary);font:inherit;text-align:left;cursor:pointer}.ck-preset:hover{border-color:var(--color-divider)}.ck-preset.on{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-container-bg))}.ck-preset-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ck-preset-text b{font-size:15px;font-weight:600;color:var(--color-text-base)}.ck-preset-text em{margin-left:8px;font-style:normal;font-size:13px;color:var(--color-text-secondary)}.ck-preset.on .ck-preset-text em{color:var(--color-primary)}.ck-preset-text small{font-size:12px;color:var(--color-text-secondary)}.ck-rules{display:flex;flex-direction:column;padding:6px 14px;border-radius:12px;background:var(--color-container-bg)}.ck-sheet .ck-rules{margin-top:0}.ck-sheet-sub+.ck-rules{margin-top:14px}.ck-rule{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 0;font-size:13px}.ck-rule b{font-weight:600;color:var(--color-primary)}.ck-unlocked{margin-top:18px;font-size:14px;font-weight:600}.ck-locked{width:100%;max-width:300px;margin-top:18px;display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--color-text-secondary)}.ck-modal-mask{position:absolute;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000073;animation:apFade .2s ease both}.ck-modal{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;width:100%;max-width:340px;padding:24px 20px 20px;border-radius:20px;background:var(--color-container-bg);color:var(--color-text-base);text-align:center;animation:ckPop .32s cubic-bezier(.34,1.56,.64,1) both}@keyframes ckPop{0%{opacity:0;transform:scale(.9)}}.ck-modal-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:color-mix(in srgb,var(--c) 14%,transparent);color:var(--c)}.ck-modal-title{margin-top:14px;font-size:21px;font-weight:800}.ck-modal-sub{margin-top:6px;font-size:13px;color:var(--color-text-secondary)}.ck-modal-extra{display:flex;align-items:center;gap:4px;margin-top:12px;font-size:13px;font-weight:600;color:var(--color-info)}.ck-modal-list{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:16px;text-align:left}.ck-modal-ach{display:flex;align-items:center;gap:12px}.ck-modal-ach>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}.ck-modal-ach b{font-size:15px;font-weight:600}.ck-modal-ach small,.ck-modal-more{font-size:12px;color:var(--color-text-secondary)}.ck-modal-btns{display:flex;gap:12px;width:100%;margin-top:20px}.ck-btn{flex:1;height:46px;border:none;border-radius:23px;background:var(--color-primary);color:#fff;font:inherit;font-size:16px;font-weight:600;cursor:pointer}.ck-btn:hover{filter:brightness(.97)}.ck-btn.muted{background:var(--color-container-subtle);color:var(--color-text-base)}@media(prefers-reduced-motion:reduce){.ck-modal{animation:none}}.ck-share{display:flex;flex-direction:column;align-items:center;min-height:0;padding:8px 20px 20px;overflow-y:auto}.ck-share-preview{display:flex;align-items:center;justify-content:center;width:100%;min-height:360px;margin-top:14px}.ck-share-preview img{display:block;width:100%;max-width:340px;height:auto;border-radius:20px;box-shadow:0 8px 24px var(--color-shadow-gray)}.ck-share-loading{display:flex;align-items:center;justify-content:center;height:360px}.ck-share-error{border:none;background:none;font:inherit;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.ck-share-actions{display:flex;justify-content:center;gap:28px;width:100%;margin-top:18px}.ck-share-actions button{display:flex;flex-direction:column;align-items:center;gap:6px;border:none;background:none;color:var(--color-text-secondary);font:inherit;font-size:12px;cursor:pointer}.ck-share-actions button>span{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--color-container-bg);color:var(--color-text-base);transition:background-color .15s ease}.ck-share-actions button:hover:not(:disabled)>span{background:var(--color-card-hover)}.ck-share-actions button:disabled{opacity:.4;cursor:default}.ck-plan-entry{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:none;border-radius:14px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.ck-plan-entry:hover{background:color-mix(in srgb,var(--color-container-bg) 94%,var(--color-text-base))}.ck-plan-icon{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.ck-plan-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ck-plan-text b{font-size:15px;font-weight:600}.ck-plan-text small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.ck-plan-entry>svg{flex:none;color:var(--color-icon-inactive)}.hp-column{display:flex;flex-direction:column}.hp-column-top{flex:1;min-height:0;display:flex}.hp-triple{flex-direction:row!important;gap:16px;padding:12px 32px 16px 16px}.hp-triple-left{flex:1;min-width:0;display:flex;border-radius:20px;overflow:hidden;background:var(--color-container-bg)}.hp-triple-right{flex:none;width:340px;display:flex}.hp-left-stack{flex:1;min-width:0;display:flex;flex-direction:column}.hp-left-stack>.ck-strip{margin-top:12px}.hp-left-stack>.hp-trend{min-height:0}.hp-trend{flex:1;min-width:0;display:flex;flex-direction:column}.hp-trend.in-card{padding-top:8px}.hp-trend-hd{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 20px 0}.hp-trend-title{font-size:18px;font-weight:800}.hp-trend-chart{flex:1;min-height:200px;margin-top:16px;position:relative}.hp-periods{display:flex;gap:16px}.hp-periods button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:0;border:none;background:none;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-unselected);cursor:pointer;transition:color .2s ease}.hp-periods button i{width:10px;height:2px;border-radius:1px;background:var(--c);opacity:0;transition:opacity .2s ease}.hp-periods button.on{color:var(--c);font-weight:600}.hp-periods button.on i{opacity:1}.trend-chart{position:absolute;inset:0;-webkit-user-select:none;user-select:none}.trend-hit{position:absolute;inset:0;cursor:grab;touch-action:pan-y}.trend-hit:active{cursor:grabbing}.trend-hit canvas{position:absolute;left:0;top:0;pointer-events:none}.trend-labels{position:absolute;inset:0;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent 0,transparent var(--l0),#000 var(--l1),#000 var(--r1),transparent var(--r0),transparent 100%);mask-image:linear-gradient(to right,transparent 0,transparent var(--l0),#000 var(--l1),#000 var(--r1),transparent var(--r0),transparent 100%)}.trend-label{position:absolute;transform:translate(-50%,-50%);font-size:11px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.trend-label.future{color:var(--color-text-unselected)}.trend-bubble{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.trend-bubble-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:40px;padding:2px 8px;border-radius:12px;background:var(--accent);box-shadow:0 2px 6px var(--color-chart-shadow);color:#fff;line-height:1.2;transition:background-color .18s ease}.trend-bubble-box b{font-size:12px;font-weight:600}.trend-bubble-box small{font-size:9px;font-weight:500;opacity:.9}.trend-bubble-box.future{background:color-mix(in srgb,var(--accent) 55%,transparent)}.trend-bubble>i{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--accent)}.trend-bubble>i.future{border-top-color:color-mix(in srgb,var(--accent) 55%,transparent)}.trend-tooltip{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.trend-tooltip>span{padding:3px 7px;border-radius:4px;background:var(--tip-bg);box-shadow:0 1px 6px var(--color-shadow-gray);font-size:10px;font-weight:600;white-space:nowrap}.trend-tooltip svg{display:block;margin-top:-.5px}.trend-empty{position:absolute;left:50%;transform:translate(-50%);padding:8px 14px;border-radius:8px;background:var(--color-container-bg);box-shadow:0 1px 6px var(--color-shadow-gray);font-size:11px;line-height:1.5;font-weight:500;color:var(--color-text-secondary);text-align:center;white-space:pre-line;pointer-events:none}.trend-menu{position:absolute;left:20px;top:13px;display:flex;flex-direction:column;gap:4px;pointer-events:none}.trend-menu i{display:block;height:2.5px;border-radius:1.25px;background:var(--color-text-base)}.trend-calendar{position:absolute;right:0;top:4px;display:flex;align-items:center;width:48px;height:32px;padding-left:13px;border:none;border-radius:16px 0 0 16px;background:var(--color-container-bg);box-shadow:0 2px 8px var(--color-shadow-gray);color:var(--color-icon-active);cursor:pointer}.trend-calendar.in-card{right:12px;width:44px;border-radius:16px;background:var(--color-container-subtle);box-shadow:none}.trend-picker{position:absolute;right:12px;top:44px;z-index:5;width:230px;padding:10px 6px 6px;border-radius:14px;background:var(--color-container-bg);box-shadow:0 10px 30px #00000024;animation:apFade .16s ease both}.trend-picker-title{padding:0 10px 8px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.trend-picker-list{max-height:280px;overflow-y:auto}.trend-picker-list button{display:flex;justify-content:space-between;width:100%;padding:9px 10px;border:none;border-radius:8px;background:none;color:var(--color-text-base);font:inherit;font-size:14px;cursor:pointer}.trend-picker-list button:hover:not(:disabled){background:var(--color-container-subtle)}.trend-picker-list button.on{color:var(--accent);font-weight:600}.trend-picker-list button:disabled{color:var(--color-text-unselected);cursor:default}.trend-picker-value{color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.hp-card{flex:none;background:var(--color-container-bg);border-radius:12px 12px 0 0;padding-bottom:14px}.hp-tabs{padding:14px 20px 0}.hp-tab-row{display:flex}.hp-tab{flex:1;padding:0;border:none;background:none;font:inherit;font-size:16px;cursor:pointer}.hp-tab.a0{text-align:left}.hp-tab.a1{text-align:center}.hp-tab.a2{text-align:right}.hp-indicator-track{position:relative;height:2px;margin-top:3px}.hp-indicator{position:absolute;top:0;width:26px;height:2px;border-radius:1px;transform:translate(-50%)}.hp-divider{height:1px;margin-top:8px;background:var(--color-divider)}.hp-pages{overflow:hidden}.hp-pages-track{display:flex}.hp-page{flex:none;width:100%}.hp-page-body{display:flex;flex-direction:column;gap:20px;padding:16px 20px 0}.hp-page-body.stacked{flex:1;justify-content:space-evenly;gap:0;padding:0 16px;height:100%}.hp-stats-wrap{padding-top:10px}.hp-progress{display:flex;flex-direction:column;gap:8.5px}.hp-progress-row{display:flex;align-items:center;gap:8px}.hp-progress-text{flex:1;min-width:0;font-size:12px;line-height:1.3;font-weight:600;color:var(--color-text-secondary)}.hp-progress-text.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hp-progress-text.right{flex:none}.hp-legends{flex:1;display:flex;gap:12px;min-width:0}.hp-stats{display:flex;justify-content:space-between}.hp-stats.expand{gap:12px}.hp-stat{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:88px;height:84px;padding-bottom:8px;border-radius:8px;background:var(--color-container-subtle)}.hp-stat.expand{flex:1;width:auto}.hp-stat.stacked{height:auto;justify-content:center;padding:8px 0}.hp-stat-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-bottom:5px;border-radius:50%;color:#fff;font-size:12px;font-weight:500}.hp-stat.stacked .hp-stat-icon{width:26px;height:26px;margin-bottom:4px}.hp-stat-value{font-size:14px;line-height:1.3;font-weight:600}.hp-stat-label{margin-top:2px;font-size:12px;line-height:1.3;font-weight:600;color:var(--color-text-secondary)}.hp-stacked{flex:1;display:flex;flex-direction:column;gap:12px}.hp-stack-card{flex:1;min-height:0;display:flex;flex-direction:column;padding-bottom:14px;border-radius:20px;background:var(--color-container-bg);cursor:pointer}.hp-stack-hd{flex:none;display:flex;align-items:center;height:42px;padding:8px 0 0 16px;transition:color .2s ease}.hp-stack-title{font-size:17px}.hp-go{display:inline-flex;align-items:center;padding:4px 10px 4px 12px;border:none;background:none;font:inherit;font-size:13px;cursor:pointer}.hp-stack-body{flex:1;min-height:0}.hp-skel-trend{flex:1;display:flex;flex-direction:column;padding:12px 20px 20px}.hp-skel-chart{flex:1;margin-top:24px;display:flex}.dc-header{flex:none;height:52px;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:600}.dc-grid{display:grid;gap:16px;margin:0 auto}.dc-tile{display:flex;align-items:center;gap:14px;height:96px;padding:0 18px;border:none;border-radius:16px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer;transition:background-color .08s ease,box-shadow .15s ease}.dc-tile:hover{box-shadow:0 6px 18px var(--color-shadow-gray)}.dc-tile:active{background:var(--color-cell-pressed)}.dc-tile-icon{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:color-mix(in srgb,var(--c) 12%,transparent)}.dc-tile-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.dc-tile-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:600}.dc-tile-sub{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;color:var(--color-text-secondary)}.dc-arrow{flex:none;color:var(--color-icon-inactive)}.dc-list{padding-bottom:32px}.dc-group{margin:10px 16px 0;border-radius:14px;background:var(--color-container-bg);overflow:hidden}.dc-cell{display:flex;align-items:center;gap:14px;width:100%;height:56px;padding:0 14px 0 16px;border:none;background:none;color:var(--color-text-base);font:inherit;cursor:pointer}.dc-cell+.dc-cell{border-top:1px solid var(--color-divider)}.dc-cell:active{background:var(--color-cell-pressed)}.dc-cell-title{flex:1;text-align:left;font-size:16px}.wl-topbar-middle{flex:1;max-width:720px;margin:0 auto}.wl-topbar-middle.start{margin:0}.wl-progress{display:flex;align-items:center}.wl-progress-bar{flex:1;height:8px;border-radius:4px;background:var(--color-divider);overflow:hidden}.wl-progress-bar i{display:block;height:100%;border-radius:4px;transition:width .3s ease-out,background-color .2s ease}.wl-progress-count{margin:0 24px 0 12px;font-size:15px;font-weight:600;color:var(--color-text-unselected);font-variant-numeric:tabular-nums}.wl-progress-tag{padding:3px 8px;border-radius:4px;background:color-mix(in srgb,var(--c) 12%,transparent);font-size:13px;font-weight:600;color:var(--c);white-space:nowrap}.wl-picker-wrap{position:relative}.wl-picker-btn{display:flex;align-items:center;justify-content:center;width:36px;height:28px;border:none;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);cursor:pointer}.wl-picker-btn:disabled{color:var(--color-text-unselected);cursor:default}.wl-picker{position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:240px;max-height:360px;overflow-y:auto;padding:6px;border-radius:14px;background:var(--color-container-bg);box-shadow:0 10px 30px #00000029;animation:apFade .15s ease both}.wl-picker button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:none;color:var(--color-text-base);font:inherit;cursor:pointer}.wl-picker button:hover{background:var(--color-container-subtle)}.wl-picker button.on{color:var(--color-primary);font-weight:600}.wl-picker button svg{color:var(--color-primary)}.wl-picker-index{width:24px;font-size:12px;color:var(--color-text-secondary);text-align:right;font-variant-numeric:tabular-nums}.wl-picker-word{flex:1;text-align:left;font-size:15px}.wl-single{max-width:720px;margin:0 auto;padding:24px 16px}.wl-stack{display:flex;flex-direction:column;gap:16px}.wl-columns{flex:1;min-height:0;display:flex}.wl-col{min-width:0;padding:24px 8px}.wl-pad4{padding:0 4px}.wl-header{display:flex;align-items:center;gap:12px}.wl-header-main{flex:1;min-width:0}.wl-word-row{display:flex;align-items:center;gap:4px;min-width:0}.wl-word{min-width:0;line-height:1.2;font-weight:700}.wl-phonetic{margin-top:4px;font-size:18px;color:var(--color-text-secondary)}.wl-star{flex:none;display:flex;padding:8px;border:none;background:none;color:var(--color-text-unselected);cursor:pointer;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.wl-star.on{color:#ffb800;transform:scale(1.06)}.wl-star:active{transform:scale(.85)}.wl-speaker{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px}.wl-mnemonic-text{font-size:15px;line-height:1.6}.wl-hl{color:var(--color-primary)}.wl-fade{animation:apFade .15s ease both}.wl-seg{display:inline-flex;padding:3px;border-radius:8px;background:var(--color-container-subtle)}.wl-seg button{padding:4px 10px;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer;transition:all .15s ease}.wl-seg button.on{background:var(--color-container-bg);color:var(--color-primary);font-weight:600}[data-theme=dark] .wl-seg button.on{background:#4a4a4a}.wl-root-parts{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.wl-root-part-wrap{display:inline-flex;align-items:center;gap:6px}.wl-plus{font-size:14px;color:var(--color-text-secondary)}.wl-root-part{padding:5px 8px;border-radius:6px;background:var(--color-container-subtle);font-size:14px}.wl-root-part b{font-weight:700;color:var(--color-primary)}.wl-root-part small{font-size:12px;color:var(--color-text-secondary)}.wl-root-note{margin-top:8px;font-size:14px;line-height:1.5;color:var(--color-text-secondary)}.wl-pos{display:inline-block;padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--color-primary) 10%,transparent);font-size:12px;line-height:1.4;font-weight:600;color:var(--color-primary)}.wl-pos-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.wl-sense{margin-top:10px}.wl-sense-row{display:flex;gap:8px}.wl-priority{flex:none;align-self:flex-start;margin-top:3px;padding:1px 4px;border-radius:3px;background:color-mix(in srgb,var(--c) 15%,transparent);font-size:10px;line-height:1.4;font-weight:700;color:var(--c)}.wl-dot{flex:none;font-size:12px;color:var(--color-text-unselected);margin-top:3px}.wl-sense-text{font-size:15px;line-height:1.5}.wl-sense-images{display:flex;gap:8px;margin-top:8px;overflow-x:auto}.wl-plain-meaning{font-size:15px;line-height:1.6}.wl-divider{height:1px;margin:14px 0;background:var(--color-divider)}.wl-example{font-size:15px;line-height:1.5}.wl-example-speaker{display:inline-block;vertical-align:middle;margin-left:6px}.wl-example-cn{margin-top:6px;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.wl-example-foot{display:flex;align-items:flex-end;margin-top:10px}.wl-explain{display:inline-flex;align-items:center;padding:8px 0 0 12px;border:none;background:none;font:inherit;font-size:13px;font-weight:500;color:var(--color-text-secondary);cursor:pointer}.wl-explain:hover{color:var(--color-primary)}.wl-tap{cursor:pointer;border-radius:3px;transition:background-color .12s ease}.wl-tap:hover{background:color-mix(in srgb,var(--color-primary) 16%,transparent)}.wl-tap.hl{color:var(--color-primary);font-weight:600}.wl-related{display:flex;align-items:center;gap:12px;padding:8px 0}.wl-related.bordered{border-top:1px solid var(--color-divider)}.wl-related-word{font-size:15px;line-height:1.35;font-weight:500}.wl-related-meaning{margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.wl-related-loading{display:block;width:72px;height:8px;margin:6px 0 4px;border-radius:4px;background:var(--color-container-subtle)}.wl-ai-col{flex:1.2 1 0;min-width:340px;display:flex;flex-direction:column}.wl-ai-card{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--color-divider);border-radius:16px;overflow:hidden}.wl-top-actions{display:flex;align-items:center;gap:8px;padding-right:8px}.wl-top-ask{display:flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:none;border-radius:18px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color .15s ease}.wl-top-ask:hover{color:var(--color-primary)}.wl-top-start{height:36px;padding:0 22px;border:none;border-radius:18px;background:var(--color-primary);color:#fff;font:inherit;font-size:15px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background-color .15s ease}.wl-top-start:hover{background:var(--color-primary-hover)}.wl-bottom{display:flex;align-items:center;gap:16px}.wl-ask{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:52px;height:56px;border:none;background:none;color:var(--color-icon-active);font:inherit;cursor:pointer}.wl-ask span{font-size:11px;color:var(--color-text-secondary)}.wl-ask:hover{color:var(--color-primary)}.wl-start{flex:1;height:56px;border:none;border-radius:28px;background:color-mix(in srgb,var(--color-primary) 15%,transparent);color:var(--color-primary);font:inherit;font-size:18px;font-weight:600;cursor:pointer;transition:background-color .15s ease}.wl-start:hover{background:color-mix(in srgb,var(--color-primary) 22%,transparent)}.ce-page{--ce-tint: color-mix(in srgb, var(--color-primary) 10%, var(--color-container-bg))}.ce-page{flex-direction:row}.ce-main{flex:1;min-width:0;display:flex;flex-direction:column}.ce-main>.ap-topbar{position:relative}.ce-main>.ap-topbar>.ap-topbar-middle{position:absolute;inset:0 180px;justify-content:center;pointer-events:none}.ce-main>.ap-topbar>.ap-topbar-side.right{margin-left:auto}.ce-top-actions{display:flex;align-items:center;gap:12px;padding-right:8px}.ce-learned{font-size:12px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.ce-top-ask{display:flex;align-items:center;gap:6px;height:34px;padding:0 14px;border:none;border-radius:17px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color .15s,background .15s}.ce-top-ask:hover,.ce-top-ask.on{color:var(--color-primary)}.ce-top-ask.on{background:var(--ce-tint)}.ce-top-icon{width:34px;padding:0;justify-content:center}.ce-top-catalog{margin-left:4px}.ce-top-ask small{margin-left:2px;padding:0 6px;border-radius:8px;background:var(--ce-tint);color:var(--color-primary);font-size:11px;font-weight:600;line-height:18px;font-variant-numeric:tabular-nums}.ce-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:8px 16px 32px;touch-action:pan-y}.ce-side{--ce-side-w: min(440px, 42vw);position:relative;flex:none;width:0;height:100%;overflow:hidden;background:var(--color-page-bg);border-left:1px solid transparent;transition:width .32s cubic-bezier(.22,1,.36,1),border-color .32s}.ce-side.open{width:var(--ce-side-w);border-left-color:var(--color-divider)}.ce-side-inner{position:absolute;top:0;right:0;bottom:0;width:var(--ce-side-w);display:flex;flex-direction:column}.ce-side-inner>.ai-ask{flex:1;min-height:0}.ce-side.left{--ce-side-w: min(340px, 30vw);border-left:none;border-right:1px solid transparent;transition:width .32s cubic-bezier(.22,1,.36,1),border-color .32s}.ce-side.left.open{border-right-color:var(--color-divider)}.ce-side.left .ce-side-inner{right:auto;left:0}.ce-card{position:relative;width:100%;max-width:620px;max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding:32px 36px 28px;border-radius:24px;background:var(--color-container-bg);box-shadow:0 1px 2px #0000000a,0 12px 40px -12px #0000001f;scrollbar-width:thin}.ce-enter-next{animation:ce-in-next .28s cubic-bezier(.2,.8,.2,1)}.ce-enter-previous{animation:ce-in-previous .28s cubic-bezier(.2,.8,.2,1)}.ce-chinese{margin:0 0 22px;text-align:center;font-size:clamp(32px,4.4vw,44px);font-weight:650;letter-spacing:3px;line-height:1.35;overflow-wrap:anywhere}.ce-senses{display:flex;flex-direction:column;gap:20px}.ce-card.ce-card-columns{max-width:1000px}.ce-item{display:flex;flex-direction:column;gap:10px;min-width:0}.ce-card-columns .ce-senses{container-type:inline-size;flex-flow:row wrap;justify-content:center;align-items:flex-start;gap:22px 28px}.ce-card-columns .ce-item{flex:0 0 100%}.ce-meaning.repeat{display:none}@container (max-width: 619.98px){.ce-item+.ce-item:not(:has(>.ce-meaning:not(.repeat))){padding-top:20px;border-top:1px solid var(--color-divider)}}@container (min-width: 620px){.ce-card-columns .ce-item{flex-basis:calc((100% - 28px)/2)}.ce-card-columns .ce-meaning.repeat{display:flex}}@container (min-width: 900px){.ce-card-columns .ce-senses:not(.two)>.ce-item{flex-basis:calc((100% - 56px) / 3)}}.ce-meaning{margin:0;font-size:13px;font-weight:600;color:var(--color-text-secondary);display:flex;align-items:center;gap:10px}.ce-meaning:after{content:"";flex:1;height:1px;background:var(--color-divider)}.ce-expression{display:flex;flex-direction:column;gap:10px}.ce-expr-head{display:flex;align-items:center;gap:12px}.ce-expr-main{flex:1;min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.ce-english{font-size:25px;font-weight:700;letter-spacing:-.3px;line-height:1.25;overflow-wrap:anywhere}.ce-expr-delete{flex:none;display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:none;border-radius:10px;background:none;color:var(--color-text-secondary);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,background .15s}.ce-expression:hover .ce-expr-delete,.ce-expr-delete:focus-visible{opacity:1}.ce-expr-delete:hover{color:var(--color-error);background:color-mix(in srgb,var(--color-error) 12%,transparent)}.ce-expr-delete:disabled{cursor:default;opacity:.4}@media(hover:none){.ce-expr-delete{opacity:.7}}.ce-undo-toast{display:flex;align-items:center;gap:6px}.ce-undo-toast button{margin-left:8px;padding:2px 8px;border:none;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font:inherit;font-weight:600;cursor:pointer}.ce-speaker{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px}.ce-example-speaker .speaker-icon{box-sizing:content-box;padding:4px}.ce-usage{margin:0;font-size:14px;line-height:1.65;color:var(--color-text-secondary);overflow-wrap:anywhere}.ce-example{position:relative;padding:10px 44px 10px 14px;border-radius:12px;background:var(--color-container-subtle)}.ce-example .ce-example-speaker{position:absolute;top:9px;right:10px;margin:0}.ce-example .wl-example{overflow-wrap:anywhere}.ce-note{margin-top:20px;padding:10px 14px 12px;border-radius:12px;background:var(--ce-tint)}.ce-note-tag{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--color-primary)}.ce-note p{margin:6px 0 0;font-size:14px;line-height:1.7;color:var(--color-primary)}.ce-corner{position:absolute;z-index:1;top:16px;right:16px;display:flex;align-items:center;gap:6px}.ce-card-body{min-width:0}.ce-learned-tag,.ce-reason-tag{display:inline-flex;align-items:center;gap:3px;padding:3px 9px;border-radius:10px;background:var(--ce-tint);color:var(--color-primary);font-size:12px;font-weight:600}.ce-reason-tag{background:color-mix(in srgb,var(--color-warning) 14%,transparent);color:var(--color-warning)}.ce-corner-btn{display:inline-flex;align-items:center;gap:2px;padding:4px 10px 4px 6px;border:none;border-radius:12px;background:var(--color-container-subtle);color:var(--color-text-secondary);font:inherit;font-size:12px;cursor:pointer}.ce-corner-btn:hover{color:var(--color-primary)}.ce-hide-btn{gap:4px;padding:4px 10px 4px 8px;background:none}.ce-hide-btn:hover{color:var(--color-error);background:color-mix(in srgb,var(--color-error) 12%,transparent)}.ce-practice{display:flex;flex-direction:column;min-height:min(560px,100%);padding-top:22px}.ce-practice-hd{display:flex;align-items:center;gap:10px}.ce-practice-back{display:inline-flex;align-items:center;gap:2px;padding:4px 10px 4px 4px;border:none;border-radius:12px;background:none;color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer}.ce-practice-back:hover{background:var(--color-container-subtle);color:var(--color-text-base)}.ce-practice-title{flex:1;min-width:0;text-align:center;font-size:18px;font-weight:650;letter-spacing:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ce-practice-corner{flex:none;min-width:68px;display:flex}.ce-spell-card .ce-steps i.done{background:var(--color-warning)}.ce-spell-card .ce-steps i.on{background:color-mix(in srgb,var(--color-warning) 45%,transparent)}.ce-spell-card .ce-practice-step{color:var(--color-warning)}.ce-practice-step{flex:none;min-width:68px;text-align:right;font-size:13px;font-weight:600;color:var(--color-primary);font-variant-numeric:tabular-nums}.ce-steps{display:flex;gap:4px;margin:14px 0 0}.ce-steps i{flex:1;height:4px;border-radius:2px;background:var(--color-container-subtle);transition:background .25s}.ce-steps i.done{background:var(--color-primary)}.ce-steps i.on{background:color-mix(in srgb,var(--color-primary) 45%,transparent)}.ce-practice-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px 0 4px;text-align:center;animation:apFade .2s ease both}.ce-practice-target{display:flex;align-items:center;justify-content:center;gap:14px;max-width:100%}.ce-practice-english{font-size:clamp(28px,4vw,38px);font-weight:700;letter-spacing:-.4px;line-height:1.25;overflow-wrap:anywhere}.ce-practice-meaning{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;font-size:15px;line-height:1.6;color:var(--color-text-secondary)}.ce-practice-meaning.big{font-size:20px;font-weight:600;color:var(--color-text-base)}.ce-practice-example{margin:0;max-width:460px;font-size:14px;line-height:1.7;color:var(--color-text-secondary)}.ce-practice-hint{margin:0;font-size:13px;color:var(--color-text-secondary)}.ce-practice-hint button{padding:0;border:none;background:none;color:var(--color-primary);font:inherit;cursor:pointer}.ce-practice-actions{display:flex;justify-content:center;gap:12px;width:100%;max-width:420px;margin-top:10px}.ce-practice-actions .ap-pill{flex:1;gap:8px;height:48px;font-size:16px}.ap-pill kbd,.ce-rating kbd{padding:1px 6px;border-radius:5px;background:color-mix(in srgb,currentColor 12%,transparent);font-family:inherit;font-size:11px;font-weight:600}.ce-record{touch-action:none;-webkit-user-select:none;user-select:none}.ce-record.active{background:color-mix(in srgb,var(--c) 28%,transparent)}.ce-record-area{display:flex;align-items:center;justify-content:center;width:100%;max-width:420px;min-height:96px;margin-top:12px}.ce-recording{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;font-size:14px;font-weight:600}.ce-recording .cancel{color:var(--color-error)}.ce-speak-result{display:flex;flex-direction:column;align-items:center;gap:8px;animation:apFade .2s ease both}.ce-score{display:flex;align-items:baseline;gap:10px}.ce-score b{font-size:44px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.ce-score span{font-size:15px;font-weight:600}.ce-score-words{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 8px;font-size:16px;font-weight:600}.ce-spell-slots{display:flex;justify-content:center;width:100%;margin-top:14px}.ce-slots{gap:6px 20px}.ce-slot-word{display:inline-flex;gap:6px}.ce-slots .qz-slot.sep{width:auto;min-width:8px}.ce-spell-feedback{min-height:30px;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--color-text-secondary)}.ce-practice .ap-keyboard{width:calc(100% + 40px);margin:6px -20px -20px}.ce-kb-submit{width:auto;height:44px;flex:1;font-size:15px}.ce-review-stage{flex-direction:column;gap:14px}.ce-review-stage>.ce-card{flex:0 1 auto;min-height:0}.ce-ratings{flex:none;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;max-width:600px}.ce-rating{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 4px 8px;border:none;border-radius:14px;background:color-mix(in srgb,var(--c) 13%,transparent);color:var(--c);font:inherit;cursor:pointer;transition:background .15s,transform .1s}.ce-rating.suggest{box-shadow:inset 0 0 0 2px var(--c)}.ce-spell-verdict{flex:none;display:flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary)}.ce-spell-verdict b{color:var(--c);font-weight:650}.ce-rating:hover{background:color-mix(in srgb,var(--c) 22%,transparent)}.ce-rating:active{transform:scale(.97)}.ce-rating b{font-size:15px;font-weight:700}.ce-rating small{font-size:12px;opacity:.85}.ce-rating kbd{margin-top:2px}.ce-done{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px 16px;position:relative}.ce-done-emoji{font-size:52px}.ce-done-title{font-size:22px;font-weight:700}.ce-done-stats{display:flex;gap:40px;margin:8px 0 12px}.ce-done-stats>div{display:flex;flex-direction:column;align-items:center;gap:2px}.ce-done-stats b{font-size:30px;font-weight:800}.ce-done-stats small{font-size:13px;color:var(--color-text-secondary)}.ce-done-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;width:100%;max-width:460px}.ce-done-actions .ap-pill{flex:1;min-width:140px;height:48px;gap:6px;font-size:16px}.ce-catalog{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--color-page-bg)}.ce-catalog-hd{flex:none;display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 10px 0 18px}.ce-catalog-title{display:flex;align-items:baseline;gap:8px;font-size:17px;font-weight:650}.ce-catalog-title small{font-size:12px;font-weight:500;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.ce-catalog-search{flex:none;display:flex;align-items:center;gap:8px;margin:0 14px 8px;padding:0 10px;height:38px;border-radius:10px;background:var(--color-container-bg);color:var(--color-text-secondary)}.ce-catalog-search input{flex:1;min-width:0;border:none;background:none;color:var(--color-text-base);font:inherit;font-size:14px;outline:none}.ce-catalog-search button{display:flex;padding:4px;border:none;border-radius:6px;background:none;color:inherit;cursor:pointer}.ce-catalog-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 16px}.ce-catalog-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.ce-catalog-item:hover{background:var(--color-container-bg)}.ce-catalog-item.on{background:var(--ce-tint)}.ce-catalog-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ce-catalog-chinese{font-size:15px;font-weight:600}.ce-catalog-item.on .ce-catalog-chinese{color:var(--color-primary)}.ce-catalog-english{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;color:var(--color-text-secondary)}.ce-catalog-time{flex:none;font-size:12px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.ce-catalog-skel{display:flex;flex-direction:column;gap:8px;padding:12px}.ce-catalog-skel i{height:13px;width:38%;border-radius:7px;background:var(--color-container-subtle);animation:ce-pulse 1.2s ease-in-out infinite}.ce-catalog-skel i+i{width:66%}.ce-catalog-more{display:flex;justify-content:center;padding:12px}.ce-catalog-empty{padding:48px 16px;text-align:center;white-space:pre-line;font-size:13px;line-height:1.8;color:var(--color-text-secondary)}.ce-term-note-body{flex:1;min-height:0;width:auto;margin:0 12px 12px}.ce-catalog-empty button{padding:0;border:none;background:none;color:var(--color-primary);font:inherit;cursor:pointer}.ce-home{display:flex;flex-direction:column}.ce-home-body{position:relative;flex:1;min-height:0;display:flex}.ce-home-body.hp-column{flex-direction:column}@keyframes ce-pulse{50%{opacity:.45}}@keyframes ce-in-next{0%{opacity:0;transform:translate(28px) scale(.985)}to{opacity:1;transform:none}}@keyframes ce-in-previous{0%{opacity:0;transform:translate(-28px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:640px){.ce-stage{align-items:stretch;padding:4px 16px 16px}.ce-learned{display:none}.ce-main>.ap-topbar>.ap-topbar-middle{inset:0 110px}.ce-top-label{display:none}.ce-top-ask{padding:0 9px}.ce-top-actions{gap:8px}.ce-card{padding:26px 20px 22px;border-radius:18px}.ce-chinese{margin-bottom:18px;letter-spacing:2px}.ce-english{font-size:22px}.ce-practice{min-height:100%}.ce-ratings{gap:6px}.ce-rating kbd{display:none}.ce-slots .qz-slot{width:26px;font-size:22px}.ce-speaker{width:40px;height:40px}}@media(max-height:640px){.ce-card{padding-top:24px}.ce-chinese{margin-bottom:14px}}@media(prefers-reduced-motion:reduce){.ce-enter-next,.ce-enter-previous,.ce-practice-body{animation:none}.ce-side{transition:none}}.mn-body{margin:0 auto;padding:72px 20px 32px}.mn-header{display:flex;align-items:center;gap:12px;width:100%;padding:0;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.mn-header:active .mn-avatar{transform:scale(.92)}.mn-header:active .mn-names{opacity:.6}.mn-avatar{flex:none;display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;overflow:hidden;background:var(--color-container-subtle);color:var(--color-icon-inactive);transition:transform .16s ease}.mn-avatar img{width:100%;height:100%;object-fit:cover}.mn-names{min-width:0;display:flex;flex-direction:column;gap:4px;transition:opacity .16s ease}.mn-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:800}.mn-sign{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;color:var(--color-text-secondary)}.mn-vocab{display:flex;align-items:baseline;width:100%;margin-top:40px;padding:16px 14px;border:none;border-radius:14px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;font-size:16px;font-weight:600;cursor:pointer}.mn-vocab:active{background:var(--color-cell-pressed)}.mn-vocab b{font-size:18px;font-weight:600;color:var(--color-primary)}.mn-vocab small{font-size:12px;font-weight:500}.mn-section-title{padding-left:10px;margin-bottom:14px;font-size:15px;font-weight:600;color:var(--color-text-secondary)}.mn-menu{border-radius:14px;overflow:hidden;background:var(--color-container-subtle)}.mn-cell{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:none;background:none;color:var(--color-icon-inactive);font:inherit;text-align:left;cursor:pointer}.mn-cell:first-child{padding-top:16px}.mn-cell:last-child{padding-bottom:16px}.mn-cell:hover{background:var(--color-card-hover)}.mn-cell-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.mn-cell-title{font-size:16px;font-weight:600;color:var(--color-text-base)}.mn-cell-sub{font-size:13px;color:var(--color-text-secondary)}.wg-single{padding:8px 0 24px}.wg-pad{padding:0 16px}.wg-wide{flex:1;min-height:0;display:flex}.wg-side,.wg-main{min-height:0}.wg-side{flex:none}.wg-main{flex:1;min-width:0}.wg-empty{padding-top:120px;text-align:center;color:var(--color-text-secondary);font-size:14px}.wg-hint{margin-top:16px;text-align:center;font-size:12px;color:var(--color-text-unselected)}.wg-section-hd{display:flex;align-items:center;padding:0 4px;margin-bottom:12px;font-size:16px;font-weight:600}.wg-section-hd small{font-size:13px;font-weight:400;color:var(--color-text-secondary)}.wg-level-card{position:relative;aspect-ratio:1.8;border-radius:20px;overflow:hidden;color:#fff;background:linear-gradient(135deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 72%,#0b4d2c))}.wg-watermark{position:absolute;right:-6px;top:-22px;font-size:120px;line-height:1;font-weight:800;color:#ffffff1f;pointer-events:none}.wg-level-card-body{position:relative;height:100%;display:flex;flex-direction:column;padding:18px 20px 20px}.wg-level-title{display:flex;align-items:baseline;gap:10px}.wg-level-title b{font-size:34px;line-height:1.05;font-weight:800}.wg-level-title span{font-size:18px;font-weight:600}.wg-level-summary{margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.45;color:#ffffffd9}.wg-level-foot{display:flex;align-items:center;gap:12px}.wg-level-count{flex:1}.wg-level-count b{font-size:22px;line-height:1.1;font-weight:700}.wg-level-count span{font-size:13px;color:#fffc}.wg-level-btn{display:inline-flex;align-items:center;gap:2px;height:40px;padding:0 16px;border:none;border-radius:20px;background:#fff;color:var(--color-primary);font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:transform .12s ease}.wg-level-btn:active{transform:scale(.96)}.wg-level-legend{display:flex;gap:14px;margin-top:8px}.wg-strip{display:flex;gap:10px;overflow-x:auto;padding:0 16px;scrollbar-width:none}.wg-strip::-webkit-scrollbar{display:none}.wg-level-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wg-level-item{flex:none;display:flex;flex-direction:column;min-height:98px;padding:12px;border:none;border-radius:16px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.wg-level-item-hd{display:flex;align-items:baseline;gap:6px}.wg-level-item-hd b{font-size:18px;line-height:1.2;font-weight:700}.wg-level-item-tag{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;color:var(--color-text-secondary)}.wg-level-item.dim .wg-level-item-hd b{color:var(--color-text-secondary)}.wg-level-item.dim .wg-level-item-tag,.wg-level-item.dim .wg-level-item-sub{color:var(--color-text-unselected)}.wg-level-item-sub{margin-top:6px;font-size:12px;line-height:1.35;color:var(--color-text-secondary)}.wg-ok{color:var(--color-primary);align-self:center}.wg-lock{color:var(--color-text-unselected);align-self:center}.wg-learning{font-size:11px;font-weight:600;color:var(--color-primary)}.wg-mini-bar{height:4px;border-radius:2px;background:var(--color-container-subtle);overflow:hidden}.wg-mini-bar i{display:block;height:100%;background:var(--color-primary)}.wg-timeline-cols{display:flex;gap:16px;align-items:flex-start}.wg-timeline-cols>.wg-timeline{flex:1;min-width:0}.wg-timeline{padding:6px 0;border-radius:20px;background:var(--color-container-bg)}.wg-stage{display:flex;align-items:stretch;gap:14px;padding:0 18px;cursor:pointer}.wg-stage:hover .wg-stage-title:not(.dim){color:var(--color-primary)}.wg-rail{flex:none;width:18px;display:flex;flex-direction:column;align-items:center}.wg-line{flex:1;width:1.5px;background:var(--color-divider)}.wg-line.active{background:var(--color-primary)}.wg-line.hidden{background:transparent}.wg-node{flex:none;display:flex;align-items:center;justify-content:center}.wg-node.done{width:16px;height:16px;border-radius:50%;background:var(--color-primary);color:#fff}.wg-node.locked{padding:3px 0;color:var(--color-text-unselected)}.wg-node.current{width:16px;height:16px;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 20%,transparent)}.wg-node.current i{width:8px;height:8px;border-radius:50%;background:var(--color-primary)}.wg-node.open{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--color-primary)}.wg-stage-info{flex:1;min-width:0;padding:14px 0;display:flex;flex-direction:column;justify-content:center}.wg-stage-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;transition:color .15s ease}.wg-stage-title.dim{color:var(--color-text-secondary)}.wg-stage-sub{margin-top:4px;font-size:12px;color:var(--color-text-secondary)}.wg-stage-sub.dim{color:var(--color-text-unselected)}.wg-stage-progress{margin-top:6px;display:inline-flex;flex-direction:column;gap:6px;align-self:flex-start}.wg-stage-legends{display:inline-flex;gap:12px}.wg-stage-trailing{flex:none;display:flex;align-items:center;padding-left:12px}.wg-arrow{color:var(--color-text-unselected)}.wg-pill{padding:4px 10px;border:1px solid transparent;border-radius:12px;background:none;font:inherit;font-size:12px;font-weight:600;color:var(--color-primary);white-space:nowrap}.wg-pill.fill{background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.wg-pill.outline{border-color:color-mix(in srgb,var(--color-primary) 50%,transparent);cursor:pointer}.wg-pill.outline:hover{background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.ss-page .ap-confetti{z-index:5}.ss-topbar{flex:none;display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 10px}.ss-wrap{display:flex;flex-direction:column;gap:12px;max-width:600px;margin:0 auto;padding:0 16px 24px}.ss-hero{display:flex;flex-direction:column;align-items:center;padding:6px 0 8px;text-align:center}.ss-hero h2{margin:14px 0 0;font-size:23px;font-weight:800}.ss-hero p{margin:6px 0 0;font-size:13px;color:var(--color-text-secondary)}.ss-badge{display:flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);animation:ssPop .4s cubic-bezier(.34,1.56,.64,1) .15s both}@keyframes ssPop{0%{opacity:0;transform:scale(.6)}}.ss-ring-text{font-family:Inter,MiSans,sans-serif;font-size:15px;font-weight:700}.ss-ring-pct{font-family:Inter,MiSans,sans-serif;font-size:12px;font-weight:700}.ss-stats{display:flex;align-items:center;padding:16px 0;border-radius:14px}.ss-stats>span{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.ss-stats>i{width:.5px;height:32px;background:var(--color-divider)}.ss-stats b{display:inline-flex;align-items:center;gap:2px;font-family:Inter,MiSans,sans-serif;font-size:22px;line-height:1.15;font-weight:700}.ss-stats b.ss-xp{color:var(--color-primary)}.ss-stats b.ss-flame{color:#ff8a3d}.ss-stats small{font-size:12px;color:var(--color-text-secondary)}.ss-card{padding:14px 16px 16px;border-radius:14px}.ss-goal{display:flex;align-items:center;gap:14px}.ss-goal>span:last-child{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ss-goal b{font-size:15px;font-weight:600}.ss-goal b.ok{color:var(--color-primary)}.ss-goal small{font-size:13px;line-height:1.35;color:var(--color-text-secondary)}.ss-level{margin-top:14px}.ss-level>div:first-child{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px;color:var(--color-text-secondary)}.ss-bar{height:5px;border-radius:3px;overflow:hidden;background:var(--color-container-subtle)}.ss-bar i{display:block;height:100%;border-radius:3px;background:var(--color-primary);transition:width .7s cubic-bezier(.22,1,.36,1)}.ss-review{display:flex;align-items:center;gap:12px;padding:14px 16px;border:none;border-radius:14px;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.ss-review:hover{background:color-mix(in srgb,var(--color-container-bg) 94%,var(--color-text-base))}.ss-review-icon{flex:none;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:color-mix(in srgb,var(--color-review) 14%,transparent);color:var(--color-review)}.ss-review-text{flex:1;min-width:0;font-size:14px}.ss-review-go{flex:none;display:inline-flex;align-items:center;font-size:13px;color:var(--color-review)}.ss-card-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ss-card-hd b{font-size:16px;font-weight:600}.ss-card-hd span{font-size:13px;color:var(--color-text-secondary)}.ss-words{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.ss-word{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:var(--color-container-subtle)}.ss-word-hd{display:flex;align-items:center;gap:6px;min-width:0}.ss-word-hd b{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600}.ss-word small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.ss-word.dim b{color:var(--color-text-secondary)}.ss-word.dim small{color:var(--color-text-unselected)}.ss-tag{flex:none;padding:1px 5px;border-radius:4px;background:var(--color-container-subtle);color:var(--color-text-secondary);font-size:10px;font-style:normal}.ss-tag.ok{background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.ap-bottom-area.ss-bottom{background:var(--color-page-bg);padding:8px 16px 10px}.ss-bottom-inner{max-width:600px;margin:0 auto}.ss-secondary{display:flex;align-items:center;justify-content:center;margin-top:4px}.ss-secondary>*+*{border-left:.5px solid var(--color-divider)}.ss-text-btn{padding:8px 18px;border:none;background:none;color:var(--color-text-secondary);font:inherit;font-size:14px;line-height:14px;cursor:pointer}.ss-text-btn:hover{color:var(--color-text-base)}@media(prefers-reduced-motion:reduce){.ss-badge{animation:none}.ss-bar i{transition:none}}.pr-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.pr-content{max-width:720px;margin:0 auto;padding:24px 16px;animation:apFade .2s ease both}.pr-stack{display:flex;flex-direction:column;gap:16px}.pr-mask{position:absolute;inset:0;background:#0006;animation:apFade .2s ease both}.pr-scoring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:20px 24px;border-radius:12px;background:var(--color-container-bg)}.pr-recording{position:absolute;left:50%;bottom:16px;width:min(688px,calc(100% - 32px));transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px 16px 16px;border-radius:12px;background:var(--color-container-bg);animation:apUp .2s ease both}.pr-recording-title{font-size:15px;font-weight:600}.pr-recording-title.cancel{color:var(--color-error)}.pr-recording-hint{font-size:12px;color:var(--color-text-secondary)}.pr-record{touch-action:none;-webkit-user-select:none;user-select:none}.pr-record.active{background:color-mix(in srgb,var(--c) 25%,transparent)}.pr-kb-footer{max-width:640px;margin:0 auto;padding:12px 18px}.pr-phonetic{margin-top:20px;text-align:center;font-size:36px;line-height:1.2;color:var(--color-text-secondary)}.pr-gauge{position:relative;width:210px;height:150px;margin:0 auto}.pr-gauge svg{display:block}.pr-gauge-value{position:absolute;left:0;right:0;top:76px;text-align:center;font-family:Inter,MiSans,sans-serif;font-size:48px;line-height:1.2;font-weight:700}.pr-score-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 32px;padding-bottom:4px}.pr-score-item{font-size:14px}.pr-score-item b{font-family:Inter,MiSans,sans-serif;font-size:14px;font-weight:600}.pr-bar{height:4px;margin-top:8px;border-radius:2px;background:var(--color-divider);overflow:hidden}.pr-bar i{display:block;height:100%;transition:width .6s ease-out}.pr-syllables{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:14px}.pr-syllable{padding:3px 10px;border-radius:4px;background:color-mix(in srgb,var(--c) 10%,transparent);font-size:18px;line-height:1.3;color:var(--c)}.pr-tip{display:flex;align-items:flex-start;gap:6px;margin-top:14px;font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.pr-tip svg{flex:none;margin-top:1px}.pr-letters{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px;cursor:text}.pr-letter{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1.25;border-radius:6px;background:var(--color-container-subtle);font-family:Inter,MiSans,sans-serif;font-size:24px}.pr-letter.cursor{background:none;border:1px solid var(--color-text-unselected)}.pr-letter.cursor i{width:1.5px;height:60%;background:var(--color-text-secondary)}.pr-letter.cursor.active i{animation:prBlink 1s steps(1) infinite}@keyframes prBlink{50%{opacity:0}}.pr-def-input{width:100%;margin-top:12px;padding:0;border:none;background:none;resize:none;color:var(--color-text-base);font:inherit;font-size:16px;line-height:1.6;outline:none}.pr-def-input::placeholder{color:var(--color-text-unselected);font-size:14px}.pr-def-result{margin-top:12px}.pr-def-answer{font-size:16px;line-height:1.6}.pr-def-answer.ok{color:var(--color-primary)}.pr-def-answer.bad{color:var(--color-error);text-decoration:line-through}.pr-defs{margin-top:12px;display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.6;color:var(--color-text-secondary)}.pr-defs .matched{color:var(--color-primary)}.pr-defs b{font-weight:500}.pr-sentence{transition:opacity .25s ease,padding .25s ease}.pr-sentence.dim{opacity:.45}.pr-sentence-text{display:flex;align-items:baseline;gap:6px;font-size:16px;line-height:1.6}.pr-sentence-text>span:first-child{flex:1}.pr-sentence-score{font-family:Inter,MiSans,sans-serif;font-size:16px;font-weight:700}.pr-hl{color:var(--color-primary);font-weight:600}.pr-weak{color:var(--c);text-decoration:underline dashed;text-underline-offset:4px}.pr-dots-text{margin-right:8px;font-size:12px;color:var(--color-text-secondary)}.pr-dots{display:flex;gap:4px}.pr-dots i{width:6px;height:6px;border-radius:3px;background:var(--color-divider);transition:all .2s ease}.pr-dots i.done{background:color-mix(in srgb,var(--color-primary) 45%,transparent)}.pr-dots i.on{width:14px;background:var(--color-primary)}.pr-sentence-result{margin-top:14px;padding-top:12px;border-top:1px solid var(--color-divider);animation:apFade .2s ease both}.pr-sentence-overall{font-family:Inter,MiSans,sans-serif;font-size:34px;line-height:1;font-weight:700}.pr-stats{display:flex;justify-content:space-between;margin-top:12px}.pr-stats span{display:flex;flex-direction:column;align-items:center;gap:2px}.pr-stats b{font-family:Inter,MiSans,sans-serif;font-size:16px;font-weight:600}.pr-stats small{font-size:12px;color:var(--color-text-secondary)}.pr-pool{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.pr-pool-divider{height:1px;margin:18px 0 4px;background:var(--color-divider)}.pr-chip{padding:10px 14px;border:1.5px solid transparent;border-radius:10px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:15px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.pr-chip:hover{border-color:var(--color-divider)}.pr-chip.sel{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.pr-chip.wrong{border-color:var(--color-error);background:color-mix(in srgb,var(--color-error) 10%,transparent);color:var(--color-error);animation:prShake .4s ease}.pr-chip.dissolve{pointer-events:none;animation:prDissolve .65s ease forwards;border-color:var(--color-primary);color:var(--color-primary)}@keyframes prShake{20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes prDissolve{0%{opacity:1;filter:blur(0);transform:none;-webkit-mask-image:linear-gradient(225deg,transparent -20%,#000 0%)}60%{opacity:.6;filter:blur(1.5px);transform:translate(6px,-6px) scale(1.02);-webkit-mask-image:linear-gradient(225deg,transparent 60%,#000 100%)}to{opacity:0;filter:blur(4px);transform:translate(14px,-14px) scale(1.04);-webkit-mask-image:linear-gradient(225deg,transparent 100%,#000 120%)}}.pr-matching-done{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px;font-size:14px;font-weight:600;color:var(--color-primary);animation:apFade .3s ease both}.rv-top-actions{display:flex;align-items:center;gap:8px}.rv-known{padding:3px 8px;border:none;border-radius:4px;background:color-mix(in srgb,var(--color-warning) 12%,transparent);color:var(--color-warning);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.rv-undo{display:flex;padding:4px;border:none;background:none;color:var(--color-icon-active);cursor:pointer}.rv-task{flex:1;min-height:0;display:flex;flex-direction:column;animation:qzIn .42s cubic-bezier(.22,1,.36,1) both}.rv-scroll{flex:1;min-height:0;overflow-y:auto;padding:20px 24px 16px;display:flex;flex-direction:column}.rv-fade{flex:1;min-height:0;display:flex;flex-direction:column;animation:apFade .3s ease both}.rv-guide{margin-top:18px;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.rv-guide.center{text-align:center;margin-top:12px}.rv-small{font-size:13px}.rv-skel{display:block;height:22px;margin-top:10px;border-radius:8px;background:var(--color-container-subtle)}.rv-hint-wrap{display:flex;justify-content:center;margin-top:auto;padding-top:16px}.rv-chips{display:flex;gap:6px;margin-bottom:10px}.rv-chip{padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--c, var(--color-text-secondary)) 12%,transparent);font-size:12px;color:var(--c, var(--color-text-secondary))}.rv-word-header{display:flex;align-items:center;gap:12px}.rv-word{line-height:1.15;font-weight:700;word-break:break-word}.rv-phonetic{margin-top:4px;font-size:18px;color:var(--color-text-secondary)}.rv-star{display:flex;padding:8px;border:none;background:none;color:var(--color-text-unselected);cursor:pointer}.rv-star.on{color:var(--color-review)}.rv-speaker{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px}.rv-big-speaker{display:flex;align-items:center;justify-content:center;width:92px;height:92px}.rv-audio-hint{margin-top:12px;text-align:center;font-size:18px;font-weight:600;animation:apFade .22s ease both}.rv-audio-hint b{font-size:13px;color:var(--color-text-secondary)}.rv-example{margin-top:22px;padding:14px;border-radius:12px;background:var(--color-container-bg)}.rv-example-en{font-size:16px;line-height:1.5}.rv-example-en b{font-weight:700}.rv-example-en b.hl{color:var(--color-primary)}.rv-example-cn{margin-top:6px;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.rv-round-wrap{display:inline-flex;flex-direction:column;align-items:center;gap:6px}.rv-round{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:none;border-radius:50%;background:var(--color-container-subtle);color:var(--color-icon-active);cursor:pointer}.rv-round:disabled{color:var(--color-text-unselected);cursor:default}.rv-round-label{font-size:13px;color:var(--color-text-secondary)}.rv-options{display:flex;flex-direction:column;gap:10px;margin-top:24px}.rv-options.compact{gap:8px;margin-top:16px}.rv-option{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:1.5px solid transparent;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.rv-option.compact{padding:11px 14px}.rv-option:not(:disabled):hover{border-color:var(--color-divider)}.rv-option:disabled{cursor:default}.rv-option.selected{border-color:var(--color-primary)}.rv-option.right{background:color-mix(in srgb,var(--color-primary) 16%,var(--color-container-bg));border-color:var(--color-primary)}.rv-option.missed{border-color:var(--color-primary);color:var(--color-primary)}.rv-option.wrong{background:color-mix(in srgb,var(--color-error) 14%,var(--color-container-bg));border-color:var(--color-error);color:var(--color-error)}.rv-option.dim{color:var(--color-text-secondary)}.rv-option-key{flex:none;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:var(--color-container-subtle);font-size:12px;font-weight:700;color:var(--color-text-secondary)}.rv-option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:16px;line-height:1.4}.rv-option.compact .rv-option-text{font-size:15px}.rv-option-text small{font-size:12px;color:var(--color-text-secondary)}.rv-option.right .rv-option-text span{font-weight:600}.rv-option-tag{flex:none;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--c) 14%,transparent);font-size:11px;color:var(--c)}.rv-check{flex:none;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid var(--color-text-unselected);border-radius:6px;color:#fff}.rv-check.on{border-color:var(--color-primary);background:var(--color-primary)}.rv-spelling{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;padding:16px 20px 12px;transition:opacity .3s ease}.rv-spelling .qz-prompt{align-items:center}.rv-reveal{display:flex;flex-direction:column}.rv-senses{display:flex;flex-direction:column;gap:8px;margin-top:18px}.rv-sense{display:flex;gap:8px;font-size:15px;line-height:1.5;color:var(--color-text-secondary)}.rv-sense.current{color:var(--color-text-base);font-weight:600}.rv-sense-pos{flex:none;padding:1px 6px;border-radius:4px;background:var(--color-container-subtle);font-size:12px;font-weight:400;color:var(--color-text-secondary);align-self:flex-start;margin-top:2px}.rv-verdict{display:flex;align-items:flex-start;gap:8px;margin-top:18px;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.rv-verdict i{flex:none;width:8px;height:8px;margin-top:6px;border-radius:50%}.rv-diff{margin-top:20px;padding:14px;border-radius:12px;background:var(--color-container-bg)}.rv-diff-title{font-size:13px;font-weight:600;color:var(--color-error)}.rv-diff-line{display:flex;align-items:baseline;gap:12px;margin-top:10px}.rv-diff-line small{flex:none;width:56px;font-size:12px;color:var(--color-text-secondary)}.rv-diff-line>span{font-family:Inter,MiSans,sans-serif;font-size:22px;letter-spacing:1px}.rv-diff-line .bad{color:var(--color-error);text-decoration:line-through}.rv-diff-line .good{color:var(--color-primary);font-weight:700}.rv-actions{flex:none;display:flex;justify-content:center;gap:12px;padding:12px 24px 24px}.rv-action{--ac: var(--color-text-base);flex:1;max-width:280px;height:52px;border:none;border-radius:14px;background:color-mix(in srgb,var(--ac) 12%,transparent);color:var(--ac);font:inherit;font-size:16px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s ease}.rv-action:hover:not(:disabled){background:color-mix(in srgb,var(--ac) 20%,transparent)}.rv-action:active:not(:disabled){transform:scale(.97)}.rv-action:disabled{--ac: var(--color-text-unselected);cursor:default}.rv-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px}.rv-clock{margin-bottom:12px}.rv-empty-title{font-size:17px;font-weight:600}.rv-empty-title b{font-family:Inter,MiSans,sans-serif;color:var(--color-warning)}.rv-empty-sub{font-size:13px;color:var(--color-text-secondary)}.rv-empty-back{flex:none!important;width:200px;margin-top:20px}.rv-complete{flex:1;min-height:0;display:flex;flex-direction:column}.rv-complete-body{padding:32px 20px 20px;display:flex;flex-direction:column;align-items:stretch}.rv-results{margin-top:28px;padding:14px;border-radius:12px;background:var(--color-container-bg)}.rv-result{display:flex;align-items:center;gap:12px;padding:10px 0;font-size:14px}.rv-result+.rv-result{border-top:1px solid var(--color-divider)}.rv-result b{flex:none;min-width:90px;font-size:15px}.rv-result .ap-grow{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-secondary)}.rv-result-tag{flex:none;padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--c) 12%,transparent);font-size:12px;color:var(--c)}.rv-complete-foot{flex:none;padding:12px 20px 20px;text-align:center}.rv-complete-label{font-size:13px;color:var(--color-text-secondary)}.rv-continue{background:var(--color-warning)!important;display:flex;align-items:center;justify-content:center}.gl-ellipsis{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.gl-flow-btn{display:flex;padding:8px;border:none;border-radius:10px;background:none;color:var(--color-text-base);cursor:pointer}.gl-flow-btn:hover{background:var(--color-container-subtle)}.gl-chapter-progress{display:flex;align-items:center;gap:8px}.gl-bar{flex:1;height:4px;border-radius:2px;overflow:hidden;background:var(--color-container-subtle)}.gl-bar i{display:block;height:100%;background:var(--color-primary);transition:width .4s ease}.gl-chapter-progress small{font-size:11px;font-variant-numeric:tabular-nums}.gl-chapter-item{flex:none;width:148px;height:115px;display:flex;flex-direction:column;padding:12px;border:none;border-radius:16px;background:var(--color-container-bg);color:var(--color-text-secondary);font:inherit;text-align:left;cursor:pointer;transition:color .2s ease}.gl-chapter-item.on{color:var(--color-text-base)}.gl-chapter-item b{font-size:18px;line-height:1.2;font-weight:700}.gl-chapter-title{margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.35;font-weight:600}.gl-chapter-list{display:flex;flex-direction:column;gap:10px}.gl-chapter-row{display:flex;align-items:center;gap:10px;min-height:62px;padding:0 14px;border:none;border-radius:14px;background:var(--color-container-bg);color:var(--color-text-secondary);font:inherit;text-align:left;cursor:pointer;transition:color .2s ease}.gl-chapter-row.on{color:var(--color-text-base)}.gl-chapter-row>b{flex:none;width:44px;font-size:16px;font-weight:700}.gl-chapter-row-main{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:14px;font-weight:600}.gl-timeline{display:flex;flex-direction:column}.gl-point{display:flex;align-items:stretch;gap:14px;padding:0 18px;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.gl-rail{flex:none;width:18px;display:flex;flex-direction:column;align-items:center}.gl-line{flex:1;width:1.5px;background:var(--color-divider)}.gl-line.active{background:var(--color-primary)}.gl-line.hidden{background:transparent}.gl-ring{flex:none}.gl-point-title{flex:1;margin:3px 0;padding:11px 12px 11px 14px;border-radius:12px;background:var(--color-container-bg);font-size:14px;line-height:1.4;transition:background-color .2s ease}.gl-point:hover .gl-point-title{background:color-mix(in srgb,var(--color-primary) 6%,var(--color-container-bg))}.gl-point.on .gl-point-title{background:color-mix(in srgb,var(--color-primary) 14%,transparent);font-weight:600}.gl-preview{flex:none;min-height:0;display:flex;flex-direction:column}.gl-preview-scroll{flex:1;padding-bottom:16px}.gl-cover{position:relative;display:block;width:100%;aspect-ratio:16 / 9;overflow:hidden;padding:0;border:none;border-radius:16px;background:var(--color-container-subtle);cursor:pointer}.gl-cover img{width:100%;height:100%;object-fit:cover;display:block}.gl-cover-play{position:absolute;top:50%;left:50%;display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:#00000073;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gl-cover-foot{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:18px 12px 10px;background:linear-gradient(transparent,#0000008c);color:#fff;font-size:12px}.gl-cover-bar{flex:1;height:3px;border-radius:2px;background:#ffffff4d;overflow:hidden}.gl-cover-bar i{display:block;height:100%;background:var(--color-primary)}.gl-preview-title{margin-top:16px;padding:0 4px}.gl-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.gl-tags span{padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);font-size:12px;color:var(--color-primary)}.gl-preview-title h3{margin:0;font-size:18px;line-height:1.4;font-weight:700}.gl-preview-title small{display:block;margin-top:6px;font-size:12px;color:var(--color-text-secondary)}.gl-stats{display:flex;gap:10px;margin-top:16px}.gl-stats>div{flex:1;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;background:var(--color-container-bg)}.gl-stats small{font-size:12px;color:var(--color-text-secondary)}.gl-stats b{font-size:16px;color:var(--color-text-unselected)}.gl-stats b.on{color:var(--color-primary)}.gl-sec-title{margin:20px 4px 8px;font-size:14px;font-weight:600}.gl-card{padding:12px 14px;border-radius:12px;background:var(--color-container-bg);font-size:14px;line-height:1.6}.gl-card.core{background:color-mix(in srgb,var(--color-primary) 10%,var(--color-container-bg))}.gl-goal{display:flex;gap:8px;align-items:baseline}.gl-goal+.gl-goal{margin-top:6px}.gl-goal svg{flex:none;color:var(--color-primary);transform:translateY(2px)}.gl-related{padding:4px 6px}.gl-related button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 8px;border:none;background:none;color:var(--color-text-base);font:inherit;font-size:14px;text-align:left;cursor:pointer}.gl-related button+button{border-top:1px solid var(--color-divider)}.gl-related button svg{color:var(--color-text-unselected)}.gl-code{flex:none;padding:1px 6px;border-radius:4px;background:var(--color-container-subtle);font-size:12px;color:var(--color-text-secondary)}.gl-empty-lecture,.gl-preview-error{margin-top:24px;text-align:center;font-size:13px;color:var(--color-text-secondary)}.gl-preview-error{display:flex;flex-direction:column;align-items:center;gap:10px}.gl-preview-foot{flex:none;padding:4px 0 20px}.gl-open{width:100%}.gp-page{--gp-sub: #F0F0F0;--gp-base: #FAFAFA;--gp-text: #000;--gp-grey: rgba(0, 0, 0, .2);--gp-btn: rgba(0, 0, 0, .03);--gp-btn-hover: rgba(0, 0, 0, .1);--gp-black: #000;--gp-track: rgba(0, 0, 0, .06);background:var(--gp-sub)}[data-theme=dark] .gp-page{--gp-sub: #191919;--gp-base: #262626;--gp-text: #fff;--gp-grey: rgba(255, 255, 255, .2);--gp-btn: rgba(255, 255, 255, .1);--gp-btn-hover: rgba(255, 255, 255, .2);--gp-black: rgba(255, 255, 255, .2);--gp-track: rgba(255, 255, 255, .1)}.gp-single{position:relative;flex:1;min-height:0;overflow:hidden}.gp-single-player{position:absolute;left:0;right:0;top:0;height:100%;z-index:2;display:flex;transition:height .3s ease-in-out}.gp-single.open .gp-single-player{height:53%}.gp-single-player .gp-panel{flex:1;transition:border-radius .3s ease,background-color .3s ease}.gp-single.open .gp-single-player .gp-panel{border-radius:0 0 30px 30px;background:var(--gp-base);box-shadow:0 6px 20px #0000000f}.gp-single-lecture{position:absolute;left:0;right:0;bottom:0;height:calc(47% + 30px);padding-top:30px;display:flex}.gp-wide{flex:1;min-height:0;display:flex;justify-content:flex-start}.gp-wide-player{flex:none;min-width:360px;display:flex;transition:transform .3s ease}.gp-wide-player .gp-panel{flex:1;max-width:560px;margin:0 auto}.gp-wide-lecture{flex:1;min-width:0;display:flex;transition:opacity .25s ease,transform .3s ease}.gp-wide.hidden{justify-content:center}.gp-wide.hidden .gp-wide-lecture{display:none}.gp-lecture-scroll{flex:1;min-height:0;overflow-y:auto;padding:12px 16px 32px}.gp-lecture-scroll .gm-lecture{max-width:760px;margin:0 auto}.gp-lecture-head{max-width:760px;margin:0 auto 8px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--color-text-secondary)}.gp-status{padding:2px 8px;border-radius:4px;background:var(--color-container-subtle)}.gp-status.learned,.gp-status.tested{background:var(--color-primary);color:#fff}.gp-lecture-empty{padding:40px 0;text-align:center;font-size:14px;color:var(--color-text-secondary)}.gp-prev-next{max-width:760px;margin:24px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.gp-prev-next button{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:none;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.gp-prev-next button.next{text-align:right;align-items:flex-end}.gp-prev-next small{display:inline-flex;align-items:center;gap:2px;font-size:12px;color:var(--color-text-secondary)}.gp-prev-next span{font-size:14px;font-weight:600;line-height:1.4}.gp-panel{min-height:0;display:flex;flex-direction:column;background:var(--gp-sub);color:var(--gp-text);overflow:hidden}.gp-nav{flex:none;height:54px;display:flex;align-items:center;gap:8px;padding:0 8px}.gp-nav-title{flex:1;min-width:0;text-align:center;font-size:17px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:opacity .2s ease}.gp-nav-title.hidden{opacity:0}.gp-circle{flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--gp-text);cursor:pointer;transition:transform .12s ease,background-color .15s ease}.gp-circle svg{width:22px;height:22px}.gp-circle:hover:not(:disabled){background:var(--gp-btn)}.gp-circle:active:not(:disabled){transform:scale(.8)}.gp-circle:disabled{opacity:.4;cursor:default}.gp-circle.grey{color:var(--gp-grey)}.gp-circle.filled{width:34px;height:34px;background:var(--gp-btn);color:var(--gp-grey)}.gp-circle.filled:hover{background:var(--gp-btn-hover)}.gp-circle.filled.on{background:var(--gp-black);color:#fff}.gp-circle.light{color:#fff}.gp-circle.light:hover{background:#ffffff26}.gp-video-area{flex:1;min-height:60px;container-type:size;display:flex;align-items:center;justify-content:center;padding:8px 20px 16px}.gp-video{position:relative;width:min(100cqw,100cqh * 16 / 9);aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;background:#000;transition:width .3s ease-in-out}.gp-video video{width:100%;height:100%;display:block;object-fit:contain}.gp-video.fullscreen{width:100%;height:100%;border-radius:0;aspect-ratio:auto}.gp-gesture{position:absolute;inset:0;cursor:pointer;touch-action:pan-y}.gp-cover-play{position:absolute;top:50%;left:50%;display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:-32px 0 0 -32px;border:none;border-radius:50%;background:#00000073;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer}.gp-video-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.gp-boost{position:absolute;top:10px;left:50%;transform:translate(-50%);padding:4px 12px;border-radius:14px;background:#0000008c;color:#fff;font-size:12px;pointer-events:none}.gp-subtitle{position:absolute;left:6%;right:6%;bottom:2%;display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none;text-align:center;font-size:clamp(12px,2.6cqw,22px);line-height:1.35;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.8)}.gp-video.fullscreen .gp-subtitle{bottom:80px;font-size:26px}.gp-no-video{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--gp-base);color:var(--color-text-secondary);font-size:13px}.gp-fs-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(transparent,#0009);color:#fff;font-size:12px;font-variant-numeric:tabular-nums}.gp-fs-bar .gp-track{flex:1}.gp-fs-bar .gp-track-bg{background:#ffffff40}.gp-progress{flex:none;padding:0 20px;transition:opacity .3s ease}.gp-panel.compact .gp-progress{display:none}.gp-track{position:relative;height:24px;display:flex;align-items:center;cursor:pointer;touch-action:none}.gp-track.disabled{cursor:default}.gp-track-bg{flex:1;height:8px;border-radius:4px;overflow:hidden;background:var(--gp-track);transition:height .15s ease}.gp-track.active .gp-track-bg{height:12px;border-radius:6px}.gp-track-bg i{display:block;height:100%;background:#fff}.gp-thumb{position:absolute;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000002e;pointer-events:none}.gp-track.disabled .gp-thumb{display:none}.gp-times{display:flex;justify-content:space-between;margin-top:2px;font-size:11px;color:var(--gp-grey);font-variant-numeric:tabular-nums}.gp-controls{flex:none;display:flex;align-items:center;justify-content:space-between;padding:18px 20px}.gp-controls .gp-circle{width:34px;height:34px}.gp-play{flex:none;display:flex;align-items:center;justify-content:center;width:80px;height:80px;padding:0;border:none;border-radius:50%;background:none;color:var(--gp-text);cursor:pointer;transition:width .3s ease-in-out,height .3s ease-in-out,transform .12s ease}.gp-play svg{width:60%;height:60%}.gp-play:active{transform:scale(.9)}.gp-play:disabled{opacity:.4;cursor:default}.gp-panel.compact .gp-play{width:34px;height:34px}.gp-panel.compact .gp-controls{padding:4px 20px 10px}.gp-bottom{flex:none;display:flex;align-items:center;gap:15px;padding:0 20px 20px}.gp-pill{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:34px;min-width:61px;padding:0 14px;border:none;border-radius:17px;background:var(--gp-btn);color:var(--gp-grey);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.gp-pill svg{width:20px;height:20px}.gp-pill:hover{background:var(--gp-btn-hover)}.gp-pill span{color:var(--gp-text);opacity:.6}.gp-clips{display:flex;flex-direction:column;min-height:0;height:100%;padding:4px 16px 16px}.gp-clips-hd{display:flex;align-items:center;gap:10px;padding:8px 4px 14px;font-size:16px}.gp-clip{display:flex;gap:12px;padding:10px 4px}.gp-clip+.gp-clip{border-top:1px solid var(--color-divider)}.gp-clip-cover{flex:none;width:112px;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:var(--color-container-subtle)}.gp-clip-cover img{width:100%;height:100%;object-fit:cover}.gp-clip .ap-grow{display:flex;flex-direction:column;gap:4px}.gp-clip b{font-size:14px;line-height:1.4}.gp-clip small{font-size:12px;color:var(--color-text-secondary)}.gp-clip-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--color-text-secondary)}.gp-clip-meta em{font-style:normal;padding:1px 6px;border-radius:4px;background:var(--color-container-subtle)}.gp-clip-meta em.on{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.fv-mask{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.fv-tabs{flex:none;display:flex;gap:8px;width:100%;margin:0 auto;padding:4px 16px 12px;box-sizing:border-box;overflow-x:auto;scrollbar-width:none}.fv-tab{flex:none;display:inline-flex;align-items:center;gap:4px;height:34px;padding:0 16px;border:none;border-radius:17px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,color .2s ease}.fv-tab small{font-size:12px;font-weight:500;opacity:.7}.fv-tab.on{background:var(--color-primary);color:#fff}.fv-body{margin:0 auto;padding:0 16px 32px;animation:apFade .2s ease both}.fv-group+.fv-group{margin-top:20px}.fv-day{padding:4px 4px 10px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.fv-cards{display:grid;gap:10px;align-items:start}.fv-card{display:flex;flex-direction:column;gap:8px;padding:14px 14px 12px;border-radius:14px;background:var(--color-container-bg);cursor:pointer;transition:transform .12s ease}.fv-card:active{transform:scale(.99)}.fv-card:not(.openable):has(.fv-sentence){cursor:default}.fv-card-head{display:flex;align-items:center;gap:8px}.fv-word{font-size:20px;font-weight:700;word-break:break-word}.fv-star{flex:none;display:flex;padding:4px;border:none;background:none;color:var(--color-review);cursor:pointer}.fv-meaning{font-size:14px;line-height:1.55;color:var(--color-text-secondary)}.fv-meaning-skel{display:block;width:60%;height:14px;border-radius:6px;background:var(--color-container-subtle)}.fv-masked{align-self:stretch;height:30px;border:none;border-radius:8px;background:var(--color-container-subtle);color:var(--color-text-unselected);font:inherit;font-size:12px;cursor:pointer}.fv-context{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.fv-context .wl-tap.hl{color:var(--color-primary);font-weight:600}.fv-meta{font-size:12px;color:var(--color-text-unselected)}.fv-sentence{font-size:16px;line-height:1.55;font-weight:500}.fv-video-line{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;background:var(--color-container-subtle);font-size:12px;color:var(--color-text-secondary)}.fv-video-line svg{color:var(--color-primary)}.fv-video-line .ap-grow{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fv-card-foot{display:flex;align-items:center;gap:6px}.fv-videos{display:grid;gap:10px}.fv-video{position:relative;aspect-ratio:3 / 4;display:flex;align-items:flex-end;padding:12px;border:none;border-radius:12px;overflow:hidden;color:#fff;font:inherit;text-align:left;cursor:pointer}.fv-video .fv-star{position:absolute;top:6px;left:6px}.fv-duration{position:absolute;top:10px;right:10px;padding:2px 6px;border-radius:4px;background:#00000059;font-size:11px}.fv-video-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;font-weight:600;line-height:1.4}.fv-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:100px 20px;text-align:center;white-space:pre-line;font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.fv-empty>svg{color:var(--color-text-unselected)}.fv-empty b{font-size:15px;color:var(--color-text-base)}.fv-retry{margin-top:10px;padding:8px 28px;border:none;border-radius:20px;background:var(--color-primary);color:#fff;font:inherit;font-weight:600;cursor:pointer}.fv-foot{padding:20px 0 8px;text-align:center;font-size:12px;color:var(--color-text-unselected)}.fv-modal{position:fixed;inset:0;z-index:1500;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;background:#000000e0;animation:apFade .2s ease both}.fv-modal video{max-width:100%;max-height:calc(100vh - 140px);border-radius:12px;background:#000}.fv-modal-title{max-width:720px;text-align:center;color:#fff;font-size:14px}.fv-modal-close{position:absolute;top:16px;right:16px;display:flex;padding:8px;border:none;border-radius:50%;background:#ffffff1f;color:#fff;cursor:pointer}.mo-brand{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 0 8px}.mo-brand img{width:76px;height:76px;border-radius:18px;box-shadow:0 6px 18px #00000014}.mo-brand b{margin-top:8px;font-size:20px;font-weight:800}.mo-brand small{font-size:13px;color:var(--color-text-secondary)}.mo-about-wide{display:grid;grid-template-columns:1fr 1.4fr;gap:32px;align-items:center;min-height:70vh}.mo-paragraph{display:flex;flex-direction:column;gap:6px;padding:14px;font-size:14px;color:var(--color-text-secondary)}.mo-paragraph+.mo-paragraph{border-top:.5px solid var(--color-divider)}.mo-paragraph b{font-size:16px;color:var(--color-text-base)}.mo-doc{display:flex;flex-direction:column;height:100%;min-height:0;padding:4px 0 0}.mo-doc-body{flex:1;min-height:0;padding:12px 22px 32px}.mo-doc-error{display:flex;flex-direction:column;align-items:center;gap:10px;padding-top:80px;color:var(--color-text-secondary);font-size:14px}.mo-markdown{font-size:14px;line-height:1.8;color:var(--color-text-base)}.mo-markdown h1,.mo-markdown h2,.mo-markdown h3{margin:18px 0 8px;line-height:1.4}.mo-markdown h1{font-size:20px}.mo-markdown h2{font-size:17px}.mo-markdown h3{font-size:15px}.mo-markdown p,.mo-markdown ul,.mo-markdown ol{margin:8px 0}.mo-markdown a{color:var(--color-primary)}.mo-feedback{padding-top:16px}.mo-textarea{position:relative;border-radius:14px;background:var(--color-container-subtle)}.mo-textarea textarea{display:block;width:100%;min-height:180px;padding:14px 14px 30px;border:none;border-radius:14px;background:none;color:var(--color-text-base);font:inherit;font-size:15px;line-height:1.6;resize:vertical;outline:none;box-sizing:border-box}.mo-textarea small{position:absolute;right:14px;bottom:10px;font-size:12px;color:var(--color-text-unselected)}.mo-contact{width:100%;height:48px;margin-top:14px;padding:0 18px;border:none;border-radius:24px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:15px;outline:none;box-sizing:border-box}.mo-images{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.mo-image,.mo-image-add{position:relative;width:84px;height:84px;border-radius:12px;overflow:hidden}.mo-image img{width:100%;height:100%;object-fit:cover}.mo-image.failed{cursor:pointer}.mo-image-add{display:flex;align-items:center;justify-content:center;border:1.5px dashed var(--color-divider);background:var(--color-container-subtle);color:var(--color-text-unselected);cursor:pointer}.mo-hint{margin-top:8px;font-size:12px;color:var(--color-text-unselected)}.mo-submit{margin-top:32px}.rk-wide{flex:1;min-height:0;display:flex}.rk-side{flex:none;width:340px}.rk-main{flex:1;min-width:0}.rk-podium{display:flex;align-items:flex-end;padding:24px 16px 20px}.rk-slot{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center}.rk-medal{position:relative;display:flex;justify-content:center;padding-bottom:10px}.rk-ring{display:flex;padding:2px;border-radius:50%;background:var(--m)}.rk-medal b{position:absolute;bottom:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:2px solid var(--color-page-bg);border-radius:50%;background:var(--m);color:#fff;font-size:11px;font-weight:800;box-sizing:border-box}.rk-slot-name{max-width:100%;margin-top:8px;padding:0 4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.rk-slot-name.me,.rk-name.me{color:var(--color-primary)}.rk-slot-total{margin-top:2px;font-size:17px;font-weight:600}.rk-avatar{flex:none;display:flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;background:var(--color-container-subtle);color:var(--color-icon-inactive)}.rk-avatar img{width:100%;height:100%;object-fit:cover}.rk-list{padding:0 4px}.rk-line{display:flex;align-items:center;gap:12px;padding:10px 16px}.rk-rank{flex:none;width:28px;text-align:center;font-size:14px;font-weight:600;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.rk-name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px}.rk-total{flex:none;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.rk-my-bar{flex:none;padding:4px 0;border-top:.5px solid var(--color-divider);background:var(--color-page-bg)}.rk-me-card{margin-top:8px;padding:12px 0 14px;border-radius:14px;background:var(--color-container-bg)}.rk-me-title{padding:0 16px 4px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.rk-me-detail{padding:0 16px;font-size:12px;color:var(--color-text-unselected)}.rk-legend{padding:16px;text-align:center;font-size:12px;color:var(--color-text-unselected)}.rk-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:60px 16px 30px;color:var(--color-text-secondary);font-size:15px}.rk-empty svg{color:var(--color-text-unselected)}.rk-empty small{font-size:12px;color:var(--color-text-unselected)}.rk-none{padding:60px 0;text-align:center;font-size:13px;color:var(--color-text-unselected)}.rk-tabs{flex:none;display:flex;gap:0;width:calc(100% - 32px);max-width:420px;margin:4px auto 6px;padding:3px;border-radius:12px;background:var(--color-container-bg)}.rk-tabs button{position:relative;flex:1;height:32px;border:none;border-radius:9px;background:none;color:var(--color-text-secondary);font:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .18s ease,color .18s ease}.rk-tabs button.on{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font-weight:600}.rk-tabs button i{position:absolute;top:9px;margin-left:3px;width:6px;height:6px;border-radius:50%;background:var(--color-error)}.rk-center{width:100%;max-width:640px;margin:0 auto}.rk-note{padding:8px 16px;text-align:center;font-size:12px;color:var(--color-text-secondary)}.rk-slot-total small{font-size:11px;font-weight:400;color:var(--color-text-secondary)}.rk-avatar-wrap{position:relative;flex:none;display:flex}.rk-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border:2px solid var(--color-page-bg);border-radius:50%;background:var(--color-primary);box-sizing:border-box}.rk-name-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rk-name-col small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.rk-xp{flex:none;display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}.rk-xp b{font-family:Inter,MiSans,sans-serif;font-size:16px;font-weight:700}.rk-xp b.zero{color:var(--color-text-unselected)}.rk-xp small{font-size:10px;color:var(--color-text-secondary)}.rk-hint{display:flex;align-items:center;gap:4px;padding:0 16px 6px 60px;font-size:12px;color:var(--color-text-secondary);box-sizing:border-box}.rk-hint svg{flex:none;color:var(--color-primary)}.rk-banner{display:flex;align-items:center;gap:8px;width:calc(100% - 32px);margin:4px 16px;padding:12px 14px;border:none;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;font-size:14px;text-align:left;cursor:pointer}.rk-banner>svg{color:var(--color-primary)}.rk-banner span{flex:1;min-width:0}.rk-banner em{display:inline-flex;align-items:center;font-style:normal;font-size:13px;color:var(--color-primary)}.rk-add-btn{margin-top:12px;padding:10px 28px;border:none;border-radius:20px;background:var(--color-primary);color:#fff;font:inherit;font-size:15px;cursor:pointer}.rk-add-btn:hover{background:var(--color-primary-hover)}.rk-badge-btn{position:relative}.rk-badge-btn i{position:absolute;top:3px;right:1px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--color-error);color:#fff;font-size:10px;font-style:normal;line-height:16px;box-sizing:border-box}.rk-sheet{display:flex;flex-direction:column;padding:8px 20px 24px;overflow-y:auto}.rk-sheet-title{text-align:center;font-size:17px;font-weight:600}.rk-sheet-sub{margin-top:4px;text-align:center;font-size:13px;color:var(--color-text-secondary)}.rk-search{display:flex;gap:10px;margin-top:16px}.rk-search input{flex:1;min-width:0;height:46px;padding:0 14px;border:none;border-radius:12px;background:var(--color-container-bg);color:var(--color-text-base);font-family:Inter,MiSans,sans-serif;font-size:17px;letter-spacing:.5px;outline:none}.rk-search button,.rk-result button{flex:none;height:34px;align-self:center;padding:0 16px;border:none;border-radius:17px;background:var(--color-primary);color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.rk-search button:disabled,.rk-result button:disabled{background:var(--color-container-subtle);color:var(--color-text-unselected);cursor:default}.rk-result button.muted{background:var(--color-container-subtle);color:var(--color-text-base)}.rk-result{display:flex;align-items:center;gap:10px;margin-top:14px;padding:14px;border-radius:14px;background:var(--color-container-bg)}.rk-result>span:not(.rk-avatar){flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rk-result b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600}.rk-result small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.rk-requests{display:flex;flex-direction:column;min-height:160px;margin-top:4px}.rk-requests .rk-result{margin-top:10px}.rk-sheet-empty{padding:28px 0;border:none;background:none;text-align:center;font:inherit;font-size:13px;color:var(--color-text-secondary)}button.rk-sheet-empty{cursor:pointer}.rk-sheet-loading{display:flex;align-items:center;justify-content:center;height:160px}.pl-wrap{display:flex;flex-direction:column;max-width:620px;margin:0 auto;padding:12px 20px 32px}.pl-art{display:block;flex:none;object-fit:contain;-webkit-user-select:none;user-select:none}.pl-head{padding:12px 4px 0}.pl-head-main{display:flex;align-items:center;gap:24px}.pl-head-text{flex:1;min-width:0}.pl-head-text small{font-size:13px;letter-spacing:.02em;color:var(--color-text-secondary)}.pl-head-text h2{margin:8px 0 0;font-size:24px;line-height:1.35;font-weight:600;letter-spacing:.01em}.pl-head-text p{margin:8px 0 0;font-size:14px;color:var(--color-text-secondary)}.pl-ring{display:flex;flex-direction:column;align-items:center;line-height:1.05}.pl-ring b{font-family:Inter,MiSans,sans-serif;font-size:24px;font-weight:600}.pl-ring small{margin-top:3px;font-family:Inter,MiSans,sans-serif;font-size:11px;color:var(--color-text-secondary)}.pl-facts{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:22px;padding-top:18px;border-top:1px solid var(--color-divider);font-size:13px;color:var(--color-text-secondary)}.pl-facts>span{display:inline-flex;align-items:center;gap:7px}.pl-facts b{font-family:Inter,MiSans,sans-serif;font-size:15px;font-weight:600;color:var(--color-text-base)}.pl-facts>span:first-child:not(.on) .pl-art{filter:grayscale(1);opacity:.55}.pl-group{margin-top:32px}.pl-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 4px 10px;font-size:13px;font-weight:500;color:var(--color-text-secondary)}.pl-label span:last-child:not(:first-child){min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:Inter,MiSans,sans-serif;font-size:12px;font-weight:400}.pl-list{padding:4px 0;border-radius:18px;overflow:hidden}.pl-row{position:relative;display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.pl-row+.pl-row:before{content:"";position:absolute;top:0;left:72px;right:18px;height:1px;background:var(--color-divider)}.pl-row:hover{background:var(--color-card-hover)}.pl-row-art{flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.pl-row-cover,.pl-lesson-cover{flex:none;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-container-subtle)}.pl-row-cover{width:40px;height:40px;border-radius:11px}.pl-row-cover img,.pl-lesson-cover img{display:block;width:100%;height:100%;object-fit:cover}.pl-row.done .pl-row-art,.pl-row.done .pl-row-cover{filter:grayscale(1);opacity:.45}.pl-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.pl-row-text b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600}.pl-row-text>small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;color:var(--color-text-secondary)}.pl-row-text>small.en{font-family:Inter,MiSans,sans-serif}.pl-row.done .pl-row-text b{font-weight:500;color:var(--color-text-secondary)}.pl-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;margin-top:5px}.pl-row-meta em{font-family:Inter,MiSans,sans-serif;font-size:11.5px;font-style:normal;color:var(--color-text-unselected)}.pl-bar{width:88px;height:3px;border-radius:2px;overflow:hidden;background:var(--color-divider)}.pl-bar i{display:block;height:100%;border-radius:2px;background:var(--color-primary);transition:width .6s cubic-bezier(.22,1,.36,1)}.pl-row-btn{flex:none;padding:6px 14px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--color-divider);color:var(--color-text-base);font-size:13px;font-weight:500;white-space:nowrap;transition:background-color .15s ease}.pl-row.current .pl-row-btn{box-shadow:none;background:var(--color-primary);color:#fff}.pl-row-done{flex:none;display:flex}.pl-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 16px;border-radius:18px;font-size:13px;color:var(--color-text-secondary);text-align:center}.pl-empty .pl-art{margin-bottom:6px}.pl-empty b{font-size:15px;font-weight:600;color:var(--color-text-base)}.pl-empty button{margin-top:8px;padding:6px 16px;border:none;border-radius:999px;box-shadow:inset 0 0 0 1px var(--color-divider);background:none;color:var(--color-text-base);font:inherit;font-size:13px;cursor:pointer}.pl-lesson{display:flex;align-items:center;gap:16px;width:100%;padding:14px 16px 14px 14px;border:none;border-radius:18px;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer;transition:background-color .15s ease}.pl-lesson:hover{background:color-mix(in srgb,var(--color-container-bg) 94%,var(--color-text-base))}.pl-lesson>svg{flex:none;color:var(--color-icon-inactive)}.pl-lesson-cover{width:76px;height:56px;border-radius:12px}.pl-foot{display:flex;flex-direction:column;align-items:center;gap:22px;margin-top:40px;text-align:center}.pl-tip{margin:0;padding:0 12px;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.pl-quote{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px}.pl-quote:before{content:"";width:24px;height:1px;margin-bottom:14px;background:var(--color-divider)}.pl-quote blockquote{margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px;font-style:italic;line-height:1.5;color:var(--color-text-base)}.pl-quote figcaption{font-size:12px;color:var(--color-text-unselected)}.ap-bottom-area.pl-bottom{background:var(--color-page-bg);padding:10px 20px 16px}.pl-bottom-inner{max-width:580px;margin:0 auto}@media(max-width:520px){.pl-wrap{padding:8px 16px 28px}.pl-head-main{gap:16px}.pl-head-text h2{font-size:20px}.pl-facts{gap:8px 16px}.pl-row{gap:12px;padding:14px}.pl-row+.pl-row:before{left:66px;right:14px}.pl-row-btn{display:none}.pl-row.current .pl-row-btn{display:inline;padding:5px 12px}}@media(prefers-reduced-motion:reduce){.pl-bar i,.pl-row,.pl-lesson{transition:none}}.gv-mask{position:fixed;inset:0;z-index:3000;overflow:hidden;background:#000000f0;animation:apFade .18s ease both;-webkit-user-select:none;user-select:none;touch-action:pan-y}.gv-mask.closing{animation:stFadeOut .18s ease both}.gv-count{position:absolute;top:18px;left:0;right:0;z-index:2;text-align:center;font-size:15px;color:#ffffffd9}.gv-track{display:flex;height:100%;transition:transform .3s cubic-bezier(.22,1,.36,1)}.gv-slide{flex:none;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:48px 24px;box-sizing:border-box}.gv-slide img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}.gv-arrow{position:absolute;top:50%;z-index:2;display:flex;padding:10px;margin-top:-25px;border:none;border-radius:50%;background:#ffffff1f;color:#fff;cursor:pointer}.gv-arrow:hover{background:#ffffff38}.gv-arrow.left{left:16px}.gv-arrow.right{right:16px}.st-body{margin:0 auto;padding:8px 16px 40px}.st-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;align-items:start}.st-group{margin-top:24px}.st-group-title{padding-left:10px;margin-bottom:10px;font-size:14px;font-weight:600;color:var(--color-text-secondary)}.st-group-footer{padding:8px 10px 0;font-size:12px;line-height:1.5;color:var(--color-text-unselected)}.st-card{border-radius:14px;overflow:hidden;background:var(--color-container-subtle)}.st-row{display:flex;align-items:center;gap:10px;width:100%;min-height:64px;padding:12px 14px;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.st-row+.st-row{border-top:.5px solid var(--color-divider)}div.st-row:not(.clickable){cursor:default}.st-row.clickable:hover,button.st-row:hover{background:var(--color-cell-pressed)}.st-row.disabled{opacity:.6}.st-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.st-row-title{font-size:16px;font-weight:600}.st-row.danger .st-row-title{color:var(--color-error)}.st-row-sub{font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.st-row-value{flex:none;font-size:14px;color:var(--color-text-secondary)}.st-row-arrow{flex:none;color:var(--color-text-unselected)}.st-volume-cell{flex-direction:column;align-items:stretch;gap:10px;padding:14px 14px 16px}.st-volume-head{display:flex;align-items:center;gap:12px;width:100%}.st-volume-percent{font-weight:500;font-variant-numeric:tabular-nums}.st-volume-bar{display:flex;align-items:center;gap:8px;width:100%}.st-volume-icon{flex:none;color:var(--color-icon-inactive)}.st-slider{position:relative;flex:1;height:32px;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;outline:none}.st-slider-track{position:absolute;left:11px;right:11px;top:14px;height:4px;border-radius:4px;background:color-mix(in srgb,var(--color-text-secondary) 18%,transparent)}.st-slider-fill{position:absolute;left:11px;top:14px;height:4px;border-radius:4px;background:var(--color-primary);width:calc((100% - 22px) * var(--v, 1));transition:width .22s cubic-bezier(.22,1,.36,1)}.st-slider-thumb{position:absolute;left:calc((100% - 22px) * var(--v, 1));top:5px;width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid var(--color-primary);box-shadow:0 2px 6px #0000001f;box-sizing:border-box;transition:left .22s cubic-bezier(.22,1,.36,1),transform .15s ease}.st-slider.dragging .st-slider-fill{transition:none}.st-slider.dragging .st-slider-thumb{transition:transform .15s ease;transform:scale(1.15)}.st-tag{flex:none;padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);font-size:12px;color:var(--color-primary)}.st-small-btn{flex:none;padding:5px 12px;border:1px solid var(--color-divider);border-radius:14px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;font-size:13px;cursor:pointer}.st-small-btn:hover{border-color:var(--color-error);color:var(--color-error)}.st-device-icon{flex:none;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--color-container-bg);color:var(--color-icon-active)}.st-dialog-mask{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0006;animation:apFade .18s ease both}.st-dialog-mask.closing{animation:stFadeOut .18s ease both}.st-dialog{width:100%;max-width:340px;padding:22px 20px 16px;border-radius:18px;background:var(--color-container-bg);color:var(--color-text-base);animation:stPop .22s cubic-bezier(.22,1,.36,1) both}.st-dialog-title{text-align:center;font-size:17px;font-weight:700}.st-dialog-message{margin-top:10px;text-align:center;font-size:14px;line-height:1.6;color:var(--color-text-secondary);white-space:pre-line}.st-dialog-actions{display:flex;gap:10px;margin-top:20px}.st-btn{flex:1;height:44px;border:none;border-radius:22px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:15px;font-weight:600;cursor:pointer}.st-btn.primary{background:var(--color-primary);color:#fff}.st-btn.primary.danger{background:var(--color-error)}.st-options,.st-sms{padding:8px 20px 24px}.st-sheet-title{font-size:17px;font-weight:700;text-align:center}.st-sheet-sub{margin-top:8px;font-size:13px;line-height:1.6;text-align:center;color:var(--color-text-secondary)}.st-input{width:100%;height:48px;margin-top:16px;padding:0 14px;border:none;border-radius:12px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:16px;outline:none;box-sizing:border-box}.st-input:focus{box-shadow:0 0 0 1.5px var(--color-primary) inset}.st-input.readonly{display:flex;align-items:center;justify-content:space-between}.st-input.readonly small{font-size:13px;color:var(--color-text-secondary)}.st-code-row{display:flex;gap:10px;align-items:flex-end}.st-code-btn{flex:none;height:48px;min-width:108px;padding:0 14px;border:none;border-radius:12px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font:inherit;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center}.st-code-btn:disabled{color:var(--color-text-secondary);background:var(--color-container-subtle);cursor:default}.st-sms-message{min-height:20px;margin-top:10px;font-size:13px;color:var(--color-text-secondary)}.st-sms-message.error{color:var(--color-error)}.st-submit{width:100%;height:50px;margin-top:12px;border:none;border-radius:25px;background:var(--color-primary);color:#fff;font:inherit;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center}.st-submit.danger{background:var(--color-error)}.st-submit:disabled{opacity:.45;cursor:default}@keyframes stPop{0%{opacity:0;transform:scale(.92)}}@keyframes stFadeOut{to{opacity:0}}.st-account-avatar{flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;overflow:hidden;background:var(--color-container-bg);color:var(--color-icon-inactive)}.st-account-avatar img{width:100%;height:100%;object-fit:cover}.st-account-avatar.add{color:var(--color-primary)}.cm-page{position:relative;--cm-name: #576B95}[data-theme=dark] .cm-page,[data-theme=dark] .cp-page{--cm-name: #7D90B8}.cm-top{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;height:56px;padding:0 8px;background:linear-gradient(var(--color-page-bg) 55%,transparent);pointer-events:none}.cm-top>*{pointer-events:auto}.cm-top b{position:absolute;left:0;right:0;text-align:center;font-size:17px;font-weight:600;pointer-events:none}.cm-top-actions{display:flex;margin-left:auto;position:relative}.cm-top-btn{position:relative;display:flex;padding:8px;border:none;border-radius:10px;background:none;color:var(--color-text-base);cursor:pointer}.cm-top-btn:hover{background:var(--color-container-subtle)}.cm-scroll{padding-top:56px}.cm-feed{margin:0 auto;padding:4px 12px 40px}.cm-card{padding:14px 14px 12px;margin-bottom:12px;border-radius:16px;background:var(--color-container-bg);transition:box-shadow .2s ease}.cm-card.active{box-shadow:0 0 0 1.5px color-mix(in srgb,var(--color-primary) 50%,transparent)}.cm-head{display:flex;align-items:center;gap:10px}.cm-avatar{flex:none;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-container-subtle);color:var(--color-icon-inactive)}.cm-avatar img{width:100%;height:100%;object-fit:cover}.cm-head-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cm-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;line-height:1.3;color:var(--cm-name)}.cm-time{font-size:12px;color:var(--color-text-unselected)}.cm-topic{flex:none;max-width:46%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:3px 8px;border-radius:10px;background:color-mix(in srgb,var(--color-primary) 10%,transparent);font-size:12px;line-height:1.4;color:var(--color-primary)}.cm-more{flex:none;display:flex;padding:4px;border:none;border-radius:8px;background:none;color:var(--color-text-secondary);cursor:pointer}.cm-more:hover{background:var(--color-container-subtle)}.cm-text-wrap{margin-top:10px}.cm-text{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;font-size:16px;line-height:1.5;word-break:break-word}.cm-text.expanded{display:block;-webkit-line-clamp:unset}.cm-expand{margin-top:4px;padding:0;border:none;background:none;color:var(--cm-name);font:inherit;font-size:15px;cursor:pointer}.cm-translation{margin-top:8px;padding:2px 0 2px 10px;border-left:2px solid var(--color-primary);font-size:15px;line-height:1.5;color:var(--color-text-secondary);white-space:pre-wrap;animation:apFade .2s ease both}.cm-images{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:10px;max-width:420px}.cm-images.four{grid-template-columns:repeat(2,1fr);max-width:280px}.cm-images.single{display:block;max-width:none}.cm-image{display:block;aspect-ratio:1;padding:0;border:none;border-radius:6px;overflow:hidden;background:var(--color-container-subtle);cursor:zoom-in}.cm-images.single .cm-image{max-width:320px;max-height:360px}.cm-image img{width:100%;height:100%;object-fit:cover;display:block}.cm-words{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.cm-word{display:inline-flex;align-items:baseline;gap:6px;max-width:100%;padding:5px 10px;border:none;border-radius:8px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:13px;line-height:1.3;cursor:pointer}.cm-word b{color:var(--color-primary)}.cm-word span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-secondary)}.cm-study{display:flex;align-items:center;gap:6px;margin-top:10px;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--color-primary) 8%,transparent);font-size:13px;line-height:1.4}.cm-study svg{flex:none;color:var(--color-primary)}.cm-study b{color:var(--color-primary)}.cm-actions{display:flex;gap:22px;margin-top:12px}.cm-action{display:inline-flex;align-items:center;gap:5px;padding:2px 0;border:none;background:none;color:var(--color-text-secondary);font:inherit;cursor:pointer}.cm-action svg{width:20px;height:20px}.cm-action small{font-size:13px}.cm-action.liked span{color:var(--color-error)}.cm-action:disabled{opacity:.6;cursor:default}.cm-pop{display:inline-flex;animation:cmPop .36s cubic-bezier(.34,1.56,.64,1)}.cm-count{display:inline-block;animation:cmCount .25s ease both}.cm-interactions{margin-top:10px;border-radius:8px;background:var(--color-container-subtle);overflow:hidden;animation:apFade .2s ease both}.cm-likes{display:flex;align-items:flex-start;gap:6px;padding:8px 10px;font-size:14px;line-height:1.45;color:var(--cm-name)}.cm-likes-icon{flex:none;width:15px;height:15px;margin-top:2px}.cm-comments{padding:4px 0}.cm-comments.divided{border-top:.5px solid var(--color-divider)}.cm-comment{display:block;width:100%;padding:4px 10px;border:none;background:none;color:var(--color-text-base);font:inherit;font-size:14px;line-height:1.5;text-align:left;cursor:pointer;transition:background-color .15s ease;animation:cmIn .25s ease both}.cm-comment:hover{background:var(--color-cell-pressed)}.cm-cname{color:var(--cm-name);font-weight:500}.cm-ctext{word-break:break-word}.cm-foot{display:flex;justify-content:center;padding:16px 0;font-size:12px;color:var(--color-text-unselected)}.cm-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:120px 20px;color:var(--color-text-secondary);font-size:14px}.cm-empty>svg{color:var(--color-text-unselected)}.cm-empty b{font-size:16px;color:var(--color-text-base)}.cm-empty-btn{margin-top:12px;padding:10px 28px;border:none;border-radius:22px;background:var(--color-primary);color:#fff;font:inherit;font-weight:600;cursor:pointer}.cm-bar-mask{position:absolute;inset:0;z-index:8}.cm-bar{position:absolute;left:0;right:0;bottom:0;z-index:9;padding:8px 12px 12px;background:var(--color-container-bg);border-top:.5px solid var(--color-divider);animation:cmBarIn .22s cubic-bezier(.22,1,.36,1) both}.cm-bar-inner{display:flex;align-items:flex-end;gap:8px;margin:0 auto}.cm-bar textarea{flex:1;min-height:38px;max-height:120px;padding:9px 12px;border:none;border-radius:10px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:15px;line-height:20px;resize:none;outline:none;box-sizing:border-box}.cm-send{flex:none;height:38px;min-width:60px;padding:0 14px;border:none;border-radius:10px;background:var(--color-primary);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center}.cm-send:disabled{opacity:.45;cursor:default}.cm-menu{padding:0 0 8px}.cm-menu-title{padding:6px 16px 14px;text-align:center;font-size:13px;color:var(--color-text-secondary);border-bottom:.5px solid var(--color-divider)}.cm-menu-row{display:block;width:100%;padding:16px;border:none;background:none;color:var(--color-text-base);font:inherit;font-size:16px;text-align:center;cursor:pointer}.cm-menu-row+.cm-menu-row{border-top:.5px solid var(--color-divider)}.cm-menu-row:hover{background:var(--color-cell-pressed)}.cm-menu-row.danger{color:var(--color-error)}.cm-menu-gap{height:8px;background:var(--color-container-subtle)}@keyframes cmPop{40%{transform:scale(1.35)}}@keyframes cmCount{0%{opacity:0;transform:translateY(6px)}}@keyframes cmIn{0%{opacity:0;transform:translateY(-4px)}}@keyframes cmBarIn{0%{transform:translateY(100%)}}.cp-page{background:var(--color-container-bg)}.cp-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.cp-top{flex:none;display:flex;align-items:center;height:56px;padding:0 16px}.cp-cancel{padding:6px 4px;border:none;background:none;color:var(--color-text-base);font:inherit;font-size:16px;cursor:pointer}.cp-submit{min-width:64px;height:34px;padding:0 16px;border:none;border-radius:6px;background:var(--color-primary);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center}.cp-submit:disabled{background:var(--color-container-subtle);color:var(--color-text-unselected);cursor:default}.cp-body{margin:0 auto;padding:4px 24px 40px}.cp-textarea{position:relative}.cp-textarea textarea{display:block;width:100%;min-height:130px;padding:4px 0 22px;border:none;background:none;color:var(--color-text-base);font:inherit;font-size:17px;line-height:1.55;resize:vertical;outline:none;box-sizing:border-box}.cp-textarea small{position:absolute;right:0;bottom:2px;font-size:12px;color:var(--color-text-unselected)}.cp-textarea small.over{color:var(--color-error)}.cp-starters{margin-top:4px}.cp-starters>span{font-size:12px;color:var(--color-text-unselected)}.cp-starter-row{display:flex;gap:8px;margin-top:8px;overflow-x:auto;scrollbar-width:none}.cp-starter-row button{flex:none;padding:6px 12px;border:none;border-radius:15px;background:var(--color-container-subtle);color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer}.cp-starter-row button:hover{color:var(--color-primary)}.cp-images{display:grid;grid-template-columns:repeat(3,minmax(0,96px));gap:6px;margin-top:18px}.cp-image{position:relative;aspect-ratio:1;padding:0;border:none;border-radius:4px;overflow:hidden;background:var(--color-container-subtle)}.cp-image img{width:100%;height:100%;object-fit:cover}.cp-image.failed{cursor:pointer}.cp-image.add{display:flex;align-items:center;justify-content:center;color:var(--color-text-unselected);cursor:pointer}.cp-image.add:hover{color:var(--color-text-secondary)}.mo-image-mask{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#00000073;color:#fff;font-size:11px}.mo-image-del{position:absolute;top:4px;right:4px;display:flex;padding:3px;border:none;border-radius:50%;background:#00000080;color:#fff;cursor:pointer}.cp-options{margin-top:28px;border-top:.5px solid var(--color-divider)}.cp-option{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 2px;border:none;border-bottom:.5px solid var(--color-divider);background:none;color:var(--color-text-base);font:inherit;text-align:left}button.cp-option{cursor:pointer}.cp-option-icon{flex:none;color:var(--color-icon-active)}.cp-option-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.cp-option-text b{font-size:16px;font-weight:500}.cp-option-text b em{font-style:normal;font-size:12px;font-weight:400;color:var(--color-text-unselected)}.cp-option-text small{font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.cp-option-value{flex:none;max-width:45%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;color:var(--color-text-secondary)}.cp-option-value.on{color:var(--color-primary)}.cp-rule{margin-top:24px;font-size:12px;line-height:1.6;color:var(--color-text-unselected)}.cp-sheet{padding:4px 20px 24px}.cp-topics{display:flex;flex-direction:column;margin-top:12px}.cp-topic{display:flex;align-items:center;gap:12px;padding:12px 6px;border:none;border-radius:12px;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.cp-topic:hover{background:var(--color-cell-pressed)}.cp-topic.on .cp-option-text b{color:var(--color-primary)}.cp-topic-icon{flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.cp-topic-icon.muted{background:var(--color-container-subtle);color:var(--color-text-secondary)}.cp-word-sheet{display:flex;flex-direction:column;height:100%;min-height:0;box-sizing:border-box}.cp-sheet-head{display:flex;align-items:flex-start;gap:12px}.cp-sheet-head>div{flex:1}.cp-sheet-head small{display:block;margin-top:4px;font-size:12px;color:var(--color-text-secondary)}.cp-done{flex:none;padding:7px 16px;border:none;border-radius:16px;background:var(--color-primary);color:#fff;font:inherit;font-weight:600;cursor:pointer}.cp-word-input{display:flex;gap:8px;margin-top:16px}.cp-word-input input{flex:1;height:42px;padding:0 14px;border:none;border-radius:10px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:15px;outline:none}.cp-word-input button{flex:none;padding:0 16px;border:none;border-radius:10px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font:inherit;font-weight:600;cursor:pointer}.cp-word-input button:disabled{opacity:.5;cursor:default}.cp-word-label{margin-top:18px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.cp-chips{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;margin-top:10px}.cp-chips.ap-scroll{flex:1;min-height:0}.cp-chip{display:inline-flex;align-items:baseline;gap:6px;padding:6px 12px;border:1px solid var(--color-divider);border-radius:16px;background:none;color:var(--color-text-base);font:inherit;font-size:14px;cursor:pointer}.cp-chip small{font-size:12px;color:var(--color-text-secondary)}.cp-chip.on{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.cp-chip button{display:flex;padding:2px;border:none;background:none;color:inherit;cursor:pointer;align-self:center}.cp-hint{font-size:13px;color:var(--color-text-unselected)}.ls-tabs{flex:none;display:flex;gap:8px;width:100%;margin:0 auto;padding:4px 16px 10px;box-sizing:border-box;overflow-x:auto;scrollbar-width:none}.ls-tab{flex:none;height:34px;padding:0 16px;border:none;border-radius:17px;background:var(--color-container-subtle);color:var(--color-text-base);font:inherit;font-size:14px;font-weight:600;white-space:pre;cursor:pointer;transition:background-color .2s ease,color .2s ease}.ls-tab.on{background:var(--color-primary);color:#fff}.ls-body{margin:0 auto;padding:0 12px 24px;animation:apFade .2s ease both}.ls-head{display:flex;align-items:center;padding:8px 6px 10px;font-size:13px;color:var(--color-text-secondary)}.ls-play-all{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:none;border-radius:15px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.ls-grid{display:grid;gap:0 16px}.ls-row{display:flex;align-items:center;gap:12px;width:100%;padding:8px 6px;border:none;border-radius:12px;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.ls-row:hover{background:var(--color-cell-pressed)}.ls-cover{position:relative;flex:none;width:52px;height:52px;border-radius:8px;overflow:hidden;background:var(--color-container-subtle)}.ls-cover img{width:100%;height:100%;object-fit:cover}.ls-eq{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:3px;padding-bottom:12px;background:#00000059}.ls-eq i{width:3px;height:16px;border-radius:2px;background:#fff;animation:lsEq .9s ease-in-out infinite;transform-origin:bottom}.ls-eq i:nth-child(2){animation-delay:-.3s}.ls-eq i:nth-child(3){animation-delay:-.6s}.ls-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ls-text b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600}.ls-text small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.ls-row.current .ls-text b{color:var(--color-primary)}.ls-duration{flex:none;font-size:12px;color:var(--color-text-unselected);font-variant-numeric:tabular-nums}.ls-foot{display:flex;justify-content:center;padding:16px 0;font-size:12px;color:var(--color-text-unselected)}.ls-message{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;padding:100px 0;border:none;background:none;color:var(--color-text-secondary);font:inherit;font-size:14px;cursor:pointer}.ls-mini{flex:none;padding:8px 12px 12px;border-top:.5px solid var(--color-divider);background:var(--color-page-bg)}.ls-mini-inner{display:flex;align-items:center;gap:12px;margin:0 auto;padding:6px 8px;border-radius:14px;background:var(--color-container-bg);cursor:pointer}.ls-mini-cover{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--color-container-subtle);color:var(--color-text-unselected)}.ls-mini-cover img{width:100%;height:100%;object-fit:cover}.ls-mini-cover.spinning{animation:lsSpin 12s linear infinite}.ls-mini-btn{flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:none;color:var(--color-text-base);cursor:pointer}.ls-mini-btn:hover:not(:disabled){background:var(--color-container-subtle)}.ls-mini-btn:disabled{color:var(--color-text-unselected);cursor:default}@keyframes lsEq{50%{transform:scaleY(.35)}}@keyframes lsSpin{to{transform:rotate(360deg)}}.lp-page{overflow:hidden;background:#111;color:#fff;--lp-dim: rgba(255, 255, 255, .6);--lp-faint: rgba(255, 255, 255, .38);--lp-line: rgba(255, 255, 255, .35);--lp-target: #8EDDB4}.lp-bg{position:absolute;inset:-60px;background-size:cover;background-position:center;filter:blur(48px) saturate(1.2);transform:scale(1.2)}.lp-shade{position:absolute;inset:0;background:linear-gradient(#00000059,#0009)}.lp-top{position:relative;z-index:2;flex:none;display:flex;align-items:center;height:56px;padding:0 8px}.lp-stage{flex:1;text-align:center;font-size:14px;color:var(--lp-dim)}.lp-icon{display:flex;align-items:center;justify-content:center;padding:8px;border:none;border-radius:50%;background:none;color:#fff;cursor:pointer}.lp-icon:hover{background:#ffffff1a}.lp-icon.big{padding:6px}.lp-single,.lp-wide{position:relative;z-index:1;flex:1;min-height:0;display:flex}.lp-single{flex-direction:column;width:100%;max-width:560px;margin:0 auto}.lp-song{flex:none;display:flex;align-items:center;gap:12px;margin:4px 24px 12px;padding:0;border:none;background:none;color:#fff;font:inherit;text-align:left;cursor:default}.lp-song-cover{flex:none;width:56px;height:56px;border-radius:8px;overflow:hidden;background:#ffffff1a;box-shadow:0 6px 18px #0000004d}.lp-song-cover img{width:100%;height:100%;object-fit:cover}.lp-song-text{min-width:0;display:flex;flex-direction:column;gap:3px}.lp-song-text b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:700}.lp-song-text small{font-size:13px;color:var(--lp-dim)}.lp-lyrics-wrap{flex:1;min-height:0;display:flex}.lp-bottom{flex:none;padding:8px 24px 16px;transition:opacity .25s ease,max-height .35s ease;max-height:320px;overflow:hidden}.lp-single.immersive .lp-bottom{opacity:0;max-height:0;padding:0 24px;pointer-events:none}.lp-single.immersive .lp-song{cursor:pointer}.lp-wide{gap:40px;padding:0 48px 24px}.lp-left{flex:none;width:min(42%,440px);display:flex;flex-direction:column;justify-content:center}.lp-big-cover{display:block;width:100%;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#ffffff1a;box-shadow:0 20px 50px #0006}.lp-big-cover img{width:100%;height:100%;object-fit:cover}.lp-left-title{display:flex;flex-direction:column;gap:4px;margin-top:20px}.lp-left-title b{font-size:22px;font-weight:700}.lp-left-title small{font-size:14px;color:var(--lp-dim)}.lp-fade{transition:opacity .25s ease}.lp-wide.immersive .lp-fade{opacity:0;pointer-events:none}.lp-wide.immersive .lp-left{cursor:pointer}.lp-right{flex:1;min-width:0;display:flex}.lp-lyrics{flex:1;min-height:0;overflow-y:auto;padding:0 24px;scrollbar-width:none;-webkit-mask-image:linear-gradient(transparent,#000 8%,#000 85%,transparent);mask-image:linear-gradient(transparent,#000 8%,#000 85%,transparent);cursor:pointer}.lp-lyrics::-webkit-scrollbar{display:none}.lp-lyrics.center{display:flex;align-items:center;justify-content:center;-webkit-mask-image:none;mask-image:none}.lp-retry{padding:8px 16px;border:none;border-radius:16px;background:#ffffff1f;color:var(--lp-dim);font:inherit;cursor:pointer}.lp-line{padding:10px 0;transition:filter .4s ease}.lp-en{display:inline;font-size:27px;line-height:1.25;font-weight:700;color:var(--lp-line);transition:color .3s ease}.lp-line.active .lp-en{color:#fff}.lp-word{border-radius:4px;transition:background-color .15s ease}.lp-word:hover{background:#ffffff1f}.lp-word.target{color:color-mix(in srgb,var(--lp-target) 50%,transparent)}.lp-line.active .lp-word.target{color:var(--lp-target)}.lp-zh{margin-top:6px;font-size:16px;line-height:1.35;color:#ffffff4d;transition:color .3s ease}.lp-line.active .lp-zh{color:#ffffffbf}.lp-controls{padding-top:4px}.lp-track{height:22px;display:flex;align-items:center;cursor:pointer;touch-action:none}.lp-track-bg{flex:1;height:4px;border-radius:2px;overflow:hidden;background:#fff3;transition:height .15s ease}.lp-track:hover .lp-track-bg,.lp-track.active .lp-track-bg{height:7px;border-radius:4px}.lp-track-bg i{display:block;height:100%;background:#ffffffd9}.lp-times{display:flex;justify-content:space-between;font-size:11px;color:var(--lp-dim);font-variant-numeric:tabular-nums}.lp-play-row{display:flex;align-items:center;justify-content:center;gap:36px;margin-top:8px}.lp-play{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:none;border-radius:50%;background:#ffffff24;color:#fff;cursor:pointer;transition:transform .12s ease}.lp-play:active{transform:scale(.92)}.lp-buttons{display:flex;justify-content:space-around;margin-top:18px}.lp-buttons button{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:72px;padding:4px;border:none;border-radius:10px;background:none;color:var(--lp-dim);font:inherit;cursor:pointer}.lp-buttons button:hover{color:#fff}.lp-buttons small{font-size:11px}.lp-ci{font-size:22px;line-height:1.1}.lp-sheet{display:flex;flex-direction:column;height:100%;min-height:0}.lp-tabs{position:relative;flex:none;display:flex;width:160px;margin:0 auto 8px}.lp-tabs button{flex:1;padding:6px 0 10px;border:none;background:none;color:var(--color-text-secondary);font:inherit;font-size:16px;cursor:pointer;transition:color .2s ease}.lp-tabs button.on{color:var(--color-text-base);font-weight:700}.lp-tabs i{position:absolute;left:0;bottom:0;width:50%;height:3px;display:flex;justify-content:center;transition:transform .25s ease}.lp-tabs i:after{content:"";width:20px;height:3px;border-radius:2px;background:var(--color-primary)}.lp-sheet-title{flex:none;padding:0 20px 10px;font-size:16px;font-weight:700}.lp-sheet-list{flex:1;padding:0 8px 16px}.lp-sheet-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px;border:none;border-radius:12px;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.lp-sheet-row:hover{background:var(--color-cell-pressed)}.lp-sheet-row .ap-grow{display:flex;flex-direction:column;gap:4px}.lp-sheet-row b{font-size:15px;font-weight:600;line-height:1.4}.lp-sheet-row small{font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.lp-sheet-row>svg{flex:none;color:var(--color-text-unselected)}.lp-sheet-row.current b,.lp-sentence .target,.lp-now{color:var(--color-primary)}.lp-dur{flex:none;color:var(--color-text-unselected);font-variant-numeric:tabular-nums}.lp-empty{padding:60px 0;text-align:center;font-size:13px;color:var(--color-text-secondary)}.vf-page{position:fixed;inset:0;z-index:900;display:flex;background:#000;color:#fff}.vf-stage{position:relative;flex:1;min-width:0;display:flex;justify-content:center}.vf-scroll{width:100%;height:100%;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none}.vf-scroll::-webkit-scrollbar{display:none}.vf-page.wide .vf-scroll{max-width:min(100%,calc(56.25vh + 140px))}.vf-slot{position:relative;height:100%;scroll-snap-align:start;scroll-snap-stop:always}.vf-end{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;white-space:pre-line;text-align:center;font-size:15px;color:#ffffffb3}.vf-slide{position:absolute;inset:0;overflow:hidden}.vf-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}.vf-page.wide .vf-video{border-radius:0}.vf-hit{position:absolute;inset:0 0 64px;z-index:1;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:pan-y}.vf-center{position:absolute;top:50%;left:50%;z-index:2;transform:translate(-50%,-50%);pointer-events:none}.vf-message{pointer-events:auto;padding:10px 18px;border:none;border-radius:18px;background:#ffffff1a;color:#fffc;font:inherit;font-size:14px;white-space:pre-line;text-align:center;cursor:pointer}.vf-paused{color:#ffffffb3;animation:vfPop .25s ease both}.vf-boost{position:absolute;top:72px;left:50%;z-index:3;transform:translate(-50%);padding:5px 14px;border-radius:16px;background:#00000080;font-size:13px;pointer-events:none}.vf-unmute{position:absolute;top:72px;left:50%;z-index:3;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:none;border-radius:18px;background:#0000008c;color:#fff;font:inherit;font-size:13px;cursor:pointer}.vf-heart{position:absolute;z-index:2;margin:-43px 0 0 -43px;color:#f65d3a;pointer-events:none;animation:vfHeart .9s ease-out both}.vf-top{position:absolute;top:0;left:0;right:0;z-index:4;display:flex;align-items:center;padding:10px 12px;background:linear-gradient(rgba(0,0,0,.4),transparent);pointer-events:none}.vf-top>*{pointer-events:auto}.vf-back{display:flex;padding:6px;border:none;border-radius:50%;background:none;color:#fff;cursor:pointer}.vf-back:hover{background:#ffffff1f}.vf-nav{display:flex;flex-direction:column;gap:6px;position:fixed;right:20px;top:50%;transform:translateY(-50%)}.vf-page.with-comments .vf-nav{right:440px}.vf-nav button{display:flex;padding:10px;border:none;border-radius:50%;background:#ffffff1f;color:#fff;cursor:pointer}.vf-nav button:hover:not(:disabled){background:#ffffff38}.vf-nav button:disabled{opacity:.3;cursor:default}.vf-subtitles{position:absolute;left:16px;right:84px;bottom:132px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 2px rgba(0,0,0,.8);pointer-events:none}.vf-sub-en{font-size:18px;line-height:1.35;font-weight:600;pointer-events:auto}.vf-sub-en .wl-tap{cursor:pointer;border-radius:3px}.vf-sub-en .wl-tap:hover{background:#ffffff2e}.vf-sub-zh{font-size:14px;line-height:1.35;color:#ffffffd9}.vf-rail{position:absolute;right:10px;bottom:120px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:18px}.vf-rail-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;border:none;background:none;color:#fffffff2;font:inherit;cursor:pointer;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}.vf-rail-btn small{font-size:12px;font-weight:600}.vf-rail-btn.liked span{color:#f65d3a}.vf-rail-btn.favorited svg{color:#ffb020}.vf-pop{display:inline-flex;animation:vfPop .36s cubic-bezier(.34,1.56,.64,1)}.vf-info{position:absolute;left:16px;right:84px;bottom:34px;z-index:3;text-shadow:0 1px 3px rgba(0,0,0,.7);pointer-events:none}.vf-info b{font-size:16px;font-weight:700}.vf-info p{margin:6px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;line-height:1.45;color:#ffffffe6}.vf-progress{position:absolute;left:0;right:0;bottom:0;z-index:3;height:24px;display:flex;align-items:flex-end;padding:0 8px 8px;cursor:pointer;touch-action:none}.vf-progress-bg{flex:1;height:2px;border-radius:1px;overflow:hidden;background:#ffffff40;transition:height .15s ease}.vf-progress:hover .vf-progress-bg,.vf-progress.active .vf-progress-bg{height:6px;border-radius:3px}.vf-progress-bg i{display:block;height:100%;background:#ffffffe6}.vf-progress-time{position:absolute;left:50%;bottom:40px;transform:translate(-50%);font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;text-shadow:0 1px 4px rgba(0,0,0,.6)}.vf-side{flex:none;width:420px;display:flex;background:var(--color-page-bg);color:var(--color-text-base);animation:vfSide .28s cubic-bezier(.22,1,.36,1) both}.vc{flex:1;min-height:0;height:100%;display:flex;flex-direction:column;color:var(--color-text-base)}.vc-head{position:relative;flex:none;display:flex;align-items:center;justify-content:center;height:48px;font-size:14px}.vc-close{position:absolute;right:10px;display:flex;padding:6px;border:none;border-radius:50%;background:none;color:var(--color-text-secondary);cursor:pointer}.vc-close:hover{background:var(--color-container-subtle)}.vc-list{flex:1;padding:0 16px 16px}.vc-item{display:flex;gap:10px;padding:12px 0}.vc-avatar{flex:none;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--color-container-subtle);font-size:13px;color:var(--color-text-secondary)}.vc-body{flex:1;min-width:0}.vc-name{font-size:13px;color:var(--color-text-secondary)}.vc-content{margin-top:4px;font-size:15px;line-height:1.5;word-break:break-word}.vc-translation{margin-top:6px;padding-left:8px;border-left:2px solid var(--color-primary);font-size:14px;line-height:1.5;color:var(--color-text-secondary);animation:apFade .2s ease both}.vc-meta{display:flex;align-items:center;gap:14px;margin-top:6px;font-size:12px;color:var(--color-text-unselected)}.vc-meta button{display:inline-flex;align-items:center;gap:3px;padding:0;border:none;background:none;color:var(--color-text-secondary);font:inherit;cursor:pointer}.vc-meta button.on{color:var(--color-review, #FFB020)}.vc-like{display:inline-flex;align-items:center;gap:3px}.vc-foot{display:flex;justify-content:center;width:100%;padding:18px 0;border:none;background:none;font:inherit;font-size:13px;color:var(--color-text-unselected)}.vc-retry{cursor:pointer;color:var(--color-text-secondary)}.vf-speed{padding:4px 24px 28px;color:var(--color-text-base)}.vf-speed-value{margin-top:14px;text-align:center;font-size:34px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--color-primary)}.vf-speed input{width:100%;margin-top:14px;accent-color:var(--color-primary)}.vf-speed-marks{display:flex;justify-content:space-between;margin-top:10px}.vf-speed-marks button{padding:5px 9px;border:none;border-radius:12px;background:var(--color-container-subtle);color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer}.vf-speed-marks button.on{background:var(--color-primary);color:#fff}.vf-speed-hint{margin-top:16px;text-align:center;font-size:12px;color:var(--color-text-unselected)}@keyframes vfPop{40%{transform:scale(1.3)}}@keyframes vfHeart{0%{opacity:0;transform:scale(1.6) rotate(var(--r))}18%{opacity:1;transform:scale(.9) rotate(var(--r))}30%{transform:scale(1) rotate(var(--r))}to{opacity:0;transform:translateY(-120px) scale(1.6) rotate(var(--r))}}@keyframes vfSide{0%{width:0}}.rs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:28px 22px;max-width:1100px;margin:0 auto;padding:16px 28px 40px}.rs-book{display:flex;flex-direction:column;gap:4px;min-width:0;padding:0;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.rs-cover-wrap{position:relative;display:block;margin-bottom:8px;aspect-ratio:2 / 3;border-radius:5px 10px 10px 5px;overflow:hidden;background:var(--color-container-subtle);box-shadow:0 1px 2px #00000014,0 12px 24px -12px #00000059;transition:transform .2s}.rs-cover-wrap:after{content:"";position:absolute;top:0;bottom:0;left:0;width:10px;background:linear-gradient(90deg,rgba(0,0,0,.2),rgba(255,255,255,.08) 60%,transparent);pointer-events:none}.rs-book:hover .rs-cover-wrap{transform:translateY(-3px)}.rs-cover{display:block;width:100%;height:100%;object-fit:cover}.rs-cover-ph{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:18px 16px 18px 20px;background:linear-gradient(160deg,#50705f,#2c3f37);color:#fff}.rs-cover-ph b{font-family:Georgia,Times New Roman,serif;font-size:18px;line-height:1.3;overflow-wrap:anywhere}.rs-cover-ph small{font-size:12px;opacity:.75}.rs-progress{position:absolute;left:0;right:0;bottom:0;height:4px;background:#00000047}.rs-progress i{display:block;height:100%;background:var(--color-primary)}.rs-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;font-weight:650;line-height:1.35}.rs-sub{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--color-text-secondary)}.rs-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:12px;color:var(--color-text-secondary)}.rs-meta em{padding:0 6px;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font-style:normal;font-weight:650;line-height:18px}.rs-locked{padding:0 6px;border-radius:6px;background:var(--color-container-subtle);line-height:18px}@media(max-width:599.98px){.rs-grid{grid-template-columns:repeat(2,1fr);gap:22px 14px;padding:12px 16px 32px}}.rb-page{flex-direction:row;--rb-bg: var(--color-page-bg);--rb-paper: var(--color-container-bg);--rb-text: var(--color-text-base);--rb-text-2: var(--color-text-secondary);--rb-rule: var(--color-divider);--rb-tint: color-mix(in srgb, var(--color-primary) 12%, var(--color-container-bg))}.rb-theme-paper{--rb-bg: #E7DECA;--rb-paper: #F6F0E1;--rb-text: #3A2F22;--rb-text-2: rgba(58, 47, 34, .55);--rb-rule: rgba(58, 47, 34, .15)}.rb-theme-green{--rb-bg: #CBDBC0;--rb-paper: #E1EDD8;--rb-text: #22301F;--rb-text-2: rgba(34, 48, 31, .55);--rb-rule: rgba(34, 48, 31, .15)}.rb-theme-night{--rb-bg: #111;--rb-paper: #1B1B1B;--rb-text: #B8B8B2;--rb-text-2: rgba(184, 184, 178, .5);--rb-rule: rgba(255, 255, 255, .1)}.rb-main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--rb-bg)}.rb-main>.ap-topbar{position:relative;background:var(--rb-bg);color:var(--rb-text)}.rb-main>.ap-topbar>.ap-topbar-middle{position:absolute;inset:0 230px;justify-content:center;pointer-events:none}.rb-main>.ap-topbar>.ap-topbar-side.right{margin-left:auto}.rb-main>.ap-topbar .ap-back{color:inherit}.rb-top-actions{display:flex;align-items:center;gap:10px;padding-right:8px}.rb-top-btn{display:flex;align-items:center;justify-content:center;gap:6px;min-width:34px;height:34px;padding:0 8px;border:none;border-radius:17px;background:color-mix(in srgb,var(--rb-text) 6%,transparent);color:var(--rb-text);font:inherit;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color .15s,background .15s}.rb-top-btn:hover,.rb-top-btn.on{color:var(--color-primary)}.rb-top-btn.on{background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.rb-top-label{margin-left:4px;padding:0 14px}.rb-top-ai{padding:0 14px}.rb-side-inner>.ai-ask{flex:1;min-height:0}.rb-page.narrow .rb-top-ai span{display:none}.rb-page.narrow .rb-top-ai{padding:0 8px}.rb-page.narrow .rb-main>.ap-topbar>.ap-topbar-middle{inset:0 150px}.rb-page.narrow .rb-top-label span{display:none}.rb-page.narrow .rb-top-label{padding:0 8px}.rb-stage{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:pan-y pinch-zoom}.rb-stage.mode-scroll{touch-action:auto}.rb-footer{flex:none;display:flex;align-items:center;gap:14px;height:30px;padding:0 20px;font-size:12px;color:var(--rb-text-2);font-variant-numeric:tabular-nums}.rb-footer-chapter{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.rb-typo{font-family:var(--rb-font);font-size:var(--rb-fs);line-height:var(--rb-lh);color:var(--rb-text);text-align:justify;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word;font-kerning:normal}.rb-typo p{margin:0 0 .85em}.rb-typo h1,.rb-typo h2,.rb-typo h3,.rb-typo h4,.rb-typo h5,.rb-typo h6{margin:1.1em 0 .6em;line-height:1.3;text-align:left;-webkit-hyphens:manual;hyphens:manual;font-weight:700}.rb-typo h1{font-size:1.6em;margin-top:.4em}.rb-typo h2{font-size:1.35em}.rb-typo h3{font-size:1.15em}.rb-typo h4,.rb-typo h5,.rb-typo h6{font-size:1em}.rb-typo blockquote{margin:0 0 .85em;padding:.1em 0 .1em 1em;border-left:3px solid var(--rb-rule);color:var(--rb-text-2)}.rb-typo ul,.rb-typo ol{margin:0 0 .85em;padding-left:1.4em}.rb-typo li>p{margin-bottom:.3em}.rb-typo table{width:100%;margin:0 0 1em;border-collapse:collapse;table-layout:fixed;font-size:.8em;line-height:1.45;text-align:left}.rb-typo th,.rb-typo td{padding:.3em .45em;border:1px solid var(--rb-rule);vertical-align:top;overflow-wrap:anywhere;-webkit-hyphens:manual;hyphens:manual}.rb-typo img{display:block;max-width:100%;height:auto;margin:.6em auto;border-radius:4px}.rb-typo pre{margin:0 0 .85em;white-space:pre-wrap;font-size:.85em;text-align:left}.rb-typo hr{margin:1.4em 0;border:none;border-top:1px solid var(--rb-rule)}.rb-typo a{color:var(--color-primary);text-decoration:none}.rb-typo a[data-anchor]{cursor:pointer}.rb-typo sup{font-size:.68em;line-height:0}.rb-typo ::selection{background:#63c7944d}.rb-stage.has-pending .rb-typo ::selection{background:transparent}.rb-pending-layer{position:fixed;inset:0;z-index:50;pointer-events:none}.rb-pending-layer i{position:absolute;border-radius:2px;background:#63c7944d}.rb-cols{box-sizing:content-box;column-fill:auto}.rb-cols>:first-child,.rb-cols>:first-child>:first-child{margin-top:0}.rb-cols img{width:auto;height:calc(var(--rb-col-h) * .42);max-width:100%;object-fit:contain;break-inside:avoid}.rb-cols h1,.rb-cols h2,.rb-cols h3,.rb-cols h4{break-after:avoid;break-inside:avoid}.rb-cols tr{break-inside:avoid}.rb-measure-host{position:absolute;top:0;left:0;width:0;height:0;overflow:hidden;visibility:hidden;pointer-events:none}.rb-measure{position:absolute;top:0;left:0}.rb-c-red{--c: #EF4444}.rb-c-orange{--c: #F97316}.rb-c-yellow{--c: #F2B705}.rb-c-green{--c: #2FB36D}.rb-c-cyan{--c: #0EA5B7}.rb-c-blue{--c: #3D8BFF}.rb-c-purple{--c: #9466F0}.rb-c-pink{--c: #F0508A}.rb-c-brown{--c: #A0693A}.rb-c-gray{--c: #8A8F98}mark.rb-mark{padding:0;border-radius:2px;background:transparent;color:inherit;cursor:pointer;-webkit-box-decoration-break:clone;box-decoration-break:clone}mark.rb-highlight{background:color-mix(in srgb,var(--c) 32%,transparent)}.rb-theme-night mark.rb-highlight{background:color-mix(in srgb,var(--c) 30%,transparent);color:#e4e4de}mark.rb-underline{text-decoration:underline 2px var(--c);text-underline-offset:.22em;text-decoration-skip-ink:none}mark.rb-wavy{text-decoration:underline wavy 1.5px var(--c);text-underline-offset:.28em;text-decoration-skip-ink:none}mark.rb-text{color:var(--c)}.rb-theme-night mark.rb-text{color:color-mix(in srgb,var(--c) 80%,#fff)}mark.rb-note{text-decoration:underline dotted 1.5px color-mix(in srgb,var(--color-primary) 70%,transparent);text-underline-offset:.28em;text-decoration-skip-ink:none}.rb-note-jump{position:relative}.rb-note-jump svg{position:absolute;left:3px;bottom:.3em;box-sizing:content-box;width:.78em;height:.78em;padding:.16em;border-radius:.3em;background:color-mix(in srgb,var(--color-primary) 26%,var(--rb-paper));color:var(--color-primary);cursor:pointer;transition:background .15s,transform .15s}.rb-note-jump svg:hover{background:color-mix(in srgb,var(--color-primary) 42%,var(--rb-paper));transform:scale(1.12)}mark.rb-mark.rb-noted{cursor:pointer}.rb-scroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.rb-article{box-sizing:border-box;max-width:760px;min-height:100%;margin:0 auto;padding:44px 56px 120px;background:var(--rb-paper)}.rb-scroll-section{content-visibility:auto;contain-intrinsic-size:auto 2400px}.rb-scroll-section+.rb-scroll-section{margin-top:2.4em;padding-top:1.6em;border-top:1px solid var(--rb-rule)}.rb-page.narrow .rb-article{padding:24px 20px 80px}.rb-cover-stage{position:absolute;inset:0;overflow:hidden;-webkit-user-select:text;user-select:text}.rb-sheet{position:absolute;top:50%;left:50%;overflow:hidden;border-radius:4px;background:var(--rb-paper);box-shadow:0 1px 3px #0000000f,0 10px 30px -14px #00000038;will-change:transform}.rb-sheet.moving{box-shadow:8px 0 26px #00000038,0 1px 3px #0000000f}.rb-sheet.spread:after{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 24px);width:48px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.06) 50%,transparent);pointer-events:none}.rb-page.narrow .rb-sheet{border-radius:0;box-shadow:none}.rb-page.narrow .rb-sheet.moving{box-shadow:6px 0 20px #0003}.rb-viewport{position:absolute;overflow:hidden}.rb-folio{position:absolute;left:0;right:0;text-align:center;font-size:12px;color:var(--rb-text-2);font-variant-numeric:tabular-nums;pointer-events:none}.rb-flip-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.rb-flip-book{position:relative;flex:none}.rb-flip-page{overflow:hidden;background:var(--rb-paper)}.rb-flip-page.--left{box-shadow:inset -22px 0 26px -22px #00000038}.rb-flip-page.--right{box-shadow:inset 22px 0 26px -22px #00000038}.rb-page.narrow .rb-flip-page.--right{box-shadow:none}.rb-nav{position:absolute;z-index:5;top:50%;display:flex;align-items:center;justify-content:center;width:40px;height:72px;margin-top:-36px;padding:0;border:none;border-radius:10px;background:none;color:var(--rb-text-2);opacity:0;cursor:pointer;transition:opacity .2s,background .2s}.rb-stage:hover .rb-nav{opacity:.7}.rb-nav:hover{opacity:1;background:color-mix(in srgb,var(--rb-text) 6%,transparent)}.rb-nav.prev{left:4px}.rb-nav.next{right:4px}@media(hover:none){.rb-nav{display:none}}.rb-measuring{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--rb-bg);font-size:13px;color:var(--rb-text-2);font-variant-numeric:tabular-nums}.rb-menu{position:fixed;z-index:1000;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:14px;background:var(--color-container-bg);box-shadow:0 10px 30px #0000002e,0 0 0 1px var(--color-divider);-webkit-user-select:none;user-select:none;animation:apFade .12s ease both}.rb-menu-colors{display:flex;justify-content:space-between;gap:6px;padding:4px 6px 2px}.rb-dot{width:20px;height:20px;padding:0;border:none;border-radius:50%;background:var(--c);cursor:pointer;transition:box-shadow .15s}.rb-dot.on{box-shadow:0 0 0 2px var(--color-container-bg),0 0 0 4px var(--c)}.rb-menu-actions{display:flex;align-items:stretch;gap:2px}.rb-menu-actions button{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:48px;padding:6px 4px 5px;border:none;border-radius:9px;background:none;color:var(--color-text-base);font:inherit;font-size:11px;white-space:nowrap;cursor:pointer}.rb-menu-actions button:hover{background:var(--color-container-subtle)}.rb-menu-actions button.on{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.rb-menu-actions button.danger:hover{color:var(--color-error)}.rb-menu-actions i{width:1px;margin:6px 3px;background:var(--color-divider)}@media(max-width:480px){.rb-menu-actions button{min-width:40px;padding:6px 2px 5px}}.rb-settings{position:fixed;z-index:900;top:60px;right:16px;display:flex;flex-direction:column;gap:14px;width:352px;padding:16px;border-radius:16px;background:var(--color-page-bg);color:var(--color-text-base);box-shadow:0 12px 36px #0000002e,0 0 0 1px var(--color-divider);animation:apFade .15s ease both}.rb-settings-row{display:flex;align-items:center;gap:12px}.rb-settings-row>label{flex:none;width:32px;font-size:13px;color:var(--color-text-secondary)}.rb-seg{flex:1;display:flex;gap:2px;padding:3px;border-radius:10px;background:var(--color-container-subtle)}.rb-seg button{flex:1;height:30px;padding:0 4px;border:none;border-radius:8px;background:none;color:var(--color-text-base);font:inherit;font-size:13px;white-space:nowrap;cursor:pointer}.rb-seg button.on{background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary);font-weight:600}.rb-stepper{flex:1;display:flex;align-items:center;justify-content:space-between;padding:3px;border-radius:10px;background:var(--color-container-subtle)}.rb-stepper button{display:flex;align-items:center;justify-content:center;width:56px;height:30px;border:none;border-radius:8px;background:var(--color-container-bg);color:var(--color-text-base);font:inherit;font-weight:600;cursor:pointer}[data-theme=dark] .rb-settings{background:#363636}[data-theme=dark] .rb-stepper button{background:#ffffff0f}.rb-stepper button:disabled{opacity:.35;cursor:default}.rb-stepper b{font-size:14px;font-variant-numeric:tabular-nums}.rb-themes{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rb-theme-swatch{display:flex;align-items:center;justify-content:center;gap:3px;height:34px;padding:0;border:1px solid var(--color-divider);border-radius:9px;font:inherit;font-size:12px;cursor:pointer}.rb-theme-swatch.on{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.rb-theme-swatch.t-auto{background:var(--color-container-bg);color:var(--color-text-base)}.rb-theme-swatch.t-paper{background:#f6f0e1;color:#3a2f22}.rb-theme-swatch.t-green{background:#e1edd8;color:#22301f}.rb-theme-swatch.t-night{background:#1b1b1b;color:#b8b8b2}@media(max-width:599.98px){.rb-settings{inset:auto 0 0;width:auto;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0}}.rb-side{--rb-side-w: min(440px, 40vw);position:relative;flex:none;width:0;height:100%;overflow:hidden;background:var(--color-page-bg);border-left:1px solid transparent;transition:width .32s cubic-bezier(.22,1,.36,1),border-color .32s}.rb-side.open{width:var(--rb-side-w);border-left-color:var(--color-divider)}.rb-side-inner{position:absolute;top:0;right:0;bottom:0;width:var(--rb-side-w);display:flex;flex-direction:column}.rb-side.left{--rb-side-w: min(320px, 28vw);border-left:none;border-right:1px solid transparent}.rb-side.left.open{border-right-color:var(--color-divider)}.rb-side.left .rb-side-inner{right:auto;left:0}.rb-side.resizing{transition:none}.rb-resizer{position:absolute;z-index:3;top:0;bottom:0;width:10px;cursor:col-resize;touch-action:none}.rb-resizer.left{left:-1px}.rb-resizer.right{right:-1px}.rb-resizer:after{content:"";position:absolute;top:0;bottom:0;width:2px;background:transparent;transition:background .15s}.rb-resizer.left:after{left:0}.rb-resizer.right:after{right:0}.rb-resizer:hover:after,.rb-side.resizing .rb-resizer:after{background:var(--color-primary)}body.rb-resizing{cursor:col-resize;user-select:none;-webkit-user-select:none}body.rb-resizing iframe{pointer-events:none}.rb-panel{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--color-page-bg);color:var(--color-text-base)}.rb-panel-hd{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;height:56px;padding:0 10px 0 18px}.rb-panel-title{min-width:0;display:flex;align-items:baseline;gap:8px;font-size:17px;font-weight:650}.rb-panel-title small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;color:var(--color-text-secondary)}.rb-tabs{display:flex;gap:4px;margin-left:-10px}.rb-tabs button{display:flex;align-items:center;gap:4px;padding:6px 10px;border:none;border-radius:8px;background:none;color:var(--color-text-secondary);font:inherit;font-size:16px;font-weight:650;cursor:pointer}.rb-tabs button.on{color:var(--color-text-base)}.rb-tabs small{padding:0 6px;border-radius:8px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);font-size:11px;line-height:18px;font-variant-numeric:tabular-nums}.rb-panel-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 16px}.rb-toc-item{display:block;width:100%;padding:9px 12px;border:none;border-radius:10px;background:none;color:var(--color-text-base);font:inherit;font-size:14px;line-height:1.4;text-align:left;cursor:pointer}.rb-toc-item:hover{background:var(--color-container-bg)}.rb-toc-item.lv1{font-weight:650}.rb-toc-item.lv3{padding-left:26px;font-size:13px;color:var(--color-text-secondary)}.rb-toc-item.on{background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font-weight:600}.rb-mark-item{display:flex;align-items:flex-start;margin:0 4px 8px;overflow:hidden;border-left:3px solid var(--c);border-radius:10px;background:var(--color-container-bg)}.rb-mark-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;padding:10px 4px 10px 12px;border:none;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.rb-mark-meta{min-width:0;display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--c)}.rb-mark-meta em{min-width:0;margin-left:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-style:normal;font-weight:400;color:var(--color-text-secondary)}.rb-mark-text{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.6}.rb-mark-item.lost{opacity:.55}.rb-mark-item.lost .rb-mark-main{cursor:default}.rb-mark-del{flex:none;display:flex;padding:10px;border:none;background:none;color:var(--color-text-secondary);cursor:pointer;opacity:0;transition:opacity .15s,color .15s}.rb-mark-item:hover .rb-mark-del,.rb-mark-del:focus-visible{opacity:1}.rb-mark-del:hover{color:var(--color-error)}@media(hover:none){.rb-mark-del{opacity:.7}}.rb-panel-more{display:flex;justify-content:center;padding:12px}.rb-panel-empty{padding:48px 16px;text-align:center;white-space:pre-line;font-size:13px;line-height:1.8;color:var(--color-text-secondary)}.rb-panel-empty button{padding:0;border:none;background:none;color:var(--color-primary);font:inherit;cursor:pointer}.rb-note-body{flex:1;min-height:0;width:auto;margin:0 12px 12px}.rb-note-body .note-editor-content blockquote{margin:.6em 0;padding:.2em 0 .2em .9em;border-left:3px solid var(--color-primary);color:var(--color-text-secondary);font-family:Georgia,Times New Roman,serif}.rb-seg button:disabled{cursor:default}.rb-settings-row.off{opacity:.45}.rb-wv-part{margin:0 0 .2em;font-size:.78em;letter-spacing:.03em;text-align:left;color:var(--rb-text-2)}.rb-wv{padding:0 .12em;border-radius:3px;background:color-mix(in srgb,var(--color-primary) 9%,transparent);color:color-mix(in srgb,var(--color-primary) 72%,var(--rb-text));cursor:pointer;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background .15s}.rb-wv:hover{background:color-mix(in srgb,var(--color-primary) 18%,transparent)}.rb-wv.rep{background:none;text-decoration:underline dotted 1.5px color-mix(in srgb,var(--color-primary) 55%,transparent);text-underline-offset:.25em;text-decoration-skip-ink:none}.rb-wv.rep:hover{background:color-mix(in srgb,var(--color-primary) 10%,transparent)}.rb-theme-night .rb-wv{color:color-mix(in srgb,var(--color-primary) 70%,#E4E4DE)}.rb-wv-zh{margin-left:.15em;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;font-size:.7em;font-weight:400;color:var(--rb-text-2);user-select:none;-webkit-user-select:none}.wv-hint-inline .rb-wv-zh:before{content:"("}.wv-hint-inline .rb-wv-zh:after{content:")"}.wv-hint-hide .rb-wv-zh{display:none}.wv-hint-ruby .rb-typo{line-height:calc(var(--rb-lh) + .55)}.wv-hint-ruby .rb-wv{position:relative}.wv-hint-ruby .rb-wv-zh{position:absolute;left:.12em;bottom:calc(100% - .2em);margin:0;font-size:.58em;line-height:1;white-space:nowrap;pointer-events:none}.rb-chunk-card{position:fixed;z-index:1000;width:300px;max-width:calc(100vw - 16px);padding:14px 14px 8px;border-radius:14px;background:var(--color-container-bg);color:var(--color-text-base);box-shadow:0 10px 30px #0000002e,0 0 0 1px var(--color-divider);animation:apFade .12s ease both}.rb-chunk-hd{display:flex;align-items:center;gap:8px}.rb-chunk-hd b{min-width:0;overflow-wrap:anywhere;font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:650;line-height:1.35}.rb-chunk-hd .speaker-icon{flex:none}.rb-chunk-zh{margin-top:6px;font-size:15px;font-weight:600;color:var(--color-primary)}.rb-chunk-nuance{margin-top:6px;font-size:13px;line-height:1.65;color:var(--color-text-secondary)}.rb-chunk-meta{margin-top:8px;font-size:11.5px;color:var(--color-text-secondary);opacity:.8}.rb-chunk-actions{display:flex;gap:4px;margin-top:10px;padding-top:6px;border-top:1px solid var(--color-divider)}.rb-chunk-actions button{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;height:32px;border:none;border-radius:9px;background:none;color:var(--color-text-base);font:inherit;font-size:13px;cursor:pointer}.rb-chunk-actions button:hover{background:var(--color-container-subtle)}.rb-chunk-actions button.on{color:var(--color-primary)}.rb-chunk-card{--nwc-muted: var(--color-text-secondary);--nwc-warn: var(--color-warning);--nwc-red: var(--color-error);--nwc-line: color-mix(in srgb, var(--color-divider) 70%, transparent)}.rb-chunk-card.practice{width:380px}.rb-chunk-card .nwc-spell{margin-top:0;line-height:1.65}.rb-chunk-card .nwc-spell-prompt{font-weight:600;color:var(--color-primary)}.rb-chunk-list-hd{padding:2px 12px 8px;font-size:12px;color:var(--color-text-secondary)}.rb-chunk-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;border-radius:10px;background:none;color:var(--color-text-base);font:inherit;text-align:left;cursor:pointer}.rb-chunk-item:hover{background:var(--color-container-bg)}.rb-chunk-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rb-chunk-item-main b{font-family:Georgia,Times New Roman,serif;font-size:14.5px;font-weight:600}.rb-chunk-item-main span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;color:var(--color-text-secondary)}.rb-chunk-item em{flex:none;padding:0 6px;border-radius:8px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary);font-size:11px;font-style:normal;line-height:18px;font-variant-numeric:tabular-nums}.stf__parent{position:relative;display:block;box-sizing:border-box;transform:translateZ(0);-ms-touch-action:pan-y;touch-action:pan-y}.sft__wrapper{position:relative;width:100%;box-sizing:border-box}.stf__parent canvas{position:absolute;width:100%;height:100%;left:0;top:0}.stf__block{position:absolute;width:100%;height:100%;box-sizing:border-box;perspective:2000px}.stf__item{display:none;position:absolute;transform-style:preserve-3d}.stf__outerShadow,.stf__innerShadow,.stf__hardShadow,.stf__hardInnerShadow{position:absolute;left:0;top:0}.lsr-page .ap-topbar{position:relative}.lsr-title{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:32%}.lsr-progress{width:clamp(180px,26vw,340px);margin-left:4px}.lsr-progress .wl-progress-count{margin:0 10px;font-size:13px}@media(max-width:720px){.lsr-progress{width:clamp(140px,40vw,220px)}.lsr-progress .wl-progress-tag,.lsr-title{display:none}}.lsr-page{--lsr-side: 72px}.lsr-stage{position:relative;flex:1;min-height:0;display:flex}.lsr-scroll{padding:8px var(--lsr-side) 12px}.lsr-card{--lsr-pad: 16px;width:100%;max-width:760px;margin:0 auto;padding:var(--lsr-pad);border-radius:20px;overflow:hidden;background:var(--color-container-bg);animation:lsrIn .4s cubic-bezier(.22,.8,.24,1) both;will-change:transform,opacity}.lsr-card.from-left{animation-name:lsrInLeft}.lsr-deck{position:relative}.lsr-card.leave{position:absolute;left:0;right:0;top:0;z-index:1;pointer-events:none;animation:lsrOutLeft .4s cubic-bezier(.4,0,.6,1) both}.lsr-card.leave.to-right{animation-name:lsrOutRight}@keyframes lsrIn{0%{opacity:0;transform:translate(48px) scale(.985)}to{opacity:1;transform:none}}@keyframes lsrInLeft{0%{opacity:0;transform:translate(-48px) scale(.985)}to{opacity:1;transform:none}}@keyframes lsrOutLeft{0%{opacity:1;transform:none}to{opacity:0;transform:translate(-48px) scale(.985)}}@keyframes lsrOutRight{0%{opacity:1;transform:none}to{opacity:0;transform:translate(48px) scale(.985)}}.lsr-img{display:block;width:100%;aspect-ratio:3 / 2;max-height:54vh;object-fit:cover;border-radius:14px;background:var(--color-container-subtle)}.lsr-img-empty{display:flex;align-items:center;justify-content:center;color:var(--color-text-unselected)}.lsr-lines{display:flex;flex-direction:column;gap:6px;padding:12px 0 0}.lsr-line{display:flex;gap:12px;padding:12px 14px;border-radius:14px;transition:background-color .3s ease,opacity .25s ease}.lsr-line.settle{transition:none}.lsr-line.active{background:color-mix(in srgb,var(--color-text-base) 6%,transparent)}.lsr-line:not(.active):not(.done){opacity:.55}.lsr-line-body{flex:1;min-width:0}.lsr-avatar{flex:none;width:34px;height:34px;border-radius:50%;object-fit:cover;display:inline-flex;align-items:center;justify-content:center;font-family:Inter,MiSans,sans-serif;font-size:15px;font-weight:700}.lsr-avatar.narration{color:var(--color-text-secondary);background:var(--color-container-subtle)}.lsr-who{display:flex;align-items:baseline;gap:6px;margin-bottom:4px;font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.lsr-who b{font-weight:600}.lsr-line.narration .lsr-who b{font-weight:500}.lsr-en{font-size:19px;line-height:1.6;font-family:Inter,MiSans,sans-serif}.lsr-line.narration .lsr-en{color:var(--color-text-secondary)}.lsr-en .ln-w,.lsr-en .ln-w.new,.lsr-en .ln-w.old,.lsr-en .ln-w.known{padding:0;background:color-mix(in srgb,var(--color-primary) 14%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary);text-decoration:none;font-weight:400;-webkit-text-stroke:.45px currentColor;paint-order:stroke fill}.lsr-line .ln-line-zh{margin-top:4px;font-size:13px;line-height:1.5}.lsr-spell-line{font-family:Inter,MiSans,sans-serif;font-size:19px;line-height:1.6;padding:0}.lsr-word{white-space:nowrap}.lsr-ch{color:var(--color-text-base)}.lsr-ch.sep{color:var(--color-text-secondary)}.lsr-cell{display:inline-block;vertical-align:-.2em;width:.5em;height:1.2em;margin:0 1.5px;border-bottom:2px solid color-mix(in srgb,var(--color-text-base) 25%,transparent);transition:border-color .15s ease}.lsr-cell.active{border-bottom-color:var(--color-primary);animation:lsrBlink 1.1s ease-in-out infinite}@keyframes lsrBlink{50%{border-bottom-color:color-mix(in srgb,var(--color-primary) 35%,transparent)}}.lsr-spell .lsr-ch{transition:color .2s ease}.lsr-spell.correct .lsr-ch{color:var(--color-primary)}.lsr-line.correct{background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.lsr-line.settle{animation:lsrSettle .5s ease .08s both}.lsr-line.settle .lsr-en{animation:lsrInk .4s ease .08s both}.lsr-line.settle .lsr-en .ln-w{animation:lsrMark .35s ease .15s both}.lsr-line.settle .lsr-redo{animation:lsrRedoIn .3s ease .35s both}@keyframes lsrSettle{0%{background:color-mix(in srgb,var(--color-primary) 14%,transparent)}to{background:transparent}}@keyframes lsrInk{0%{color:var(--color-primary)}}@keyframes lsrMark{0%{background-color:transparent;box-shadow:0 0 0 2px transparent;-webkit-text-stroke-width:0}}@keyframes lsrRedoIn{0%{opacity:0}}.lsr-spell.error .lsr-cell.active{border-bottom-color:var(--color-error);animation:none}.lsr-spell.shake .lsr-spell-line{animation:qzShake .38s ease}.lsr-pending .lsr-word{position:relative}.lsr-pending .lsr-word:after{content:"";position:absolute;left:1px;right:1px;top:50%;height:8px;margin-top:-3px;border-radius:4px;background:color-mix(in srgb,var(--color-text-base) 12%,transparent)}.lsr-pending .lsr-cell{border-bottom-color:transparent}.lsr-pending .lsr-ch.sep{color:transparent}.lsr-side{position:absolute;top:0;bottom:0;z-index:2;width:var(--lsr-side);display:flex;align-items:center;justify-content:center;border:none;background:none;padding:0;cursor:pointer;color:var(--color-text-base)}.lsr-side.left{left:0}.lsr-side.right{right:0}.lsr-side span{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-container-bg);transition:background-color .15s ease,transform .15s ease,color .15s ease}.lsr-side:hover:not(:disabled) span{background:var(--color-card-hover);transform:scale(1.06)}.lsr-side:disabled{cursor:default}.lsr-side:disabled span{opacity:.25}.lsr-side.right.ready span{color:#000}[data-theme=dark] .lsr-side.right.ready span{color:#fff}.lsr-side.right.locked{cursor:not-allowed;color:var(--color-text-secondary)}.lsr-side.right.nudge span{animation:qzShake .38s ease}.lsr-foot{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 16px calc(14px + env(safe-area-inset-bottom))}.lsr-tip{font-size:12px;color:var(--color-text-secondary);text-align:center}.lsr-keyboard{margin-top:12px}.lsr-settings-wrap{position:relative}.lsr-settings{position:absolute;right:0;top:calc(100% + 6px);z-index:30;width:280px;padding:12px;border-radius:16px;background:var(--color-container-bg);border:1px solid var(--color-divider);box-shadow:0 8px 28px #00000038;animation:apFade .15s ease both}.lsr-settings-title{padding:2px 4px 10px;font-size:15px;font-weight:700;color:var(--color-text-base)}.lsr-switch-row{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border:none;border-radius:12px;cursor:pointer;text-align:left;font:inherit;background:var(--color-container-subtle);color:var(--color-text-base)}.lsr-switch-icon{width:30px;height:30px;flex:none;border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 14%,transparent)}.lsr-switch-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.lsr-switch-text b{font-size:14px;font-weight:600}.lsr-switch-text small{font-size:12px;color:var(--color-text-secondary)}.lsr-switch{flex:none;position:relative;width:40px;height:24px;border-radius:12px;background:var(--color-text-unselected);transition:background-color .2s ease}.lsr-switch i{position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s ease}.lsr-switch.on{background:var(--color-primary)}.lsr-switch.on i{transform:translate(16px)}@media(max-width:720px){.lsr-page{--lsr-side: 0px}.lsr-scroll{padding:8px 12px 12px}.lsr-side{width:52px;top:20%;bottom:auto;height:30%}.lsr-side.left{left:4px}.lsr-side.right{right:4px}.lsr-side span{width:40px;height:40px;background:color-mix(in srgb,var(--color-container-bg) 85%,transparent)}.lsr-card{--lsr-pad: 10px}.lsr-img{border-radius:12px}.lsr-lines{padding:8px 0 0}.lsr-line{gap:10px;padding:10px}.lsr-avatar{width:30px;height:30px;font-size:13px}.lsr-en,.lsr-spell-line{font-size:17px}}.lsr-redo{flex:none;align-self:center;display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 10px;border:none;border-radius:15px;font:inherit;font-size:12px;font-weight:600;cursor:pointer;color:var(--color-text-secondary);background:var(--color-container-subtle);opacity:.55;transition:opacity .15s ease,background-color .15s ease,color .15s ease}.lsr-line:hover .lsr-redo{opacity:1}.lsr-redo:hover{color:var(--color-text-base);background:var(--color-card-hover)}.lsr-redo svg{transition:transform .3s ease}.lsr-redo:hover svg{transform:rotate(-45deg)}@media(hover:none){.lsr-redo{opacity:1}}.lsr-line-actions{flex:none;align-self:center;display:flex;gap:6px}.lsr-line-actions .lsr-redo{align-self:auto}.lsr-grammar:hover{color:var(--color-primary)}.lsr-page.ce-page{flex-direction:row}.lsr-page .ce-main{position:relative}.lsr-page .lsr-settings-wrap{display:flex;align-items:center;gap:8px}@media(max-width:720px){.lsr-line-actions{flex-direction:column;gap:4px}.lsr-page .ce-top-label{display:none}}
