:root{--action-sheet-z: 1100;--action-confirm-z: 1200;--action-toast-z: 1300}.action-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--action-sheet-z);background:var(--overlay, rgba(15, 23, 42, .48));animation:action-overlay-in .15s ease;height:100vh;height:100lvh}.action-sheet{position:fixed;z-index:calc(var(--action-sheet-z) + 1);right:0;bottom:0;left:0;height:auto;max-height:min(88dvh,640px);box-sizing:border-box;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 0 var(--safe-area-bottom, env(safe-area-inset-bottom, 0px));border-radius:20px 20px 0 0;background-color:var(--bg-elevated, #fff);box-shadow:0 -4px 24px #0000004d;animation:action-sheet-in .25s ease;touch-action:pan-y;-webkit-overflow-scrolling:touch}.action-sheet__summary{padding:20px 24px 16px;border-bottom:1px solid var(--border, rgba(15, 23, 42, .08));text-align:center}.action-sheet__title{display:-webkit-box;min-width:0;margin:0;overflow:hidden;color:var(--text-primary);font-size:18px;font-weight:600;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.action-sheet__group{margin:0;padding:8px 20px 16px;background-color:inherit}.action-sheet__item{display:flex;width:100%;min-height:80px;align-items:center;gap:14px;padding:16px 12px;border:0;border-radius:12px;color:var(--text-primary);background:transparent;font:inherit;font-size:16px;font-weight:550;text-align:left;cursor:pointer;transition:background-color .12s ease}.action-sheet__item:disabled{opacity:.45;cursor:not-allowed}.action-sheet__item:not(:disabled):active{background:#0f172a0d}.action-sheet__item.is-danger{color:var(--error, #d35d61)}.action-sheet__item-icon{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:12px;color:inherit;background:var(--bg-secondary, #edf1f6)}.action-sheet__item.is-favorite .action-sheet__item-icon{color:#b7791f;background:#f59e0b26}.action-sheet__item.is-rename .action-sheet__item-icon{color:var(--accent, #4f46e5);background:#6366f126}.action-sheet__item.is-delete .action-sheet__item-icon{color:var(--error, #d35d61);background:#d35d6124}.action-popover{position:fixed;z-index:calc(var(--action-sheet-z) + 1);min-width:220px;max-width:min(280px,calc(100vw - 16px));padding:6px;border:1px solid var(--border, rgba(15, 23, 42, .1));border-radius:14px;background:var(--bg-elevated, #fff);box-shadow:0 12px 36px #0f172a29;animation:action-overlay-in .16s ease}.action-popover__item{display:flex;width:100%;min-height:44px;align-items:center;gap:12px;padding:0 12px;border:0;border-radius:10px;color:var(--text-primary);background:transparent;font:inherit;font-size:14px;font-weight:550;text-align:left;cursor:pointer}.action-popover__item:hover:not(:disabled),.action-popover__item:active:not(:disabled){background:#0f172a0d}.action-popover__item.is-danger{color:var(--error, #d35d61)}.action-popover__item:disabled{opacity:.45;cursor:not-allowed}.rename-sheet{position:fixed;z-index:calc(var(--action-sheet-z) + 1);right:0;bottom:0;left:0;padding:16px 16px calc(16px + var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));border-radius:22px 22px 0 0;background:var(--bg-elevated, #fff);box-shadow:0 -8px 32px #0f172a2e;animation:action-sheet-in .24s ease}.rename-sheet h3{margin:0 0 12px;font-size:17px;font-weight:700}.rename-sheet input{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--border, #dce3ea);border-radius:12px;color:var(--text-primary);background:var(--bg-card, #fff);font:inherit;font-size:16px;outline:none}.rename-sheet input:focus{border-color:var(--accent, #4056b5);box-shadow:0 0 0 3px var(--accent-soft, rgba(64, 86, 181, .16))}.rename-sheet__error{margin:8px 2px 0;color:var(--error, #d35d61);font-size:13px}.rename-sheet__actions{display:flex;gap:10px;margin-top:14px}.rename-sheet__actions button{flex:1;min-height:48px;border:0;border-radius:12px;font:inherit;font-size:15px;font-weight:650;cursor:pointer}.rename-sheet__actions .ghost{color:var(--text-primary);background:var(--bg-secondary, #edf1f6)}.rename-sheet__actions .primary{color:#fff;background:var(--accent, #4056b5)}.rename-sheet__actions button:disabled{opacity:.5;cursor:not-allowed}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100lvh;z-index:var(--action-confirm-z);display:grid;place-items:center;padding:24px;background:#0f172a73;animation:action-overlay-in .2s ease}.confirm-dialog{width:min(400px,100%);padding:22px 20px 16px;border-radius:18px;background:var(--bg-elevated, #fff);box-shadow:0 18px 48px #0f172a38}.confirm-dialog h3{margin:0 0 10px;font-size:18px;font-weight:750}.confirm-dialog p{margin:0;color:var(--text-secondary, #667085);font-size:14px;line-height:1.5;white-space:pre-line}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.confirm-dialog__actions button{min-height:44px;min-width:88px;padding:0 16px;border:0;border-radius:12px;font:inherit;font-size:14px;font-weight:650;cursor:pointer}.confirm-dialog__actions .ghost{color:var(--text-primary);background:var(--bg-secondary, #edf1f6)}.confirm-dialog__actions .danger{color:#fff;background:var(--error, #d35d61)}.confirm-dialog__actions .primary{color:#fff;background:var(--accent, #4056b5)}.confirm-dialog__actions button:disabled{opacity:.5;cursor:not-allowed}.app-toast-host{position:fixed;z-index:var(--action-toast-z);left:50%;bottom:calc(24px + var(--safe-area-bottom, 0px));width:min(420px,calc(100vw - 32px));padding:12px 16px;border-radius:12px;color:#fff;background:#182230eb;box-shadow:0 10px 28px #0f172a38;font-size:14px;font-weight:600;text-align:center;transform:translate(-50%);animation:action-overlay-in .18s ease;pointer-events:none}@keyframes action-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes action-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}:root[data-theme=midnight] .action-sheet,:root:not([data-theme=daylight]) .action-sheet,:root[data-theme=midnight] .rename-sheet,:root:not([data-theme=daylight]) .rename-sheet,:root[data-theme=midnight] .confirm-dialog,:root:not([data-theme=daylight]) .confirm-dialog,:root[data-theme=midnight] .action-popover,:root:not([data-theme=daylight]) .action-popover{background:var(--bg-elevated, #111837)}:root[data-theme=midnight] .action-sheet__item:not(:disabled):active,:root:not([data-theme=daylight]) .action-sheet__item:not(:disabled):active,:root[data-theme=midnight] .action-popover__item:hover:not(:disabled),:root:not([data-theme=daylight]) .action-popover__item:hover:not(:disabled){background:#ffffff0f}html{overscroll-behavior-x:none;background:var(--bg-primary)}body{margin:0!important;padding:0!important;overscroll-behavior-x:none;overflow-x:hidden;background:var(--bg-primary);color:var(--text-primary);font-family:Noto Sans JP,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,select{font:inherit;color:inherit;border:0;background:transparent;cursor:pointer}*{box-sizing:border-box}.landing[data-v-dfc6ff70]{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg-primary, #f5f7fa);color:var(--text-primary, #182230);font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}.landing>main[data-v-dfc6ff70]{flex:1 0 auto;width:100%}.landing-header[data-v-dfc6ff70]{width:min(100%,1100px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;padding-left:max(22px,var(--safe-area-left, 0px));padding-right:max(22px,var(--safe-area-right, 0px))}.landing-logo[data-v-dfc6ff70]{display:inline-flex;align-items:baseline;font-size:24px;font-weight:700;letter-spacing:-.5px;line-height:1;background:var(--accent-gradient, linear-gradient(135deg, #4056b5, #5870d5));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.landing-logo span[data-v-dfc6ff70]{background:inherit;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.landing-login-link[data-v-dfc6ff70]{font-size:14px;font-weight:600;color:var(--accent, #4056b5);text-decoration:none;padding:8px 14px;border-radius:10px}.landing-login-link[data-v-dfc6ff70]:hover{background:var(--accent-soft, #e9edff)}.landing-login-link[data-v-dfc6ff70]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px}.landing-hero[data-v-dfc6ff70]{width:min(100%,1100px);margin:0 auto;display:grid;grid-template-columns:1fr;gap:28px;align-items:center;padding:20px 22px 40px;padding-left:max(22px,var(--safe-area-left, 0px));padding-right:max(22px,var(--safe-area-right, 0px))}.landing-hero-title[data-v-dfc6ff70]{margin:0 0 14px;font-size:34px;font-weight:800;line-height:1.3;letter-spacing:-.02em;color:var(--text-primary, #182230)}.landing-hero-brand[data-v-dfc6ff70]{color:var(--accent, #4056b5)}.landing-hero-subtitle[data-v-dfc6ff70]{margin:0 0 22px;font-size:15px;line-height:1.7;color:var(--text-secondary, #667085)}.landing-hero-actions[data-v-dfc6ff70]{display:flex;flex-wrap:wrap;gap:12px}.landing-btn[data-v-dfc6ff70]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:12px;font-size:15px;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .08s ease,background-color .12s ease,border-color .12s ease}.landing-btn[data-v-dfc6ff70]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px}.landing-btn[data-v-dfc6ff70]:active{transform:scale(.985)}.landing-btn-primary[data-v-dfc6ff70]{background:var(--accent, #4056b5);border:1px solid var(--accent, #4056b5);color:#fff}.landing-btn-primary[data-v-dfc6ff70]:hover{background:var(--accent-dim, #314596);border-color:var(--accent-dim, #314596)}.landing-btn-ghost[data-v-dfc6ff70]{background:var(--bg-elevated, #fff);border:1px solid var(--border, #dce3ea);color:var(--accent, #4056b5)}.landing-btn-ghost[data-v-dfc6ff70]:hover{background:var(--accent-soft, #e9edff);border-color:var(--accent-soft, #e9edff)}.landing-demo[data-v-dfc6ff70]{width:100%;max-width:100%}.landing-demo-image[data-v-dfc6ff70]{display:block;width:100%;max-width:640px;height:auto;margin:0 auto;border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-card, 0 6px 22px rgba(24, 34, 48, .055));overflow:hidden}.landing-features[data-v-dfc6ff70]{width:min(100%,1100px);margin:0 auto;padding:0 22px 28px;padding-left:max(22px,var(--safe-area-left, 0px));padding-right:max(22px,var(--safe-area-right, 0px))}.landing-feature-row[data-v-dfc6ff70]{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-secondary, #667085)}.landing-feature-sep[data-v-dfc6ff70]{color:var(--border, #dce3ea)}.landing-footer[data-v-dfc6ff70]{flex-shrink:0;width:min(100%,1100px);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 18px;padding:16px 22px;padding-left:max(22px,var(--safe-area-left, 0px));padding-right:max(22px,var(--safe-area-right, 0px));padding-bottom:max(16px,calc(var(--safe-area-bottom, 0px) + 12px));border-top:1px solid var(--border, #dce3ea);font-size:13px;color:var(--text-muted, #8b95a7)}@media (min-width: 860px){.landing-hero[data-v-dfc6ff70]{grid-template-columns:1.05fr .95fr;gap:48px;padding-top:56px}.landing-hero-title[data-v-dfc6ff70]{font-size:44px}.landing-hero-subtitle[data-v-dfc6ff70]{font-size:17px}.landing-logo[data-v-dfc6ff70]{font-size:27px}}.app-logo[data-v-cacd3f34]{display:inline-flex;align-items:baseline;margin:0;font-weight:700;letter-spacing:-.5px;line-height:1}.app-logo.size-header[data-v-cacd3f34]{font-size:27px;background:linear-gradient(105deg,#e34aff,#308bff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-logo.size-header span[data-v-cacd3f34]{background:inherit;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.app-logo.size-auth[data-v-cacd3f34]{font-size:36px;background:var(--accent-gradient, linear-gradient(135deg, #4056b5, #5870d5));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.app-logo.size-auth span[data-v-cacd3f34]{background:inherit;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@media (max-width: 600px){.app-logo.size-header[data-v-cacd3f34]{font-size:24px}.app-logo.size-auth[data-v-cacd3f34]{font-size:32px}}.password-input[data-v-f64105a0]{position:relative;display:block;width:100%}.password-input__field[data-v-f64105a0]{width:100%;min-height:48px;padding:13px 48px 13px 16px;border:1px solid var(--border, #dce3ea);border-radius:12px;font-size:16px;outline:none;background:var(--bg-elevated, #ffffff);transition:border-color .15s,background-color .15s;font-family:inherit;color:var(--text-primary, #182230);line-height:1.25}.password-input.is-focused .password-input__field[data-v-f64105a0],.password-input__field[data-v-f64105a0]:focus{border-color:var(--accent, #4056b5);background:#fff}.password-input__field[data-v-f64105a0]:disabled{opacity:.7;cursor:not-allowed}.password-input__field[data-v-f64105a0]::-ms-reveal,.password-input__field[data-v-f64105a0]::-ms-clear{display:none}.password-input__toggle[data-v-f64105a0]{position:absolute;top:50%;right:4px;transform:translateY(-50%);width:40px;height:40px;margin:0;padding:0;border:none;border-radius:10px;background:transparent;color:var(--text-muted, #8b95a7);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.password-input__toggle[data-v-f64105a0]:hover:not(:disabled){color:var(--text-secondary, #667085);background:#1822300a}.password-input__toggle[data-v-f64105a0]:focus-visible{outline:2px solid var(--accent, #4056b5);outline-offset:1px;color:var(--text-secondary, #667085)}.password-input__toggle[data-v-f64105a0]:disabled{opacity:.5;cursor:not-allowed}[data-v-599c3c9d]{margin:0;padding:0;box-sizing:border-box}.auth-page[data-v-599c3c9d]{background:var(--bg-primary, #f5f7fa);font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:28px 24px;padding-top:max(28px,var(--safe-area-top, 0px));padding-right:max(24px,var(--safe-area-right, 0px));padding-bottom:max(28px,var(--safe-area-bottom, 0px));padding-left:max(24px,var(--safe-area-left, 0px));animation:pageIn-599c3c9d .25s ease}@keyframes pageIn-599c3c9d{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.auth-box[data-v-599c3c9d]{width:100%;max-width:440px;margin:0 auto}.auth-logo[data-v-599c3c9d]{display:flex;justify-content:center;margin-bottom:28px}.auth-card[data-v-599c3c9d]{background:var(--card-gradient, #fff);border:1px solid var(--card-border, #dce3ea);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-card, 0 6px 22px rgba(24, 34, 48, .055));padding:28px 22px 30px}.auth-card-head[data-v-599c3c9d]{text-align:center;margin-bottom:22px}.auth-title[data-v-599c3c9d]{margin:0 0 8px;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #182230)}.auth-subtitle[data-v-599c3c9d]{margin:0;font-size:14px;line-height:1.6;color:var(--text-secondary, #667085)}.field[data-v-599c3c9d]{margin-bottom:16px}.field label[data-v-599c3c9d]{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--text-secondary, #667085)}.field>input[data-v-599c3c9d]{width:100%;min-height:48px;padding:13px 16px;border:1px solid var(--border, #dce3ea);border-radius:12px;font-size:16px;outline:none;background:var(--bg-elevated, #fff);font-family:inherit;color:var(--text-primary, #182230);transition:border-color .15s,background-color .15s}.field>input[data-v-599c3c9d]::placeholder{color:var(--text-muted, #8b95a7)}.field>input[data-v-599c3c9d]:focus{border-color:var(--accent, #4056b5);background:#fff}.btn-submit[data-v-599c3c9d]{width:100%;min-height:44px;margin-top:4px;padding:0 16px;border:1px solid var(--accent, #4056b5);border-radius:12px;background:var(--accent, #4056b5);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,transform .08s ease}.btn-submit[data-v-599c3c9d]:hover:not(:disabled){background:var(--accent-dim, #314596);border-color:var(--accent-dim, #314596)}.btn-submit[data-v-599c3c9d]:active:not(:disabled){transform:scale(.985)}.btn-submit[data-v-599c3c9d]:disabled{background:var(--border, #dce3ea);border-color:var(--border, #dce3ea);color:var(--text-muted, #8b95a7);cursor:not-allowed}.btn-submit[data-v-599c3c9d]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px}.error[data-v-599c3c9d]{color:#e53935;font-size:13px;text-align:center;margin-bottom:12px;min-height:20px;line-height:1.45}.notice[data-v-599c3c9d]{color:#2e7d32;font-size:13px;text-align:center;margin-bottom:12px}.switch[data-v-599c3c9d]{text-align:center;margin-top:16px;font-size:13px;color:var(--text-secondary, #667085)}.switch a[data-v-599c3c9d]{color:var(--accent, #4056b5);font-weight:700;text-decoration:none}.switch a[data-v-599c3c9d]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px;border-radius:6px}[data-v-becbfcf0]{margin:0;padding:0;box-sizing:border-box}.auth-page[data-v-becbfcf0]{background:var(--bg-primary, #f5f7fa);font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:28px 24px;padding-top:max(28px,var(--safe-area-top, 0px));padding-right:max(24px,var(--safe-area-right, 0px));padding-bottom:max(28px,var(--safe-area-bottom, 0px));padding-left:max(24px,var(--safe-area-left, 0px));animation:pageIn-becbfcf0 .25s ease}@keyframes pageIn-becbfcf0{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.auth-box[data-v-becbfcf0]{width:100%;max-width:440px;margin:0 auto}.auth-logo[data-v-becbfcf0]{display:flex;justify-content:center;margin-bottom:28px}.auth-card[data-v-becbfcf0]{background:var(--card-gradient, #fff);border:1px solid var(--card-border, #dce3ea);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-card, 0 6px 22px rgba(24, 34, 48, .055));padding:28px 22px 30px}.auth-card-head[data-v-becbfcf0]{text-align:center;margin-bottom:22px}.auth-title[data-v-becbfcf0]{margin:0 0 8px;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #182230)}.auth-subtitle[data-v-becbfcf0]{margin:0;font-size:14px;line-height:1.6;color:var(--text-secondary, #667085)}.field[data-v-becbfcf0]{margin-bottom:16px}.field label[data-v-becbfcf0]{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--text-secondary, #667085)}.field>input[data-v-becbfcf0]{width:100%;min-height:48px;padding:13px 16px;border:1px solid var(--border, #dce3ea);border-radius:12px;font-size:16px;outline:none;background:var(--bg-elevated, #fff);font-family:inherit;color:var(--text-primary, #182230);transition:border-color .15s,background-color .15s}.field>input[data-v-becbfcf0]::placeholder{color:var(--text-muted, #8b95a7)}.field>input[data-v-becbfcf0]:focus{border-color:var(--accent, #4056b5);background:#fff}.btn-submit[data-v-becbfcf0]{width:100%;min-height:44px;margin-top:4px;padding:0 16px;border:1px solid var(--accent, #4056b5);border-radius:12px;background:var(--accent, #4056b5);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,transform .08s ease}.btn-submit[data-v-becbfcf0]:hover:not(:disabled){background:var(--accent-dim, #314596);border-color:var(--accent-dim, #314596)}.btn-submit[data-v-becbfcf0]:active:not(:disabled){transform:scale(.985)}.btn-submit[data-v-becbfcf0]:disabled{background:var(--border, #dce3ea);border-color:var(--border, #dce3ea);color:var(--text-muted, #8b95a7);cursor:not-allowed}.btn-submit[data-v-becbfcf0]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px}.error[data-v-becbfcf0],.info[data-v-becbfcf0]{font-size:13px;text-align:center;margin-bottom:10px;line-height:1.45}.error[data-v-becbfcf0]{color:#e53935}.info[data-v-becbfcf0]{color:#2e7d32}.action-row[data-v-becbfcf0]{text-align:center;margin-bottom:14px}.action-link[data-v-becbfcf0],.action-link-btn[data-v-becbfcf0]{color:var(--accent, #4056b5);font-size:14px;font-weight:600;text-decoration:none;background:none;border:none;cursor:pointer;padding:0}.action-link[data-v-becbfcf0]:focus-visible,.action-link-btn[data-v-becbfcf0]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px;border-radius:6px}.switch[data-v-becbfcf0]{text-align:center;margin-top:16px;font-size:13px;color:var(--text-secondary, #667085)}.switch a[data-v-becbfcf0]{color:var(--accent, #4056b5);font-weight:700;text-decoration:none}.switch a[data-v-becbfcf0]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px;border-radius:6px}[data-v-3a7b7253]{margin:0;padding:0;box-sizing:border-box}.auth-page[data-v-3a7b7253]{background:var(--bg-primary, #f5f7fa);font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:28px 24px;padding-top:max(28px,var(--safe-area-top, 0px));padding-right:max(24px,var(--safe-area-right, 0px));padding-bottom:max(28px,var(--safe-area-bottom, 0px));padding-left:max(24px,var(--safe-area-left, 0px));animation:pageIn-3a7b7253 .25s ease}@keyframes pageIn-3a7b7253{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.auth-box[data-v-3a7b7253]{width:100%;max-width:440px;margin:0 auto}.auth-logo[data-v-3a7b7253]{display:flex;justify-content:center;margin-bottom:28px}.auth-card[data-v-3a7b7253]{background:var(--card-gradient, #fff);border:1px solid var(--card-border, #dce3ea);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-card, 0 6px 22px rgba(24, 34, 48, .055));padding:28px 22px 30px}.auth-card-head[data-v-3a7b7253]{text-align:center;margin-bottom:22px}.auth-title[data-v-3a7b7253]{margin:0 0 8px;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #182230)}.auth-subtitle[data-v-3a7b7253],.auth-hint[data-v-3a7b7253]{margin:0 0 8px;font-size:14px;line-height:1.6;color:var(--text-secondary, #667085)}.auth-hint[data-v-3a7b7253]{margin-bottom:0;color:var(--text-muted, #8b95a7)}.btn-submit[data-v-3a7b7253]{width:100%;min-height:44px;margin-top:4px;padding:0 16px;border:1px solid var(--accent, #4056b5);border-radius:12px;background:var(--accent, #4056b5);color:#fff;font-size:16px;font-weight:700;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease,transform .08s ease}.btn-submit[data-v-3a7b7253]:hover:not(:disabled){background:var(--accent-dim, #314596);border-color:var(--accent-dim, #314596)}.btn-submit[data-v-3a7b7253]:active:not(:disabled){transform:scale(.985)}.btn-submit[data-v-3a7b7253]:disabled{background:var(--border, #dce3ea);border-color:var(--border, #dce3ea);color:var(--text-muted, #8b95a7);cursor:not-allowed}.btn-submit[data-v-3a7b7253]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px}.error[data-v-3a7b7253],.info[data-v-3a7b7253]{font-size:13px;text-align:center;margin-bottom:12px;line-height:1.45}.error[data-v-3a7b7253]{color:#e53935}.info[data-v-3a7b7253]{color:#2e7d32}.switch[data-v-3a7b7253]{text-align:center;margin-top:16px;font-size:13px;color:var(--text-secondary, #667085)}.switch a[data-v-3a7b7253]{color:var(--accent, #4056b5);font-weight:700;text-decoration:none}.switch a[data-v-3a7b7253]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px;border-radius:6px}[data-v-9bf3c3c8]{margin:0;padding:0;box-sizing:border-box}.auth-page[data-v-9bf3c3c8]{background:var(--bg-primary, #f5f7fa);font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Noto Sans SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:28px 24px;padding-top:max(28px,var(--safe-area-top, 0px));padding-right:max(24px,var(--safe-area-right, 0px));padding-bottom:max(28px,var(--safe-area-bottom, 0px));padding-left:max(24px,var(--safe-area-left, 0px));animation:pageIn-9bf3c3c8 .25s ease}@keyframes pageIn-9bf3c3c8{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.auth-box[data-v-9bf3c3c8]{width:100%;max-width:440px;margin:0 auto}.auth-logo[data-v-9bf3c3c8]{display:flex;justify-content:center;margin-bottom:28px}.auth-card[data-v-9bf3c3c8]{background:var(--card-gradient, #fff);border:1px solid var(--card-border, #dce3ea);border-radius:var(--radius-lg, 16px);box-shadow:var(--shadow-card, 0 6px 22px rgba(24, 34, 48, .055));padding:28px 22px 30px}.auth-card-head[data-v-9bf3c3c8]{text-align:center;margin-bottom:22px}.auth-title[data-v-9bf3c3c8]{margin:0;font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #182230)}.status[data-v-9bf3c3c8]{text-align:center;font-size:15px;line-height:1.5;color:var(--text-secondary, #667085);margin:16px 0 24px}.status.ok[data-v-9bf3c3c8]{color:#2e7d32}.status.err[data-v-9bf3c3c8]{color:#c62828}.username-hint[data-v-9bf3c3c8]{text-align:center;font-size:14px;color:var(--text-primary, #182230);margin:0 0 20px;font-weight:600}.actions[data-v-9bf3c3c8]{display:flex;flex-direction:column;gap:10px}.btn-link[data-v-9bf3c3c8]{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:12px;background:var(--accent, #4056b5);border:1px solid var(--accent, #4056b5);color:#fff;font-size:16px;font-weight:700;text-decoration:none;transition:background-color .12s ease,border-color .12s ease,transform .08s ease}.btn-link[data-v-9bf3c3c8]:hover{background:var(--accent-dim, #314596);border-color:var(--accent-dim, #314596)}.btn-link[data-v-9bf3c3c8]:active{transform:scale(.985)}.btn-link[data-v-9bf3c3c8]:focus-visible{outline:3px solid var(--accent-soft, #e9edff);outline-offset:2px}.btn-link.secondary[data-v-9bf3c3c8]{background:var(--bg-elevated, #fff);border-color:var(--border, #dce3ea);color:var(--accent, #4056b5)}.btn-link.secondary[data-v-9bf3c3c8]:hover{background:var(--accent-soft, #e9edff);border-color:var(--accent-soft, #e9edff)}.floating-learning-bar[data-v-a678b5c9]{--bar-copy: #3d4a5c;--bar-track: rgba(61, 74, 92, .16);--bar-fill: var(--accent, #4056b5);--bar-thumb: var(--accent, #4056b5);--bar-mint: rgba(89, 195, 176, .28);box-sizing:border-box;width:100%;padding:12px 14px calc(12px + var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));border-radius:22px 22px 0 0;background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 -8px 28px #1e2d4629;color:var(--bar-copy);overflow:visible}.scrubber-row[data-v-a678b5c9]{display:flex;align-items:center;gap:10px;min-height:36px;overflow:visible}.time-display[data-v-a678b5c9]{flex-shrink:0;min-width:2.6em;font-size:13px;line-height:1;font-variant-numeric:tabular-nums;font-weight:550;color:var(--bar-copy);letter-spacing:.01em;white-space:nowrap}.time-display.duration[data-v-a678b5c9]{text-align:right}.progress-wrap[data-v-a678b5c9]{position:relative;flex:1;height:36px;display:flex;align-items:center;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;overflow:visible;outline:none}.progress-wrap[data-v-a678b5c9]:focus-visible{box-shadow:0 0 0 2px #4056b559;border-radius:8px}.progress-track[data-v-a678b5c9],.progress-fill[data-v-a678b5c9]{position:absolute;left:0;top:50%;height:4px;transform:translateY(-50%);pointer-events:none;border-radius:999px}.progress-track[data-v-a678b5c9]{right:0;background:var(--bar-track)}.progress-fill[data-v-a678b5c9]{width:0%;background:var(--bar-fill);transition:width .12s linear}.progress-thumb[data-v-a678b5c9]{position:absolute;top:50%;left:0;width:14px;height:14px;border-radius:50%;background:var(--bar-thumb);box-shadow:0 1px 4px #1e2d4638;transform:translate(-50%,-50%);pointer-events:none;transition:width .15s ease,height .15s ease}.progress-wrap.scrubbing .progress-fill[data-v-a678b5c9]{transition:none}.progress-wrap.scrubbing .progress-thumb[data-v-a678b5c9]{width:18px;height:18px}.scrub-time-tooltip[data-v-a678b5c9]{position:absolute;top:0;z-index:30;transform:translate(-50%,calc(-100% - 12px)) scale(1);padding:7px 11px;border-radius:10px;background:#252f3feb;color:#fff;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;animation:scrub-tip-in-a678b5c9 .14s ease}.scrub-time-tooltip[data-v-a678b5c9]:after{content:"";position:absolute;left:50%;bottom:-5px;width:10px;height:10px;background:#252f3feb;transform:translate(-50%) rotate(45deg);border-radius:2px}@keyframes scrub-tip-in-a678b5c9{0%{opacity:0;transform:translate(-50%,calc(-100% - 8px)) scale(.94)}to{opacity:1;transform:translate(-50%,calc(-100% - 12px)) scale(1)}}.transport[data-v-a678b5c9]{display:grid;grid-template-columns:minmax(48px,10%) repeat(4,minmax(0,1fr));align-items:end;gap:6px;margin-top:6px;padding:0}.tool-btn[data-v-a678b5c9]{min-width:44px;min-height:44px;margin:0;padding:4px 6px;border:0;border-radius:14px;background:transparent;color:var(--bar-copy);cursor:pointer;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;-webkit-tap-highlight-color:transparent;transition:background-color .14s ease}.tool-btn[data-v-a678b5c9]:active{background:#4056b514}.tool-btn[data-v-a678b5c9] svg{display:block;flex-shrink:0}.tool-label[data-v-a678b5c9]{font-size:12px;line-height:1.2;font-weight:550;letter-spacing:.01em}.speed-value[data-v-a678b5c9]{font-size:14px;line-height:1;font-weight:650;letter-spacing:.01em}.tool-btn.play-main[data-v-a678b5c9]{width:100%;min-width:0;height:58px;min-height:58px;border-radius:18px;background:var(--bar-mint);color:var(--bar-copy)}.tool-btn.play-main[data-v-a678b5c9]:active{background:#59c3b066}.tool-btn.play-main[data-v-a678b5c9] svg{transition:opacity .14s ease}@media (prefers-reduced-motion: reduce){.progress-fill[data-v-a678b5c9],.progress-thumb[data-v-a678b5c9],.tool-btn[data-v-a678b5c9],.tool-btn.play-main[data-v-a678b5c9] svg,.scrub-time-tooltip[data-v-a678b5c9]{transition:none!important;animation:none!important}}:root[data-theme=midnight] .floating-learning-bar[data-v-a678b5c9],:root:not([data-theme=daylight]) .floating-learning-bar[data-v-a678b5c9]{--bar-copy: #e8eef4;--bar-track: rgba(232, 238, 244, .22);--bar-mint: rgba(89, 195, 176, .22);background:#16212de0;box-shadow:0 8px 24px #00000047}.player-page-header[data-v-b46ac61c]{position:sticky;z-index:230;top:0;display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:4px;min-height:calc(var(--player-header-bar, 40px) + var(--safe-area-top, 0px));padding-top:var(--safe-area-top, env(safe-area-inset-top, 0px));margin:0 0 4px;background:inherit;-webkit-user-select:none;user-select:none}.player-header-center[data-v-b46ac61c]{min-width:0;height:var(--player-header-bar, 40px)}.player-header-btn[data-v-b46ac61c]{display:grid;place-items:center;width:36px;height:36px;margin:0;padding:0;border:1px solid var(--player-line, rgba(159, 178, 190, .18));border-radius:12px;color:var(--player-copy, #f2f0e9);background:#16212dc7;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.player-header-btn[data-v-b46ac61c]:hover,.player-header-btn[data-v-b46ac61c]:active{background:#7f899924;color:var(--player-copy, #f2f0e9)}.player-header-btn[data-v-b46ac61c]:focus-visible{outline:2px solid var(--player-accent, #59c3b0);outline-offset:2px}:root[data-theme=daylight] .player-header-btn[data-v-b46ac61c]{color:#354152;border-color:#5a647329;background:#ffffffd1}:root[data-theme=daylight] .player-header-btn[data-v-b46ac61c]:hover,:root[data-theme=daylight] .player-header-btn[data-v-b46ac61c]:active{color:#1c2430;background:#5a64731f}.player-prefs-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#080c146b}.player-prefs-sheet{--player-prefs-max: 520px;position:fixed;z-index:1101;right:0;bottom:0;left:0;width:min(100%,var(--player-prefs-max));max-height:min(85dvh,85vh);margin:0 auto;display:flex;flex-direction:column;padding:8px 18px max(20px,var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));border:1px solid var(--player-line, rgba(159, 178, 190, .18));border-bottom:0;border-radius:22px 22px 0 0;background:var(--bg-elevated, var(--player-surface-raised, #16212d));color:var(--text-primary, var(--player-copy, #f2f0e9));box-shadow:0 -6px 24px #0000001f;overscroll-behavior:contain;touch-action:pan-y}.player-prefs-handle-wrap{display:flex;justify-content:center;padding:6px 0 4px;cursor:grab;touch-action:none}.player-prefs-handle{width:40px;height:4px;border-radius:999px;background:#8c98a873}.player-prefs-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 12px}.player-prefs-title{margin:0;font-size:17px;font-weight:650;letter-spacing:.01em;text-align:left}.player-prefs-close{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:12px;color:var(--text-secondary, var(--player-copy-muted, #9eacb7));background:transparent;font-size:16px;cursor:pointer;-webkit-tap-highlight-color:transparent}.player-prefs-close:hover,.player-prefs-close:active{background:#7f899924}.player-prefs-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding-bottom:8px}.player-prefs-sync-error{margin:0 0 12px;font-size:13px;color:var(--error, #e07070)}.player-prefs-sync-retry{margin-left:8px;border:0;padding:0;background:none;color:var(--accent, #59c3b0);text-decoration:underline;cursor:pointer}.player-prefs-row{display:flex;width:100%;min-height:52px;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:12px 2px;border:0;border-bottom:1px solid rgba(140,152,168,.16);border-radius:0;color:inherit;background:transparent;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.player-prefs-row:last-child{border-bottom:0}.player-prefs-row:active{background:#7f89991a}.player-prefs-row-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.player-prefs-row-copy strong{font-size:15px;font-weight:600}.player-prefs-switch{position:relative;flex:none;width:44px;height:26px;border:1px solid rgba(140,152,168,.35);border-radius:999px;background:#7f899938;transition:background .18s ease,border-color .18s ease}.player-prefs-switch i{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .18s ease}.player-prefs-switch.on{border-color:var(--player-accent, var(--accent, #59c3b0));background:var(--player-accent, var(--accent, #59c3b0))}.player-prefs-switch.on i{transform:translate(18px)}.player-prefs-fade-enter-active,.player-prefs-fade-leave-active{transition:opacity .22s ease}.player-prefs-fade-enter-from,.player-prefs-fade-leave-to{opacity:0}.player-prefs-sheet-enter-active,.player-prefs-sheet-leave-active{transition:transform .22s ease,opacity .22s ease}.player-prefs-sheet-enter-from,.player-prefs-sheet-leave-to{opacity:0;transform:translateY(100%)}@media (prefers-reduced-motion: reduce){.player-prefs-fade-enter-active,.player-prefs-fade-leave-active,.player-prefs-sheet-enter-active,.player-prefs-sheet-leave-active,.player-prefs-switch,.player-prefs-switch i{transition:none}}:root[data-theme=daylight] .player-prefs-sheet{background:#f7f8fa;color:#1c2430;border-color:#1e28371a;box-shadow:0 -4px 18px #1e2d4614}:root[data-theme=daylight] .player-prefs-handle{background:#5a647359}.playback-rate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#080c146b}.playback-rate-sheet{position:fixed;z-index:1101;right:0;bottom:0;left:0;width:min(100%,520px);margin:0 auto;padding:14px 18px max(20px,var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));border:0;border-radius:22px 22px 0 0;background:var(--bg-elevated, var(--player-surface-raised, #16212d));color:var(--text-primary, var(--player-copy, #f2f0e9));box-shadow:none}.playback-rate-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px}.playback-rate-header h2{margin:0;font-size:17px;font-weight:650}.playback-rate-close{display:grid;width:44px;height:44px;margin:0;padding:0;place-items:center;border:0;border-radius:12px;background:transparent;color:var(--text-secondary, var(--player-copy-muted, #9eacb7));font-size:16px;cursor:pointer}.playback-rate-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.playback-rate-option{min-height:48px;margin:0;padding:8px 4px;border:0;border-radius:12px;background:transparent;color:inherit;font-size:15px;font-weight:550;cursor:pointer;-webkit-tap-highlight-color:transparent}.playback-rate-option:active,.playback-rate-option.active{background:#59c3b029}.playback-rate-option.active{font-weight:700}.playback-rate-fade-enter-active,.playback-rate-fade-leave-active,.playback-rate-sheet-enter-active,.playback-rate-sheet-leave-active{transition:opacity .18s ease,transform .18s ease}.playback-rate-fade-enter-from,.playback-rate-fade-leave-to{opacity:0}.playback-rate-sheet-enter-from,.playback-rate-sheet-leave-to{opacity:0;transform:translateY(100%)}@media (prefers-reduced-motion: reduce){.playback-rate-fade-enter-active,.playback-rate-fade-leave-active,.playback-rate-sheet-enter-active,.playback-rate-sheet-leave-active{transition:none}}:root[data-theme=daylight] .playback-rate-sheet{background:#f7f8fa;color:#1c2430}.grammar-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#080c1473}.grammar-detail-sheet{--grammar-sheet-h: 50dvh;--grammar-sheet-max: min( 90dvh, calc(100dvh - var(--safe-area-top, env(safe-area-inset-top, 0px)) - 8px) );position:fixed;z-index:1001;right:0;bottom:0;left:0;display:flex;flex-direction:column;width:100%;height:auto;max-height:var(--grammar-sheet-max);min-height:min(var(--grammar-sheet-h),var(--grammar-sheet-max));margin:0 auto;padding:0 0 max(12px,var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));border:1px solid rgba(159,178,190,.18);border-bottom:0;border-radius:22px 22px 0 0;background:var(--bg-elevated, var(--player-surface-raised, #16212d));color:var(--text-primary, var(--player-copy, #f2f0e9));box-shadow:0 -6px 24px #00000024;overscroll-behavior:contain}.grammar-detail-handle-wrap{display:flex;flex:none;justify-content:center;padding:10px 0 4px;touch-action:none}.grammar-detail-handle{width:40px;height:4px;border-radius:999px;background:#8c98a873}.grammar-detail-header{flex:none;display:grid;gap:10px;padding:4px 18px 12px;border-bottom:1px solid rgba(140,152,168,.14)}.grammar-detail-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.grammar-detail-title{margin:0;font-size:17px;font-weight:700;line-height:1.3}.grammar-detail-close{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-4px -6px 0 0;padding:0;border:0;border-radius:12px;color:var(--text-secondary, #9eacb7);background:transparent;font-size:16px;cursor:pointer;-webkit-tap-highlight-color:transparent}.grammar-detail-close:hover,.grammar-detail-close:active{background:#7f899924}.grammar-detail-sentence{margin:0;color:var(--text-secondary, #b7c2cd);font-size:15px;line-height:1.65;word-break:break-word}.grammar-detail-mark{padding:0 1px;border-radius:3px;color:inherit;background:#59c3b047}.grammar-detail-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:14px 18px 8px;display:grid;gap:18px;align-content:start}.grammar-detail-block{display:grid;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(140,152,168,.14)}.grammar-detail-block:last-child{border-bottom:0;padding-bottom:0}.grammar-detail-block-head{display:flex;align-items:flex-start;gap:10px}.grammar-detail-save{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-8px -8px 0 auto;padding:0;border:0;border-radius:12px;color:var(--text-secondary, #9eacb7);background:transparent;font-size:20px;cursor:pointer}.grammar-detail-save.saved{color:#e6b35c}.grammar-detail-save:hover,.grammar-detail-save:active{background:#7f899924}.grammar-detail-index{flex:none;display:grid;place-items:center;width:24px;height:24px;margin-top:2px;border-radius:8px;color:var(--player-accent, #59c3b0);background:#59c3b01f;font-size:12px;font-weight:700}.grammar-detail-block-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.grammar-detail-block-title h3{margin:0;font-size:18px;font-weight:700;line-height:1.3}.grammar-detail-block-title .jlpt-badge{display:inline-flex;align-items:center;padding:2px 8px;border:1px solid color-mix(in srgb,var(--jlpt-color, #9ba7ba) 58%,transparent);border-radius:999px;color:var(--jlpt-color, #9ba7ba);background:color-mix(in srgb,var(--jlpt-color, #9ba7ba) 14%,transparent);font-size:12px;font-weight:700;white-space:nowrap}.grammar-detail-section{margin:0;padding:10px 0 0;border:0;background:transparent}.grammar-detail-section>small{display:block;margin-bottom:6px;color:var(--text-secondary, #8f9bb3);font-size:12px;font-weight:700;letter-spacing:.04em}.grammar-detail-section.meaning{padding:12px 14px;border:1px solid rgba(89,195,176,.22);border-radius:12px;background:#59c3b014}.grammar-detail-section.meaning strong{display:block;color:inherit;font-size:16px;font-weight:650;line-height:1.55}.grammar-detail-section p{margin:0;font-size:15px;line-height:1.65;color:inherit}.grammar-detail-section .example-jp{font-size:16px;line-height:1.55}.grammar-detail-section .example-cn{margin-top:6px;color:var(--text-secondary, #9eacb7);font-size:14px;line-height:1.5}.grammar-detail-skeleton-block{display:grid;gap:12px}.grammar-detail-skeleton{display:grid;gap:8px}.grammar-detail-skeleton i{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,#8c98a829,#8c98a847,#8c98a829);background-size:200% 100%;animation:grammar-detail-shimmer 1.2s ease-in-out infinite}.grammar-detail-skeleton i.short{width:48%}.grammar-detail-section-error{display:grid;gap:8px;color:#f0a0a0;font-size:14px}.grammar-detail-section-error button{justify-self:start;padding:6px 10px;border:1px solid rgba(240,160,160,.35);border-radius:8px;color:inherit;background:transparent;cursor:pointer}@keyframes grammar-detail-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.grammar-detail-fade-enter-active,.grammar-detail-fade-leave-active{transition:opacity .2s ease}.grammar-detail-fade-enter-from,.grammar-detail-fade-leave-to{opacity:0}.grammar-detail-sheet-enter-active,.grammar-detail-sheet-leave-active{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .2s ease}.grammar-detail-sheet-enter-from,.grammar-detail-sheet-leave-to{opacity:0;transform:translateY(18%)}@media (min-width: 768px){.grammar-detail-sheet{top:50%;right:auto;bottom:auto;left:50%;width:min(560px,calc(100vw - 48px));max-height:85vh;min-height:min(42vh,85vh);border-bottom:1px solid rgba(159,178,190,.18);border-radius:18px;transform:translate(-50%,-50%);box-shadow:0 18px 48px #00000047}.grammar-detail-sheet-enter-from,.grammar-detail-sheet-leave-to{transform:translate(-50%,-46%) scale(.98)}.grammar-detail-sheet-enter-to,.grammar-detail-sheet-leave-from{transform:translate(-50%,-50%) scale(1)}}.word-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#080c1473}.word-detail-sheet{--word-sheet-h: 72dvh;--word-sheet-max: min( 94dvh, calc(100dvh - var(--safe-area-top, env(safe-area-inset-top, 0px)) - 8px) );position:fixed;z-index:1001;right:0;bottom:0;left:0;display:flex;flex-direction:column;width:100%;height:var(--word-sheet-h);max-height:var(--word-sheet-max);min-height:min(42dvh,var(--word-sheet-max));margin:0 auto;padding:0 0 max(12px,var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));border:1px solid rgba(159,178,190,.18);border-bottom:0;border-radius:22px 22px 0 0;background:var(--bg-elevated, var(--player-surface-raised, #16212d));color:var(--text-primary, var(--player-copy, #f2f0e9));box-shadow:0 -6px 24px #00000024;overscroll-behavior:contain}.word-detail-handle-wrap{display:flex;flex:none;justify-content:center;padding:10px 0 4px;touch-action:none}.word-detail-handle{width:40px;height:4px;border-radius:999px;background:#8c98a873}.word-detail-header{flex:none;display:grid;gap:10px;padding:4px 18px 12px;border-bottom:1px solid rgba(140,152,168,.14)}.word-detail-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.word-detail-identity{min-width:0;flex:1}.word-detail-reading{min-height:18px;margin:0 0 2px;color:var(--player-accent, #59c3b0);font-size:13px;letter-spacing:.06em}.word-detail-word{margin:0;max-width:100%;overflow:hidden;color:inherit;font-size:clamp(22px,7vw,28px);font-weight:750;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.word-detail-close{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-4px -6px 0 0;padding:0;border:0;border-radius:12px;color:var(--text-secondary, #9eacb7);background:transparent;font-size:16px;cursor:pointer;-webkit-tap-highlight-color:transparent}.word-detail-close:hover,.word-detail-close:active{background:#7f899924}.word-detail-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.word-detail-meta-actions{display:flex;align-items:center;gap:8px;flex:none}.word-detail-report{border:1px solid rgba(140,152,168,.35);border-radius:999px;background:transparent;color:var(--text-secondary, #c8d7ef);font-size:12px;padding:6px 10px;cursor:pointer}.word-detail-badges{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px}.word-detail-badges span{padding:5px 9px;border:1px solid rgba(140,152,168,.28);border-radius:999px;color:var(--text-secondary, #c8d7ef);background:#7f89991f;font-size:12px;font-weight:700;white-space:nowrap}.word-detail-badges .jlpt-badge{border-color:color-mix(in srgb,var(--jlpt-color) 58%,transparent);color:var(--jlpt-color);background:color-mix(in srgb,var(--jlpt-color) 14%,transparent)}.jlpt-n5{--jlpt-color: #53b8a6}.jlpt-n4{--jlpt-color: #6d9df2}.jlpt-n3{--jlpt-color: #e0a84f}.jlpt-n2{--jlpt-color: #ec7d72}.jlpt-n1{--jlpt-color: #ae86f2}.jlpt-unknown{--jlpt-color: #9ba7ba}.word-detail-save{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:12px;color:var(--text-secondary, #9eacb7);background:transparent;font-size:20px;cursor:pointer}.word-detail-save.saved{color:#e6b35c}.word-detail-save:hover,.word-detail-save:active{background:#7f899924}.word-detail-grammar-label{display:flex;align-items:center;gap:8px;margin:0;color:var(--text-secondary, #9eacb7);font-size:13px}.word-detail-grammar-label b{color:inherit;font-weight:650}.word-detail-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:14px 18px 8px;display:grid;gap:12px;align-content:start}.word-detail-section{margin:0;padding:12px 0;border:0;border-bottom:1px solid rgba(140,152,168,.14);border-radius:0;background:transparent}.word-detail-section:last-child{border-bottom:0}.word-detail-section>small{display:block;margin-bottom:6px;color:var(--text-secondary, #8f9bb3);font-size:12px;font-weight:700;letter-spacing:.04em}.word-detail-section.meaning{padding:12px 14px;border:1px solid rgba(89,195,176,.22);border-radius:12px;background:#59c3b014}.word-detail-section.meaning strong{display:block;color:inherit;font-size:17px;font-weight:650;line-height:1.55}.word-detail-section p{margin:0;font-size:15px;line-height:1.65;color:inherit}.word-detail-section .example-jp{font-size:16px;line-height:1.55}.word-detail-section .example-cn{margin-top:6px;color:var(--text-secondary, #9eacb7);font-size:14px;line-height:1.5}.word-detail-skeleton{display:grid;gap:8px}.word-detail-skeleton i{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,#8c98a829,#8c98a847,#8c98a829);background-size:200% 100%;animation:word-detail-shimmer 1.1s ease-in-out infinite}.word-detail-skeleton i:nth-child(1){width:88%}.word-detail-skeleton i:nth-child(2){width:64%}.word-detail-skeleton i.short{width:42%;height:10px}.word-detail-section-error{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:13px;color:var(--error, #e07070)}.word-detail-section-error button{border:0;padding:6px 10px;border-radius:8px;background:#7f899929;color:inherit;cursor:pointer}.word-detail-empty{margin:8px 0 0;color:var(--text-secondary, #9eacb7);font-size:14px}.word-detail-fade-enter-active,.word-detail-fade-leave-active{transition:opacity .22s ease}.word-detail-fade-enter-from,.word-detail-fade-leave-to{opacity:0}.word-detail-sheet-enter-active,.word-detail-sheet-leave-active{transition:transform .22s ease,opacity .22s ease}.word-detail-sheet-enter-from,.word-detail-sheet-leave-to{opacity:0;transform:translateY(100%)}@keyframes word-detail-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}html.embraice-scroll-locked .player-container--learning .transcript-scroll{overflow:hidden;touch-action:none}@media (min-width: 601px){.word-detail-overlay{display:flex;align-items:center;justify-content:center;padding:24px 16px}.word-detail-sheet{position:relative;right:auto;bottom:auto;left:auto;width:min(560px,100%);height:auto;max-height:85vh;min-height:280px;border-radius:18px;border-bottom:1px solid rgba(159,178,190,.18);box-shadow:0 16px 40px #00000047;padding-bottom:16px}.word-detail-handle-wrap{display:none}.word-detail-sheet-enter-from,.word-detail-sheet-leave-to{transform:translateY(12px) scale(.98)}}@media (prefers-reduced-motion: reduce){.word-detail-fade-enter-active,.word-detail-fade-leave-active,.word-detail-sheet-enter-active,.word-detail-sheet-leave-active,.word-detail-skeleton i{transition:none;animation:none}}:root[data-theme=daylight] .word-detail-sheet{background:#f7f8fa;color:#1c2430;border-color:#1e28371a}:root[data-theme=daylight] .word-detail-section.meaning{border-color:#3c8c7847;background:#59c3b01f}:root[data-theme=daylight] .word-detail-handle{background:#5a647359}.video-container[data-v-21a74b39]{position:relative;width:100%;height:100%;background:#101735;aspect-ratio:auto;max-height:none;overflow:hidden;border-radius:inherit;display:flex;align-items:center;justify-content:center}video[data-v-21a74b39]{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.video-loading[data-v-21a74b39]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#101735}.loading-spinner[data-v-21a74b39]{width:32px;height:32px;border:3px solid #293365;border-top-color:#9c6bff;border-radius:50%;animation:spin-21a74b39 .8s linear infinite}@keyframes spin-21a74b39{to{transform:rotate(360deg)}}.video-container[data-v-9f6b168d]{position:relative;background:#000;aspect-ratio:16 / 9;max-height:33vh;overflow:hidden;border-radius:16px;display:flex;align-items:center;justify-content:center}.youtube-player[data-v-9f6b168d]{width:100%;height:100%}.youtube-player[data-v-9f6b168d] iframe{width:100%;height:100%;border:none;border-radius:16px}.video-loading[data-v-9f6b168d]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#000}.loading-spinner[data-v-9f6b168d]{width:32px;height:32px;border:3px solid #333;border-top-color:#fff;border-radius:50%;animation:spin-9f6b168d .8s linear infinite}@keyframes spin-9f6b168d{to{transform:rotate(360deg)}}.video-container[data-v-d094fc48]{position:relative;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);aspect-ratio:16 / 9;max-height:33vh;overflow:hidden;border-radius:16px;display:flex;align-items:center;justify-content:center}.audio-mode audio[data-v-d094fc48]{opacity:0;position:absolute}.audio-visualizer[data-v-d094fc48]{display:flex;align-items:flex-end;justify-content:center;gap:3px;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;padding:20px}.vis-bar[data-v-d094fc48]{width:6px;border-radius:3px 3px 0 0;background:linear-gradient(to top,#4a7c59,#81c784);animation:visBounce-d094fc48 .8s ease-in-out infinite alternate;transform-origin:bottom}@keyframes visBounce-d094fc48{0%{height:8px}to{height:50px}}.vis-bar[data-v-d094fc48]:nth-child(odd){animation-duration:.6s}.vis-bar[data-v-d094fc48]:nth-child(3n){animation-duration:1s}.vis-bar[data-v-d094fc48]:nth-child(5n+2){animation-duration:.7s}.audio-info[data-v-d094fc48]{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:2;pointer-events:none;display:block}.audio-info-icon[data-v-d094fc48]{font-size:48px;margin-bottom:8px}.audio-info-title[data-v-d094fc48]{font-size:16px;font-weight:600;color:#fff;opacity:.8}.video-wrap[data-v-d944aca6]{position:relative;z-index:2;width:100%;height:100%}.video-container[data-v-d944aca6]{position:relative;width:100%;height:100%;max-height:none;background:#101735;aspect-ratio:auto;overflow:hidden;border-radius:inherit;display:flex;align-items:center;justify-content:center}.video-loading[data-v-d944aca6]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#f4f6f8}.loading-spinner[data-v-d944aca6]{width:32px;height:32px;border:3px solid #293365;border-top-color:#9c6bff;border-radius:50%;animation:spin-d944aca6 .8s linear infinite}@keyframes spin-d944aca6{to{transform:rotate(360deg)}}.player-container[data-v-53c8fce3]{--player-surface: #111923;--player-surface-raised: #16212d;--player-surface-soft: #1b2835;--player-line: rgba(159, 178, 190, .18);--player-line-strong: rgba(159, 178, 190, .3);--player-copy: #f2f0e9;--player-copy-muted: #9eacb7;--player-accent: #59c3b0;--player-accent-soft: rgba(89, 195, 176, .13);--player-warm: #ee765f;--player-header-bar: 40px;position:relative;overflow-x:hidden;overflow-y:visible;overflow-anchor:none;min-height:100vh;min-height:100dvh;max-width:760px;margin:auto;padding:0 34px 48px;padding-left:max(34px,var(--safe-area-left, 0px));padding-right:max(34px,var(--safe-area-right, 0px));background:radial-gradient(circle at 84% 6%,rgba(38,111,106,.16),transparent 28%),linear-gradient(180deg,#0b1118,#0d151e 48%,#0a1118)}.player-container--learning[data-v-53c8fce3]{--floating-player-height: calc(118px + var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)));display:flex;flex-direction:column;height:100dvh;min-height:100dvh;overflow:hidden;padding-bottom:0}.player-container--learning .player-page-header[data-v-53c8fce3],.player-container--learning .video-frame[data-v-53c8fce3]{flex:none}.player-container--learning .transcript-frame[data-v-53c8fce3]{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;width:100%;margin-bottom:0}.player-container--learning .transcript[data-v-53c8fce3]{flex:1;min-height:0;display:flex;flex-direction:column}.player-container--learning .transcript-scroll[data-v-53c8fce3]{flex:1;min-height:0;max-height:none;--transcript-viewport: auto;--transcript-scroll-padding-bottom: calc(var(--floating-player-height) + 20px)}.player-container--learning .transcript-scroll.is-scrub-locked[data-v-53c8fce3]{overflow:hidden;touch-action:none}.player-container--learning .floating-controls-slot[data-v-53c8fce3]{position:fixed;z-index:240;right:auto;bottom:0;left:50%;width:min(760px,100vw);transform:translate(-50%);pointer-events:auto}.player-page-header[data-v-53c8fce3]{position:sticky;z-index:230;top:0}.video-frame[data-v-53c8fce3]{position:sticky;z-index:220;top:calc(var(--safe-area-top, 0px) + var(--player-header-bar, 40px));width:100%;height:auto;aspect-ratio:var(--video-aspect-ratio, 16 / 9);overflow:hidden;border:1px solid var(--player-line-strong);border-radius:20px;box-shadow:0 18px 50px #00000057,0 1px #ffffff0d;background:linear-gradient(130deg,#6a5a52,#bd9a8b 36%,#4e342b 62%,#1e1918)}.video-hit-layer[data-v-53c8fce3]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;margin:0;padding:0;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.video-unavailable[data-v-53c8fce3]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9;display:grid;place-items:center;padding:28px;background:#0a1118eb;color:var(--player-copy);font-size:15px;line-height:1.6;text-align:center}.video-frame[data-v-53c8fce3]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#32251f88,transparent 65%),linear-gradient(0deg,#030b25aa,transparent 45%);pointer-events:none;z-index:1}.video-frame[data-v-53c8fce3] video,.video-frame[data-v-53c8fce3] img{width:100%;height:100%;object-fit:cover}.video-copy[data-v-53c8fce3]{position:absolute;z-index:2;top:28px;left:25px;text-shadow:0 2px 4px #000}.video-copy b[data-v-53c8fce3]{display:block;font-size:32px;color:#fff}.video-copy small[data-v-53c8fce3]{font-size:21px;color:#fffc}.big-play[data-v-53c8fce3]{position:absolute;z-index:2;top:50%;left:50%;translate:-50% -50%;width:88px;height:88px;border-radius:50%;border:3px solid #fff;font-size:39px;color:#fff;display:grid;place-items:center}.video-controls[data-v-53c8fce3]{position:absolute;z-index:2;bottom:25px;left:35px;right:35px;display:flex;gap:15px;align-items:center;font-size:21px;color:#fff}.video-controls i[data-v-53c8fce3]{height:5px;background:#ffffff4d;flex:1;border-radius:4px}.analysis-card[data-v-53c8fce3]{margin-top:31px;margin-bottom:max(24px,env(safe-area-inset-bottom,0px));padding:30px 38px;border:1px solid rgba(130,89,255,.7);border-radius:35px;background:radial-gradient(ellipse at 50% 8%,rgba(109,78,255,.72),transparent 29%),linear-gradient(145deg,#1f2869f5,#0c0f34f5);box-shadow:inset 0 1px #ffffff0f,0 22px 54px #00000047}.analysis-symbol[data-v-53c8fce3]{display:grid;width:58px;height:58px;margin:0 auto 16px;place-items:center;border:1px solid currentColor;border-radius:16px;color:var(--accent);font-size:18px;font-weight:800;letter-spacing:.08em}.bot[data-v-53c8fce3]{margin:auto;display:grid;place-items:center;width:130px;height:90px;border-radius:50%;font-size:24px;letter-spacing:12px;background:radial-gradient(circle,#151337 20%,#8d73ff 24%,#5d31cf 50%,transparent 51%);box-shadow:0 0 30px #8651ff;color:#fff}.analysis-card h1[data-v-53c8fce3]{text-align:center;margin:20px 0 5px;font-size:36px;color:#f7f8ff}.analysis-card>p[data-v-53c8fce3]{text-align:center;color:#bfc3ec;font-size:20px;margin:0}.analysis-bar[data-v-53c8fce3]{display:flex;align-items:center;gap:22px;margin:38px 8px}.analysis-track[data-v-53c8fce3]{height:14px;flex:1;overflow:hidden;border-radius:10px;background:#4e569761}.analysis-track i[data-v-53c8fce3]{display:block;height:14px;border-radius:10px;background:linear-gradient(90deg,#5388ff,#af39ed);box-shadow:0 0 16px #8e42ff;transition:width .45s ease}.analysis-bar b[data-v-53c8fce3]{font-size:28px;color:#9f5aff}.analysis-card>.analysis-message[data-v-53c8fce3]{min-height:22px;margin:-24px 8px 22px;color:#aeb8ec;font-size:14px;text-align:left}.steps[data-v-53c8fce3]{padding:8px 28px;border:1px solid #2e3566;border-radius:22px;background:#090d2c8a;box-shadow:inset 0 1px #ffffff09}.steps>div[data-v-53c8fce3]{display:flex;align-items:center;gap:20px;padding:21px 0;border-bottom:1px solid #29315f}.steps>div[data-v-53c8fce3]:last-child{border:0}.steps b[data-v-53c8fce3]{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;background:#1b2041;color:#a589e0;font-size:20px}.steps b.loading[data-v-53c8fce3]{animation:stepPulse-53c8fce3 1s infinite}@keyframes stepPulse-53c8fce3{0%,to{opacity:1}50%{opacity:.4}}.steps span[data-v-53c8fce3]{font-size:19px;font-weight:600;color:#f7f8ff}.steps small[data-v-53c8fce3]{display:block;font-weight:400;font-size:14px;color:#a2aad3;margin-top:3px}.steps em[data-v-53c8fce3]{margin-left:auto;font-style:normal;color:#b793ff;font-size:16px}.steps .disabled[data-v-53c8fce3]{opacity:.4}.steps .active[data-v-53c8fce3]{opacity:1}.steps .done[data-v-53c8fce3]{opacity:.72}.steps .done b[data-v-53c8fce3]{color:#79e4bd;background:#23705b4d}.analysis-card aside[data-v-53c8fce3]{margin-top:24px;color:#b9bef0;font-size:15px;line-height:1.6}.btn-start[data-v-53c8fce3]{margin-top:24px;padding:16px 40px;border-radius:16px;background:linear-gradient(135deg,#35c9ff,#a928f5);font-size:18px;font-weight:700;color:#fff;box-shadow:0 8px 25px #5b26c9}.transcript.chunk-loading[data-v-53c8fce3]{--chunk-loading-surface: #f7fbfa;--chunk-loading-copy: #334155;display:flex;flex-direction:column;background:var(--chunk-loading-surface, #f7fbfa);color:var(--chunk-loading-copy, #334155);box-shadow:none}.transcript-scroll.is-hidden[data-v-53c8fce3]{display:none}.transcript-chunk-loading[data-v-53c8fce3]{flex:1;min-height:0;width:100%;box-sizing:border-box;padding-bottom:var(--floating-player-height, 118px);display:flex;align-items:center;justify-content:center}.transcript-chunk-loading-content[data-v-53c8fce3]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.transcript-chunk-loading .loading-spinner[data-v-53c8fce3]{width:28px;height:28px;border:3px solid rgba(64,86,181,.18);border-top-color:var(--accent, #4056b5);border-radius:50%;animation:spin-53c8fce3 .7s linear infinite;margin:0}.transcript-chunk-loading-label[data-v-53c8fce3]{font-size:.92rem;font-weight:550;line-height:1.4;color:var(--chunk-loading-copy, #334155);opacity:1}.transcript-chunk-unavailable .transcript-chunk-loading-label[data-v-53c8fce3]{opacity:.72}.display-quality-debug-badge[data-v-53c8fce3]{position:absolute;top:64px;right:12px;z-index:20;display:inline-flex;align-items:center;gap:6px;max-width:min(70vw,320px);padding:4px 8px;border-radius:999px;background:#141e3cd1;color:#eaf2ff;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:auto;box-shadow:0 1px 6px #00000040}.display-quality-debug-badge button[data-v-53c8fce3]{flex:none;border:0;background:transparent;color:inherit;font-size:12px;line-height:1;padding:2px 2px 2px 4px;cursor:pointer;opacity:.85}.display-quality-debug-badge button[data-v-53c8fce3]:hover{opacity:1}.sentence-unavailable[data-v-53c8fce3]{display:block;flex:1 1 100%;width:100%;box-sizing:border-box;padding:4px 0;text-align:left;color:var(--player-copy-muted);font-size:13px;font-weight:450;opacity:.75}.transcript-frame[data-v-53c8fce3]{position:relative;box-sizing:border-box;margin:8px 0 0;padding:0;border:0;background:transparent}.transcript[data-v-53c8fce3]{position:relative;padding:10px;border:0;border-radius:18px;background:linear-gradient(145deg,#16212dfa,#0f1821fa);box-shadow:none;overflow:hidden;cursor:auto}.transcript-scroll[data-v-53c8fce3]{--transcript-line-slot: 72px;--transcript-follow-inset: 0px;--transcript-viewport: 397px;--transcript-scroll-padding-bottom: max(240px, calc(var(--transcript-line-slot) * 3));max-height:var(--transcript-viewport);overflow-x:hidden;overflow-y:auto;padding:4px 2px max(12px,var(--safe-area-bottom, 0px));scroll-behavior:auto;overscroll-behavior:contain;scrollbar-color:rgba(89,195,176,.5) transparent;scrollbar-width:thin}.transcript-scroll>p[data-v-53c8fce3]{padding-top:0;padding-bottom:var(--transcript-scroll-padding-bottom);margin:0}.reading-mode[data-v-53c8fce3]{display:block;margin:-8px 0 8px auto;padding:5px 9px;border:1px solid rgba(89,195,176,.3);border-radius:10px;color:#9ddace;background:var(--player-accent-soft);font-size:11px;font-weight:650}.transcript-scroll[data-v-53c8fce3]::-webkit-scrollbar{width:5px}.transcript-scroll[data-v-53c8fce3]::-webkit-scrollbar-track{background:transparent}.transcript-scroll[data-v-53c8fce3]::-webkit-scrollbar-thumb{border-radius:4px;background:#59c3b080}.transcript p[data-v-53c8fce3]{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:flex-end;font-size:17px;line-height:1.82;color:var(--player-copy);margin:0}.transcript p .sentence-block[data-v-53c8fce3]{position:relative;display:flex;flex-wrap:wrap;align-items:flex-end;flex:1 1 100%;width:100%;margin:0 0 12px}.transcript p .sentence-words[data-v-53c8fce3]{display:flex;flex-wrap:wrap;align-items:flex-end;width:100%}.transcript p .sentence-words.with-grammar-action[data-v-53c8fce3]{padding-right:72px}.transcript p .word-token[data-v-53c8fce3],.transcript p .word-token[data-v-53c8fce3] *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.transcript p .word-token[data-v-53c8fce3]{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;width:max-content;max-width:100%;margin:0 0 7px;padding:0 2px 10px;border:0;isolation:isolate;line-height:1;vertical-align:bottom;-webkit-tap-highlight-color:transparent;touch-action:pan-y;transition:opacity .12s ease}.transcript p .word-token.is-pressing[data-v-53c8fce3]{opacity:.75}.transcript p .word-token.sentence-end[data-v-53c8fce3]{margin-right:10px}.transcript p .reading-row[data-v-53c8fce3]{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-end;justify-content:flex-start;box-sizing:border-box;width:max-content;max-width:100%;height:0;margin:0;padding:0 5px;overflow:visible;pointer-events:none}.transcript.show-furigana p .reading-row[data-v-53c8fce3]{height:var(--word-reading-row, 11px)}.transcript p .reading-segment[data-v-53c8fce3]{display:inline-grid;grid-template-rows:auto auto;justify-items:center;align-items:end;flex:0 0 auto;box-sizing:border-box;min-width:0}.transcript p .reading-sizer[data-v-53c8fce3]{visibility:hidden;overflow:hidden;height:0;font-size:1em;font-weight:inherit;letter-spacing:0;line-height:1.35;white-space:nowrap;pointer-events:none}.transcript p .reading-glyph[data-v-53c8fce3]{color:#a6b6c0;font-size:9px;font-weight:550;letter-spacing:.01em;line-height:var(--word-reading-row, 11px);text-align:center;white-space:nowrap;pointer-events:none}.transcript p .word-token.active .reading-glyph[data-v-53c8fce3]{color:#4b2677}.transcript p .word-surface[data-v-53c8fce3],.transcript p .surface-wrapper[data-v-53c8fce3]{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;box-sizing:border-box;max-width:100%;gap:0;padding:1px 3px;border:2px solid transparent;border-radius:8px;line-height:1.35;white-space:nowrap;letter-spacing:0}.transcript p .surface-segment[data-v-53c8fce3]{flex:0 0 auto;line-height:1.35;white-space:nowrap;letter-spacing:0}.transcript p .word-romaji[data-v-53c8fce3]{display:block;align-self:stretch;min-height:13px;color:#82939f;font-family:system-ui,sans-serif;font-size:10px;font-weight:500;letter-spacing:.01em;line-height:13px;text-align:center;white-space:nowrap}.transcript p .word-token.active .word-romaji[data-v-53c8fce3]{color:#31513a}.transcript p .word-token[data-v-53c8fce3]:after{content:"";position:absolute;z-index:1;right:4px;bottom:1px;left:4px;width:auto;height:5px;border-radius:2px;background:var(--marker-color, #8e85ff);opacity:0;pointer-events:none}.transcript p .sentence-block.is-selected .word-token[data-v-53c8fce3]:after{opacity:.95}.transcript p .word-token.active[data-v-53c8fce3]{color:#10211e}.transcript p .word-token.no-word-click[data-v-53c8fce3],.transcript p .word-token.no-word-click .reading-glyph[data-v-53c8fce3]{cursor:default}.transcript p .word-token.active .word-surface[data-v-53c8fce3],.transcript p .word-token.active .surface-wrapper[data-v-53c8fce3]{border-color:#bce8df;background:#bfe8df;box-shadow:inset 0 0 0 1px #59c3b02e}.transcript p .sentence-block.is-selected .word-token.active[data-v-53c8fce3]:after{opacity:1}.sentence-translation[data-v-53c8fce3]{display:block;width:100%;margin-top:8px;padding:0;border:0;background:transparent;font-size:14px;line-height:1.55;font-weight:450;color:var(--player-copy-muted);white-space:normal;word-break:break-word}.sentence-translation-unavailable[data-v-53c8fce3]{font-size:12.5px;font-weight:400;opacity:.72;margin-top:4px}.sentence-actions[data-v-53c8fce3]{position:absolute;top:6px;right:12px;transform:none;z-index:3;display:inline-flex;justify-content:flex-end;align-items:center;pointer-events:auto}.sentence-action-pill[data-v-53c8fce3]{display:inline-flex;align-items:center;justify-content:center;min-height:24px;max-height:26px;padding:0 10px;border:1px solid color-mix(in srgb,var(--player-accent, #59c3b0) 55%,transparent);border-radius:999px;color:var(--player-accent, #59c3b0);background:transparent;box-shadow:none;font-size:11px;font-weight:650;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.sentence-action-pill[data-v-53c8fce3]:hover,.sentence-action-pill[data-v-53c8fce3]:active{background:color-mix(in srgb,var(--player-accent, #59c3b0) 12%,transparent)}.grammar[data-v-53c8fce3]{margin-top:8px}.section-title[data-v-53c8fce3]{display:flex;align-items:center;gap:6px;font-size:17px;font-weight:700;color:#f7f8ff;margin-bottom:10px}.section-title small[data-v-53c8fce3]{font-size:13px;color:#b793ff}.grammar-toggle[data-v-53c8fce3]{width:100%;min-height:50px;justify-content:space-between;margin:0;padding:10px 12px;border:1px solid var(--player-line);border-radius:14px;color:var(--player-copy);background:var(--player-surface-raised);box-shadow:inset 0 1px #ffffff0a,0 8px 22px #0000002e;text-align:left}.grammar-toggle .toggle-action[data-v-53c8fce3]{color:#86cfc2;font-size:12px;font-weight:650}.grammar-list[data-v-53c8fce3]{display:flex;flex-direction:column;gap:14px;padding:0 0 8px}.grammar-card[data-v-53c8fce3]{--jlpt-color: #718096;overflow:hidden;border:1.5px solid color-mix(in srgb,var(--jlpt-color) 72%,#273363);border-radius:14px;background:linear-gradient(110deg,#151f2ae8,#182532e8);color:inherit;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease}.grammar-card.selected[data-v-53c8fce3]{border-color:var(--jlpt-color);background:linear-gradient(135deg,#fff3a6,#ffd866 62%,#ffc95c);box-shadow:0 0 0 3px #ffe06957,0 8px 26px #ffc3384d;color:#16192f;transform:translateY(-3px)}.grammar-card-header[data-v-53c8fce3]{display:flex;align-items:stretch}.grammar-surface[data-v-53c8fce3],.grammar-formation[data-v-53c8fce3]{display:block;color:#8a97bb;font-size:12px;line-height:1.6}.grammar-surface[data-v-53c8fce3]{margin:2px 0 12px}.learning-save[data-v-53c8fce3]{border:1px solid #4a5685;color:#aeb7db;background:#141d41cc;font-weight:700}.learning-save.saved[data-v-53c8fce3]{color:#f2bd55;border-color:#f2bd558c;background:#f2bd551a}.grammar-save[data-v-53c8fce3]{width:42px;flex:none;font-size:18px;border-left:0}.popup-save[data-v-53c8fce3]{width:38px;height:38px;flex:0 0 38px;margin-left:auto;padding:0;border-color:#8fc3b7;border-radius:50%;color:#55978a;background:#69b5a21f;font-size:20px;line-height:1}.popup-save.saved[data-v-53c8fce3]{border-color:#55998b;color:#fff;background:#65a99b;box-shadow:0 4px 12px #468b7c38}.grammar-summary[data-v-53c8fce3]{display:flex;align-items:center;justify-content:space-between;min-width:0;min-height:52px;flex:1;padding:10px 12px;color:inherit;text-align:left}.grammar-summary b[data-v-53c8fce3]{line-height:1.45}.grammar-summary>span[data-v-53c8fce3]{color:#b7a5ed;font-size:15px}.grammar-seek[data-v-53c8fce3]{display:grid;width:48px;flex:none;place-items:center;border-left:1px solid rgba(73,84,143,.65);color:#c9baff;font-size:15px}.grammar-card b[data-v-53c8fce3]{font-size:16px;color:#f7f8ff}.grammar-card.selected b[data-v-53c8fce3]{color:#17192d}.grammar-list em[data-v-53c8fce3]{font-style:normal;font-size:11px;padding:2px 6px;border-radius:6px;border:1px solid color-mix(in srgb,var(--jlpt-color) 58%,transparent);background:color-mix(in srgb,var(--jlpt-color) 14%,transparent);color:var(--jlpt-color);margin-left:5px}.grammar-card.selected em[data-v-53c8fce3]{color:var(--jlpt-color);background:color-mix(in srgb,var(--jlpt-color) 30%,white);box-shadow:none}.grammar-card.selected .grammar-summary>span[data-v-53c8fce3]{color:#442578}.grammar-card.selected .grammar-seek[data-v-53c8fce3]{border-left-color:#4c307047;color:#4f288c;background:#fff3}.grammar-detail[data-v-53c8fce3]{padding:4px 16px 18px}.grammar-detail p[data-v-53c8fce3]{margin:0 0 16px;color:#cbd1e5;font-size:14px;line-height:1.78;letter-spacing:.01em}.grammar-detail .grammar-streaming[data-v-53c8fce3]{white-space:pre-wrap}.grammar-streaming.is-active[data-v-53c8fce3]:after,.streaming-output[data-v-53c8fce3]:after{content:"";display:inline-block;width:2px;height:1em;margin-left:4px;vertical-align:-.12em;background:currentColor;animation:generation-cursor-53c8fce3 .75s steps(1) infinite}.grammar-detail .grammar-error[data-v-53c8fce3]{color:#e98181}.generation-loading[data-v-53c8fce3]{display:flex;align-items:center;justify-content:center;gap:9px;color:#aeb5d2;font-size:14px}.grammar-generation-loading[data-v-53c8fce3]{justify-content:flex-start;padding:7px 0 11px}.generation-spinner[data-v-53c8fce3]{width:16px;height:16px;flex:0 0 auto;border:2px solid rgba(174,181,210,.28);border-top-color:#9c7cff;border-radius:50%;animation:generation-spin-53c8fce3 .8s linear infinite}.generation-dots[data-v-53c8fce3]{display:inline-flex;align-items:center;gap:3px}.generation-dots i[data-v-53c8fce3]{width:4px;height:4px;border-radius:50%;background:currentColor;animation:generation-dot-53c8fce3 1.1s ease-in-out infinite}.generation-dots i[data-v-53c8fce3]:nth-child(2){animation-delay:.14s}.generation-dots i[data-v-53c8fce3]:nth-child(3){animation-delay:.28s}@keyframes generation-spin-53c8fce3{to{transform:rotate(360deg)}}@keyframes generation-dot-53c8fce3{0%,60%,to{opacity:.28;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes generation-cursor-53c8fce3{0%,45%{opacity:1}46%,to{opacity:0}}@media (prefers-reduced-motion: reduce){.generation-spinner[data-v-53c8fce3],.generation-dots i[data-v-53c8fce3],.grammar-streaming.is-active[data-v-53c8fce3]:after,.streaming-output[data-v-53c8fce3]:after{animation:none}.word-page-enter-active[data-v-53c8fce3],.word-page-leave-active[data-v-53c8fce3],.word-page-enter-active .grammar-popup[data-v-53c8fce3],.word-page-leave-active .grammar-popup[data-v-53c8fce3]{transition-duration:.01ms}.word-page-enter-from .grammar-popup[data-v-53c8fce3],.word-page-leave-to .grammar-popup[data-v-53c8fce3]{transform:none}}.grammar-formation[data-v-53c8fce3]{margin:0 0 14px;padding:10px 12px;border:1px solid rgba(127,145,196,.16);border-radius:10px;background:#6677a714}.grammar-example-translation[data-v-53c8fce3]{display:block;margin-top:10px;padding:0 4px;color:#9ba8c8;font-size:13px;line-height:1.65}.grammar-card.selected p[data-v-53c8fce3]{color:#292b3e}.grammar-detail>span[data-v-53c8fce3]{display:block;padding:12px 14px;background:#ffffff08;border-radius:12px;color:#aeb5d2;font-size:14px;line-height:1.65;border-left:3px solid #9c6bff}.grammar-card.selected .grammar-detail>span[data-v-53c8fce3]{color:#24263a;border-left-color:#7044d3;background:#ffffff80}.grammar-card.selected .grammar-formation[data-v-53c8fce3]{border-color:#576aa42e;color:#64739d;background:#ffffff52}.grammar-card.selected .grammar-example-translation[data-v-53c8fce3]{color:#7180a5}.grammar-empty[data-v-53c8fce3]{display:flex;align-items:center;gap:8px;min-height:66px;padding:12px;border:1px dashed #354174;border-radius:18px;color:#aeb5d2;background:linear-gradient(110deg,#111833e0,#15183de0)}.grammar-empty>span[data-v-53c8fce3]{font-size:20px}.grammar-empty p[data-v-53c8fce3]{margin:0;font-size:13px}.loading-state[data-v-53c8fce3]{text-align:center;padding:60px 20px;color:#aeb5d2}.spinner[data-v-53c8fce3]{width:32px;height:32px;border:3px solid #293365;border-top-color:#9c6bff;border-radius:50%;animation:spin-53c8fce3 .6s linear infinite;margin:0 auto 12px}@keyframes spin-53c8fce3{to{transform:rotate(360deg)}}.grammar-popup-overlay[data-v-53c8fce3]{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px 12px;background:#040a187a;z-index:1000;perspective:1400px}.grammar-popup[data-v-53c8fce3]{width:min(500px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;position:relative;padding:22px 24px 22px 30px;border:1px solid #273363;border-radius:6px 20px 20px 6px;background:linear-gradient(90deg,rgba(255,255,255,.03) 0 18px,transparent 18px),linear-gradient(180deg,rgba(255,255,255,.025),transparent 28%),#111937;box-shadow:-10px 0 18px #0000002e,0 12px 44px #00000061;transform-origin:left center;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,opacity}.grammar-popup.book-page[data-v-53c8fce3]:before{content:"";position:absolute;inset:0 auto 0 0;width:16px;border-radius:6px 0 0 6px;background:linear-gradient(to right,rgba(0,0,0,.34),rgba(0,0,0,.08) 72%,transparent);pointer-events:none}.grammar-popup.book-page[data-v-53c8fce3]:after{content:"";position:absolute;top:8px;right:10px;bottom:8px;left:22px;border:1px solid rgba(255,255,255,.03);border-radius:0 14px 14px 0;pointer-events:none}.word-page-enter-active[data-v-53c8fce3],.word-page-leave-active[data-v-53c8fce3]{transition:opacity .34s ease}.word-page-enter-active .grammar-popup[data-v-53c8fce3],.word-page-leave-active .grammar-popup[data-v-53c8fce3]{transition:transform .46s cubic-bezier(.22,1,.36,1),box-shadow .46s ease,opacity .28s ease}.word-page-enter-from[data-v-53c8fce3]{opacity:0}.word-page-enter-from .grammar-popup[data-v-53c8fce3]{transform:rotateY(-92deg) scale(.985);opacity:.28;box-shadow:-18px 0 28px #0000001f}.word-page-leave-to[data-v-53c8fce3]{opacity:0}.word-page-leave-to .grammar-popup[data-v-53c8fce3]{transform:rotateY(92deg) scale(.985);opacity:.28;box-shadow:18px 0 28px #0000001f}.popup-close[data-v-53c8fce3]{position:absolute;top:12px;right:16px;font-size:24px;color:#aeb5d2;cursor:pointer;border:0;background:none;padding:4px 8px;line-height:1;z-index:1}.word-study-card[data-v-53c8fce3]{display:grid;gap:14px}.word-study-header[data-v-53c8fce3]{min-width:0;padding-right:42px}.word-study-identity[data-v-53c8fce3]{min-width:0}.popup-reading[data-v-53c8fce3]{min-height:18px;color:#9bd8c3;font-size:14px;letter-spacing:.08em}.popup-word[data-v-53c8fce3]{max-width:100%;overflow:hidden;color:#fff;font-size:clamp(24px,8vw,30px);font-weight:750;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.word-study-meta[data-v-53c8fce3]{display:flex;align-items:center;justify-content:space-between;gap:12px}.word-study-badges[data-v-53c8fce3]{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px}.word-study-badges span[data-v-53c8fce3]{padding:5px 9px;border:1px solid #3d5071;border-radius:999px;color:#c8d7ef;background:#1b2945;font-size:12px;font-weight:700;white-space:nowrap}.word-study-badges .jlpt-badge[data-v-53c8fce3]{border-color:color-mix(in srgb,var(--jlpt-color) 58%,transparent);color:var(--jlpt-color);background:color-mix(in srgb,var(--jlpt-color) 14%,transparent)}.jlpt-n5[data-v-53c8fce3]{--jlpt-color: #53b8a6}.jlpt-n4[data-v-53c8fce3]{--jlpt-color: #6d9df2}.jlpt-n3[data-v-53c8fce3]{--jlpt-color: #e0a84f}.jlpt-n2[data-v-53c8fce3]{--jlpt-color: #ec7d72}.jlpt-n1[data-v-53c8fce3]{--jlpt-color: #ae86f2}.jlpt-unknown[data-v-53c8fce3]{--jlpt-color: #9ba7ba}.popup-base-form[data-v-53c8fce3]{display:flex;align-items:center;gap:10px;color:#d6deed}.popup-base-form small[data-v-53c8fce3]{color:#8f9bb3}.word-study-section[data-v-53c8fce3]{padding:13px 15px;border:1px solid #293958;border-radius:14px;background:#16223b}.word-study-section>small[data-v-53c8fce3]{display:block;margin-bottom:6px;color:#8f9bb3;font-size:12px;font-weight:700;letter-spacing:.04em}.word-study-section.meaning[data-v-53c8fce3]{border-color:#315f55;background:#172f30}.word-study-section.meaning strong[data-v-53c8fce3]{color:#d8fff2;font-size:19px;line-height:1.55}.word-study-section.meaning.streaming strong[data-v-53c8fce3]{white-space:pre-wrap}.word-card-generation-loading[data-v-53c8fce3]{justify-content:flex-start;min-height:54px;padding:8px 0 4px}.popup-explain[data-v-53c8fce3]{margin:0;font-size:15px;line-height:1.65;color:#f7f8ff}.popup-example[data-v-53c8fce3]{margin:0;font-size:16px;line-height:1.55;color:#eef2fb}.popup-example-translation[data-v-53c8fce3]{margin:6px 0 0;color:#aebbd0;font-size:14px;line-height:1.5}.popup-none[data-v-53c8fce3]{text-align:center;padding:20px;color:#aeb5d2;font-size:15px}@media (max-width: 600px){.grammar-popup[data-v-53c8fce3]{padding:20px 20px 20px 26px;border-radius:6px 18px 18px 6px}.player-container[data-v-53c8fce3]{padding:0 max(17px,var(--safe-area-right, 0px)) max(28px,var(--safe-area-bottom, 0px)) max(17px,var(--safe-area-left, 0px))}.video-copy b[data-v-53c8fce3]{font-size:25px}.video-copy small[data-v-53c8fce3]{font-size:15px}.analysis-card[data-v-53c8fce3]{padding:24px 20px}.analysis-card h1[data-v-53c8fce3]{font-size:29px}.steps[data-v-53c8fce3]{padding:6px 18px}.steps span[data-v-53c8fce3]{font-size:17px}.steps small[data-v-53c8fce3]{font-size:13px}.transcript-frame[data-v-53c8fce3]{margin-top:5px}.transcript[data-v-53c8fce3]{padding:8px}.transcript-scroll[data-v-53c8fce3]{padding:4px 2px max(16px,var(--safe-area-bottom, 0px))}.player-container--learning .transcript-scroll[data-v-53c8fce3]{--transcript-scroll-padding-bottom: calc(var(--floating-player-height) + 20px)}.player-container--learning .floating-controls-slot[data-v-53c8fce3]{right:auto;left:50%}.transcript p[data-v-53c8fce3]{font-size:16px}.transcript p .sentence-words.with-grammar-action[data-v-53c8fce3]{padding-right:66px}.sentence-actions[data-v-53c8fce3]{right:10px;top:6px}.sentence-translation[data-v-53c8fce3]{font-size:13px}.grammar-summary[data-v-53c8fce3]{min-height:48px;padding:9px 10px}.grammar-seek[data-v-53c8fce3]{width:44px}.grammar-list[data-v-53c8fce3]{gap:16px}.grammar-detail[data-v-53c8fce3]{padding:6px 14px 18px}.grammar-detail p[data-v-53c8fce3]{margin-bottom:18px;font-size:14px;line-height:1.82}.grammar-formation[data-v-53c8fce3]{margin-bottom:16px;padding:10px 11px}.grammar-detail>span[data-v-53c8fce3]{padding:12px}.video-frame[data-v-53c8fce3]{top:calc(var(--safe-area-top, 0px) + var(--player-header-bar, 40px));border-radius:20px}}.transcript p .sentence-block{display:flex;flex-direction:column;align-items:stretch;flex:0 0 100%;width:100%;box-sizing:border-box;border-radius:12px;padding:8px 10px;margin:0 0 4px;border:1px solid transparent;background:transparent;opacity:.74;transition:background-color .26s cubic-bezier(.22,1,.36,1),opacity .26s cubic-bezier(.22,1,.36,1)}.transcript p .sentence-block .sentence-words{display:flex;flex-wrap:wrap;align-items:flex-end;width:100%}.transcript p .sentence-block.is-selected{background:#76d2b01c;opacity:1;scroll-margin-top:0}:root[data-theme=daylight] .transcript p .sentence-block.is-selected{background:#ebfaf5e0}@media (prefers-reduced-motion: reduce){.transcript p .sentence-block{transition:none}}.sentence-action-pill.feedback-pill{margin-left:6px;opacity:.9}.subtitle-feedback-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:flex-end;justify-content:center;background:#14181c73;padding:16px}.subtitle-feedback-card{width:min(480px,100%);background:var(--surface, #fff);color:var(--text, #101828);border-radius:16px 16px 12px 12px;padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:0 12px 40px #0003}.subtitle-feedback-card header{display:flex;justify-content:space-between;align-items:center}.subtitle-feedback-card h2{margin:0;font-size:1.1rem}.feedback-close{border:0;background:transparent;font-size:1.4rem;cursor:pointer}.feedback-target{margin:0;font-size:.95rem;opacity:.85}.subtitle-feedback-card label{display:flex;flex-direction:column;gap:6px;font-size:.85rem}.subtitle-feedback-card select,.subtitle-feedback-card textarea{border:1px solid #d0d5dd;border-radius:10px;padding:10px;font:inherit}.subtitle-feedback-card footer{display:flex;justify-content:flex-end;gap:8px}.subtitle-feedback-card .btn-secondary,.subtitle-feedback-card .btn-primary{border-radius:10px;padding:10px 14px;border:1px solid #d0d5dd;background:#fff;cursor:pointer}.subtitle-feedback-card .btn-primary{background:#1f4b3a;border-color:#1f4b3a;color:#fff}.subtitle-feedback-card .btn-primary:disabled{opacity:.5}.app-mobile-header{position:fixed;z-index:var(--app-chrome-z, 20);top:0;left:0;right:0;width:100%;max-width:100vw;box-sizing:border-box;display:flex;flex-direction:column;pointer-events:none;transition:background .18s ease,box-shadow .18s ease,border-color .18s ease}.app-mobile-header__safe{flex:0 0 auto;height:var(--safe-area-top, env(safe-area-inset-top, 0px));width:100%;pointer-events:none}.app-mobile-header__nav{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;height:var(--app-header-height, 52px);width:100%;max-width:760px;margin:0 auto;padding-left:max(16px,var(--safe-area-left, 0px));padding-right:max(16px,var(--safe-area-right, 0px))}.app-mobile-header__brand{display:flex;min-width:0;align-items:center;gap:12px}.app-mobile-header__actions{display:flex;align-items:center;gap:4px;margin-left:auto}.app-mobile-header__actions>:is(button,a,[role=button]){display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center}.app-mobile-header--standard{background:var(--app-chrome-bg-soft);border-bottom:1px solid var(--app-chrome-border);backdrop-filter:var(--app-chrome-blur);-webkit-backdrop-filter:var(--app-chrome-blur);box-shadow:none}.app-mobile-header--standard.is-scrolled{background:var(--app-chrome-bg);border-bottom-color:var(--app-chrome-border);box-shadow:var(--app-chrome-shadow-top);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.app-mobile-header--overlay{border-bottom:1px solid transparent;background:linear-gradient(to bottom,#060a1cfa,#060a1ce6 55%,#060a1c8c 78%,#060a1c00);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;padding-bottom:12px}.app-mobile-header--overlay.is-scrolled{padding-bottom:0;background:var(--app-chrome-bg);border-bottom-color:var(--app-chrome-border);box-shadow:var(--app-chrome-shadow-top);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}:root[data-theme=daylight] .app-mobile-header--overlay{background:linear-gradient(to bottom,#f6f9fdfa,#f6f9fde0 65%,#f6f9fd00);border-bottom-color:transparent;box-shadow:none}:root[data-theme=daylight] .app-mobile-header--overlay.is-scrolled{background:var(--app-chrome-bg);border-bottom-color:var(--app-chrome-border);box-shadow:var(--app-chrome-shadow-top)}.app-mobile-tabbar{position:fixed;z-index:var(--app-chrome-z, 20);right:0;bottom:0;left:0;width:100%;max-width:100vw;box-sizing:border-box;display:flex;flex-direction:column;background:var(--app-chrome-bg);border-top:1px solid var(--app-chrome-border);box-shadow:var(--app-chrome-shadow-bottom);backdrop-filter:var(--app-chrome-blur);-webkit-backdrop-filter:var(--app-chrome-blur)}.app-mobile-tabbar__nav{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;box-sizing:border-box;height:var(--app-tabbar-height, 58px);width:100%;max-width:760px;margin:0 auto;padding:6px 8px 8px;padding-left:max(8px,var(--safe-area-left, 0px));padding-right:max(8px,var(--safe-area-right, 0px))}.app-mobile-tabbar__safe{flex:0 0 auto;height:var(--safe-area-bottom, env(safe-area-inset-bottom, 0px));width:100%;pointer-events:none;background:inherit}.app-mobile-tabbar .nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:44px;padding:0;border:0;color:var(--app-chrome-icon);background:transparent;font:inherit;font-size:12px;font-weight:500;cursor:pointer}.app-mobile-tabbar .nav-icon{display:grid;min-width:44px;min-height:28px;place-items:center;font-family:system-ui,sans-serif;font-size:22px;font-weight:500;line-height:1}.app-mobile-tabbar .nav-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}.app-mobile-tabbar .nav-item.active{color:var(--app-chrome-icon-active)}.app-mobile-tabbar .nav-item.active .nav-icon{color:var(--app-chrome-icon-active);text-shadow:none}.app-mobile-tabbar .nav-add{display:grid;width:48px;height:48px;place-items:center;align-self:center;justify-self:center;margin-top:calc(-1 * var(--app-tabbar-fab-overhang, 24px));border:3px solid var(--app-chrome-bg);border-radius:50%;color:#fff;background:var(--accent-gradient, linear-gradient(135deg, #5088ff, #b73fe8));box-shadow:0 6px 16px #4056b547;font-size:28px;font-weight:300;line-height:1;cursor:pointer}.app-mobile-tabbar .nav-add:active{transform:scale(.94)}:root[data-theme=daylight] .app-mobile-tabbar .nav-add{border-color:var(--app-chrome-bg);color:#fff;background:var(--accent, #4056b5);box-shadow:0 6px 16px #4056b538}.import-overlay[data-v-96515705]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay);z-index:100;display:none;animation:fadeIn-96515705 .15s ease}.import-overlay.show[data-v-96515705]{display:block}.import-sheet[data-v-96515705]{position:fixed;bottom:0;left:0;right:0;height:auto;box-sizing:border-box;background-color:var(--bg-elevated);border-radius:20px 20px 0 0;padding:0 0 var(--safe-area-bottom, env(safe-area-inset-bottom, 0px));z-index:101;display:none;animation:slideUp-96515705 .25s ease;box-shadow:0 -4px 24px #0000004d}.import-sheet.show[data-v-96515705]{display:block}.import-sheet .sheet-header[data-v-96515705]{text-align:center;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.import-sheet .sheet-header h3[data-v-96515705]{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.import-sheet .sheet-header p[data-v-96515705]{font-size:13px;color:var(--text-muted)}.import-sheet .sheet-body[data-v-96515705]{padding:8px 20px 16px;background-color:inherit}.import-sheet .sheet-option[data-v-96515705]{display:flex;align-items:center;gap:14px;padding:16px 12px;border-radius:12px;cursor:pointer;transition:background .1s}.import-sheet .sheet-option[data-v-96515705]:active{background:var(--bg-secondary)}.import-sheet .opt-icon[data-v-96515705]{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.import-sheet .opt-icon.green[data-v-96515705]{background:#22c55e26}.import-sheet .opt-icon.blue[data-v-96515705]{background:#6366f126}.import-sheet .opt-text[data-v-96515705]{flex:1;min-width:0}.import-sheet .opt-title[data-v-96515705]{font-size:16px;font-weight:600;color:var(--text-primary)}.import-sheet .opt-sub[data-v-96515705]{font-size:12px;color:var(--text-muted);margin-top:2px}@keyframes fadeIn-96515705{0%{opacity:0}to{opacity:1}}@keyframes slideUp-96515705{0%{transform:translateY(100%)}to{transform:translateY(0)}}.url-overlay[data-v-96515705]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay);z-index:110;display:none;animation:fadeIn-96515705 .15s ease}.url-overlay.show[data-v-96515705]{display:block}.url-dialog[data-v-96515705]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-elevated);border-radius:20px;padding:24px 20px 20px;z-index:111;display:none;animation:dialogIn-96515705 .2s ease;width:calc(100% - 48px);max-width:340px;box-shadow:0 8px 32px #0000004d}.url-dialog.show[data-v-96515705]{display:block}@keyframes dialogIn-96515705{0%{opacity:0;transform:translate(-50%,-50%) scale(.92)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.url-dialog .dlg-title[data-v-96515705]{font-size:18px;font-weight:600;color:var(--text-primary);text-align:center;margin-bottom:16px}.url-dialog input[data-v-96515705]{width:100%;padding:14px 16px;border:2px solid var(--border);border-radius:12px;font-size:16px;outline:none;background:var(--bg-secondary);transition:border-color .15s;font-family:inherit;word-break:break-all;overflow-wrap:break-word;box-sizing:border-box;color:var(--text-primary)}.url-dialog input[data-v-96515705]:focus{border-color:var(--accent)}.url-dialog input[data-v-96515705]::placeholder{color:var(--text-muted)}.url-dialog .dlg-buttons[data-v-96515705]{display:flex;gap:10px;margin-top:18px}.url-dialog .dlg-buttons button[data-v-96515705]{flex:1;padding:12px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:background .1s}.url-dialog .dlg-buttons .btn-cancel[data-v-96515705]{background:var(--bg-secondary);color:var(--text-secondary)}.url-dialog .dlg-buttons .btn-cancel[data-v-96515705]:active{opacity:.8}.url-dialog .dlg-buttons .btn-save[data-v-96515705]{background:var(--accent-gradient);color:#fff}.url-dialog .dlg-buttons .btn-save[data-v-96515705]:active{opacity:.85}.more-actions-btn[data-v-2238686e]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50%;color:var(--text-secondary, #667085);background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .14s ease}.more-actions-btn[data-v-2238686e]:hover{background:#0f172a0f}.more-actions-btn[data-v-2238686e]:active{background:#0f172a1a}:root[data-theme=midnight] .more-actions-btn[data-v-2238686e]:hover,:root:not([data-theme=daylight]) .more-actions-btn[data-v-2238686e]:hover{background:#ffffff14}:root[data-theme=midnight] .more-actions-btn[data-v-2238686e]:active,:root:not([data-theme=daylight]) .more-actions-btn[data-v-2238686e]:active{background:#ffffff1f}.favorites-action-overlay[data-v-a7c256d7]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--action-sheet-z);background:var(--overlay, rgba(15, 23, 42, .48));animation:action-overlay-in .15s ease;height:100vh;height:100lvh;overscroll-behavior:none}.publish-settings-overlay[data-v-a20959df]{position:fixed;z-index:1200;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow:hidden;background:#0d161c8f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:none}.publish-settings-panel[data-v-a20959df]{width:min(100%,560px);max-height:min(720px,calc(100dvh - 32px));overflow-x:hidden;overflow-y:auto;border:1px solid rgba(213,228,225,.9);border-radius:24px;background:#fff;color:#243241;box-shadow:0 24px 70px #081f2347;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}header[data-v-a20959df]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 22px 12px}header p[data-v-a20959df]{margin:0 0 3px;color:#318979;font-size:12px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}header h2[data-v-a20959df]{margin:0;font-size:21px}.close-button[data-v-a20959df]{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:0;border-radius:50%;background:#f0f5f4;color:#52636b;cursor:pointer}.settings-state[data-v-a20959df]{min-height:220px;padding:72px 22px;text-align:center;color:#687880}.publish-settings-form[data-v-a20959df]{display:flex;padding:8px 22px 0;flex-direction:column;gap:20px}.title-field[data-v-a20959df]{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700}.title-field input[data-v-a20959df]{width:100%;min-width:0;min-height:46px;box-sizing:border-box;padding:10px 12px;border:1px solid #d9e3e4;border-radius:12px;outline:0;color:inherit;font:inherit;font-weight:500}.title-field input[data-v-a20959df]:focus{border-color:#59c3b0;box-shadow:0 0 0 3px #59c3b021}fieldset[data-v-a20959df]{min-width:0;margin:0;padding:0;border:0}legend[data-v-a20959df]{margin-bottom:9px;font-size:13px;font-weight:700}.choice-list[data-v-a20959df]{display:flex;flex-wrap:wrap;gap:8px}.choice-chip[data-v-a20959df]{position:relative;display:inline-flex;max-width:100%;min-height:36px;align-items:center;padding:7px 12px;border:1px solid #dfe7e8;border-radius:999px;background:#f8fafb;color:#5e6d75;font-size:13px;font-weight:650;cursor:pointer}.choice-chip.selected[data-v-a20959df]{border-color:#91d2c5;background:#e8f7f3;color:#176b5b}.choice-chip input[data-v-a20959df]{position:absolute;width:1px;height:1px;opacity:0}.choice-chip[data-v-a20959df]:focus-within{outline:2px solid #59c3b0;outline-offset:2px}.empty-taxonomy[data-v-a20959df],.settings-error[data-v-a20959df]{margin:0;font-size:13px}.empty-taxonomy[data-v-a20959df]{color:#78878f}.settings-error[data-v-a20959df]{color:#b42318}footer[data-v-a20959df]{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;margin:2px -22px 0;padding:14px 22px max(18px,env(safe-area-inset-bottom));border-top:1px solid #edf1f1;background:#fffffff5}footer button[data-v-a20959df]{min-height:44px;padding:9px 20px;border-radius:12px;font:inherit;font-weight:750;cursor:pointer}.secondary-button[data-v-a20959df]{border:1px solid #dce5e5;background:#fff;color:#52636b}.primary-button[data-v-a20959df]{border:1px solid #3da995;background:#43b39f;color:#fff}footer button[data-v-a20959df]:disabled{cursor:default;opacity:.55}.publish-settings-enter-active[data-v-a20959df],.publish-settings-leave-active[data-v-a20959df]{transition:opacity .16s ease}.publish-settings-enter-from[data-v-a20959df],.publish-settings-leave-to[data-v-a20959df]{opacity:0}@media (max-width: 480px){.publish-settings-overlay[data-v-a20959df]{place-items:end center;padding-top:max(8px,env(safe-area-inset-top));padding-right:max(8px,env(safe-area-inset-right));padding-bottom:0;padding-left:max(8px,env(safe-area-inset-left))}.publish-settings-panel[data-v-a20959df]{max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));border-radius:22px 22px 0 0}header[data-v-a20959df]{padding:18px 16px 10px}.publish-settings-form[data-v-a20959df]{padding-right:16px;padding-left:16px}footer[data-v-a20959df]{margin-right:-16px;margin-left:-16px;padding-right:16px;padding-left:16px}footer button[data-v-a20959df]{flex:1 1 0;padding-right:10px;padding-left:10px}}.dashboard[data-v-56f1c3c8]{position:relative;overflow:hidden;overflow-x:hidden;min-height:100vh;min-height:100dvh;padding:12px 17px 24px;padding-left:max(17px,var(--safe-area-left, 0px));padding-right:max(17px,var(--safe-area-right, 0px));max-width:760px;margin:auto;background:radial-gradient(circle at 87% 14%,#31154f 0,transparent 17%),radial-gradient(circle at 9% 38%,#172466 0,transparent 17%),linear-gradient(115deg,#030819,#090e2b 55%,#04071b)}.hero[data-v-56f1c3c8]{position:relative;min-height:127px;overflow:hidden;padding:18px 24px;border:1px solid rgba(255,255,255,.13);border-radius:24px;box-shadow:0 16px 38px #0003;isolation:isolate}.hero[data-v-56f1c3c8]:after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#040919d1,#04091994 43%,#04091914 78%)}.hero-art[data-v-56f1c3c8]{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0}.hero-image[data-v-56f1c3c8]{width:100%;height:100%;display:block;object-fit:cover;object-position:center 47%}.hero-day[data-v-56f1c3c8]{display:none}.hero-copy[data-v-56f1c3c8]{position:relative;z-index:2}.hero-copy p[data-v-56f1c3c8]{text-shadow:0 1px 12px rgba(0,0,0,.36)}.hero p[data-v-56f1c3c8]{margin:0 0 8px;color:#aeb5d2;font-size:18px;font-weight:600}.hero h1[data-v-56f1c3c8]{position:relative;z-index:2;margin:0;font-size:26px;line-height:1.45;letter-spacing:.02em;color:#f7f8ff}.home-shelf[data-v-56f1c3c8]{margin-top:26px}.shelf-heading[data-v-56f1c3c8]{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:13px}.shelf-heading h2[data-v-56f1c3c8]{margin:0;color:#f7f8ff;font-size:21px}.shelf-heading small[data-v-56f1c3c8]{color:#979fbe;font-size:13px}.resume-card[data-v-56f1c3c8]{display:grid;grid-template-columns:minmax(150px,42%) 1fr;gap:16px;padding:12px;border:1px solid rgba(87,102,178,.58);border-radius:22px;background:linear-gradient(120deg,#121b3df5,#131639f0);box-shadow:inset 0 1px #ffffff0a,0 12px 30px #0003;cursor:pointer}.shelf-thumb[data-v-56f1c3c8]{position:relative;min-height:104px;overflow:hidden;border-radius:15px;background:#131936}.shelf-thumb img[data-v-56f1c3c8]{width:100%;height:100%;min-height:104px;display:block;object-fit:cover}.shelf-thumb[data-v-56f1c3c8]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,rgba(5,8,27,.58),transparent 60%)}.shelf-thumb small[data-v-56f1c3c8]{position:absolute;z-index:2;right:7px;bottom:6px;padding:3px 7px;border-radius:7px;color:#fff;background:#050714c7;font-size:11px}.resume-copy[data-v-56f1c3c8]{min-width:0;align-self:center}.resume-copy>span[data-v-56f1c3c8]{color:#9d83ef;font-size:11px;font-weight:700}.resume-copy h3[data-v-56f1c3c8],.favorite-card h3[data-v-56f1c3c8]{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:7px 0 13px;color:#f4f5ff;font-size:15px;line-height:1.45}.resume-copy p[data-v-56f1c3c8]{margin:6px 0 0;color:#9aa4c8;font-size:11px}.favorite-list[data-v-56f1c3c8]{margin-top:2px}.favorite-list .lesson-card[data-v-56f1c3c8]{border:1px solid rgba(87,102,178,.5)}.favorite-toggle[data-v-56f1c3c8]{color:#ffd45a!important;font-size:22px!important;text-shadow:0 0 12px rgba(255,202,61,.38)}.shelf-empty[data-v-56f1c3c8]{padding:20px;border:1px dashed #303b70;border-radius:18px;color:#8993b8;background:#0d133085;font-size:13px;text-align:center}.records[data-v-56f1c3c8]{margin-top:40px}.record-heading[data-v-56f1c3c8]{display:flex;align-items:center;justify-content:space-between}.record-heading h2[data-v-56f1c3c8]{font-size:24px;margin:0;color:#fff}.record-heading button[data-v-56f1c3c8]{color:#aaa9dd;font-weight:600;font-size:15px;border:0;background:transparent;cursor:pointer;font-family:inherit}.records-more[data-v-56f1c3c8]{display:block;width:100%;margin-top:14px;padding:10px 12px;border:1px solid rgba(170,169,221,.28);border-radius:12px;color:#aaa9dd;background:#1216398c;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer}.empty-state[data-v-56f1c3c8]{text-align:center;padding:40px 20px;color:#aeb5d2}.empty-card[data-v-56f1c3c8]{background:linear-gradient(115deg,#111937,#141940);border-radius:23px;padding:40px 24px;border:1px solid #293365}.timeline[data-v-56f1c3c8]{margin-top:20px;border-left:1px solid #1d2853;padding-left:14px}.date-group[data-v-56f1c3c8]{margin-bottom:30px}.date-row[data-v-56f1c3c8]{margin-left:-26px;display:flex;align-items:center;gap:12px;width:calc(100% + 26px);padding:0;border:0;margin-bottom:20px;color:inherit;background:transparent;font-family:inherit;text-align:left;cursor:pointer}.dot[data-v-56f1c3c8]{width:16px;height:16px;border-radius:50%;background:#635aff;border:3px solid #1c2671;box-shadow:0 0 11px #8b6eff;flex-shrink:0}.date-row h3[data-v-56f1c3c8]{margin:0;font-size:22px;color:#f7f8ff;white-space:nowrap}.date-line[data-v-56f1c3c8]{width:100%;height:1px;background:#20294f}.date-row small[data-v-56f1c3c8]{font-size:15px;color:#aeb5d2;white-space:nowrap}.date-chevron[data-v-56f1c3c8]{color:#a99bea;font-size:18px;line-height:1;transition:transform .18s ease}.date-chevron.collapsed[data-v-56f1c3c8]{transform:rotate(-90deg)}.lesson-card[data-v-56f1c3c8]{display:grid;grid-template-columns:39% 1fr;gap:18px;margin:12px 0;padding:11px;border-radius:23px;background:linear-gradient(115deg,#111937,#141940);box-shadow:0 11px 26px #0002;cursor:pointer;transition:transform .15s}.lesson-card[data-v-56f1c3c8]:active{transform:scale(.98)}.thumbnail[data-v-56f1c3c8]{position:relative;height:150px;overflow:hidden;border-radius:14px;background-size:cover}.thumbnail.report[data-v-56f1c3c8]{background:linear-gradient(130deg,#453727,#9c6855 45%,#2d1c19)}.thumbnail.challenge[data-v-56f1c3c8]{background:linear-gradient(130deg,#9f8e83,#f4ddd0 48%,#7b261e)}.thumbnail>img[data-v-56f1c3c8]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.thumbnail[data-v-56f1c3c8]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(150deg,transparent,#080b24aa)}.thumbnail small[data-v-56f1c3c8]{position:absolute;z-index:2;right:8px;bottom:8px;background:#171524b5;padding:2px 6px;border-radius:4px;color:#fff;font-size:13px}.lesson-info[data-v-56f1c3c8]{min-width:0;padding:2px}.lesson-top[data-v-56f1c3c8]{display:flex;min-width:0;justify-content:space-between;align-items:center;gap:8px}.lesson-badges[data-v-56f1c3c8]{display:flex;min-width:0;flex-wrap:wrap;gap:6px}.lesson-top .more-actions-btn[data-v-56f1c3c8]{margin:-8px -8px -8px 0}.badge[data-v-56f1c3c8]{display:inline-block;border-radius:10px;padding:4px 10px;font-size:12px;font-weight:700}.badge.done[data-v-56f1c3c8]{color:#4ce37f;background:#093a2b}.badge.pending[data-v-56f1c3c8]{color:#f6cd72;background:#4b3b16}.badge.failed[data-v-56f1c3c8]{color:#ffb1b1;background:#531f2a}.badge.public[data-v-56f1c3c8]{color:#bff9ed;background:#155f53}.lesson-info h4[data-v-56f1c3c8]{font-size:15px;line-height:1.4;margin:6px 0 12px;color:#f7f8ff;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bar[data-v-56f1c3c8]{height:7px;border-radius:8px;background:#29305b;overflow:hidden}.bar i[data-v-56f1c3c8]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4f84ff,#b444ef)}.bar i.pending[data-v-56f1c3c8]{background:linear-gradient(90deg,#ffd321,#ffa71f)}.bar i.failed[data-v-56f1c3c8]{background:linear-gradient(90deg,#ff766d,#d83259)}.lesson-progress[data-v-56f1c3c8]{display:flex;align-items:center;gap:10px}.lesson-progress .bar[data-v-56f1c3c8]{flex:1;min-width:0}.lesson-progress b[data-v-56f1c3c8]{flex:none;min-width:36px;color:#b981ff;font-size:13px;text-align:right}.lesson-bottom[data-v-56f1c3c8]{display:flex;gap:12px;align-items:center;color:#aeb5d2;font-size:13px;margin-top:8px}.lesson-bottom b[data-v-56f1c3c8]{margin-left:auto;color:#b981ff;font-size:16px}@media (max-width: 600px){.dashboard[data-v-56f1c3c8]{padding:16px 14px 20px}.hero p[data-v-56f1c3c8]{font-size:16px}.hero h1[data-v-56f1c3c8]{font-size:22px}.hero[data-v-56f1c3c8]{min-height:120px;padding:16px 18px;border-radius:20px}.hero-image[data-v-56f1c3c8]{object-position:55% 48%}.home-shelf[data-v-56f1c3c8]{margin-top:22px}.resume-card[data-v-56f1c3c8]{grid-template-columns:42% 1fr;gap:12px;padding:10px}.shelf-heading h2[data-v-56f1c3c8]{font-size:18px}.resume-copy h3[data-v-56f1c3c8]{margin:5px 0 10px;font-size:13px}.records[data-v-56f1c3c8]{margin-top:30px}.record-heading h2[data-v-56f1c3c8]{font-size:20px}.timeline[data-v-56f1c3c8]{padding-left:8px}.date-row[data-v-56f1c3c8]{width:calc(100% + 20px);margin-left:-20px}.date-row h3[data-v-56f1c3c8]{font-size:18px}.date-row small[data-v-56f1c3c8]{font-size:13px}.lesson-card[data-v-56f1c3c8]{gap:12px;grid-template-columns:40% 1fr}.thumbnail[data-v-56f1c3c8]{height:120px}.lesson-info h4[data-v-56f1c3c8]{font-size:13px}.lesson-bottom[data-v-56f1c3c8]{font-size:11px;gap:6px}}.library-filters[data-v-fa92dd09]{display:flex;margin:0 0 18px;flex-direction:column;gap:10px}.search-field[data-v-fa92dd09]{display:flex;min-height:50px;align-items:center;gap:10px;padding:0 16px;border:1px solid #e4e9ee;border-radius:18px;background:#fcfdfd;color:#7b8798;box-shadow:0 1px 5px #1f304306}.search-field[data-v-fa92dd09]:focus-within{border-color:#b6c3e6;box-shadow:0 0 0 2px #566fc914}.search-field input[data-v-fa92dd09]{width:100%;min-width:0;min-height:44px;padding:0;border:0;outline:0;background:transparent;color:#243241;font:inherit;font-size:15px}.search-field input[data-v-fa92dd09]::placeholder{color:#93a0a9}.filter-row[data-v-fa92dd09]{display:flex;flex-wrap:wrap;gap:8px}.level-filter-card[data-v-fa92dd09]{position:relative;display:flex;width:100%;min-width:0;min-height:76px;align-items:center;gap:12px;box-sizing:border-box;padding:13px 16px;border:1px solid #e2e8ee;border-radius:19px;background:#fff;color:#455160;box-shadow:0 2px 9px #1f304309;cursor:pointer}.level-filter-card[data-v-fa92dd09]:focus-within{border-color:#b6c3e6;box-shadow:0 0 0 2px #566fc914}.level-filter-icon[data-v-fa92dd09]{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:13px;background:#f0f3fb;color:#62759a}.level-filter-copy[data-v-fa92dd09]{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:3px}.level-filter-copy strong[data-v-fa92dd09]{color:#303c4c;font-size:14px;font-weight:750}.level-filter-copy small[data-v-fa92dd09]{color:#8a95a3;font-size:12px;line-height:1.35}.level-filter-value[data-v-fa92dd09]{display:flex;min-width:78px;flex:0 1 auto;align-items:flex-end;flex-direction:column;gap:3px;text-align:right}.level-filter-value small[data-v-fa92dd09]{color:#98a1ad;font-size:10.5px}.level-filter-value strong[data-v-fa92dd09]{max-width:150px;overflow:hidden;color:#5269bf;font-size:13px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.level-filter-chevron[data-v-fa92dd09]{flex:0 0 auto;color:#8b96a6}.tag-filter-group[data-v-fa92dd09]{min-width:0;margin:0;padding:13px 15px 15px;border:1px solid #e5e9ef;border-radius:18px;background:#fcfdfee6}.tag-filter-group legend[data-v-fa92dd09]{display:inline-flex;margin-bottom:10px;align-items:center;gap:6px;color:#596577;font-size:12px;font-weight:700}.tag-filter-list[data-v-fa92dd09]{display:flex;min-width:0;flex-wrap:wrap;gap:8px}.tag-filter-button[data-v-fa92dd09]{display:inline-flex;min-height:36px;max-width:100%;align-items:center;gap:6px;padding:7px 12px;border:1px solid #e0e5ec;border-radius:999px;background:#fff;color:#4f5b6a;font:inherit;font-size:12px;font-weight:650;overflow-wrap:anywhere;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.tag-filter-button svg[data-v-fa92dd09]{flex:0 0 auto;color:#7888a3;transition:color .15s ease}.tag-filter-button[data-v-fa92dd09]:hover{border-color:#cbd4e3;background:#f9faff}.tag-filter-button[data-v-fa92dd09]:focus-visible{outline:2px solid rgba(82,105,191,.4);outline-offset:2px}.tag-filter-button.active[data-v-fa92dd09]{border-color:#b7c1f2;background:#eef1ff;color:#465dc0}.tag-filter-button.active svg[data-v-fa92dd09]{color:#5269c7}.level-filter-card.active[data-v-fa92dd09]{border-color:#c8d0ed;background:#fdfdff}.level-filter-card select[data-v-fa92dd09]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.active-filters[data-v-fa92dd09]{display:flex;min-height:32px;align-items:center;justify-content:space-between;gap:8px}.active-filter-chips[data-v-fa92dd09]{display:flex;min-width:0;flex:1;flex-wrap:wrap;gap:6px}.active-filter-chip[data-v-fa92dd09]{display:inline-flex;min-height:30px;max-width:150px;align-items:center;gap:6px;padding:4px 9px 4px 10px;border:1px solid #c5e2dc;border-radius:999px;background:#edf7f4;color:#236c5e;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.active-filter-chip span[data-v-fa92dd09]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.active-filter-chip[data-v-fa92dd09]:focus-visible,.clear-filters[data-v-fa92dd09]:focus-visible{outline:2px solid #59c3b0;outline-offset:2px}.clear-filters[data-v-fa92dd09]{flex:0 0 auto;padding:6px 2px;border:0;background:transparent;color:#377a6e;font:inherit;font-size:12px;font-weight:650;cursor:pointer}.video-card-grid[data-v-fa92dd09]{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:12px}.video-card[data-v-fa92dd09]{display:flex;min-width:0;min-height:112px;gap:12px;padding:8px;overflow:hidden;border:1px solid #e1e8e9;border-radius:18px;background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer;box-shadow:0 4px 14px #1c31300b;text-decoration:none;transition:transform .15s,box-shadow .15s}.video-card[data-v-fa92dd09]:hover{transform:translateY(-1px);box-shadow:0 8px 22px #1c313017}.video-card[data-v-fa92dd09]:focus-visible{outline:2px solid #59c3b0;outline-offset:2px}.poster-wrap[data-v-fa92dd09]{position:relative;width:44%;min-width:0;flex:0 0 44%;align-self:center;overflow:hidden;aspect-ratio:16 / 10;border-radius:12px;background:#e8efef}.poster-wrap img[data-v-fa92dd09]{display:block;width:100%;height:100%;object-fit:cover}.poster-play[data-v-fa92dd09]{position:absolute;top:50%;left:50%;display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:#141f238f;color:#fff;box-shadow:0 2px 8px #0d191d29;pointer-events:none;transform:translate(-50%,-50%)}.poster-play svg[data-v-fa92dd09]{margin-left:2px}.poster-duration[data-v-fa92dd09]{position:absolute;right:6px;bottom:6px;padding:2px 6px;border-radius:6px;background:#121b1fb8;color:#fff;font-size:10px;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.45}.video-card-body[data-v-fa92dd09]{display:flex;min-width:0;flex:1 1 0;padding:3px 4px 3px 0;flex-direction:column}.video-card h2[data-v-fa92dd09]{display:-webkit-box;margin:0;overflow:hidden;font-size:15px;font-weight:750;line-height:1.34;-webkit-box-orient:vertical;-webkit-line-clamp:2}.video-description[data-v-fa92dd09]{display:-webkit-box;margin:6px 0 0;overflow:hidden;color:#71808c;font-size:11.5px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.video-meta[data-v-fa92dd09]{display:flex;margin-top:auto;padding-top:9px;flex-wrap:wrap;gap:6px}.video-meta span[data-v-fa92dd09]{display:inline-flex;min-height:22px;align-items:center;padding:2px 8px;border-radius:999px;font-size:10.5px;line-height:1.25}.level-chip[data-v-fa92dd09]{border:1px solid #c5e7df;color:#126657;background:#e4f5f1;font-weight:750}.tag-chip[data-v-fa92dd09]{border:1px solid #e5e9ee;color:#65717e;background:#f3f5f8;font-weight:550}.library-message[data-v-fa92dd09]{padding:36px 12px;text-align:center;color:#667782}.library-message.error[data-v-fa92dd09]{color:#b42318}.library-pagination[data-v-fa92dd09]{display:flex;margin:22px 0 6px;align-items:center;justify-content:center;gap:14px}.library-pagination button[data-v-fa92dd09]{display:grid;width:42px;height:42px;place-items:center;border:1px solid #dce5e5;border-radius:12px;background:#fff;color:#236c5e;cursor:pointer}.library-pagination button[data-v-fa92dd09]:disabled{cursor:default;opacity:.42}.library-pagination span[data-v-fa92dd09]{min-width:70px;color:#52636b;font-size:13px;font-variant-numeric:tabular-nums;font-weight:750;text-align:center}@media (max-width: 370px){.level-filter-card[data-v-fa92dd09]{gap:9px;padding-right:12px;padding-left:12px}.level-filter-icon[data-v-fa92dd09]{width:38px;height:38px}.level-filter-copy small[data-v-fa92dd09]{max-width:112px}.level-filter-value[data-v-fa92dd09]{min-width:58px}.level-filter-value small[data-v-fa92dd09]{display:none}.tag-filter-group[data-v-fa92dd09]{padding-right:12px;padding-left:12px}.active-filters[data-v-fa92dd09]{align-items:flex-start;flex-wrap:wrap}.video-card[data-v-fa92dd09]{gap:10px;padding:7px}.poster-wrap[data-v-fa92dd09]{width:43%;flex-basis:43%}}.notebook-page[data-v-ae14cb5c]{min-height:100vh;min-height:100dvh;max-width:760px;margin:auto;padding:22px 17px 24px;padding-left:max(17px,var(--safe-area-left, 0px));padding-right:max(17px,var(--safe-area-right, 0px));color:var(--text-primary);overflow-x:hidden}.notebook-header[data-v-ae14cb5c]{position:relative;display:flex;overflow:hidden;min-height:126px;padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--card-gradient);box-shadow:var(--shadow-card)}.notebook-header small[data-v-ae14cb5c]{color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.14em}.notebook-header h1[data-v-ae14cb5c]{margin:7px 0 6px;font-size:23px}.notebook-header p[data-v-ae14cb5c]{max-width:420px;margin:0;color:var(--text-secondary);font-size:12px;line-height:1.6}.notebook-mark[data-v-ae14cb5c]{position:absolute;right:22px;bottom:-14px;color:var(--accent);font-size:86px;font-weight:900;opacity:.12;rotate:-8deg}.notebook-stats[data-v-ae14cb5c]{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0 20px;border:1px solid var(--border);border-radius:14px;background:var(--bg-elevated)}.notebook-stats div[data-v-ae14cb5c]{display:flex;flex-direction:column;align-items:center;padding:12px;border-right:1px solid var(--border)}.notebook-stats div[data-v-ae14cb5c]:last-child{border:0}.notebook-stats b[data-v-ae14cb5c]{color:var(--accent);font-size:19px}.notebook-stats span[data-v-ae14cb5c]{margin-top:2px;color:var(--text-muted);font-size:10px}.notebook-tabs[data-v-ae14cb5c]{display:flex;gap:5px}.notebook-tabs button[data-v-ae14cb5c]{padding:8px 12px;border-radius:9px;color:var(--text-muted);font-size:12px}.notebook-tabs button.active[data-v-ae14cb5c]{color:var(--accent);background:var(--accent-soft);font-weight:700}.notebook-tabs small[data-v-ae14cb5c]{margin-left:3px;font-size:9px}.notebook-search[data-v-ae14cb5c]{display:flex;align-items:center;gap:8px;margin:10px 0 16px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-elevated);color:var(--text-muted)}.notebook-search input[data-v-ae14cb5c]{width:100%;border:0;outline:0;background:transparent;color:var(--text-primary);font-size:12px}.notebook-list[data-v-ae14cb5c]{display:grid;gap:11px}.notebook-card[data-v-ae14cb5c]{padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--card-gradient);box-shadow:var(--shadow-card)}.notebook-card-top[data-v-ae14cb5c]{display:flex;align-items:center;gap:6px}.type-chip[data-v-ae14cb5c],.level-chip[data-v-ae14cb5c]{padding:3px 7px;border-radius:6px;font-size:9px;font-weight:800}.type-chip.word[data-v-ae14cb5c]{color:#287365;background:#dff3ed}.type-chip.grammar[data-v-ae14cb5c]{color:#70488f;background:#eee3f5}.level-chip[data-v-ae14cb5c]{color:var(--accent);background:var(--accent-soft)}.remove-item[data-v-ae14cb5c]{margin-left:auto;color:#e5b04e;font-size:19px}.notebook-entry[data-v-ae14cb5c]{margin:8px 0}.notebook-entry small[data-v-ae14cb5c]{display:block;color:var(--text-muted);font-size:10px}.notebook-entry h2[data-v-ae14cb5c]{display:inline;margin:0 8px 0 0;font-size:18px}.notebook-entry span[data-v-ae14cb5c]{color:var(--text-muted);font-size:10px}.entry-meaning[data-v-ae14cb5c]{margin:7px 0;color:var(--text-primary);font-size:13px;font-weight:700}.entry-explanation[data-v-ae14cb5c]{margin:7px 0;color:var(--text-secondary);font-size:11px;line-height:1.55}blockquote[data-v-ae14cb5c]{margin:10px 0;padding:9px 11px;border-left:3px solid var(--accent);border-radius:0 8px 8px 0;background:var(--bg-card-soft)}blockquote b[data-v-ae14cb5c],blockquote span[data-v-ae14cb5c]{display:block;font-size:11px;line-height:1.55}blockquote span[data-v-ae14cb5c]{margin-top:3px;color:var(--text-muted)}.notebook-card footer[data-v-ae14cb5c]{display:flex;align-items:center;justify-content:space-between;padding-top:9px;border-top:1px solid var(--border)}.notebook-card time[data-v-ae14cb5c]{color:var(--text-muted);font-size:9px}.notebook-card footer button[data-v-ae14cb5c]{color:var(--accent);font-size:11px;font-weight:700}.notebook-empty[data-v-ae14cb5c]{padding:55px 20px;text-align:center;color:var(--text-muted)}.notebook-empty>span[data-v-ae14cb5c]{display:block;color:var(--accent);font-size:42px}.notebook-empty h2[data-v-ae14cb5c]{color:var(--text-primary);font-size:15px}.notebook-empty p[data-v-ae14cb5c]{font-size:11px;line-height:1.6}.settings-page[data-v-12f7b816]{min-height:100vh;min-height:100dvh;padding:18px 22px 24px;padding-left:max(22px,var(--safe-area-left, 0px));padding-right:max(22px,var(--safe-area-right, 0px));color:var(--text-primary);background:var(--page-gradient);animation:settings-in-12f7b816 .22s ease-out}.settings[data-v-12f7b816]{width:min(100%,680px);margin:0 auto}.settings h1[data-v-12f7b816]{margin:8px 0 24px;font-size:30px}.settings h3[data-v-12f7b816]{margin:30px 4px 10px;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.profile-card[data-v-12f7b816]{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-gradient);box-shadow:var(--shadow-card)}.profile-avatar[data-v-12f7b816]{display:grid;width:54px;height:54px;flex:none;place-items:center;border-radius:17px;color:#fff;background:var(--accent-gradient);font-size:23px;font-weight:800}.profile-card small[data-v-12f7b816]{color:var(--text-muted)}.profile-card h2[data-v-12f7b816]{margin:3px 0 0;font-size:19px}.credit-card[data-v-12f7b816]{padding:18px 16px;border:1px solid var(--border);border-radius:15px;background:var(--card-gradient);box-shadow:var(--shadow-card)}.credit-summary[data-v-12f7b816]{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.credit-label[data-v-12f7b816]{color:var(--text-muted);font-size:13px;font-weight:600}.credit-value[data-v-12f7b816]{color:var(--text-primary);font-size:24px;font-weight:800;letter-spacing:-.02em}.credit-recharge[data-v-12f7b816]{width:100%;min-height:44px;border:1px solid var(--accent-soft);border-radius:12px;color:var(--accent);background:var(--accent-soft);font-size:14px;font-weight:700}.credit-recharge[data-v-12f7b816]:active{transform:scale(.985)}.setting-row[data-v-12f7b816]{display:flex;width:100%;min-height:64px;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border:1px solid var(--border);border-radius:15px;color:var(--text-primary);background:var(--card-gradient);box-shadow:var(--shadow-card);text-align:left;transition:transform .15s ease,border-color .15s ease}.setting-row+.setting-row[data-v-12f7b816]{margin-top:9px}.setting-row[data-v-12f7b816]:active{transform:scale(.985)}.setting-row[data-v-12f7b816]:focus-visible,.sheet-option[data-v-12f7b816]:focus-visible{outline:3px solid var(--accent-soft);border-color:var(--accent)}.setting-row>span[data-v-12f7b816]{display:flex;min-width:0;align-items:center;gap:13px;font-weight:650}.setting-row i[data-v-12f7b816]{display:grid;width:34px;height:34px;flex:none;place-items:center;border-radius:10px;color:var(--accent);background:var(--accent-soft);font-style:normal}.setting-row b[data-v-12f7b816]{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px;font-weight:600}.setting-row em[data-v-12f7b816]{color:var(--text-muted);font-size:23px;font-style:normal;font-weight:400}.settings-section-sub[data-v-12f7b816]{margin:-2px 4px 12px;color:var(--text-muted);font-size:13px;line-height:1.45}.prefs-sync-error[data-v-12f7b816]{color:var(--text-primary)}.prefs-sync-retry[data-v-12f7b816]{margin-left:8px;padding:0;border:0;background:none;color:var(--accent, #3b82f6);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.setting-toggle-row[data-v-12f7b816]{cursor:pointer}.setting-toggle-row[data-v-12f7b816]:active{transform:scale(.985)}.pref-switch[data-v-12f7b816]{position:relative;display:inline-flex;width:46px;height:28px;flex:none;align-items:center;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--text-muted) 18%,transparent);transition:background .18s ease,border-color .18s ease}.setting-row .pref-switch i[data-v-12f7b816]{position:absolute;top:2px;left:2px;display:block;width:22px;height:22px;border-radius:50%;color:transparent;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .18s ease}.pref-switch.on[data-v-12f7b816]{border-color:var(--accent);background:var(--accent)}.pref-switch.on i[data-v-12f7b816]{transform:translate(18px)}.logout-row[data-v-12f7b816]{color:var(--error)}.logout-row i[data-v-12f7b816]{color:var(--error);background:var(--error-soft)}.danger-zone[data-v-12f7b816]{margin-top:28px;padding-top:8px;border-top:1px solid var(--border)}.danger-zone h3[data-v-12f7b816]{color:var(--error)}.danger-row[data-v-12f7b816]{color:var(--error);min-height:52px}.danger-row i[data-v-12f7b816]{color:var(--error);background:var(--error-soft)}.delete-sheet .delete-body[data-v-12f7b816]{padding:4px 2px 12px}.delete-sheet .delete-body p[data-v-12f7b816]{margin:0 0 12px;color:var(--text-secondary);font-size:14px;line-height:1.55}.delete-points[data-v-12f7b816]{margin:0 0 8px;padding-left:1.2em;color:var(--text-secondary);font-size:13px;line-height:1.5}.delete-pw-label[data-v-12f7b816]{display:block;margin:12px 0 6px;font-size:13px;color:var(--text-secondary)}.delete-error[data-v-12f7b816]{margin:10px 0 0;color:var(--error);font-size:13px}.delete-actions[data-v-12f7b816]{display:flex;gap:10px;padding-top:8px}.delete-actions .btn-cancel[data-v-12f7b816],.delete-actions .btn-continue-danger[data-v-12f7b816],.delete-actions .btn-confirm-danger[data-v-12f7b816]{flex:1;min-height:48px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer}.delete-actions .btn-cancel[data-v-12f7b816]{border:1px solid var(--border);background:var(--bg);color:var(--text)}.delete-actions .btn-continue-danger[data-v-12f7b816],.delete-actions .btn-confirm-danger[data-v-12f7b816]{border:none;background:var(--error);color:#fff}.delete-actions .btn-continue-danger[data-v-12f7b816]:disabled,.delete-actions .btn-confirm-danger[data-v-12f7b816]:disabled,.delete-actions .btn-cancel[data-v-12f7b816]:disabled{opacity:.55;cursor:not-allowed}.settings-overlay[data-v-12f7b816]{position:fixed;z-index:120;top:0;right:0;bottom:0;left:0;background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.settings-sheet[data-v-12f7b816]{position:fixed;z-index:121;right:0;bottom:0;left:0;max-width:760px;margin:auto;padding:12px 20px max(28px,var(--safe-area-bottom, 0px));border:1px solid var(--border);border-bottom:0;border-radius:24px 24px 0 0;background:var(--bg-elevated);box-shadow:var(--shadow-elevated);opacity:0;pointer-events:none;transform:translateY(100%);transition:transform .22s ease,opacity .22s ease}.settings-sheet.show[data-v-12f7b816]{opacity:1;pointer-events:auto;transform:translateY(0)}.settings-sheet header[data-v-12f7b816]{display:flex;align-items:center;justify-content:space-between;padding:8px 2px 14px}.settings-sheet header h3[data-v-12f7b816]{margin:0;font-size:18px}.settings-sheet header button[data-v-12f7b816]{width:38px;height:38px;border-radius:50%;color:var(--text-secondary);background:var(--bg-card-soft)}.sheet-option[data-v-12f7b816]{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;margin-top:8px;padding:10px 14px;border:1px solid var(--border);border-radius:14px;color:var(--text-primary);background:var(--bg-card-soft)}.sheet-option.active[data-v-12f7b816]{border-color:var(--accent);background:var(--accent-soft)}.sheet-option>span[data-v-12f7b816]{display:flex;align-items:center;gap:12px;font-weight:650}.sheet-option>b[data-v-12f7b816]{color:var(--accent);font-size:20px}.theme-preview[data-v-12f7b816]{width:34px;height:34px;border:1px solid rgba(127,137,173,.35);border-radius:10px}.midnight-preview[data-v-12f7b816]{background:radial-gradient(circle at 70% 20%,#713884,transparent 35%),#080d25}.daylight-preview[data-v-12f7b816]{background:radial-gradient(circle at 70% 20%,#a9e3e9,transparent 40%),#f5f7fa}@keyframes settings-in-12f7b816{0%{opacity:0;transform:translateY(5px)}}@media (max-width: 600px){.settings-page[data-v-12f7b816]{padding:8px 16px 118px}.settings h1[data-v-12f7b816]{margin-bottom:18px;font-size:27px}}@media (prefers-reduced-motion: reduce){.settings-page[data-v-12f7b816]{animation:none}.settings-sheet[data-v-12f7b816],.setting-row[data-v-12f7b816]{transition:none}}.mobile-shell[data-v-3c7b4236]{position:relative;overflow:hidden;overflow-x:hidden;min-height:100vh;min-height:100dvh;max-width:760px;margin:auto;padding-left:var(--safe-area-left, 0px);padding-right:var(--safe-area-right, 0px);background:radial-gradient(circle at 87% 14%,#31154f 0,transparent 17%),radial-gradient(circle at 9% 38%,#172466 0,transparent 17%),linear-gradient(115deg,#030819,#090e2b 55%,#04071b);isolation:isolate}.tab-content[data-v-3c7b4236]{min-height:100vh;min-height:100dvh;box-sizing:border-box;padding-top:var(--app-header-total-height);padding-bottom:var(--app-tabbar-total-height)}.player-overlay[data-v-3c7b4236]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:200;background:#03071a;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;height:100dvh}[data-v-67dcabb3]{margin:0;padding:0;box-sizing:border-box}.upload-page[data-v-67dcabb3]{background:var(--bg-primary);min-height:100vh;min-height:100dvh;padding:20px;overflow-x:hidden}.upload-page[data-v-67dcabb3]>*{max-width:560px;margin-left:auto;margin-right:auto}h1[data-v-67dcabb3]{font-size:24px;color:var(--accent);text-align:center;margin-bottom:8px}.subtitle[data-v-67dcabb3]{text-align:center;color:var(--text-muted);font-size:14px;margin-bottom:32px}.section-title[data-v-67dcabb3]{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px;border-bottom:2px solid var(--border);padding-bottom:6px}.trim-row[data-v-67dcabb3]{display:flex;gap:12px;margin-top:12px;align-items:center;flex-wrap:wrap}.trim-row label[data-v-67dcabb3]{font-size:13px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.trim-row input[type=time][data-v-67dcabb3]{width:130px;padding:8px 10px;border:2px solid var(--border);border-radius:8px;font-size:14px;outline:none;transition:border-color .2s;font-family:Courier New,monospace;text-align:center;background:var(--bg-secondary);color:var(--text-primary)}.trim-row input[type=time][data-v-67dcabb3]:focus{border-color:var(--accent)}.trim-row .trim-hint[data-v-67dcabb3]{font-size:11px;color:var(--text-muted);margin-left:4px}.tabs[data-v-67dcabb3]{display:flex;gap:0;margin-bottom:24px;border-radius:12px;overflow:hidden;border:2px solid var(--border)}.tab-btn[data-v-67dcabb3]{flex:1;padding:10px;border:none;background:var(--bg-card);color:var(--text-muted);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.tab-btn.active[data-v-67dcabb3]{background:var(--accent-gradient);color:#fff}.tab-btn[data-v-67dcabb3]:not(.active):hover{background:var(--bg-secondary);color:var(--accent)}.tab-wrapper[data-v-67dcabb3]{position:relative;min-height:310px}.tab-content[data-v-67dcabb3]{position:absolute;top:0;left:0;right:0;visibility:hidden;opacity:0;transition:opacity .15s}.tab-content.active[data-v-67dcabb3]{visibility:visible;opacity:1;position:static}.drop-zone[data-v-67dcabb3]{border:2px dashed var(--border);border-radius:16px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s;background:var(--bg-secondary)}.drop-zone[data-v-67dcabb3]:hover,.drop-zone.drag-over[data-v-67dcabb3]{border-color:var(--accent);background:#a855f70d}.drop-zone-icon[data-v-67dcabb3]{font-size:48px;margin-bottom:12px}.drop-zone-text[data-v-67dcabb3]{color:var(--text-muted);font-size:14px;margin-bottom:8px}.drop-zone-btn[data-v-67dcabb3]{display:inline-block;background:var(--accent-gradient);color:#fff;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.drop-zone-btn[data-v-67dcabb3]:active{opacity:.85}.file-name[data-v-67dcabb3]{margin-top:12px;color:var(--accent);font-weight:600;font-size:14px}.url-input-group[data-v-67dcabb3]{display:flex;gap:8px}.url-input-group input[data-v-67dcabb3]{flex:1;padding:12px 16px;border:2px solid var(--border);border-radius:10px;font-size:14px;outline:none;transition:border-color .2s;background:var(--bg-secondary);color:var(--text-primary)}.url-input-group input[data-v-67dcabb3]:focus{border-color:var(--accent)}.url-input-group button[data-v-67dcabb3]{padding:12px 20px;background:var(--accent-gradient);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s;white-space:nowrap}.url-input-group button[data-v-67dcabb3]:active{opacity:.85}.url-hint[data-v-67dcabb3]{margin-top:8px;font-size:12px;color:var(--text-muted)}.progress-section[data-v-67dcabb3]{display:none;margin-top:24px;padding:20px;background:var(--bg-card);border-radius:12px;border:1px solid var(--border)}.progress-section.visible[data-v-67dcabb3]{display:block}.progress-status[data-v-67dcabb3]{font-size:14px;font-weight:600;color:var(--accent);margin-bottom:8px}.progress-stage[data-v-67dcabb3]{font-size:13px;color:var(--text-muted);margin-bottom:12px}.progress-bar-bg[data-v-67dcabb3]{width:100%;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.progress-bar[data-v-67dcabb3]{height:100%;background:var(--accent-gradient);border-radius:4px;width:0%;transition:width .3s}.result-actions[data-v-67dcabb3]{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}.result-actions a[data-v-67dcabb3]{display:inline-block;padding:8px 16px;background:var(--accent-gradient);color:#fff;border-radius:8px;text-decoration:none;font-size:13px;font-weight:600;transition:opacity .2s}.result-actions a[data-v-67dcabb3]:active{opacity:.85}.error-msg[data-v-67dcabb3]{color:#e03131;font-size:13px;margin-top:8px;font-weight:600}[data-v-c3e4ef87]{margin:0;padding:0;box-sizing:border-box}.edit-page[data-v-c3e4ef87]{background:#e8f4fd;font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;padding:20px;min-height:100vh;min-height:100dvh}.header[data-v-c3e4ef87]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.header h1[data-v-c3e4ef87]{font-size:22px;color:#d6336c}.back-link[data-v-c3e4ef87]{padding:8px 16px;background:#d6336c;color:#fff;border-radius:8px;text-decoration:none;font-size:14px;font-weight:600}.tab-bar[data-v-c3e4ef87]{display:flex;gap:0;margin-bottom:12px;border-radius:10px;overflow:hidden;border:2px solid #d0ebf7;flex-wrap:wrap}.tab-btn[data-v-c3e4ef87]{flex:1;padding:10px 6px;border:none;background:#fff;color:#888;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;min-width:100px}.tab-btn.active[data-v-c3e4ef87]{background:#d6336c;color:#fff}.tab-btn[data-v-c3e4ef87]:not(.active):hover{background:#d0ebf7;color:#d6336c}.editor-wrap textarea[data-v-c3e4ef87]{width:100%;padding:14px;border:2px solid #b8dff0;border-radius:12px;font-family:Courier New,monospace;font-size:13px;line-height:1.6;outline:none;resize:vertical;min-height:60vh;box-sizing:border-box}.editor-wrap textarea[data-v-c3e4ef87]:focus{border-color:#d6336c}.save-bar[data-v-c3e4ef87]{display:flex;justify-content:flex-end;gap:8px;align-items:center;margin-top:12px}.btn-save[data-v-c3e4ef87]{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;background:#d6336c;color:#fff}.btn-save[data-v-c3e4ef87]:hover{background:#c2255c}.btn-save[data-v-c3e4ef87]:disabled{background:#ccc;cursor:wait}.msg[data-v-c3e4ef87]{padding:8px 16px;border-radius:8px;font-size:13px}.msg.success[data-v-c3e4ef87]{background:#d3f9d8;color:#2b8a3e}.msg.error[data-v-c3e4ef87]{background:#ffe3e3;color:#c92a2a}.admin-shell{--admin-bg: #f4f6f8;--admin-panel: #fff;--admin-ink: #17202a;--admin-muted: #687483;--admin-line: #e4e8ec;--admin-brand: #176b5b;--admin-brand-soft: #e9f4f1;--admin-danger: #b42318;--admin-warning: #b54708;--admin-radius: 14px}.admin-shell,.admin-shell *{box-sizing:border-box}.admin-shell{display:flex;min-height:100vh;color:var(--admin-ink);background:var(--admin-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}.admin-sidebar{position:sticky;top:0;z-index:40;display:flex;width:248px;height:100vh;flex:0 0 248px;flex-direction:column;color:#d9e3e0;background:#102522}.admin-brand{display:flex;align-items:center;gap:12px;min-height:78px;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#12302a;background:#9bd7c9;font-weight:850}.admin-brand strong,.admin-sidebar-footer strong{display:block;color:#fff;font-size:14px}.admin-brand small,.admin-sidebar-footer small{display:block;margin-top:2px;color:#849c97;font-size:11px}.admin-nav{flex:1;padding:18px 12px}.admin-nav p{margin:18px 12px 7px;color:#6e8983;font-size:10px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.admin-nav a{display:flex;align-items:center;gap:11px;margin:3px 0;padding:10px 12px;border-radius:10px;color:#9eb1ad;text-decoration:none;transition:.16s ease}.admin-nav a span{display:grid;width:26px;height:26px;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:8px;font-size:11px}.admin-nav a b{font-size:13px;font-weight:620}.admin-nav a:hover{color:#fff;background:#ffffff0d}.admin-nav a.router-link-active{color:#fff;background:#74cab729}.admin-nav a.router-link-active span{border-color:transparent;color:#12302a;background:#8fd0c1}.admin-sidebar-footer{display:flex;align-items:center;gap:10px;padding:17px 20px;border-top:1px solid rgba(255,255,255,.08)}.admin-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:#31554e;font-size:12px;font-weight:800}.admin-main{min-width:0;flex:1}.admin-topbar{position:sticky;top:0;z-index:30;display:flex;min-height:78px;align-items:center;justify-content:space-between;padding:14px 32px;border-bottom:1px solid var(--admin-line);background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-topbar small{color:var(--admin-muted);font-size:11px}.admin-topbar h1{margin:2px 0 0;font-size:20px;letter-spacing:-.02em}.admin-top-actions{display:flex;align-items:center;gap:7px;color:var(--admin-muted);font-size:12px}.environment-dot{width:7px;height:7px;border-radius:50%;background:#12a36d;box-shadow:0 0 0 4px #e1f5ed}.admin-menu-button{display:none;border:0;background:none;font-size:22px}.admin-content{width:min(1440px,100%);padding:28px 32px 48px}.admin-page{width:100%}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-header h2,.page-header h3,.admin-page>h2,.admin-jobs>h3{margin:0;color:var(--admin-ink);font-size:18px}.page-header p{max-width:720px;margin:6px 0 0;color:var(--admin-muted);font-size:13px;line-height:1.6}.card,.table-wrap,.admin-panel{border:1px solid var(--admin-line);border-radius:var(--admin-radius);background:var(--admin-panel);box-shadow:0 1px 2px #10252208}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{padding:12px 15px;border-bottom:1px solid var(--admin-line);color:#72808e;background:#f9fafb;font-size:10px;font-weight:750;letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap}td{padding:13px 15px;border-bottom:1px solid #eef1f3;color:#34404c;font-size:12px;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfc}.admin-shell .loading,.admin-shell .empty{padding:48px;color:var(--admin-muted);text-align:center}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.stat-card{padding:18px 20px;border:1px solid var(--admin-line);border-radius:var(--admin-radius);background:#fff;text-align:left}.stat-card .num{color:var(--admin-ink);font-size:25px;font-weight:760;font-variant-numeric:tabular-nums}.stat-card .label{margin-top:4px;color:var(--admin-muted);font-size:11px}.control-bar,.toolbar{display:flex;align-items:center;gap:9px;margin:16px 0}.control-bar input,.control-bar select,.admin-input,.field input,.field textarea,.field select,.dialog-card input{min-height:38px;padding:8px 11px;border:1px solid #ced5db;border-radius:9px;color:var(--admin-ink);background:#fff;font:inherit;font-size:12px;outline:none}.control-bar input{width:min(340px,100%)}.control-bar input:focus,.admin-input:focus,.field input:focus,.field textarea:focus,.field select:focus{border-color:#5ca897;box-shadow:0 0 0 3px #388e7b1f}.btn,.refresh-btn{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:7px 13px;border:1px solid transparent;border-radius:9px;font:inherit;font-size:12px;font-weight:680;cursor:pointer;transition:.14s ease}.btn-primary,.refresh-btn{color:#fff;background:var(--admin-brand)}.btn-primary:hover,.refresh-btn:hover{background:#105c4e}.btn-ghost{border-color:#d5dbe0;color:#45515d;background:#fff}.btn-ghost:hover{background:#f5f7f8}.btn-danger{border-color:#f0c8c4;color:var(--admin-danger);background:#fff}.btn-danger:hover{background:#fff5f4}.btn-sm{min-height:30px;padding:5px 9px;font-size:11px}.btn:disabled,.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:720}.badge.completed,.badge.active{color:#08734f;background:#e5f6ef}.badge.failed,.badge.inactive{color:#a52a21;background:#fcebea}.badge.processing{color:#9a4d06;background:#fff1dc}.badge.queued{color:#365d87;background:#eaf2fa}.field{margin-bottom:14px}.field label,.dialog-card label{display:grid;gap:6px;color:#4b5763;font-size:11px;font-weight:700}.field textarea{width:100%;min-height:90px;resize:vertical}.modal-overlay,.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;padding:20px;place-items:center;background:#0f1c1b7a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal,.dialog-card{width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:24px;border:1px solid var(--admin-line);border-radius:16px;background:#fff;box-shadow:0 24px 80px #0a1c1933}.modal h4,.dialog-card h3{margin:0 0 18px}.modal-actions,.dlg-btns{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.msg{padding:10px 13px;border-radius:9px;font-size:12px}.msg.success{color:#08734f;background:#e5f6ef}.msg.error{color:#a52a21;background:#fcebea}.msg.global{position:fixed;right:24px;bottom:24px;z-index:110;box-shadow:0 10px 30px #0000001f}.admin-tabs{display:flex;gap:4px;margin-bottom:18px;padding:4px;border:1px solid var(--admin-line);border-radius:11px;background:#eef1f2;width:fit-content}.admin-tabs button{padding:8px 13px;border:0;border-radius:8px;color:var(--admin-muted);background:transparent;font-size:12px;font-weight:680}.admin-tabs button.active{color:var(--admin-ink);background:#fff;box-shadow:0 1px 3px #00000014}.cell-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.actions{text-align:right;white-space:nowrap}@media (max-width: 900px){.admin-sidebar{position:fixed;left:-260px;transition:left .2s}.admin-sidebar.open{left:0}.admin-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;border:0;background:#050f0e66}.admin-menu-button{display:block}.admin-topbar{justify-content:flex-start;gap:14px;padding:12px 18px}.admin-top-actions{margin-left:auto}.admin-content{padding:20px 16px 40px}.stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.stats{grid-template-columns:1fr 1fr}.page-header{flex-direction:column}.control-bar,.toolbar{align-items:stretch;flex-direction:column}.control-bar>*,.toolbar>*{width:100%!important}.admin-top-actions{display:none}}.admin-login[data-v-c76cc1e3]{display:grid;min-height:100vh;padding:24px;place-items:center;background:radial-gradient(circle at 70% 20%,#244c45 0,#122a26 35%,#0d1c1a);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.login-card[data-v-c76cc1e3]{width:min(420px,100%);padding:36px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:#fffffff7;box-shadow:0 30px 90px #00000047}.login-brand[data-v-c76cc1e3]{display:flex;align-items:center;gap:11px;margin-bottom:34px}.login-brand>span[data-v-c76cc1e3]{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#12302a;background:#9bd7c9;font-weight:850}.login-brand strong[data-v-c76cc1e3]{display:block;color:#17202a}.login-brand small[data-v-c76cc1e3]{display:block;color:#7c8986;font-size:10px;letter-spacing:.08em;text-transform:uppercase}h1[data-v-c76cc1e3]{margin:0;color:#17202a;font-size:25px;letter-spacing:-.03em}p[data-v-c76cc1e3]{margin:7px 0 24px;color:#687483;font-size:13px}.field[data-v-c76cc1e3]{margin-bottom:14px}.field input[data-v-c76cc1e3]{width:100%;padding:12px 14px;border:1px solid #ced5db;border-radius:10px;font-size:14px;outline:none;box-sizing:border-box;transition:border-color .2s}.field input[data-v-c76cc1e3]:focus{border-color:#5ca897;box-shadow:0 0 0 3px #388e7b1f}.btn-login[data-v-c76cc1e3]{width:100%;padding:12px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;background:#176b5b;color:#fff;margin-top:4px}.btn-login[data-v-c76cc1e3]:hover{background:#105c4e}.btn-login[data-v-c76cc1e3]:disabled{background:#ccc;cursor:wait}.msg[data-v-c76cc1e3]{margin-top:14px;font-size:13px;padding:8px;border-radius:6px}.msg.success[data-v-c76cc1e3]{background:#d3f9d8;color:#2b8a3e}.msg.error[data-v-c76cc1e3]{background:#ffe3e3;color:#c92a2a}.admin-jobs[data-v-5be1a58e]{width:100%}.filename[data-v-5be1a58e]{max-width:24ch}.filename-text[data-v-5be1a58e]{display:block;max-width:24ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cost-cell[data-v-5be1a58e]{min-width:110px;white-space:nowrap}.run-duration[data-v-5be1a58e]{white-space:nowrap;font-variant-numeric:tabular-nums;color:#3d4a54}.run-summary[data-v-5be1a58e]{min-width:170px}.run-summary small[data-v-5be1a58e]{display:block;max-width:220px;overflow:hidden;color:var(--admin-muted);text-overflow:ellipsis;white-space:nowrap}.run-summary .failure-summary[data-v-5be1a58e]{color:#b54708}.cost-line[data-v-5be1a58e]{display:flex;justify-content:space-between;gap:10px}.cost-line span[data-v-5be1a58e],.cost-cell small[data-v-5be1a58e]{display:block;color:#7d8994;font-size:10px}.cost-cell strong[data-v-5be1a58e]{color:#176b5b}.cumulative-cost[data-v-5be1a58e]{margin-top:4px;padding-top:4px;border-top:1px dashed #dce1e4}.badge.archived[data-v-5be1a58e]{margin-left:.35rem;background:#6b7280;color:#fff;font-size:.7rem;vertical-align:middle}.artifacts-archived[data-v-5be1a58e]{color:#6b7280;font-size:.85rem;white-space:nowrap}.artifacts[data-v-5be1a58e]{min-width:200px;max-width:340px}.artifacts-empty[data-v-5be1a58e]{color:#9aa4ad}.artifact-btns[data-v-5be1a58e]{display:flex;flex-wrap:wrap;gap:4px;max-width:320px}.actions[data-v-5be1a58e]{white-space:nowrap}.btn-download[data-v-5be1a58e]{border-color:#cfd6db;color:#3d4a54;background:#f7f8f9;font-size:11px;padding:2px 6px}.btn-download[data-v-5be1a58e]:disabled{opacity:.45;cursor:not-allowed}.btn-rerun[data-v-5be1a58e]{border-color:#c5c9e8;color:#3a3f7a;background:#f5f6fc}.btn-reprocess[data-v-5be1a58e]{border-color:#b8d9d1;color:#176b5b;background:#f5fbf9}.pager[data-v-5be1a58e]{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px;color:var(--admin-muted);font-size:13px}.btn-hard-delete[data-v-5be1a58e]{border-color:#b3261e;color:#fff;background:#b3261e}.btn-hard-delete[data-v-5be1a58e]:hover:not(:disabled){background:#8f1d17}.btn-hard-delete[data-v-5be1a58e]:disabled{opacity:.5;cursor:not-allowed}.hard-delete-dialog[data-v-5be1a58e]{width:min(640px,100%)}.hard-delete-msg[data-v-5be1a58e]{margin-bottom:12px}.hd-info[data-v-5be1a58e]{display:grid;gap:4px;margin-bottom:12px;font-size:12px}.hd-label[data-v-5be1a58e]{display:inline-block;min-width:92px;color:var(--admin-muted);font-weight:700;margin-right:6px}.hd-section-title[data-v-5be1a58e]{margin:14px 0 6px;font-size:13px}.hd-danger-banner[data-v-5be1a58e]{margin:4px 0 8px;padding:10px 12px;border:1px solid #f0c8c4;border-radius:9px;background:#fcebea;color:#a52a21;font-weight:700;font-size:12px;line-height:1.5}.hd-info-banner[data-v-5be1a58e]{margin:4px 0 8px;padding:10px 12px;border:1px solid #e2c9a0;border-radius:9px;background:#fff7e8;color:#8a5a12;font-size:12px;line-height:1.5}.hd-blocked[data-v-5be1a58e]{margin:4px 0 8px;padding:10px 12px;border:1px solid #cbd2d8;border-radius:9px;background:#f1f3f5;color:#45515d;font-size:12px;line-height:1.5}.hd-blocked-reason[data-v-5be1a58e]{color:var(--admin-danger);font-weight:700}.hd-group[data-v-5be1a58e]{margin:6px 0}.hd-group-title[data-v-5be1a58e]{margin-bottom:4px;font-size:11px;font-weight:700;color:var(--admin-muted)}.hd-group ul[data-v-5be1a58e]{margin:0;padding-left:16px}.hd-group li[data-v-5be1a58e]{margin:2px 0;font-size:12px;color:#3d4a54;line-height:1.5}.hd-path[data-v-5be1a58e]{margin-left:6px;color:#7d8994;font-family:monospace;font-size:11px;word-break:break-all}.hd-exists[data-v-5be1a58e]{margin-left:8px;font-size:10px;font-weight:700}.hd-exists.exists-yes[data-v-5be1a58e]{color:#08734f}.hd-exists.exists-no[data-v-5be1a58e]{color:#9aa4ad}.hd-exists.exists-unknown[data-v-5be1a58e]{color:#b54708}.hd-keep[data-v-5be1a58e]{margin:4px 0 0;padding-left:16px}.hd-keep li[data-v-5be1a58e]{margin:4px 0;font-size:12px;color:#3d4a54}.hd-keep-reason[data-v-5be1a58e]{display:block;color:#7d8994;font-size:11px}.hd-irreversible[data-v-5be1a58e]{margin-top:10px;color:#a52a21;font-size:12px;font-weight:700}.btn-hard-confirm[data-v-5be1a58e]{border-color:#b3261e;color:#fff;background:#b3261e}.btn-hard-confirm[data-v-5be1a58e]:hover:not(:disabled){background:#8f1d17}.btn-hard-confirm[data-v-5be1a58e]:disabled{opacity:.5;cursor:not-allowed}.admin-users[data-v-5cf22871]{width:100%}td.actions[data-v-5cf22871]{text-align:right;white-space:nowrap}.user-id[data-v-5cf22871]{display:block;margin-top:4px;color:#7a8794;font-size:12px;font-weight:500}.credit-actions[data-v-5cf22871]{display:inline-flex;flex-wrap:wrap;gap:6px;margin-right:8px;vertical-align:middle}.status-pill[data-v-5cf22871]{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;background:#eef2f6;color:#445}.status-pill[data-status=deleted][data-v-5cf22871]{background:#f3e8e8;color:#8a3a3a}.status-pill[data-status=pending_verification][data-v-5cf22871]{background:#f5f0e6;color:#7a5a20}.status-pill[data-status=disabled][data-v-5cf22871]{background:#ececef;color:#666}.btn-danger-subtle[data-v-5cf22871]{color:#a33;border:1px solid #e2c4c4;background:#fff}.btn-danger-subtle[data-v-5cf22871]:hover:not(:disabled){background:#faf2f2}.btn-danger[data-v-5cf22871]{background:#b33;color:#fff;border:none}.muted[data-v-5cf22871]{color:#8a939c;font-size:12px}.delete-modal .delete-meta[data-v-5cf22871]{margin:4px 0;color:#445}.delete-notes[data-v-5cf22871]{margin:12px 0;padding-left:18px;color:#556;font-size:13px}.delete-modal textarea[data-v-5cf22871]{width:100%;box-sizing:border-box}.msg.error[data-v-5cf22871]{color:#a33}.btn-hard-delete[data-v-5cf22871]{border-color:#b3261e;color:#fff;background:#b3261e}.btn-hard-delete[data-v-5cf22871]:hover:not(:disabled){background:#8f1d17}.btn-hard-delete[data-v-5cf22871]:disabled{opacity:.5;cursor:not-allowed}.hard-delete-dialog[data-v-5cf22871]{width:min(640px,100%)}.hard-delete-msg[data-v-5cf22871]{margin-bottom:12px}.hd-info[data-v-5cf22871]{display:grid;gap:4px;margin-bottom:12px;font-size:12px}.uhd-user-info[data-v-5cf22871]{margin-bottom:10px}.hd-label[data-v-5cf22871]{display:inline-block;min-width:92px;color:var(--admin-muted);font-weight:700;margin-right:6px}.hd-section-title[data-v-5cf22871]{margin:14px 0 6px;font-size:13px}.hd-danger-banner[data-v-5cf22871]{margin:4px 0 8px;padding:10px 12px;border:1px solid #f0c8c4;border-radius:9px;background:#fcebea;color:#a52a21;font-weight:700;font-size:12px;line-height:1.5}.hd-info-banner[data-v-5cf22871]{margin:4px 0 8px;padding:10px 12px;border:1px solid #e2c9a0;border-radius:9px;background:#fff7e8;color:#8a5a12;font-size:12px;line-height:1.5}.hd-blocked[data-v-5cf22871]{margin:4px 0 8px;padding:10px 12px;border:1px solid #cbd2d8;border-radius:9px;background:#f1f3f5;color:#45515d;font-size:12px;line-height:1.5}.hd-blocked-reason[data-v-5cf22871]{color:var(--admin-danger);font-weight:700}.uhd-blocked-list[data-v-5cf22871]{margin:6px 0 0;padding-left:16px}.uhd-blocked-detail[data-v-5cf22871]{color:#7d8994}.hd-group[data-v-5cf22871]{margin:6px 0}.hd-group-title[data-v-5cf22871]{margin-bottom:4px;font-size:11px;font-weight:700;color:var(--admin-muted)}.hd-group ul[data-v-5cf22871]{margin:0;padding-left:16px}.hd-group li[data-v-5cf22871]{margin:2px 0;font-size:12px;color:#3d4a54;line-height:1.5}.uhd-note[data-v-5cf22871]{margin-left:6px;color:#7d8994;font-size:11px}.uhd-relation-note[data-v-5cf22871]{margin:4px 0 0;color:#7d8994;font-size:11px}.uhd-empty[data-v-5cf22871]{margin:0;color:#9aa4ad;font-size:12px}.uhd-jobs[data-v-5cf22871]{list-style:none;margin:0;padding:0}.uhd-job[data-v-5cf22871]{margin:8px 0;padding:8px 10px;border:1px solid #e3e8ec;border-radius:9px;background:#fafbfc}.uhd-job-head[data-v-5cf22871]{display:flex;align-items:center;justify-content:space-between;gap:8px}.uhd-job-status[data-v-5cf22871]{font-size:11px;font-weight:700;color:#365d87}.uhd-job-meta[data-v-5cf22871]{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:2px;font-size:11px;color:#7d8994}.uhd-job-scope[data-v-5cf22871]{margin:6px 0 0;padding-left:16px;font-size:12px;color:#3d4a54}.uhd-job-scope .uhd-danger[data-v-5cf22871]{color:#a52a21;font-weight:700}.uhd-job-scope .uhd-keep[data-v-5cf22871]{color:#08734f}.hd-path[data-v-5cf22871]{margin-left:6px;color:#7d8994;font-family:monospace;font-size:11px;word-break:break-all}.hd-exists[data-v-5cf22871]{margin-left:8px;font-size:10px;font-weight:700}.hd-exists.exists-yes[data-v-5cf22871]{color:#08734f}.hd-exists.exists-no[data-v-5cf22871]{color:#9aa4ad}.hd-exists.exists-unknown[data-v-5cf22871]{color:#b54708}.hd-keep[data-v-5cf22871]{margin:4px 0 0;padding-left:16px}.hd-keep li[data-v-5cf22871]{margin:4px 0;font-size:12px;color:#3d4a54}.hd-keep-reason[data-v-5cf22871]{display:block;color:#7d8994;font-size:11px}.hd-irreversible[data-v-5cf22871]{margin-top:10px;color:#a52a21;font-size:12px;font-weight:700}.btn-hard-confirm[data-v-5cf22871]{border-color:#b3261e;color:#fff;background:#b3261e}.btn-hard-confirm[data-v-5cf22871]:hover:not(:disabled){background:#8f1d17}.btn-hard-confirm[data-v-5cf22871]:disabled{opacity:.5;cursor:not-allowed}.channel-admin[data-v-32a0b12e]{width:100%}.channel-admin .page-header[data-v-32a0b12e]{align-items:center;padding:20px 22px;border:1px solid #dce8e4;border-radius:var(--admin-radius);background:linear-gradient(135deg,#f8fbfa,#edf6f3)}.channel-admin .page-header h2[data-v-32a0b12e]{font-size:19px;letter-spacing:-.02em}.curated-toolbar[data-v-32a0b12e]{flex:0 0 auto;margin:0}.curated-toolbar .btn[data-v-32a0b12e]{min-height:40px;padding-inline:15px}.stats-row[data-v-32a0b12e]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.stat-card[data-v-32a0b12e]{position:relative;display:flex;flex-direction:column;gap:6px;min-height:82px;padding:15px 16px;border:1px solid var(--admin-line);border-radius:var(--admin-radius);background:var(--admin-panel);text-align:left;cursor:pointer;box-shadow:0 1px 2px #1025220a;transition:.16s ease}.stat-card[data-v-32a0b12e]:after{position:absolute;top:14px;right:14px;width:7px;height:7px;border-radius:50%;background:#d7dfdc;content:""}.stat-card[data-v-32a0b12e]:hover{border-color:#b9cbc5;box-shadow:0 5px 16px #10252212;transform:translateY(-1px)}.stat-card.active[data-v-32a0b12e]{border-color:#5ca897;background:#f7fbfa;box-shadow:inset 0 0 0 1px #5ca897}.stat-card.active[data-v-32a0b12e]:after{background:var(--admin-brand);box-shadow:0 0 0 4px #e3f2ee}.stat-label[data-v-32a0b12e]{color:var(--admin-muted);font-size:12px}.stat-value[data-v-32a0b12e]{font-size:23px;color:var(--admin-ink);font-variant-numeric:tabular-nums;letter-spacing:-.03em}.curated-filter-panel[data-v-32a0b12e]{margin-bottom:16px;padding:14px;border:1px solid var(--admin-line);border-radius:var(--admin-radius);background:var(--admin-panel);box-shadow:0 1px 3px #1025220a}.filters-bar[data-v-32a0b12e]{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(6,minmax(132px,1fr)) auto;gap:9px;margin:0}.curated-search-control[data-v-32a0b12e],.filters-bar select[data-v-32a0b12e]{min-width:0;min-height:40px;border:1px solid #ccd5da;border-radius:9px;color:var(--admin-ink);background:#fff;font:inherit;font-size:12px;transition:.15s ease}.curated-search-control[data-v-32a0b12e]{display:flex;align-items:center;gap:8px;padding:0 11px}.curated-search-control>span[data-v-32a0b12e]{color:#778590;font-size:17px}.search-input[data-v-32a0b12e]{width:100%;min-width:0;border:0;outline:0;color:var(--admin-ink);background:transparent;font:inherit;font-size:12px}.search-input[data-v-32a0b12e]::-webkit-search-cancel-button{opacity:.55}.filters-bar select[data-v-32a0b12e]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:8px 34px 8px 10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23586673' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}.filters-bar select[data-v-32a0b12e]:hover,.curated-search-control[data-v-32a0b12e]:hover{border-color:#9eaea9}.filters-bar select[data-v-32a0b12e]:focus,.curated-search-control[data-v-32a0b12e]:focus-within{border-color:#4f9b8b;box-shadow:0 0 0 3px #388e7b1f;outline:0}.filter-submit[data-v-32a0b12e]{min-height:40px;padding-inline:16px}.channel-table[data-v-32a0b12e]{min-width:1100px}.channel-admin>.table-wrap[data-v-32a0b12e]{border-color:#dfe5e8;box-shadow:0 2px 6px #1025220d}.channel-table th[data-v-32a0b12e]{position:sticky;top:0;z-index:1}.channel-table tbody tr[data-v-32a0b12e]{cursor:pointer;transition:background .12s ease}.channel-table tbody tr[data-v-32a0b12e]:hover{background:#f7fbfa}.col-check[data-v-32a0b12e]{width:36px}.channel-cell[data-v-32a0b12e]{display:flex;gap:12px;align-items:flex-start;min-width:280px}.thumb[data-v-32a0b12e]{width:64px;height:64px;border-radius:10px;object-fit:cover;background:#e9ecef;flex-shrink:0}.thumb.lg[data-v-32a0b12e]{width:88px;height:88px}.channel-name[data-v-32a0b12e]{color:var(--admin-ink);font-weight:600;text-decoration:none}.channel-name[data-v-32a0b12e]:hover{text-decoration:underline}.channel-desc[data-v-32a0b12e]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:4px 0;color:var(--admin-muted);font-size:12px;line-height:1.4;max-width:360px}.channel-uc[data-v-32a0b12e]{font-size:11px;color:#868e96}.muted[data-v-32a0b12e]{color:#868e96;font-size:12px}.error-text[data-v-32a0b12e]{color:#c92a2a;font-size:11px}.link-btn[data-v-32a0b12e]{border:0;background:transparent;color:#2563eb;cursor:pointer;padding:0;font:inherit}.mini-actions[data-v-32a0b12e]{margin-top:4px}.actions[data-v-32a0b12e]{white-space:nowrap}.more-wrap[data-v-32a0b12e]{position:relative;display:inline-block}.more-menu[data-v-32a0b12e]{position:absolute;right:0;top:100%;z-index:20;min-width:160px;padding:6px;border:1px solid var(--admin-line);border-radius:8px;background:#fff;box-shadow:0 8px 24px #00000014}.more-menu button[data-v-32a0b12e]{display:block;width:100%;padding:8px 10px;border:0;background:transparent;text-align:left;cursor:pointer}.more-menu button[data-v-32a0b12e]:hover{background:#f8f9fa}.more-menu button.danger[data-v-32a0b12e]{color:#c92a2a}.pager[data-v-32a0b12e]{display:flex;align-items:center;gap:12px;margin-top:14px}.hint[data-v-32a0b12e]{font-size:.8rem;color:#868e96;margin:4px 0 0}.radio[data-v-32a0b12e]{display:flex;gap:8px;align-items:center;margin:8px 0}.drawer-overlay[data-v-32a0b12e]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0f172a59}.drawer[data-v-32a0b12e]{position:absolute;top:0;right:0;width:min(480px,100%);height:100%;background:#fff;box-shadow:-8px 0 32px #0000001f;display:flex;flex-direction:column}.drawer-header[data-v-32a0b12e]{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--admin-line)}.drawer-body[data-v-32a0b12e]{padding:18px;overflow:auto}.detail-hero[data-v-32a0b12e]{display:flex;gap:14px;margin-bottom:12px}.detail-desc[data-v-32a0b12e]{color:var(--admin-muted);font-size:13px;line-height:1.5;white-space:pre-wrap}.detail-grid[data-v-32a0b12e]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.detail-grid dt[data-v-32a0b12e]{color:#868e96;font-size:11px}.detail-grid dd[data-v-32a0b12e]{margin:2px 0 0;font-size:13px}.drawer-actions[data-v-32a0b12e]{display:flex;flex-wrap:wrap;gap:8px}.dialog-card.wide[data-v-32a0b12e]{width:min(640px,92vw)}.fav-table[data-v-32a0b12e]{width:100%;margin:12px 0}.empty.error[data-v-32a0b12e]{color:#c92a2a}@media (max-width: 900px){.channel-admin .page-header[data-v-32a0b12e]{align-items:stretch;flex-direction:column;padding:16px}.curated-toolbar[data-v-32a0b12e],.curated-toolbar .btn[data-v-32a0b12e]{width:100%}.stats-row[data-v-32a0b12e],.filters-bar[data-v-32a0b12e]{grid-template-columns:repeat(2,minmax(0,1fr))}.curated-search-control[data-v-32a0b12e],.filter-submit[data-v-32a0b12e]{grid-column:1 / -1}}@media (min-width: 901px) and (max-width: 1380px){.filters-bar[data-v-32a0b12e]{grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(145px,1fr))}.filter-submit[data-v-32a0b12e]{min-width:110px}}.btn-hard-delete[data-v-32a0b12e]{border-color:#b3261e;color:#fff;background:#b3261e}.btn-hard-delete[data-v-32a0b12e]:hover:not(:disabled){background:#8f1d17}.btn-hard-delete[data-v-32a0b12e]:disabled{opacity:.5;cursor:not-allowed}.remove-dialog[data-v-32a0b12e]{width:min(640px,100%)}.remove-msg[data-v-32a0b12e]{margin-bottom:12px}.rm-info[data-v-32a0b12e]{display:grid;gap:4px;margin-bottom:12px;font-size:12px}.hd-label[data-v-32a0b12e]{display:inline-block;min-width:92px;color:var(--admin-muted);font-weight:700;margin-right:6px}.rm-danger-banner[data-v-32a0b12e]{margin:4px 0 8px;padding:10px 12px;border:1px solid #f0c8c4;border-radius:9px;background:#fcebea;color:#a52a21;font-weight:700;font-size:12px;line-height:1.5}.rm-blocked[data-v-32a0b12e]{margin:4px 0 8px;padding:10px 12px;border:1px solid #cbd2d8;border-radius:9px;background:#f1f3f5;color:#45515d;font-size:12px;line-height:1.5}.rm-blocked-list[data-v-32a0b12e]{margin:6px 0 0;padding-left:16px}.rm-summary[data-v-32a0b12e]{margin:6px 0 10px;color:#45515d;font-size:12px;line-height:1.5}.rm-section-title[data-v-32a0b12e]{margin:14px 0 6px;font-size:13px}.rm-list[data-v-32a0b12e]{margin:4px 0 0;padding-left:16px}.rm-list li[data-v-32a0b12e]{margin:2px 0;font-size:12px;color:#3d4a54;line-height:1.5}.rm-note[data-v-32a0b12e]{display:block;color:#7d8994;font-size:11px}.rm-keep[data-v-32a0b12e]{margin:4px 0 0;padding-left:16px}.rm-keep li[data-v-32a0b12e]{margin:4px 0;font-size:12px;color:#3d4a54}.rm-keep-reason[data-v-32a0b12e]{display:block;color:#7d8994;font-size:11px}.rm-confirm-q[data-v-32a0b12e]{margin:12px 0 0;color:#a52a21;font-size:12px;font-weight:700}.btn-remove-confirm[data-v-32a0b12e]{border-color:#b3261e;color:#fff;background:#b3261e}.btn-remove-confirm[data-v-32a0b12e]:hover:not(:disabled){background:#8f1d17}.btn-remove-confirm[data-v-32a0b12e]:disabled{opacity:.5;cursor:not-allowed}.header-actions[data-v-77463d36]{display:flex;gap:8px}.result-count[data-v-77463d36]{margin-left:auto;color:var(--admin-muted);font-size:12px}.expression-cell[data-v-77463d36],.meaning-cell[data-v-77463d36]{max-width:360px;line-height:1.5}.subline[data-v-77463d36]{display:block;margin-top:3px;color:var(--admin-muted)}.level-pill[data-v-77463d36]{color:#176b5b;font-weight:750}@media (max-width: 700px){.header-actions[data-v-77463d36]{width:100%;flex-wrap:wrap}}.seg-workbench[data-v-75c370ac]{display:grid;gap:14px;font-size:12px}.workbench-intro[data-v-75c370ac],.candidate-head[data-v-75c370ac],.rule-card[data-v-75c370ac],.candidate-actions[data-v-75c370ac],.rule-actions[data-v-75c370ac]{display:flex;align-items:center;justify-content:space-between;gap:12px}.workbench-intro p[data-v-75c370ac],.rule-card p[data-v-75c370ac],.context[data-v-75c370ac],.candidate-meta[data-v-75c370ac]{color:var(--admin-muted);margin:4px 0;font-size:12px;line-height:1.55}.candidate-evidence[data-v-75c370ac]{margin:.35rem 0;color:var(--text-secondary);font-size:.82rem}.candidate-badge[data-v-75c370ac]{display:inline-block;margin-right:.35rem;padding:.1rem .38rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:.72rem}.candidate-badge.shadow[data-v-75c370ac]{background:color-mix(in srgb,var(--warning, #d9a441) 18%,transparent);color:var(--warning, #d9a441)}.workbench-intro h3[data-v-75c370ac]{margin:0;font-size:14px}.workbench-intro strong[data-v-75c370ac],.candidate-head strong[data-v-75c370ac],.rule-card strong[data-v-75c370ac]{font-size:12px}.safe-badge[data-v-75c370ac]{padding:4px 8px;border-radius:999px;color:#176b5b;background:#e8f5f1;font-size:10px;font-weight:700}.maintenance-guide[data-v-75c370ac]{padding:12px 14px;border:1px solid var(--admin-line);border-radius:10px;background:#fafbfb}.maintenance-guide summary[data-v-75c370ac]{color:var(--admin-ink);font-size:12px;font-weight:720;cursor:pointer}.guide-flow[data-v-75c370ac]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.guide-flow>div[data-v-75c370ac]{display:flex;align-items:flex-start;gap:8px}.guide-flow b[data-v-75c370ac]{display:grid;width:20px;height:20px;flex:0 0 20px;place-items:center;border-radius:50%;color:#176b5b;background:#e7f5f0;font-size:10px}.guide-flow span[data-v-75c370ac]{display:grid;gap:2px}.guide-flow strong[data-v-75c370ac]{font-size:11px}.guide-flow small[data-v-75c370ac],.guide-note[data-v-75c370ac]{color:var(--admin-muted);font-size:10px;line-height:1.5}.guide-note[data-v-75c370ac]{margin:10px 0 0;padding-top:9px;border-top:1px solid var(--admin-line)}.workbench-tabs[data-v-75c370ac]{display:flex;gap:8px;border-bottom:1px solid var(--admin-line)}.workbench-tabs button[data-v-75c370ac]{border:0;background:transparent;padding:8px 11px;font-size:11px;cursor:pointer}.workbench-tabs button.active[data-v-75c370ac]{border-bottom:2px solid var(--admin-brand);font-weight:750}.workbench-tabs span[data-v-75c370ac]{margin-left:6px;padding:1px 6px;border-radius:999px;background:#edf2f1}.candidate-list[data-v-75c370ac],.business-rules[data-v-75c370ac]{display:grid;gap:12px}.candidate-card[data-v-75c370ac],.rule-card[data-v-75c370ac],.correction-form[data-v-75c370ac],.preview-card[data-v-75c370ac]{padding:14px;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-panel)}.comparison[data-v-75c370ac]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.unit-row[data-v-75c370ac]{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.unit-row span[data-v-75c370ac]{padding:4px 7px;border-radius:7px;background:#eef2f1;font-size:11px}.unit-row.expected span[data-v-75c370ac]{color:#176b5b;background:#e7f5f0}.correction-form[data-v-75c370ac]{display:grid;gap:14px}.scope-grid[data-v-75c370ac]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.preview-card li.pass[data-v-75c370ac]{color:#176b5b}.preview-card li[data-v-75c370ac]{margin:5px 0}.preview-card li b[data-v-75c370ac]{margin-left:6px;font-size:10px}.preview-card li.fail[data-v-75c370ac]{color:#9b2c2c}.preview-reasons[data-v-75c370ac]{margin:10px 0 12px;padding:10px 12px;border-radius:8px;color:#7a2e2e;background:#fff0f0}.preview-reasons strong[data-v-75c370ac]{font-size:11px}.preview-reasons p[data-v-75c370ac]{margin:4px 0 0;font-size:11px;line-height:1.5}.workbench-message[data-v-75c370ac]{padding:10px 12px;border-radius:8px;background:#e8f5f1;font-size:11px}.workbench-message.error[data-v-75c370ac]{color:#9b2c2c;background:#fff0f0}.workbench-empty[data-v-75c370ac]{padding:32px;text-align:center;color:var(--admin-muted)}@media (max-width: 760px){.comparison[data-v-75c370ac],.scope-grid[data-v-75c370ac],.guide-flow[data-v-75c370ac]{grid-template-columns:1fr}.workbench-intro[data-v-75c370ac],.rule-card[data-v-75c370ac],.candidate-actions[data-v-75c370ac]{align-items:stretch;flex-direction:column}}.rule-category-grid[data-v-f10b3b34]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.rule-category-card[data-v-f10b3b34]{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:18px;border:1px solid var(--admin-line);border-radius:14px;color:inherit;background:var(--admin-panel);text-decoration:none}.rule-category-card[data-v-f10b3b34]:hover{border-color:#65a897;transform:translateY(-1px)}.rule-category-card h3[data-v-f10b3b34]{margin:0;font-size:15px}.rule-category-card p[data-v-f10b3b34]{margin:6px 0;color:var(--admin-muted);font-size:12px;line-height:1.55}.rule-category-card small[data-v-f10b3b34]{color:#176b5b}.rule-category-card>b[data-v-f10b3b34]{grid-column:2;font-size:11px;color:#176b5b}.category-icon[data-v-f10b3b34]{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:#e8f5f1;color:#176b5b;font-weight:800}.category-help[data-v-f10b3b34]{margin-bottom:14px;padding:12px 14px;border:1px solid #cde3dc;border-radius:10px;background:#f1f8f6}.category-help p[data-v-f10b3b34]{margin:5px 0 0;color:#38665d;font-size:12px}.catalog-layout[data-v-f10b3b34]{display:grid;grid-template-columns:minmax(320px,1fr) minmax(340px,.85fr);gap:16px}.catalog-list[data-v-f10b3b34],.catalog-form[data-v-f10b3b34]{padding:14px;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-panel)}.catalog-toolbar[data-v-f10b3b34],.scope-row[data-v-f10b3b34],.form-actions[data-v-f10b3b34],.catalog-rule-card[data-v-f10b3b34]{display:flex;gap:10px}.catalog-toolbar[data-v-f10b3b34]{margin-bottom:12px}.catalog-toolbar input[data-v-f10b3b34]{flex:1}.catalog-rule-card[data-v-f10b3b34]{align-items:center;justify-content:space-between;padding:11px 2px;border-bottom:1px solid var(--admin-line);cursor:pointer}.catalog-rule-card p[data-v-f10b3b34]{margin:4px 0 0;color:var(--admin-muted);font-size:11px}.catalog-form h3[data-v-f10b3b34]{margin:0 0 14px;font-size:14px}.catalog-form .field[data-v-f10b3b34]{margin-bottom:12px}.catalog-form label[data-v-f10b3b34]{display:block;margin-bottom:5px;font-size:12px;font-weight:700}.catalog-form small[data-v-f10b3b34]{display:block;margin-top:5px;color:var(--admin-muted);font-size:11px}.scope-row>.field[data-v-f10b3b34]{flex:1}.form-actions[data-v-f10b3b34]{justify-content:flex-end;margin-top:14px}.empty-state[data-v-f10b3b34]{padding:28px 8px;color:var(--admin-muted);text-align:center;font-size:12px}.asr-diagnostics[data-v-f10b3b34]{margin-bottom:16px;padding:14px;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-panel)}.asr-diagnostics-head[data-v-f10b3b34],.asr-comparison[data-v-f10b3b34]{display:flex;justify-content:space-between;gap:12px}.asr-diagnostics-head h3[data-v-f10b3b34],.asr-diagnostics-head p[data-v-f10b3b34]{margin:0}.asr-diagnostics-head h3[data-v-f10b3b34]{font-size:14px}.asr-diagnostics-head p[data-v-f10b3b34],.asr-diagnostic-card p[data-v-f10b3b34]{margin-top:5px;color:var(--admin-muted);font-size:11px}.asr-diagnostic-card[data-v-f10b3b34]{margin-top:12px;padding-top:12px;border-top:1px solid var(--admin-line)}.asr-comparison>div[data-v-f10b3b34]{flex:1;padding:10px;border-radius:8px;background:#f8faf9}.asr-comparison small[data-v-f10b3b34],.asr-comparison strong[data-v-f10b3b34]{display:block}.asr-comparison strong[data-v-f10b3b34]{margin-top:4px;font-size:13px}.asr-context[data-v-f10b3b34]{line-height:1.5}@media (max-width: 900px){.catalog-layout[data-v-f10b3b34]{grid-template-columns:1fr}}.reading-overrides-page .tabs[data-v-14b8c124]{display:flex;gap:.5rem;margin:1rem 0}.tabs button[data-v-14b8c124]{border:1px solid #ccc;background:#fff;padding:.4rem .8rem;cursor:pointer}.tabs button.active[data-v-14b8c124]{border-color:#222;font-weight:600}.control-bar[data-v-14b8c124]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.control-bar input[data-v-14b8c124],.control-bar select[data-v-14b8c124],.modal input[data-v-14b8c124],.modal select[data-v-14b8c124],.modal textarea[data-v-14b8c124]{padding:.35rem .5rem;border:1px solid #ccc}.control-bar input.wide[data-v-14b8c124]{flex:1;min-width:16rem}.table-wrap[data-v-14b8c124]{overflow:auto}table[data-v-14b8c124]{width:100%;border-collapse:collapse;font-size:.9rem}th[data-v-14b8c124],td[data-v-14b8c124]{border-bottom:1px solid #e5e5e5;padding:.4rem .5rem;text-align:left;vertical-align:top}.note-cell[data-v-14b8c124],.sentence-cell[data-v-14b8c124]{max-width:16rem;white-space:pre-wrap}.badge.active[data-v-14b8c124]{color:#0a7}.badge.inactive[data-v-14b8c124]{color:#888}.stats[data-v-14b8c124]{display:flex;gap:.75rem;margin-bottom:.75rem}.stat-card[data-v-14b8c124]{border:1px solid #e5e5e5;padding:.75rem 1rem;min-width:6rem}.stat-card .num[data-v-14b8c124]{font-size:1.4rem;font-weight:700}.dist-row[data-v-14b8c124]{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:.75rem}.dist-row pre[data-v-14b8c124]{white-space:pre-wrap;font-size:.8rem}.hit[data-v-14b8c124]{color:#0a7}.modal-scrim[data-v-14b8c124]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:40}.modal[data-v-14b8c124]{background:#fff;padding:1.25rem;width:min(36rem,92vw);max-height:90vh;overflow:auto;display:flex;flex-direction:column;gap:.5rem}.modal label[data-v-14b8c124]{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.modal .check[data-v-14b8c124]{flex-direction:row;align-items:center;gap:.5rem}.modal .actions[data-v-14b8c124]{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.error[data-v-14b8c124]{color:#b00020}.pager[data-v-14b8c124]{display:flex;gap:.5rem;margin-top:.75rem}.meta-line[data-v-db6ea8a1]{display:flex;gap:1rem;flex-wrap:wrap;color:#667;margin:0 0 1rem;font-size:12px}.status-panel[data-v-db6ea8a1]{display:grid;gap:10px;margin:0 0 1rem;padding:14px 16px;border:1px solid #e4e8ec;border-radius:12px;background:#fff}.status-row[data-v-db6ea8a1]{display:flex;align-items:center;gap:12px;min-height:22px}.status-key[data-v-db6ea8a1]{flex:0 0 7.5rem;color:#687483;font-size:12px;font-weight:650}.status-value[data-v-db6ea8a1]{display:inline-flex;align-items:center;gap:8px;color:#17202a;font-size:13px;font-weight:650}.mode-dot[data-v-db6ea8a1]{width:8px;height:8px;border-radius:50%;background:#98a2b3;box-shadow:0 0 0 3px #eef1f4}.mode-dot.tone-ok[data-v-db6ea8a1]{background:#12a36d;box-shadow:0 0 0 3px #e1f5ed}.mode-dot.tone-warn[data-v-db6ea8a1]{background:#f79009;box-shadow:0 0 0 3px #fff4e5}.mode-dot.tone-bad[data-v-db6ea8a1]{background:#d92d20;box-shadow:0 0 0 3px #fee4e2}.mode-text.tone-ok[data-v-db6ea8a1],.tone-ok[data-v-db6ea8a1]{color:#08734f}.mode-text.tone-warn[data-v-db6ea8a1],.tone-warn[data-v-db6ea8a1]{color:#b54708}.mode-text.tone-bad[data-v-db6ea8a1],.tone-bad[data-v-db6ea8a1]{color:#b42318}.field[data-v-db6ea8a1]{display:grid;gap:.35rem;margin-bottom:.75rem}.field input[data-v-db6ea8a1],.field textarea[data-v-db6ea8a1]{width:100%;padding:.55rem .7rem;border:1px solid #d5dbe3;border-radius:8px;font:inherit}.ops-bar[data-v-db6ea8a1]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:1.25rem 0 .25rem;padding-top:1rem;border-top:1px solid #e4e8ec}.op-btn[data-v-db6ea8a1]{display:inline-flex;min-height:36px;align-items:center;justify-content:center;padding:7px 13px;border:1px solid transparent;border-radius:9px;font:inherit;font-size:12px;font-weight:680;line-height:1.2;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease,opacity .14s ease}.op-btn-slot[data-v-db6ea8a1]{display:inline-grid;grid-template-areas:"stack";place-items:center}.op-btn-slot[data-v-db6ea8a1]>*{grid-area:stack}.op-btn-slot .is-hidden[data-v-db6ea8a1]{visibility:hidden}.op-btn-busy[data-v-db6ea8a1]{white-space:nowrap}.op-secondary[data-v-db6ea8a1]{color:#344054;background:#fff;border-color:#d0d5dd}.op-secondary[data-v-db6ea8a1]:hover:not(:disabled){background:#f9fafb;border-color:#98a2b3}.op-warning[data-v-db6ea8a1]{color:#fff;background:#dc6803;border-color:#dc6803}.op-warning[data-v-db6ea8a1]:hover:not(:disabled){background:#b54708;border-color:#b54708}.op-danger[data-v-db6ea8a1]{color:#fff;background:#d92d20;border-color:#d92d20}.op-danger[data-v-db6ea8a1]:hover:not(:disabled){background:#b42318;border-color:#b42318}.op-success[data-v-db6ea8a1]{color:#fff;background:#099250;border-color:#099250}.op-success[data-v-db6ea8a1]:hover:not(:disabled){background:#087443;border-color:#087443}.op-primary[data-v-db6ea8a1]{color:#fff;background:#1570ef;border-color:#1570ef}.op-primary[data-v-db6ea8a1]:hover:not(:disabled){background:#175cd3;border-color:#175cd3}.op-btn[data-v-db6ea8a1]:disabled{opacity:.45;cursor:not-allowed}.op-btn[aria-busy=true][data-v-db6ea8a1]{opacity:1;cursor:wait}.banner[data-v-db6ea8a1]{margin:0 0 .85rem;padding:.75rem .9rem;border-radius:8px;font-weight:600}.banner.error[data-v-db6ea8a1]{color:#b42318;background:#fef3f2}.banner.busy[data-v-db6ea8a1]{color:#1e3a5f;background:#eff6ff}.banner.result[data-v-db6ea8a1]{color:#14532d;background:#f0fdf4;white-space:pre-wrap;font-weight:500}.banner.result.fail[data-v-db6ea8a1]{color:#b42318;background:#fef3f2}.warn[data-v-db6ea8a1]{color:#9a3412;background:#fff7ed;padding:.6rem .75rem;border-radius:8px;margin:0 0 .75rem}.stat-card.tone-bad .num[data-v-db6ea8a1],.stat-card.bad .num[data-v-db6ea8a1]{color:#b42318}.stat-card.tone-ok .num[data-v-db6ea8a1],.stat-card.ok .num[data-v-db6ea8a1]{color:#0f766e}@media (max-width: 560px){.ops-bar[data-v-db6ea8a1]{flex-direction:column;align-items:stretch}.op-btn[data-v-db6ea8a1]{width:100%}.status-key[data-v-db6ea8a1]{flex-basis:5.5rem}}.sub-maint[data-v-32d1abb5]{display:flex;flex-direction:column;gap:16px}.sub-maint__toolbar[data-v-32d1abb5]{display:flex;flex-wrap:wrap;gap:8px;align-items:end}.sub-maint__toolbar label[data-v-32d1abb5]{display:flex;flex-direction:column;gap:4px;font-size:12px}.sub-maint__toolbar input[data-v-32d1abb5]{min-width:220px;padding:8px 10px}.btn[data-v-32d1abb5]{padding:8px 12px;border:1px solid #c9cdd4;background:#fff;border-radius:8px;cursor:pointer}.btn[data-v-32d1abb5]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-32d1abb5]{background:#1f4b3a;color:#fff;border-color:#1f4b3a}.btn-tiny[data-v-32d1abb5]{padding:2px 8px;font-size:12px}.action-tooltip[data-v-32d1abb5]{display:inline-flex;max-width:100%}.sub-maint__error[data-v-32d1abb5]{color:#b42318}.sub-maint__align-banner[data-v-32d1abb5]{padding:12px 14px;border-radius:10px;border:1px solid #f79009;background:#fffaeb;color:#7a2e0e}.sub-maint__align-banner.is-fail[data-v-32d1abb5]{border-color:#f04438;background:#fef3f2;color:#912018}.sub-maint__align-banner pre[data-v-32d1abb5]{margin:8px 0 0;max-height:160px;overflow:auto;font-size:11px}.sub-maint__ok-banner[data-v-32d1abb5]{padding:10px 14px;border-radius:10px;border:1px solid #12b76a;background:#ecfdf3;color:#027a48}.sub-maint__muted[data-v-32d1abb5]{color:#667085;font-size:13px}.sub-maint__header[data-v-32d1abb5]{display:flex;justify-content:space-between;gap:16px;align-items:start}.sub-maint__thumb[data-v-32d1abb5]{width:160px;border-radius:8px}.sub-maint__grid[data-v-32d1abb5]{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1.2fr) minmax(260px,1fr);gap:16px;align-items:start}.sub-maint__embed[data-v-32d1abb5]{position:relative;width:100%;padding-top:56.25%;background:#111;border-radius:10px;overflow:hidden}.sub-maint__embed iframe[data-v-32d1abb5]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.unit-row[data-v-32d1abb5]{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:10px;margin-bottom:6px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;cursor:pointer}.unit-row.active[data-v-32d1abb5]{border-color:#1f4b3a;background:#f3faf6}.unit-row.current[data-v-32d1abb5]{outline:2px solid #1f4b3a}.lu-actions[data-v-32d1abb5]{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.sentence-select[data-v-32d1abb5]{width:100%;min-width:0;padding:10px 36px 10px 12px;overflow:hidden;border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:#101828;font:inherit;text-overflow:ellipsis;white-space:nowrap}.sentence-select[data-v-32d1abb5]:focus{border-color:#1f4b3a;outline:2px solid rgb(31 75 58 / 14%)}.lu-help[data-v-32d1abb5]{margin:-4px 0 10px}.sub-maint__mapping-warning[data-v-32d1abb5]{padding:9px 10px;border:1px solid #fdb022;border-radius:8px;background:#fffaeb;color:#93370d;font-size:13px}.sub-maint__detail label[data-v-32d1abb5]{display:flex;flex-direction:column;gap:4px;margin:10px 0;font-size:13px}.sub-maint__detail textarea[data-v-32d1abb5],.sub-maint__detail input[data-v-32d1abb5]{padding:8px;border:1px solid #d0d5dd;border-radius:8px}.sub-maint__versions[data-v-32d1abb5],.sub-maint__history[data-v-32d1abb5]{list-style:none;padding:0;margin:0}.linkish[data-v-32d1abb5]{background:none;border:0;color:#1f4b3a;cursor:pointer;padding:0;text-decoration:underline}.sub-maint__report[data-v-32d1abb5]{max-height:180px;overflow:auto;font-size:11px;background:#f8fafc;padding:8px;border-radius:8px}@media (max-width: 1100px){.sub-maint__grid[data-v-32d1abb5]{grid-template-columns:1fr}}.taxonomy-admin[data-v-1a29db8f]{display:grid;gap:22px}.taxonomy-panel[data-v-1a29db8f]{padding:22px;border:1px solid #dfe6e8;border-radius:14px;background:#fff}.taxonomy-panel h4[data-v-1a29db8f]{margin:0 0 18px}.taxonomy-create[data-v-1a29db8f],.taxonomy-row[data-v-1a29db8f]{display:grid;grid-template-columns:1fr 1.4fr 100px auto auto;gap:8px;margin-bottom:10px}.taxonomy-create[data-v-1a29db8f]{grid-template-columns:1fr 1.4fr 100px auto;padding-bottom:16px;border-bottom:1px solid #edf1f2}.taxonomy-panel input[data-v-1a29db8f]{width:100%;padding:10px;border:1px solid #cfd9dd;border-radius:8px;background:#fff}.taxonomy-message.error[data-v-1a29db8f]{color:#b42318}@media (max-width: 760px){.taxonomy-create[data-v-1a29db8f],.taxonomy-row[data-v-1a29db8f]{grid-template-columns:1fr}}.state-page[data-v-71fb5758]{min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom));display:grid;align-content:center;gap:.75rem;background:linear-gradient(160deg,#10161d,#1b2633 60%);color:#f2f5f8;font-family:Hiragino Sans,PingFang SC,Noto Sans SC,sans-serif}.brand[data-v-71fb5758]{margin:0;font-size:2rem;font-weight:700}h1[data-v-71fb5758]{margin:0;font-size:1.4rem}p[data-v-71fb5758]{margin:0;color:#9aa8b5;line-height:1.55}button[data-v-71fb5758]{margin-top:.5rem;width:fit-content;border:0;border-radius:10px;padding:.75rem 1.1rem;background:#3d9a8b;color:#06221e;font:inherit;font-weight:600}.state-page[data-v-6ddcf09e]{min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom));display:grid;align-content:center;gap:.75rem;background:linear-gradient(160deg,#10161d,#1b2633 60%);color:#f2f5f8;font-family:Hiragino Sans,PingFang SC,Noto Sans SC,sans-serif}.brand[data-v-6ddcf09e]{margin:0;font-size:2rem;font-weight:700}h1[data-v-6ddcf09e]{margin:0;font-size:1.4rem}p[data-v-6ddcf09e]{margin:0;color:#9aa8b5;line-height:1.55}button[data-v-6ddcf09e]{margin-top:.5rem;width:fit-content;border:0;border-radius:10px;padding:.75rem 1.1rem;background:#3d9a8b;color:#06221e;font:inherit;font-weight:600}:root,:root[data-theme=midnight]{color-scheme:dark;--bg-primary: #03071a;--bg-secondary: #0a102a;--bg-elevated: #111837;--bg-card: #111837;--bg-card-soft: #171f43;--bg-glass: rgba(17, 24, 55, .88);--bg-glass-border: rgba(98, 111, 180, .46);--text-primary: #f7f8ff;--text-secondary: #aeb5d2;--text-muted: #7f89ad;--border: #293365;--card-border: #293365;--accent: #9c6bff;--accent-dim: #7652c7;--accent-soft: rgba(156, 107, 255, .16);--accent-glow: rgba(99, 102, 241, .3);--accent-gradient: linear-gradient(135deg, #5888ff, #b444ef);--error: #ff7385;--error-soft: rgba(255, 91, 113, .14);--overlay: rgba(0, 0, 0, .62);--page-gradient: radial-gradient(circle at 87% 14%, #31154f 0, transparent 17%), radial-gradient(circle at 9% 38%, #172466 0, transparent 17%), linear-gradient(115deg, #030819, #090e2b 55%, #04071b);--card-gradient: linear-gradient(110deg, rgba(17, 25, 54, .96), rgba(18, 22, 52, .96));--shadow-card: inset 0 1px 0 rgba(255, 255, 255, .04), 0 10px 26px rgba(0, 0, 0, .18);--shadow-elevated: 0 -10px 38px rgba(0, 0, 0, .34);--radius-lg: 18px;--radius-sm: 10px}:root[data-theme=daylight]{color-scheme:light;--bg-primary: #f5f7fa;--bg-secondary: #edf1f6;--bg-elevated: #ffffff;--bg-card: #ffffff;--bg-card-soft: #f2f5f9;--bg-glass: rgba(255, 255, 255, .94);--bg-glass-border: rgba(64, 86, 181, .13);--text-primary: #182230;--text-secondary: #667085;--text-muted: #8b95a7;--border: #dce3ea;--card-border: #dce3ea;--accent: #4056b5;--accent-dim: #314596;--accent-soft: #e9edff;--accent-glow: rgba(64, 86, 181, .16);--accent-gradient: linear-gradient(135deg, #4056b5, #5870d5);--success-bright: #42b8c6;--error: #d35d61;--error-soft: #fdebed;--overlay: rgba(24, 34, 48, .3);--page-gradient: linear-gradient(180deg, #f8fafc 0, #f5f7fa 46%, #f1f4f8 100%);--card-gradient: #ffffff;--shadow-card: 0 6px 22px rgba(24, 34, 48, .055);--shadow-elevated: 0 -10px 38px rgba(24, 34, 48, .14);--radius-lg: 16px}html,body{background:var(--bg-primary);color:var(--text-primary)}html{transition:background-color .2s ease,color .2s ease}:root[data-theme=daylight] .mobile-shell,:root[data-theme=daylight] .dashboard,:root[data-theme=daylight] .player-container{background:var(--page-gradient)}:root[data-theme=daylight] .player-overlay{background:var(--bg-primary)}:root[data-theme=daylight] .app-mobile-header__brand .app-logo,:root[data-theme=daylight] .brand .app-logo,:root[data-theme=daylight] .brand-name{background:linear-gradient(105deg,#345b2c,#78a74c);background-clip:text;-webkit-background-clip:text}:root[data-theme=daylight] .hero p,:root[data-theme=daylight] .shelf-heading small{color:var(--text-secondary)}:root[data-theme=daylight] .hero-day{display:block}:root[data-theme=daylight] .hero-night{display:none}:root[data-theme=daylight] .hero:after{background:linear-gradient(90deg,#0d2a49b8,#0d2a496b 44%,#0d2a490a 80%)}:root[data-theme=daylight] .hero .hero-copy p,:root[data-theme=daylight] .hero .hero-copy h1{color:#fff}:root[data-theme=daylight] .fuji-scene{filter:drop-shadow(0 12px 22px rgba(62,83,48,.1))}:root[data-theme=daylight] .fuji-scene:before,:root[data-theme=daylight] .fuji-scene:after{border-top-color:#52694394;filter:drop-shadow(0 -2px 7px rgba(108,137,84,.12))}:root[data-theme=daylight] .moon{background:radial-gradient(circle at 36% 30%,#fffdf0 0,#fffdf0 10%,#eef3cc 38%,#c9dda4 72%,#9ebc77);box-shadow:0 0 15px #e7efc4e0,0 0 38px #aec87f6b,0 0 72px #7191522e}:root[data-theme=daylight] .moon:after{background:#6c84541a;box-shadow:-35px 25px 0 2px #6c845414,-9px 44px 0 -3px #6c84541a}:root[data-theme=daylight] .fuji{background:linear-gradient(143deg,transparent 0 44%,rgba(135,160,112,.5) 45% 55%,transparent 56%),linear-gradient(217deg,transparent 0 43%,rgba(69,91,58,.68) 44% 56%,transparent 57%),linear-gradient(155deg,#9eb88a 0,#718d62 49%,#435a3d);filter:drop-shadow(0 -5px 18px rgba(91,119,70,.18))}:root[data-theme=daylight] .fuji:before{background:linear-gradient(155deg,#fffdf3,#edf1df 52%,#cbd8ba);filter:drop-shadow(0 0 7px rgba(245,247,232,.82))}:root[data-theme=daylight] .cherry{color:#94b56f;text-shadow:0 0 10px rgba(126,158,91,.24)}:root[data-theme=daylight] .petal{background:#c5d9a6;box-shadow:0 0 7px #7e9e5b33}:root[data-theme=daylight] .hero h1,:root[data-theme=daylight] .shelf-heading h2,:root[data-theme=daylight] .record-heading h2,:root[data-theme=daylight] .date-row h3,:root[data-theme=daylight] .lesson-info h4,:root[data-theme=daylight] .resume-copy h3{color:var(--text-primary)}:root[data-theme=daylight] .resume-card,:root[data-theme=daylight] .lesson-card,:root[data-theme=daylight] .empty-card,:root[data-theme=daylight] .shelf-empty{border-color:var(--border);background:var(--card-gradient);box-shadow:var(--shadow-card)}:root[data-theme=daylight] .resume-copy>span,:root[data-theme=daylight] .record-heading button,:root[data-theme=daylight] .lesson-bottom b{color:var(--accent)}:root[data-theme=daylight] .lesson-progress b{color:var(--accent)}:root[data-theme=daylight] .resume-copy p,:root[data-theme=daylight] .empty-state,:root[data-theme=daylight] .date-row small,:root[data-theme=daylight] .lesson-bottom{color:var(--text-secondary)}:root[data-theme=daylight] .timeline{border-left-color:#dce3d3}:root[data-theme=daylight] .date-line,:root[data-theme=daylight] .bar{background:#dfe5d6}:root[data-theme=daylight] .dot{border-color:#dfe8d6;background:var(--accent)}:root[data-theme=daylight] .badge.done{color:#38652c;background:#deefd5}:root[data-theme=daylight] .badge.pending{color:#88651f;background:#fff0c9}:root[data-theme=daylight] .analysis-card,:root[data-theme=daylight] .transcript,:root[data-theme=daylight] .grammar-toggle,:root[data-theme=daylight] .grammar-card{border-color:var(--border);background:var(--card-gradient);color:var(--text-primary);box-shadow:var(--shadow-card)}:root[data-theme=daylight] .analysis-card h1,:root[data-theme=daylight] .transcript h2,:root[data-theme=daylight] .grammar-card h3{color:var(--text-primary)}:root[data-theme=daylight] .analysis-card>p,:root[data-theme=daylight] .analysis-message{color:var(--text-secondary)}:root[data-theme=daylight] .analysis-card{background:linear-gradient(145deg,#f1f5e9,#fffef8)}:root[data-theme=daylight] .bot{background:radial-gradient(circle,#f7faef 20%,#95bd65 24%,#4d7135 50%,transparent 51%);box-shadow:0 0 26px #4d713538}:root[data-theme=daylight] .analysis-track{background:#d9e1cf}:root[data-theme=daylight] .analysis-track i,:root[data-theme=daylight] .bar i{background:linear-gradient(90deg,#4d7135,#a4d36f);box-shadow:none}:root[data-theme=daylight] .analysis-bar b{color:var(--accent)}:root[data-theme=daylight] .steps{border-color:var(--border);background:#f5f7eccc}:root[data-theme=daylight] .steps>div{border-color:var(--border)}:root[data-theme=daylight] .steps b{color:var(--accent);background:var(--accent-soft)}:root[data-theme=daylight] .steps span{color:var(--text-primary)}:root[data-theme=daylight] .steps small,:root[data-theme=daylight] .steps em,:root[data-theme=daylight] .analysis-card aside{color:var(--text-secondary)}:root[data-theme=daylight] .btn-start{color:#20301a;background:var(--success-bright);box-shadow:0 8px 20px #53783533}:root[data-theme=daylight] .transcript{background:#fffef8}:root[data-theme=daylight] .transcript-scroll{scrollbar-color:#a9bd98 transparent}:root[data-theme=daylight] .transcript-scroll::-webkit-scrollbar-thumb{background:#a9bd98}:root[data-theme=daylight] .transcript p{color:var(--text-primary)}:root[data-theme=daylight] .transcript p .reading-glyph{color:#6d7568}:root[data-theme=daylight] .transcript p .word-token.active{color:#172016}:root[data-theme=daylight] .transcript p .word-token.active .word-surface,:root[data-theme=daylight] .transcript p .word-token.active .surface-wrapper{border-color:#4d9c5b;background:#fff09a;box-shadow:0 0 0 2px #4d9c5b24}:root[data-theme=daylight] .transcript p .word-token.active .reading-glyph{color:#31513a}:root[data-theme=daylight] .transcript p .word-romaji{color:#697164}:root[data-theme=daylight] .transcript p .word-token.active .word-romaji{color:#31513a}:root[data-theme=daylight] .transcript p .sentence-translation{color:#6b7788}:root[data-theme=daylight] .section-title,:root[data-theme=daylight] .grammar-toggle{color:var(--text-primary)}:root[data-theme=daylight] .section-title small,:root[data-theme=daylight] .grammar-toggle .toggle-action{color:var(--accent)}:root[data-theme=daylight] .grammar-card b{color:var(--text-primary)}:root[data-theme=daylight] .grammar-summary>span,:root[data-theme=daylight] .grammar-seek{color:var(--accent)}:root[data-theme=daylight] .grammar-list em{color:#41602f;background:#e1edd8}:root[data-theme=daylight] .grammar-detail p{color:var(--text-secondary)}:root[data-theme=daylight] .grammar-detail>span{color:var(--text-secondary);background:#f3f5ea}:root[data-theme=daylight] .grammar-card.selected{border-color:#9ebc82;color:var(--text-primary);background:linear-gradient(135deg,#edf5df,#dcebc9)}:root[data-theme=daylight] .grammar-card.selected b,:root[data-theme=daylight] .grammar-card.selected p{color:var(--text-primary)}:root[data-theme=daylight] .grammar-card.selected em{color:#fff;background:var(--accent)}:root[data-theme=daylight] .grammar-empty{border-color:#cbd6c1;color:var(--text-secondary);background:#f2f5e9}:root[data-theme=daylight] .grammar-popup{border-color:var(--border);background:var(--bg-elevated);box-shadow:var(--shadow-elevated)}:root[data-theme=daylight] .popup-close,:root[data-theme=daylight] .popup-loading,:root[data-theme=daylight] .popup-none{color:var(--text-muted)}:root[data-theme=daylight] .popup-word{color:var(--text-primary)}:root[data-theme=daylight] .popup-reading{color:#397b6c}:root[data-theme=daylight] .word-study-badges span{border-color:#cad8c8;color:#41602f;background:#edf4e8}:root[data-theme=daylight] .word-study-badges .pos-badge{border-color:#cad8c8;color:#53634e;background:#f2f5ee}:root[data-theme=daylight] .word-study-badges .jlpt-badge{border-color:color-mix(in srgb,var(--jlpt-color) 45%,#fff);color:var(--jlpt-color);background:color-mix(in srgb,var(--jlpt-color) 10%,#fff)}:root[data-theme=daylight] .jlpt-n5{--jlpt-color: #267b6c}:root[data-theme=daylight] .jlpt-n4{--jlpt-color: #3568bd}:root[data-theme=daylight] .jlpt-n3{--jlpt-color: #9a6515}:root[data-theme=daylight] .jlpt-n2{--jlpt-color: #b7463e}:root[data-theme=daylight] .jlpt-n1{--jlpt-color: #7046b2}:root[data-theme=daylight] .jlpt-unknown{--jlpt-color: #718096}:root[data-theme=daylight] .grammar-card,:root[data-theme=daylight] .grammar-card.selected{border-left-color:var(--jlpt-color)}:root[data-theme=daylight] .popup-base-form{color:var(--text-primary)}:root[data-theme=daylight] .popup-base-form small,:root[data-theme=daylight] .word-study-section>small{color:var(--text-muted)}:root[data-theme=daylight] .word-study-section{border-color:var(--border);background:var(--bg-card-soft)}:root[data-theme=daylight] .word-study-section.meaning{border-color:#b8d9cd;background:#eaf6f0}:root[data-theme=daylight] .word-study-section.meaning strong{color:#285d51}:root[data-theme=daylight] .popup-explain{color:var(--text-primary)}:root[data-theme=daylight] .popup-example{color:var(--text-primary)}:root[data-theme=daylight] .popup-example-translation{color:var(--text-secondary)}:root[data-theme=daylight] .curated-page .searchbox,:root[data-theme=daylight] .curated-page .channels article,:root[data-theme=daylight] .curated-page .channel-hero,:root[data-theme=daylight] .curated-page .channel-videos article{border-color:var(--border);background:var(--card-gradient);box-shadow:var(--shadow-card)}:root[data-theme=daylight] .curated-page .searchbox input,:root[data-theme=daylight] .curated-page .channels h3,:root[data-theme=daylight] .curated-page .channel-hero h2,:root[data-theme=daylight] .curated-page .channel-stats b,:root[data-theme=daylight] .curated-page .video-title h2,:root[data-theme=daylight] .curated-page .channel-videos h4{color:var(--text-primary)}:root[data-theme=daylight] .curated-page .video-title button{color:var(--accent)}:root[data-theme=daylight] .curated-page .channels p,:root[data-theme=daylight] .curated-page .channel-description p,:root[data-theme=daylight] .curated-page .channel-videos small,:root[data-theme=daylight] .curated-page .channel-hero small{color:var(--text-secondary)}:root[data-theme=daylight] .curated-page .searchbox{color:var(--text-muted)}:root[data-theme=daylight] .curated-page .searchbox input::placeholder{color:var(--text-muted)}:root[data-theme=daylight] .curated-page .channels em,:root[data-theme=daylight] .curated-page .channel-hero em{color:#41602f;background:#e1edd8}:root[data-theme=daylight] .curated-page .channel-identity i{color:#fff;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}:root[data-theme=daylight] .curated-page .channels small{border-color:var(--border);color:var(--text-muted)}:root[data-theme=daylight] .curated-page .channels>article>b,:root[data-theme=daylight] .curated-page .channel-identity>b,:root[data-theme=daylight] .curated-page .description-more,:root[data-theme=daylight] .curated-page .channel-stats{color:var(--accent)}:root[data-theme=daylight] .curated-page .channel-stats,:root[data-theme=daylight] .curated-page .channel-stats span{border-color:var(--border)}:root[data-theme=daylight] .curated-page .channel-videos .thumb{background:#e6eadf}:root[data-theme=daylight] .curated-page .channel-videos article>button{border-color:#b9c9aa;color:var(--accent);background:var(--accent-soft)}:root[data-theme=daylight] .import-sheet,:root[data-theme=daylight] .url-dialog{color:var(--text-primary);background:var(--bg-elevated)}:root[data-theme=daylight] .job-card{border-color:var(--border);color:var(--text-primary);background:var(--card-gradient)}:root[data-theme=daylight] body{letter-spacing:.005em}:root[data-theme=daylight] .header-add{background:var(--accent);box-shadow:none}:root[data-theme=daylight] .app-mobile-header__brand .app-logo,:root[data-theme=daylight] .brand .app-logo,:root[data-theme=daylight] .brand-name{background:linear-gradient(105deg,#263875,#4056b5);background-clip:text;-webkit-background-clip:text}:root[data-theme=daylight] .fuji-scene{filter:drop-shadow(0 12px 22px rgba(45,62,107,.1))}:root[data-theme=daylight] .fuji-scene:before,:root[data-theme=daylight] .fuji-scene:after{border-top-color:#4d5e8f80;filter:none}:root[data-theme=daylight] .moon{background:radial-gradient(circle at 36% 30%,#fff 0,#fff 10%,#e7f7fa 38%,#a6dce4 70%,#61bac8);box-shadow:0 0 16px #c7edf1db,0 0 38px #42b8c63d,0 0 70px #4056b51f}:root[data-theme=daylight] .moon:after{background:#4056b514;box-shadow:-35px 25px 0 2px #4056b50f,-9px 44px 0 -3px #4056b514}:root[data-theme=daylight] .fuji{background:linear-gradient(143deg,transparent 0 44%,rgba(112,132,190,.4) 45% 55%,transparent 56%),linear-gradient(217deg,transparent 0 43%,rgba(42,61,119,.64) 44% 56%,transparent 57%),linear-gradient(155deg,#91a4dc 0,#6076bd 49%,#30447e);filter:drop-shadow(0 -5px 16px rgba(64,86,181,.15))}:root[data-theme=daylight] .fuji:before{background:linear-gradient(155deg,#fff,#eef3f8 52%,#cbd8e7);filter:none}:root[data-theme=daylight] .cherry{color:#72c8d2;text-shadow:none}:root[data-theme=daylight] .petal{background:#f07867;box-shadow:none}:root[data-theme=daylight] .resume-card,:root[data-theme=daylight] .lesson-card,:root[data-theme=daylight] .empty-card,:root[data-theme=daylight] .shelf-empty,:root[data-theme=daylight] .settings-page .profile-card,:root[data-theme=daylight] .settings-page .setting-row{border-color:var(--border);border-radius:16px;background:#fff;box-shadow:var(--shadow-card)}:root[data-theme=daylight] .timeline{border-left-color:var(--border)}:root[data-theme=daylight] .date-line,:root[data-theme=daylight] .bar{background:#e1e7ef}:root[data-theme=daylight] .dot{border-color:#dfe5f3;background:var(--accent)}:root[data-theme=daylight] .badge.done{color:#26775d;background:#e3f4ed}:root[data-theme=daylight] .badge.pending{color:#a55a4e;background:#fcebe8}:root[data-theme=daylight] .analysis-card{border-radius:18px;background:linear-gradient(145deg,#eef1fb,#fff)}:root[data-theme=daylight] .bot{background:radial-gradient(circle,#fff 20%,#7d8fe1 24%,#4056b5 50%,transparent 51%);box-shadow:0 0 24px #4056b533}:root[data-theme=daylight] .analysis-track{background:#e0e5ed}:root[data-theme=daylight] .analysis-track i,:root[data-theme=daylight] .bar i{background:linear-gradient(90deg,#4056b5,#42b8c6);box-shadow:none}:root[data-theme=daylight] .steps{border-color:var(--border);background:#f7f9fc}:root[data-theme=daylight] .btn-start{color:#fff;background:var(--accent);box-shadow:0 8px 20px #4056b533}:root[data-theme=daylight] .transcript{border-color:var(--border);border-radius:18px;background:#fff;box-shadow:0 6px 22px #1822300d}:root[data-theme=daylight] .transcript-scroll{scrollbar-color:#b8c2d2 transparent}:root[data-theme=daylight] .transcript-scroll::-webkit-scrollbar-thumb{background:#b8c2d2}:root[data-theme=daylight] .transcript p .reading-glyph{color:#667085}:root[data-theme=daylight] .transcript p .word-romaji{color:#7f899a}:root[data-theme=daylight] .transcript p .word-token.active{color:#182230}:root[data-theme=daylight] .transcript p .word-token.active .word-surface,:root[data-theme=daylight] .transcript p .word-token.active .surface-wrapper{border-color:#4056b5;background:#e8f7fa;box-shadow:0 0 0 2px #4056b514}:root[data-theme=daylight] .transcript p .word-token.active .reading-glyph,:root[data-theme=daylight] .transcript p .word-token.active .word-romaji{color:#314596}:root[data-theme=daylight] .grammar-toggle,:root[data-theme=daylight] .grammar-card{border-color:var(--border);border-radius:14px;background:#fff;box-shadow:none}:root[data-theme=daylight] .grammar-list em{color:#314596;background:#e9edff}:root[data-theme=daylight] .grammar-detail>span{border-left-color:#42b8c6;background:#f2f5f9}:root[data-theme=daylight] .grammar-card.selected{border-color:#8797d7;color:var(--text-primary);background:#eef1fb;box-shadow:0 0 0 2px #4056b514;transform:none}:root[data-theme=daylight] .grammar-card.selected em{background:var(--accent)}:root[data-theme=daylight] .grammar-empty{border-color:var(--border);background:#f6f8fb}:root[data-theme=daylight] .curated-page .searchbox,:root[data-theme=daylight] .curated-page .channels article,:root[data-theme=daylight] .curated-page .channel-hero,:root[data-theme=daylight] .curated-page .channel-videos article{border-radius:14px;background:#fff;box-shadow:var(--shadow-card)}:root[data-theme=daylight] .curated-page .channels em,:root[data-theme=daylight] .curated-page .channel-hero em{color:#314596;background:#e9edff}:root[data-theme=daylight] .curated-page .channel-identity i{background:var(--accent);box-shadow:0 0 0 3px #e9edff}:root[data-theme=daylight] .curated-page .channel-videos .thumb{background:#e8edf3}:root[data-theme=daylight] .curated-page .channel-videos article>button{border-color:#cbd4e2;color:var(--accent);background:#f2f5fa}:root[data-theme=daylight] .grammar-list .grammar-card{border-color:color-mix(in srgb,var(--jlpt-color) 62%,#dfe5ed)}:root[data-theme=daylight] .grammar-list .grammar-card.selected{border-color:var(--jlpt-color)}:root[data-theme=daylight] .grammar-list .grammar-card em,:root[data-theme=daylight] .grammar-list .grammar-card.selected em{border-color:color-mix(in srgb,var(--jlpt-color) 52%,#fff);color:var(--jlpt-color);background:color-mix(in srgb,var(--jlpt-color) 11%,#fff)}:root{--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px)}html.auth-root,html.auth-root body,html.auth-root #app{min-height:100%;background:#fff;color-scheme:light}html.pwa-standalone.auth-root .auth-page{min-height:100vh;min-height:100lvh}.pwa-standalone{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}.pwa-standalone .mobile-shell,.pwa-standalone .player-container,.pwa-standalone .auth-page,.pwa-standalone .notebook-page,.pwa-standalone .settings-page,.pwa-standalone .dashboard,.pwa-standalone .curated-page,.pwa-standalone .upload-page,.pwa-standalone .edit-page{-webkit-user-select:none;user-select:none}.pwa-standalone button,.pwa-standalone [role=button],.pwa-standalone .app-action{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pwa-standalone button img,.pwa-standalone [role=button] img,.pwa-standalone .app-action img{-webkit-user-select:none;user-select:none;pointer-events:none}.pwa-standalone img,.pwa-standalone picture,.pwa-standalone video:not([data-allow-native-menu=true]){-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pwa-standalone input,.pwa-standalone textarea,.pwa-standalone select,.pwa-standalone [contenteditable=true],.pwa-standalone [contenteditable=""],.pwa-standalone [data-allow-text-selection=true],.pwa-standalone [data-allow-native-menu=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}@media (max-width: 900px){.pwa-standalone input,.pwa-standalone textarea,.pwa-standalone select{font-size:max(16px,1em)}}html.pwa-standalone .mobile-shell{padding-top:0;padding-bottom:0}html.pwa-standalone .tab-content{padding-top:var(--app-header-total-height);padding-bottom:var(--app-tabbar-total-height)}html.pwa-standalone .player-overlay,html.pwa-standalone .player-container{margin-top:0;padding-top:0}html.pwa-standalone .player-page-header{padding-top:var(--safe-area-top, 0px)}html.pwa-standalone .video-frame{margin-top:0;top:calc(var(--safe-area-top, 0px) + var(--player-header-bar, 40px))}@media (display-mode: standalone){.player-overlay,.player-container{margin-top:0;padding-top:0}}@media (max-width: 600px){html.pwa-standalone .tab-content{padding-top:var(--app-header-total-height);padding-bottom:var(--app-tabbar-total-height)}html.pwa-standalone .player-container{margin-top:0;padding-top:0;padding-right:max(17px,var(--safe-area-right, 0px));padding-bottom:max(28px,var(--safe-area-bottom, 0px));padding-left:max(17px,var(--safe-area-left, 0px))}html.pwa-standalone .video-frame{margin-top:0;top:calc(var(--safe-area-top, 0px) + var(--player-header-bar, 40px))}}:root{--app-header-height: 52px;--app-header-total-height: calc(var(--safe-area-top, 0px) + var(--app-header-height));--app-tabbar-height: 58px;--app-tabbar-fab-overhang: 24px;--app-tabbar-total-height: calc( var(--app-tabbar-height) + var(--app-tabbar-fab-overhang) + var(--safe-area-bottom, 0px) );--app-chrome-z: 20;--app-chrome-bg: rgba(10, 14, 36, .96);--app-chrome-bg-soft: rgba(10, 14, 36, .94);--app-chrome-border: rgba(255, 255, 255, .08);--app-chrome-shadow-top: 0 4px 18px rgba(0, 0, 0, .18);--app-chrome-shadow-bottom: 0 -4px 18px rgba(0, 0, 0, .18);--app-chrome-blur: blur(16px);--app-chrome-icon: #b8bfd5;--app-chrome-icon-active: #9c6bff}:root[data-theme=daylight]{--app-chrome-bg: rgba(248, 250, 254, .96);--app-chrome-bg-soft: rgba(248, 250, 254, .96);--app-chrome-border: rgba(15, 23, 42, .06);--app-chrome-shadow-top: 0 4px 18px rgba(15, 23, 42, .06);--app-chrome-shadow-bottom: 0 -4px 18px rgba(15, 23, 42, .06);--app-chrome-icon: #667085;--app-chrome-icon-active: #4056b5}
