:root{--vellum: #F6F3EE;--vellum-dk: #EDE8DF;--ink: #1E1B16;--stone: #635540;--stone-lt: #9C8A74;--aureum: #C4A96B;--aureum-dk: #8A7040;--verdigris: #2A4A3E;--border: rgba(99, 85, 64, .18);--border-md: rgba(99, 85, 64, .3);--accent: #B8906A;--success: #7AC07A;--danger: #C0392B;--avatar-bg: #EDE8E0;--avatar-text: #7A6A54;--badge-bg: #F0E8DC}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--vellum);color:var(--ink);font-family:DM Sans,sans-serif;font-weight:400;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}#root{min-height:100vh}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-content{display:flex;flex-direction:column;flex:1;min-width:0;background:var(--vellum)}.brand-bar{display:inline-block;width:3px;height:26px;background:var(--accent);border-radius:1px;flex-shrink:0}.brand-name{font-size:19px;font-weight:400;color:var(--ink);font-family:EB Garamond,Georgia,serif;letter-spacing:-.3px}.brand-sub{font-size:9px;letter-spacing:1.5px;color:var(--accent);font-family:DM Sans,sans-serif;margin-top:2px}.app-header{display:grid;grid-template-columns:200px minmax(0,1fr) 200px;align-items:center;gap:24px;padding:12px 32px;background:var(--vellum);border-bottom:.5px solid var(--border)}.app-header__brand{display:flex;align-items:center;gap:10px;padding:0;background:none;border:none;cursor:pointer;justify-self:start}.app-header__brand .brand-bar{height:22px}.app-header__name{font:400 19px EB Garamond,Georgia,serif;letter-spacing:-.3px;color:var(--ink)}.app-header__end{display:flex;justify-content:flex-end;align-items:center;gap:18px}.app-header__link{padding:0;background:none;border:none;font:400 13px DM Sans,sans-serif;color:var(--stone);cursor:pointer;white-space:nowrap}.app-header__link:hover{color:var(--ink)}.task-rail{display:grid;grid-template-columns:repeat(var(--task-count, 4),minmax(0,1fr));gap:6px}.task-rail__seg{display:flex;flex-direction:column;gap:6px;min-width:0;padding:8px 12px;border-radius:6px;border:.5px solid transparent;background:none;font-family:DM Sans,sans-serif;text-align:left;cursor:pointer;transition:background .15s}.task-rail__seg:hover{background:var(--vellum-dk)}.task-rail__seg--active{background:var(--vellum-dk);border-color:var(--border-md)}.task-rail__row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;min-width:0}.task-rail__label{color:var(--stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-rail__seg--active .task-rail__label{color:var(--ink);font-weight:500}.task-rail__numeral{font-family:EB Garamond,Georgia,serif;color:var(--stone-lt);margin-right:6px}.task-rail__short{display:none}.task-rail__count{color:var(--stone-lt);white-space:nowrap}.task-rail__seg--active .task-rail__count{color:var(--stone)}.task-rail__seg--done .task-rail__count{color:var(--verdigris)}.task-rail__bar{display:block;height:3px;border-radius:2px;background:var(--border);overflow:hidden}.task-rail__fill{display:block;height:100%;border-radius:2px;background:var(--accent);transition:width .3s}.task-rail__seg--done .task-rail__fill{background:var(--verdigris)}.avatar-menu{position:relative}.avatar-menu__button{width:24px;height:24px;border-radius:50%;background:var(--avatar-bg);color:var(--avatar-text);font:500 9px DM Sans,sans-serif;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}.avatar-menu__photo{width:100%;height:100%;object-fit:cover;transform:scale(2.2);transform-origin:48% 30%}.avatar-menu__photo--own{transform:none}.avatar-menu__button:hover,.avatar-menu__button[aria-expanded=true]{outline:.5px solid var(--border-md);outline-offset:2px}.avatar-menu__panel{position:absolute;top:calc(100% + 10px);right:0;z-index:40;width:260px;max-height:calc(100vh - 80px);overflow-y:auto;padding:14px 16px;background:var(--vellum);border:.5px solid var(--border-md);border-radius:10px;display:flex;flex-direction:column;gap:14px}.avatar-menu__who{font:400 17px EB Garamond,Georgia,serif;color:var(--ink)}.avatar-menu__group{display:flex;flex-direction:column;gap:2px}.avatar-menu__label{font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt);margin-bottom:4px}.avatar-menu__item{padding:5px 8px;margin:0 -8px;border:none;border-radius:6px;background:none;font:400 13px DM Sans,sans-serif;color:var(--stone);text-align:left;cursor:pointer;transition:background .15s}.avatar-menu__item:hover{background:var(--vellum-dk);color:var(--ink)}.avatar-menu__admin{border-top:.5px solid var(--border);padding-top:4px}.avatar-menu__logout{border-top:.5px solid var(--border);border-radius:0;padding-top:10px}@media(max-width:1000px){.app-header{grid-template-columns:auto minmax(0,1fr) auto;gap:16px;padding:10px 20px}.task-rail__extra,.app-header__link--wide{display:none}}@media(max-width:1200px){.task-rail__name{display:none}.task-rail__short{display:inline}}@media(max-width:600px){.app-header{grid-template-columns:1fr auto;grid-template-areas:"brand end" "rail rail";gap:8px 12px;padding:10px 16px 8px;padding-top:max(10px,env(safe-area-inset-top))}.app-header__brand{grid-area:brand}.app-header__end{grid-area:end;gap:14px}.task-rail{grid-area:rail;gap:4px}.app-header__name{font-size:17px}.avatar-menu__button{width:30px;height:30px;font-size:10px}.task-rail__seg{padding:6px 8px;gap:5px}.task-rail__row{flex-direction:column;align-items:flex-start;gap:1px;font-size:11px}.task-rail__name{display:none}.task-rail__short{display:inline}.task-rail__count{font-size:10px}.avatar-menu__panel{position:fixed;top:auto;left:12px;right:12px;width:auto;margin-top:10px}}.admin-panel__sec-label{font-size:9px;letter-spacing:1.2px;color:var(--stone-lt);font-family:DM Sans,sans-serif;margin-bottom:6px}.admin-panel__msg{font-size:10px;margin:0 0 6px;line-height:1.4}.admin-panel__msg--success{color:var(--verdigris)}.admin-panel__msg--error{color:var(--danger)}.admin-panel__admin-buttons{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.admin-panel__admin-btn{display:block;width:100%;padding:5px 10px;font-size:11px;font-family:DM Sans,sans-serif;color:var(--stone);background:none;border:.5px solid var(--border);border-radius:4px;cursor:pointer;text-align:left}.admin-panel__admin-btn:hover:not(:disabled){background:var(--vellum)}.admin-panel__admin-btn:disabled{opacity:.4;cursor:not-allowed}.admin-panel__admin-btn--danger{color:var(--danger)}.admin-panel__restore-panel{margin-top:6px;padding:6px 0;border-top:1px solid var(--stone-lt)}.admin-panel__restore-section{margin-bottom:8px}.admin-panel__restore-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--stone);margin-bottom:4px}.admin-panel__restore-item{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:3px}.admin-panel__restore-name{font-size:9px;color:var(--stone);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.admin-panel__restore-btn{flex-shrink:0;padding:2px 6px;font-size:9px}.admin-panel__regen-progress{display:flex;flex-direction:column;gap:3px;margin-bottom:6px}.admin-panel__regen-summary{font-size:10px;color:var(--stone-lt);letter-spacing:.06em}.admin-panel__regen-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--stone-lt)}.admin-panel__regen-icon{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--border-md);flex-shrink:0}.admin-panel__regen-item--running .admin-panel__regen-icon{border-color:transparent;border-top-color:var(--aureum);animation:regen-spin-ccw .8s linear infinite}.admin-panel__regen-item--done .admin-panel__regen-icon{border-color:var(--success);background:var(--success)}.admin-panel__regen-item--error .admin-panel__regen-icon{border-color:var(--danger)}.login-screen{min-height:100vh;background:var(--vellum);display:flex;flex-direction:column}.login-topbar{padding:20px 32px;border-bottom:.5px solid var(--border);background:var(--vellum-dk);display:flex;align-items:center;gap:12px}.login-body{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 32px}.login-step{display:flex;flex-direction:column;align-items:center;width:100%;max-width:360px}.login-greeting{font-size:49px;font-weight:400;font-family:EB Garamond,Georgia,serif;color:var(--ink);text-align:center;letter-spacing:-.4px;margin-bottom:6px}.login-sub{font-size:23px;font-family:DM Sans,sans-serif;color:var(--stone-lt);text-align:center;margin-bottom:40px}.pw-field-wrap{width:100%;position:relative;margin-bottom:12px}.pw-input{width:100%;padding:12px 44px 12px 16px;font-size:26px;font-family:DM Sans,sans-serif;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:6px;color:var(--ink);outline:none;letter-spacing:3px}.pw-input:focus{border-color:var(--accent)}.pw-input.error{border-color:var(--danger)}.pw-input::placeholder{letter-spacing:0;color:var(--stone-lt)}.pw-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--stone-lt);font-size:23px;font-family:DM Sans,sans-serif;padding:4px}.pw-toggle:hover{color:var(--stone)}.login-error{font-size:21px;font-family:DM Sans,sans-serif;color:var(--danger);margin-bottom:12px;align-self:flex-start}.login-submit{width:100%;padding:12px;font-size:24px;font-family:DM Sans,sans-serif;color:var(--vellum);background:var(--ink);border:none;border-radius:6px;cursor:pointer;letter-spacing:.3px}.login-submit:hover{opacity:.85}.login-back{font-size:16px;letter-spacing:1.4px;font-family:DM Sans,sans-serif;color:var(--stone-lt);cursor:pointer;margin-bottom:28px;align-self:flex-start;background:none;border:none;padding:0}.login-back:hover{color:var(--stone)}.welcome-chip{display:flex;align-items:center;gap:10px;margin-bottom:32px}.welcome-avatar{width:36px;height:36px;border-radius:50%;background:var(--avatar-bg);display:flex;align-items:center;justify-content:center;font-size:21px;color:var(--avatar-text);font-family:DM Sans,sans-serif;font-weight:500;flex-shrink:0}.welcome-name{font-size:28px;font-family:EB Garamond,Georgia,serif;color:var(--ink);font-weight:400}.welcome-label{font-size:19px;font-family:DM Sans,sans-serif;color:var(--stone-lt);margin-top:1px}.login-step-label{font-size:16px;letter-spacing:1.8px;color:var(--stone-lt);font-family:DM Sans,sans-serif;margin-bottom:16px;align-self:flex-start}.login-subject-list{width:100%;display:flex;flex-direction:column;gap:10px}.login-subject-card{width:100%;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:16px 20px;cursor:pointer;display:flex;align-items:center;gap:16px;font-family:DM Sans,sans-serif;text-align:left}.login-subject-card:hover{border-color:var(--accent)}.login-subject-icon{font-size:35px;width:32px;text-align:center;flex-shrink:0}.login-subject-name{font-size:24px;color:var(--ink);font-weight:500}.login-subject-arrow{margin-left:auto;color:var(--stone-lt);font-size:24px}.content-topbar{background:var(--vellum-dk);border-bottom:.5px solid var(--border);padding:18px 32px;display:flex;align-items:flex-start;justify-content:space-between}.content-topbar__title{font-size:38px;color:var(--ink);font-weight:400;font-family:EB Garamond,Georgia,serif}.content-topbar__sub{font-size:23px;font-family:DM Sans,sans-serif;color:var(--stone-lt);margin-top:3px}.content-area{padding:24px 32px;flex:1}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.catalog-card{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:22px 20px;cursor:pointer;display:flex;flex-direction:column;gap:16px;position:relative;overflow:hidden;text-align:left;font-family:DM Sans,sans-serif}.catalog-card:hover,.catalog-card--active{border-color:var(--accent)}.catalog-card--active:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}.catalog-card__top{display:flex;align-items:flex-start;justify-content:space-between}.catalog-card__icon{width:40px;height:40px;border-radius:6px;background:var(--vellum);display:flex;align-items:center;justify-content:center;font-size:32px;flex-shrink:0}.catalog-card__badge{font-size:16px;letter-spacing:1px;color:var(--avatar-text);background:var(--badge-bg);padding:3px 8px;border-radius:999px}.catalog-card__name{font-size:30px;font-family:EB Garamond,Georgia,serif;color:var(--ink);font-weight:400;letter-spacing:-.2px}.catalog-card__native{font-size:23px;color:var(--stone-lt);margin-top:2px}.catalog-card__stats{display:flex;gap:16px;padding-top:14px;border-top:.5px solid var(--border)}.catalog-card__stat-value{font-size:28px;font-family:EB Garamond,Georgia,serif;color:var(--ink);line-height:1}.catalog-card__stat-label{font-size:18px;color:var(--stone-lt);letter-spacing:.4px;margin-top:3px}.catalog-card__stat-divider{width:.5px;background:var(--border);align-self:stretch}.catalog-card__footer{display:flex;align-items:center}.catalog-card__continue{font-size:21px;color:var(--accent);cursor:pointer}.catalog-card__start{font-size:21px;color:var(--stone-lt);cursor:pointer}.catalog-card--empty{border-style:dashed;align-items:center;justify-content:center;min-height:160px;opacity:.5;cursor:default}.catalog-card__empty-label{font-size:21px;color:var(--stone-lt);text-align:center}.progress-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.progress-row__label{font-size:23px;font-family:DM Sans,sans-serif;color:var(--stone-lt);white-space:nowrap}.progress-row__bar{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.progress-row__fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.progress-row__count{font-size:23px;font-family:DM Sans,sans-serif;color:var(--stone);white-space:nowrap}.activities-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.activities-categories{display:flex;flex-direction:column;gap:22px}.activities-category{display:flex;flex-direction:column}.activities-category__label{font-size:18px;letter-spacing:1.4px;text-transform:uppercase;color:var(--stone-lt);font-family:DM Sans,sans-serif;padding-bottom:8px;margin-bottom:12px;border-bottom:.5px solid var(--border)}.activities-error{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.activities-error__title{font-weight:600;font-size:15px}.activities-error__message{font-size:13px;opacity:.75;max-width:360px}.activities-error__retry{margin-top:6px;padding:8px 18px;border-radius:6px;border:.5px solid var(--border);background:var(--vellum);font-size:13px;cursor:pointer}.activities-error__retry:hover{background:var(--border)}.activity-card{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;text-align:left;font-family:DM Sans,sans-serif}.activity-card:hover:not(.activity-card--done){border-color:var(--border-md)}.activity-card--done{opacity:.55}.activity-card--clickable:hover{border-color:var(--accent)}.activity-card__dot{width:8px;height:8px;border-radius:50%;background:var(--border-md);flex-shrink:0}.activity-card__dot--done{background:var(--success)}.activity-card__dot--in-progress{background:var(--aureum-dk)}.activity-card__info{flex:1;min-width:0}.activity-card__name{font-size:24px;color:var(--ink);font-weight:500}.activity-card__meta{font-size:21px;color:var(--stone-lt);margin-top:2px}.activity-card__regen{font-size:28px;color:var(--stone-lt);cursor:pointer;padding:2px 4px;border-radius:4px;flex-shrink:0;line-height:1}.activity-card__regen:hover{background:var(--vellum);color:var(--stone)}.activity-card__regen--spinning{animation:regen-spin-ccw .8s linear infinite;color:var(--amber-500, #f59e0b)}.activity-card__meta--regen-done{color:var(--green-600, #16a34a)}.perf-strip{margin-top:18px;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:14px 18px;display:flex;align-items:center;gap:24px}.perf-strip__stat{font-family:DM Sans,sans-serif}.perf-strip__value{font-size:38px;color:var(--ink);font-weight:400;font-family:EB Garamond,Georgia,serif;line-height:1}.perf-strip__label{font-size:19px;color:var(--stone-lt);letter-spacing:.5px;margin-top:3px}.perf-strip__divider{width:.5px;height:28px;background:var(--border)}.perf-strip__action{margin-left:auto;font-size:23px;font-family:DM Sans,sans-serif;color:var(--vellum);background:var(--ink);border:none;border-radius:6px;padding:8px 16px;cursor:pointer;white-space:nowrap}.perf-strip__action:hover{opacity:.85}.activity-topbar{background:var(--vellum-dk);border-bottom:.5px solid var(--border);padding:18px 32px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.activity-topbar__left{display:flex;align-items:flex-start;gap:4px;min-width:0}.activity-topbar__back{background:none;border:none;padding:4px 8px 0 0;font-family:inherit;font-size:24px;line-height:1.4;color:var(--stone);cursor:pointer}.activity-topbar__back:hover{color:var(--ink)}.activity-topbar__title{font-size:35px;color:var(--ink);font-weight:400;font-family:EB Garamond,Georgia,serif}.activity-topbar__meta{font-size:21px;font-family:DM Sans,sans-serif;color:var(--stone-lt);margin-top:3px}.activity-topbar__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.activity-topbar__timer{font-size:23px;font-family:DM Sans,sans-serif;color:var(--stone-lt);display:inline-block;min-width:3em;text-align:right}.activity-topbar__progress{font-size:19px;font-family:DM Sans,sans-serif;color:var(--stone);background:var(--vellum);border:.5px solid var(--border);border-radius:999px;padding:3px 10px}.activity-content{padding:24px 32px;flex:1;display:flex;flex-direction:column;gap:20px}.activity-card-section{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:20px 22px}.activity-card-label{font-size:18px;letter-spacing:1.4px;color:var(--stone-lt);font-family:DM Sans,sans-serif;margin-bottom:14px}.activity-card-label--section{text-transform:uppercase;font-weight:500;color:var(--stone);margin-top:2rem;margin-bottom:.75rem}.activity-nav-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:4px}.activity-nav-footer>:last-child{margin-left:auto}.activity-nav-footer__actions{display:flex;align-items:center;gap:10px}.btn-secondary{padding:8px 18px;font-size:23px;font-family:DM Sans,sans-serif;color:var(--stone);background:none;border:.5px solid var(--border-md);border-radius:6px;cursor:pointer}.btn-secondary:hover{background:var(--vellum-dk)}.btn-primary-new{padding:8px 20px;font-size:23px;font-family:DM Sans,sans-serif;color:var(--vellum);background:var(--ink);border:none;border-radius:6px;cursor:pointer}.btn-primary-new:hover{opacity:.85}.btn-secondary:disabled,.btn-primary-new:disabled{opacity:.4;cursor:not-allowed}.btn-secondary:disabled:hover{background:none}.btn-primary-new:disabled:hover{opacity:.4}.btn-secondary:focus-visible,.btn-primary-new:focus-visible{outline:2px solid var(--aureum);outline-offset:2px}.activity-notice{background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:1rem 1.5rem;margin-bottom:1.5rem}.activity-notice__label{font-size:18px;letter-spacing:1.4px;text-transform:uppercase;font-weight:500;color:var(--stone);font-family:DM Sans,sans-serif;margin-bottom:.4rem}.activity-notice__body{font-size:21px;color:var(--stone-lt);font-family:DM Sans,sans-serif;line-height:1.5;margin:0}.activity-error{font-size:21px;color:var(--danger);border-left:2px solid var(--danger);padding:6px 0 6px 14px;font-family:DM Sans,sans-serif;max-width:52ch;text-align:left}.activity-error__detail{display:block;margin-top:8px;font-size:16px;color:var(--stone-lt)}.activity-nav-footer__note{font-size:18px;color:var(--stone-lt);font-family:DM Sans,sans-serif;max-width:46ch;margin-right:16px}.choices-group{display:flex;flex-direction:column;gap:14px}.choices-row{display:flex;flex-direction:column;gap:6px}.choices-label{font-size:16px;letter-spacing:1.2px;color:var(--stone-lt);font-family:DM Sans,sans-serif}.choices{display:flex;gap:8px;flex-wrap:wrap}.choice-btn{padding:6px 14px;font-size:23px;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:6px;cursor:pointer}.choice-btn:hover{border-color:var(--accent);color:var(--avatar-text)}.choice-btn.selected{border:1.5px solid var(--aureum);background:var(--aureum);color:var(--vellum)}.passage-text{font-size:28px;font-family:EB Garamond,Georgia,serif;color:var(--ink);line-height:1.8;white-space:pre-line}.passage-blank{display:inline-block;border-bottom:1.5px solid var(--accent);min-width:28px;text-align:center;color:var(--accent);font-size:23px;font-family:DM Sans,sans-serif;padding:0 4px;vertical-align:baseline;margin:0 2px}.translation-prompt{font-size:42px;font-family:EB Garamond,Georgia,serif;color:var(--ink);line-height:1.5}.translation-area{width:100%;min-height:100px;padding:14px;font-size:24px;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--vellum);border:.5px solid var(--border);border-radius:6px;resize:vertical;outline:none}.translation-area:focus{border-color:var(--accent)}.nr-source{display:flex;flex-direction:column;gap:12px}.nr-source__row{display:flex;gap:10px;align-items:center}.nr-source__row--stack{flex-direction:column;align-items:stretch}.nr-source__row--end{justify-content:flex-end}.nr-source__input,.nr-source__textarea{flex:1;width:100%;padding:10px 14px;font-size:18px;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--vellum);border:.5px solid var(--border);border-radius:6px;outline:none}.nr-source__textarea{min-height:90px;resize:vertical}.nr-source__input:focus,.nr-source__textarea:focus{border-color:var(--accent)}.nr-source__btn{font-size:18px;white-space:nowrap;align-self:flex-end}.nr-source__error{margin:0;font-size:14px;color:var(--danger)}.nr-source__note{margin:0;font-size:13px;font-style:italic;color:var(--stone-lt)}.reading-article-title{font-size:38px;font-family:EB Garamond,Georgia,serif;color:var(--ink);font-weight:400;margin-bottom:6px}.reading-article-title.hoverable-passage{line-height:1.6}.reading-article-badge{display:inline-block;font-size:18px;font-family:DM Sans,sans-serif;color:var(--avatar-text);background:var(--badge-bg);border-radius:999px;padding:2px 10px;margin-bottom:16px}.reading-article-body{font-size:26px;font-family:EB Garamond,Georgia,serif;color:var(--ink);line-height:1.9}.reading-article-body p{margin-bottom:14px}.word-bank{display:flex;gap:8px;flex-wrap:wrap}.word-tile{padding:8px 14px;font-size:26px;font-family:EB Garamond,Georgia,serif;color:var(--ink);background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:6px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.word-tile:hover{border-color:var(--accent)}.word-tile.used{opacity:.35;cursor:default}.drop-zone{min-height:48px;border:1.5px dashed var(--border-md);border-radius:6px;padding:10px 14px;font-size:24px;font-family:DM Sans,sans-serif;color:var(--stone-lt);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.placed-tile{padding:6px 12px;font-size:26px;font-family:EB Garamond,Georgia,serif;color:var(--ink);background:var(--badge-bg);border:.5px solid var(--accent);border-radius:6px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.audio-player-wrap{background:var(--vellum);border-radius:6px;padding:14px 18px;display:flex;align-items:center;gap:14px}.audio-play-btn{width:34px;height:34px;border-radius:50%;background:var(--ink);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.audio-play-btn:disabled{opacity:.3;cursor:not-allowed}.audio-play-icon{width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid var(--vellum);margin-left:2px}.audio-scrubber{flex:1;display:flex;align-items:center;padding:9px 0;cursor:pointer;touch-action:none}.audio-scrubber:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.audio-track{flex:1;height:4px;background:var(--border-md);border-radius:2px;position:relative;transition:height .12s ease}.audio-scrubber:hover .audio-track,.audio-scrubber:focus-visible .audio-track,.audio-scrubber.is-scrubbing .audio-track{height:6px}.audio-progress-fill{height:100%;background:var(--accent);border-radius:2px}.audio-scrub-thumb{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%);transition:width .12s ease,height .12s ease;pointer-events:none}.audio-scrubber:hover .audio-scrub-thumb,.audio-scrubber:focus-visible .audio-scrub-thumb,.audio-scrubber.is-scrubbing .audio-scrub-thumb{width:15px;height:15px}.audio-time{font-size:21px;font-family:DM Sans,sans-serif;color:var(--stone-lt);white-space:nowrap}.audio-speed-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.audio-speed-btn{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border-md);background:transparent;color:var(--ink);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.audio-speed-btn:disabled{opacity:.3;cursor:default}.audio-speed-label{font-size:15px;font-family:DM Sans,sans-serif;font-weight:600;color:var(--ink);min-width:36px;text-align:center}.today{flex:1;display:flex;flex-direction:column;min-height:0}.today__column{flex:1;width:100%;max-width:728px;margin:0 auto;padding:44px 24px 32px;display:flex;flex-direction:column;gap:24px}.today__hello{text-align:center}.today__date{font-size:13px;color:var(--stone-lt)}.today__greeting{font:400 49px/1.1 EB Garamond,Georgia,serif;letter-spacing:-.4px;margin-top:6px;color:var(--ink)}.today__loading{text-align:center;font-size:13px;color:var(--stone-lt)}.today-resume{background:var(--vellum-dk);border:.5px solid var(--accent);border-radius:12px;padding:28px 32px;display:flex;flex-direction:column;gap:14px}.today-resume__label,.today-task__head,.today-done__label{font:500 10px DM Sans,sans-serif;letter-spacing:.16em;color:var(--stone-lt)}.today-resume__count{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px}.today-resume__big{font:400 49px/1 EB Garamond,Georgia,serif;color:var(--ink)}.today-resume__unit{font-size:15px;color:var(--stone)}.today-resume__meta{font-size:13px;color:var(--stone-lt)}.today-resume__cta{align-self:flex-start;margin-top:4px;padding:11px 24px;font:400 14px DM Sans,sans-serif;color:var(--vellum);background:var(--ink);border:none;border-radius:6px;cursor:pointer;transition:background .15s}.today-resume__cta:hover{background:var(--stone)}.today__others{display:grid;grid-template-columns:repeat(var(--others, 3),minmax(0,1fr));gap:10px}.today__others--four{grid-template-columns:repeat(2,minmax(0,1fr))}.today-task{position:relative;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;text-align:left;font-family:DM Sans,sans-serif;color:var(--ink);cursor:pointer;transition:border-color .15s}.today-task:hover{border-color:var(--accent)}.today-task__head{display:flex;justify-content:space-between;gap:8px}.today-task--done .today-task__head span:last-child{color:var(--verdigris)}.today-task__title{font:400 18px/1.4 EB Garamond,Georgia,serif;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.today-task__meta{font-size:12px;color:var(--stone-lt)}.today-task__regen{position:absolute;right:12px;bottom:10px;font-size:14px;color:var(--stone-lt);cursor:pointer}.today-task__regen:hover{color:var(--ink)}.today-task__regen--spinning{animation:today-spin 1s linear infinite}@keyframes today-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.today-task__regen--spinning{animation:none}}.today__caption{text-align:center;font-size:12px;color:var(--stone-lt)}.today-done{border:.5px solid var(--border-md);border-radius:12px;padding:24px 32px;display:flex;flex-direction:column;gap:10px;text-align:center}.today-done__line{font:400 20px/1.4 EB Garamond,Georgia,serif;color:var(--stone)}.today__footer{padding:16px 40px;border-top:.5px solid var(--border);display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--stone-lt)}.today__footer-link{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.today__footer-link:hover{color:var(--ink)}.today__footer-link--legacy{color:var(--stone)}@media(max-width:600px){.today__column{padding:24px 16px;gap:18px}.today__greeting{font-size:38px}.today-resume{padding:20px}.today-resume__big{font-size:38px}.today-resume__cta{align-self:stretch;text-align:center}.today__others,.today__others--four{grid-template-columns:1fr}.today__footer{padding:14px 16px;padding-bottom:max(14px,env(safe-area-inset-bottom))}}.today-profile{background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:18px 22px 20px;display:flex;flex-direction:column;gap:14px}.today-profile__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.today-profile__label{font:500 10px DM Sans,sans-serif;letter-spacing:.16em;color:var(--stone)}.today-profile__open{background:none;border:none;padding:0;min-height:32px;font:500 13px DM Sans,sans-serif;color:var(--verdigris);cursor:pointer}.today-profile__open:hover{color:var(--ink)}.today-profile__alarm{padding:10px 12px;border:1px solid var(--danger);border-radius:8px;background:#c0392b14;color:#a0301f;font-size:13px;font-weight:500}.today-profile__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.today-profile__stat{display:flex;flex-direction:column;gap:2px;min-width:0}.today-profile__value{display:flex;align-items:baseline;gap:4px}.today-profile__num{font:400 28px/1.1 EB Garamond,Georgia,serif;color:var(--ink)}.today-profile__unit,.today-profile__name,.today-profile__delta,.today-profile__empty{font-size:12px;color:var(--stone)}.today-profile__delta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.today-profile__verdict{font:600 9px DM Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:1px 5px;border-radius:4px;background:#6355401a}.today-profile__verdict--good{background:#2a4a3e1f;color:var(--verdigris)}.today-profile__verdict--bad{background:#c0392b1a;color:#a0301f}@media(max-width:600px){.today-profile{padding:16px}.today-profile__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}}.legacy{width:100%;max-width:828px;margin:0 auto;padding:44px 24px 40px;display:flex;flex-direction:column;gap:24px}.legacy__label{font:500 10px DM Sans,sans-serif;letter-spacing:.16em;color:var(--stone-lt)}.legacy__title{font:400 38px/1.15 EB Garamond,Georgia,serif;letter-spacing:-.3px;margin-top:6px;color:var(--ink)}.legacy__sub{margin-top:6px;font-size:13px;color:var(--stone-lt)}.legacy__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.legacy-card{position:relative;display:flex;flex-direction:column;gap:4px;padding:14px 16px;text-align:left;font-family:DM Sans,sans-serif;background:transparent;border:.5px solid var(--border);border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s}.legacy-card:hover{border-color:var(--accent);background:var(--vellum-dk)}.legacy-card__name{font:400 17px/1.3 EB Garamond,Georgia,serif;color:var(--stone);padding-right:18px}.legacy-card__meta{font-size:11px;color:var(--stone-lt)}.legacy-card__regen{position:absolute;top:12px;right:12px;font-size:14px;color:var(--stone-lt)}.legacy-card__regen:hover{color:var(--ink)}.legacy-card__regen--spinning{animation:legacy-spin 1s linear infinite}@keyframes legacy-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.legacy-card__regen--spinning{animation:none}}@media(max-width:600px){.legacy{padding:24px 16px 32px}.legacy__title{font-size:30px}.legacy__grid{grid-template-columns:1fr}}.section-label{font-size:18px;letter-spacing:.16em;text-transform:uppercase;color:var(--stone-lt);font-weight:500}.btn{font-family:DM Sans,sans-serif;font-size:21px;font-weight:500;letter-spacing:.04em;padding:7px 14px;border-radius:5px;border:.5px solid var(--border-md);background:transparent;color:var(--stone);cursor:pointer;transition:background .15s,color .15s}.btn:hover{background:var(--vellum-dk)}.btn:focus,.btn:focus-visible{outline:2px solid var(--aureum);outline-offset:2px}.btn:disabled{opacity:.4;cursor:not-allowed}.error-text{font-size:21px;color:var(--stone-lt)}.reading-question-stem{font-family:DM Sans,sans-serif;font-size:24px;color:var(--ink);margin:0 0 .25rem;line-height:1.5}.reading-results-score{font-family:EB Garamond,Georgia,serif;font-size:4.38rem;color:var(--ink);margin:1.5rem 0 2rem}.reading-results-breakdown{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:2rem}.reading-results-section{display:flex;flex-direction:column;gap:.4rem}.reading-results-section-label{margin-bottom:0}.reading-results-passage-toggle{display:flex;align-items:baseline;justify-content:space-between;width:100%;background:none;border:none;cursor:pointer;padding:0;margin-bottom:.3rem}.reading-results-passage-hint{font-family:DM Sans,sans-serif;font-size:19px;color:var(--stone-lt);font-weight:400;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.reading-results-passage-card{background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:8px;padding:.8rem 1rem;margin-bottom:.3rem}.reading-results-passage-text{font-family:EB Garamond,Georgia,serif;font-size:26px;color:var(--ink);white-space:pre-line;line-height:1.7;letter-spacing:.03em;margin:0}.reading-result-row{display:flex;align-items:flex-start;gap:.6rem;font-family:DM Sans,sans-serif;font-size:23px;color:var(--stone);padding:8px 10px;border-radius:6px;border:.5px solid var(--border-md)}.reading-result-row--correct{background:color-mix(in srgb,var(--verdigris) 8%,transparent)}.reading-result-row--wrong{background:color-mix(in srgb,#e05c5c 8%,transparent)}.reading-result-indicator{font-weight:700;font-size:24px;flex-shrink:0;padding-top:1px}.reading-result-row--correct .reading-result-indicator{color:var(--verdigris)}.reading-result-row--wrong .reading-result-indicator{color:#e05c5c}.reading-result-body{display:flex;flex-direction:column;gap:3px;min-width:0;-webkit-user-select:text;user-select:text;cursor:text}.reading-result-header{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem}.reading-result-qnum{font-weight:600;color:var(--ink);flex-shrink:0}.reading-result-stem{color:var(--stone);font-style:italic;flex-basis:100%}.reading-result-answer--yours{color:#c04040}.reading-result-answer--correct{color:var(--verdigris);font-weight:500}.reading-result-note{margin-top:2px;color:var(--stone);font-style:italic}.reading-result-row--expandable{flex-direction:column;padding:0;cursor:pointer}.reading-result-toggle{display:flex;align-items:center;gap:.6rem;width:100%;padding:8px 10px;background:none;border:none;cursor:pointer;font-family:DM Sans,sans-serif;font-size:23px;color:var(--stone);text-align:left}.reading-result-chevron{font-size:28px;color:var(--stone-lt);transition:transform .15s ease;flex-shrink:0;margin-left:auto}.reading-result-chevron--open{transform:rotate(90deg)}.reading-result-expanded{padding:0 10px 10px 32px;display:flex;flex-direction:column;gap:8px}.reading-result-expanded-stem{font-style:italic;color:var(--stone);margin:0;font-size:23px;line-height:1.5}.reading-result-options-list{display:flex;flex-direction:column;gap:4px}.reading-result-option{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:4px;font-size:23px;color:var(--stone)}.reading-result-option--correct{background:color-mix(in srgb,var(--verdigris) 12%,transparent);color:var(--ink);font-weight:500}.reading-result-option--wrong{background:color-mix(in srgb,#e05c5c 10%,transparent);color:#c04040}.reading-result-option-label{font-weight:600;flex-shrink:0;width:1.2em}.reading-result-option-text{flex:1}.reading-result-option-text.hoverable-passage{font-family:inherit;line-height:inherit}.reading-result-option-tag{font-size:18px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--verdigris);flex-shrink:0}.reading-result-option-tag--yours{color:#c04040}.reading-result-expanded-comparison{display:flex;flex-direction:column;gap:6px}.reading-result-expanded-label{font-size:18px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-lt);font-weight:500}.reading-result-expanded-yours{font-size:23px;color:#c04040;margin:2px 0 0}.reading-result-expanded-correct{font-size:23px;color:var(--verdigris);font-weight:500;margin:2px 0 0}.reading-result-feedback-box{margin-top:4px;padding:.6rem .8rem;background:var(--vellum);border-radius:8px;border:.5px solid var(--border)}.reading-result-feedback-text{font-size:23px;color:var(--stone);margin:0;line-height:1.5}@keyframes regen-spin{to{transform:rotate(360deg)}}@keyframes regen-spin-ccw{to{transform:rotate(-360deg)}}.submit-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:4rem 0}.submit-progress__spinner{width:28px;height:28px;border:2.5px solid rgba(0,0,0,.08);border-top-color:var(--aureum);border-right-color:var(--aureum);border-radius:50%;animation:regen-spin .8s linear infinite}.submit-progress__step{font-family:DM Sans,sans-serif;font-size:21px;font-weight:400;letter-spacing:.04em;color:var(--stone-lt)}.submit-status{margin:.5rem auto 0;max-width:480px;padding:.6rem .9rem;border-radius:6px;font-family:DM Sans,sans-serif;font-size:14px;text-align:center}.submit-status--syncing{background:#0000000a;color:var(--stone-lt)}.submit-status--failed{background:#b4463c14;color:#b4463c}.dashboard-container{width:100%;max-width:860px;margin:0 auto;padding:2rem 3rem 4rem;box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem}.dashboard-filter-bar{display:flex;gap:8px}.dashboard-filter-btn--active{background:var(--ink);color:var(--vellum);border-color:var(--ink)}.dashboard-filter-btn--active:hover{background:var(--stone);border-color:var(--stone)}.dashboard-empty{font-size:13px;color:var(--stone-lt);text-align:center;padding:2rem 0}.dashboard-summary{display:flex;flex-direction:column;gap:.75rem}.dashboard-summary-grid{display:flex;flex-wrap:wrap;gap:12px}.dashboard-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 20px;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:8px;min-width:100px}.dashboard-stat-value{font-family:EB Garamond,Georgia,serif;font-size:1.5rem;font-weight:400;color:var(--ink)}.dashboard-stat-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-lt);font-weight:500;text-align:center}.dashboard-chart-section{display:flex;flex-direction:column;gap:.75rem;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:1.25rem 1.5rem}.decoding-diff-line{font-family:EB Garamond,Georgia,serif;font-size:22px;line-height:1.5;margin:2px 0 0;word-break:break-word}.decoding-diff-match{color:var(--ink)}.decoding-diff-miss{color:#c04040;background:color-mix(in srgb,#e05c5c 14%,transparent);border-radius:3px;padding:0 2px}.decoding-diff-extra{color:#b07300;background:color-mix(in srgb,#d99400 14%,transparent);border-radius:3px;padding:0 2px;text-decoration:line-through;text-decoration-thickness:1.5px}.decoding-tone-chip{display:inline-flex;align-items:center;gap:2px;font-size:12px;letter-spacing:.04em;font-weight:600;color:#c04040;background:color-mix(in srgb,#e05c5c 10%,transparent);border-radius:4px;padding:1px 6px;margin-left:6px;font-family:DM Sans,sans-serif}.decoding-category-chip{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--stone-lt);font-family:DM Sans,sans-serif;margin-left:6px}.decoding-replay-chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;font-family:DM Sans,sans-serif;border-radius:4px;padding:1px 6px;margin-left:6px;letter-spacing:.02em}.decoding-replay-chip--clean{color:var(--verdigris);background:color-mix(in srgb,var(--verdigris) 10%,transparent)}.decoding-replay-chip--ok{color:var(--stone);background:color-mix(in srgb,var(--stone) 10%,transparent)}.decoding-replay-chip--over{color:#b07300;background:color-mix(in srgb,#d99400 14%,transparent)}.dict-lookup{margin-top:1.5rem;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:1.25rem 1.5rem}.dict-lookup .section-label{display:block;margin-bottom:10px}.dict-lookup__input{width:100%;font-family:EB Garamond,Georgia,serif;font-size:1.75rem;padding:6px 10px;border:.5px solid var(--border-md);border-radius:6px;background:var(--vellum);color:var(--ink);outline:none;box-sizing:border-box}.dict-lookup__empty{font-size:13px;color:var(--stone-lt);margin:10px 0 0}.dict-lookup__results{margin-top:10px;display:flex;flex-direction:column;gap:8px}.dict-lookup__entry{padding:8px 10px;background:var(--vellum);border:.5px solid var(--border);border-radius:8px}.dict-lookup__headword{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.dict-lookup__simplified{font-family:EB Garamond,Georgia,serif;font-size:1.5rem;color:var(--ink);letter-spacing:.05em}.dict-lookup__traditional{font-family:EB Garamond,Georgia,serif;font-size:1.1rem;color:var(--stone-lt)}.dict-lookup__pinyin{font-family:DM Sans,sans-serif;font-size:14px;color:var(--verdigris);font-weight:500}.dict-lookup__defs{font-family:DM Sans,sans-serif;font-size:13px;color:var(--stone);margin:4px 0 0;line-height:1.5}.add-deck-panel{margin-top:1.5rem;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:10px}.add-deck-panel--collapsed{background:none;border:none;padding:0;gap:8px}.add-deck-panel__toggle{align-self:flex-start;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;color:var(--stone);background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:6px;padding:6px 14px;cursor:pointer;transition:background .15s}.add-deck-panel__toggle:hover{background:var(--vellum)}.add-deck-panel__select{font-family:DM Sans,sans-serif;font-size:14px;padding:6px 10px;border:.5px solid var(--border-md);border-radius:6px;background:var(--vellum);color:var(--ink);outline:none}.add-deck-panel__textarea{width:100%;font-family:EB Garamond,Georgia,serif;font-size:1.5rem;padding:8px 10px;border:.5px solid var(--border-md);border-radius:6px;background:var(--vellum);color:var(--ink);outline:none;resize:vertical;min-height:80px;box-sizing:border-box}.add-deck-panel__actions{display:flex;align-items:center;gap:12px}.add-deck-panel__actions .btn-primary-new{font-size:14px;padding:6px 18px}.add-deck-panel__cancel{font-family:DM Sans,sans-serif;font-size:13px;color:var(--stone-lt);background:none;border:none;cursor:pointer;padding:4px 8px}.add-deck-panel__cancel:hover{color:var(--stone)}.add-deck-panel__cards{display:flex;flex-direction:column;gap:8px}.add-deck-panel__card{background:var(--vellum);border:.5px solid var(--border);border-radius:8px;padding:10px 12px}.add-deck-panel__card-front{display:block;font-family:EB Garamond,Georgia,serif;font-size:1.3rem;color:var(--ink)}.add-deck-panel__card-back{display:block;font-family:DM Sans,sans-serif;font-size:13px;color:var(--stone);margin-top:4px;line-height:1.5}.add-deck-panel__edit-btn{font-family:DM Sans,sans-serif;font-size:12px;color:var(--stone-lt);background:none;border:none;cursor:pointer;padding:2px 0;margin-top:6px}.add-deck-panel__edit-btn:hover{color:var(--stone)}.add-deck-panel__edit-input{width:100%;font-family:EB Garamond,Georgia,serif;font-size:1.1rem;padding:4px 8px;border:.5px solid var(--border-md);border-radius:4px;background:var(--vellum);color:var(--ink);outline:none;box-sizing:border-box;margin-bottom:6px}.add-deck-panel__edit-actions{display:flex;align-items:center;gap:8px}.add-deck-panel__save-btn{font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--vellum);background:var(--ink);border:none;border-radius:4px;padding:4px 12px;cursor:pointer}.add-deck-panel__save-btn:disabled{opacity:.4;cursor:default}.add-deck-panel__msg{font-size:13px;margin:0}.add-deck-panel__msg--error{white-space:pre-line;color:var(--danger)}.fc-page{flex:1;display:flex;flex-direction:column;min-height:0}.fc-strip{display:flex;align-items:center;gap:8px;padding:16px 32px;border-bottom:.5px solid var(--border);font-size:12px}.fc-strip__label{font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt);margin-right:6px;flex-shrink:0}.fc-strip__pills{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.fc-pill{font:400 12px DM Sans,sans-serif;padding:4px 12px;border-radius:999px;border:.5px solid var(--border-md);background:transparent;color:var(--stone);cursor:pointer;white-space:nowrap;transition:background .15s}.fc-pill:hover{background:var(--vellum-dk)}.fc-pill--cleared{border-color:var(--border);color:var(--stone-lt)}.fc-pill--current,.fc-pill--current:hover{border:1.5px solid var(--aureum);background:var(--aureum);color:var(--vellum);padding:3px 11px}.fc-strip__session{margin-left:auto;color:var(--stone-lt);white-space:nowrap}.fc-stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px 40px}.fc-review{width:100%;max-width:560px;display:flex;flex-direction:column;gap:10px}.fc-review__queues{display:flex;justify-content:center;gap:6px;font-size:12px;color:var(--stone-lt)}.fc-review__queues span+span:before{content:"·";margin-right:6px}.fc-card{width:100%;max-width:560px;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;overflow:hidden}.fc-card__head{padding:32px 32px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.fc-card__meta{font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt)}.fc-card__front{font-family:EB Garamond,Georgia,serif;font-weight:400;color:var(--ink);margin-top:8px;overflow-wrap:anywhere}.fc-card__front--hero{font-size:96px;line-height:1.1}.fc-card__front--word{font-size:49px;line-height:1.2}.fc-card__front--phrase{font-size:30px;line-height:1.4}.fc-card__front--sentence{font-size:22px;line-height:1.6}.fc-card__front b{font-weight:600}.fc-card__front.hoverable-passage,.fc-card__back.hoverable-passage{font-family:EB Garamond,Georgia,serif;line-height:inherit}.fc-card__body{background:var(--vellum);border-top:.5px solid var(--border);padding:20px 32px 24px;display:flex;flex-direction:column;gap:18px}.fc-card__back{text-align:center;color:var(--ink)}.fc-card__back.hoverable-passage{line-height:1.6}.fc-card__gloss{font:italic 400 18px/1.6 EB Garamond,Georgia,serif;margin:0}.fc-card__note{font:400 12px/1.5 DM Sans,sans-serif;color:var(--stone-lt);margin:8px 0 0}.fc-card__back.fc-card__gloss i{display:block;font:400 12px/1.5 DM Sans,sans-serif;color:var(--stone-lt);margin-top:8px}.fc-lapses{font:400 11px/1.5 DM Sans,sans-serif;color:var(--stone);border-top:.5px dashed var(--border-md);padding-top:12px;display:flex;flex-direction:column;gap:10px;text-align:left}.fc-lapses__head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:2px 12px;font-size:12px}.fc-lapses__head>div:first-child{font-size:13px}.fc-lapses__count{font-weight:600;color:var(--ink)}.fc-lapses__count--struggling{color:#a0301f}.fc-lapses__track{position:relative;height:22px}.fc-lapses__rail{position:absolute;left:0;right:0;top:10px;height:2px;border-radius:1px;background:#ddd5c7}.fc-lapses__gap{position:absolute;top:5px;height:12px;border-radius:2px;background:repeating-linear-gradient(135deg,rgba(99,85,64,.28) 0 2px,transparent 2px 5px)}.fc-lapses__review,.fc-lapses__reformat,.fc-lapses__lapse{position:absolute}.fc-lapses__review{top:6px;width:2px;height:10px;margin-left:-1px;background:var(--stone-lt)}.fc-lapses__review--again{background:var(--danger)}.fc-lapses__review--hard{background:#e07b24}.fc-lapses__review--good{background:#d9ae1f}.fc-lapses__review--easy{background:#4e9a5b}.fc-lapses__reformat{top:4px;width:14px;height:14px;margin-left:-7px;box-sizing:border-box;border-radius:50%;border:2px solid var(--ink);background:var(--vellum-dk)}.fc-lapses__lapse{top:5px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--danger);box-shadow:0 0 0 2px var(--vellum-dk)}.fc-lapses__today{position:absolute;right:-1px;top:4px;width:2px;height:14px;background:var(--stone)}.fc-lapses__axis{position:relative;height:14px;margin-top:-6px;color:var(--stone)}.fc-lapses__axis>span{position:absolute;left:0;white-space:nowrap}.fc-lapses__axis>.fc-lapses__axis-end{left:auto;right:0}.fc-lapses__axis>.fc-lapses__gap-label{transform:translate(-50%);font-style:italic}.fc-lapses__note{font-size:12px}.fc-lapses__note--undated{font-style:italic;color:var(--stone-lt)}.fc-card__big{font:400 49px/1.1 EB Garamond,Georgia,serif;color:var(--ink);margin-top:8px}.fc-card__message{margin:0;font-size:15px;line-height:1.5;color:var(--stone);max-width:44ch}.fc-grades{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.fc-grade{font:400 13px DM Sans,sans-serif;padding:10px 12px;border-radius:6px;border:.5px solid var(--border-md);background:transparent;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;transition:background .15s}.fc-grade:hover:not(:disabled){background:var(--vellum-dk)}.fc-grade:disabled{opacity:.5;cursor:default}.fc-grade__sub{font-size:11px;color:var(--stone-lt)}.fc-grade--primary{border-color:var(--ink);background:var(--ink);color:var(--vellum)}.fc-grade--primary:hover:not(:disabled){background:var(--stone);border-color:var(--stone)}.fc-grade--primary .fc-grade__sub{color:inherit;opacity:.7}.fc-grade--wide{width:100%}.fc-target__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fc-hint{font-size:12px;color:var(--stone-lt);text-align:center}.fc-manage-toggle{font:400 13px DM Sans,sans-serif;background:none;border:none;padding:4px 0;color:var(--stone);cursor:pointer}.fc-manage-toggle:hover{color:var(--ink)}.fc-review__listen{width:100%;display:flex;flex-direction:column;gap:16px;align-items:stretch;margin-top:8px}.fc-review__listen--reveal{margin-bottom:12px}.fc-review__listen-hint{font-size:13px;color:var(--stone-lt);text-align:center}.fc-review__listen-status{font-size:14px;color:var(--stone-lt);text-align:center;padding:16px 0}.passage__word.fc-review__target{font-weight:700}.fc-audio-tools{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:4px}.fc-audio-tools__row{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}.fc-audio-tools__link{background:none;border:none;padding:0;font:inherit;font-size:13px;color:var(--stone-lt);text-decoration:underline;cursor:pointer}.fc-audio-tools__link:hover{color:var(--ink)}.fc-audio-tools__form{display:flex;flex-direction:column;gap:8px;align-items:stretch;width:100%}.fc-audio-tools__hint{font-size:13px;color:var(--stone-lt);margin:0;line-height:1.5}.fc-audio-tools__form-buttons{display:flex;gap:8px}.fc-audio-tools__confirm{font-size:13px;color:var(--verdigris);text-align:center}.fc-review__tools{margin-top:14px;padding-top:20px;border-top:.5px solid var(--border);display:flex;flex-direction:column;gap:20px}.fc-reformat{margin-top:6px;display:flex;justify-content:center}.fc-card-actions{display:flex;gap:8px}.fc-reformat__form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;width:100%}.fc-reformat__input{flex:1;min-width:200px;padding:8px 12px;border:.5px solid var(--border-md);border-radius:6px;font-size:14px;font-family:DM Sans,sans-serif;background:var(--vellum);color:var(--ink)}.fc-reformat__input:focus,.fc-edit__textarea:focus,.fc-generate-form__textarea:focus,.fc-generate-form__input:focus,.fc-add-form__input:focus,.fc-edit-input:focus,.fc-search:focus{outline:none;border-color:var(--accent)}.fc-reformat__error{white-space:pre-line;width:100%;color:var(--danger);font-size:13px;margin-top:4px}.fc-edit__form{display:flex;flex-direction:column;gap:8px;width:100%}.fc-edit__label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:500;color:var(--stone)}.fc-edit__textarea{padding:8px 12px;border:.5px solid var(--border-md);border-radius:6px;font-size:14px;font-family:DM Sans,sans-serif;background:var(--vellum);color:var(--ink);resize:vertical}.fc-edit__buttons{display:flex;gap:8px}.fc-btn{font-family:DM Sans,sans-serif;font-size:13px;font-weight:400;padding:8px 18px;border-radius:6px;border:.5px solid transparent;cursor:pointer;transition:background .15s}.fc-btn:disabled{opacity:.5;cursor:default}.fc-btn--good,.fc-btn--start{background:var(--ink);color:var(--vellum)}.fc-btn--good:hover:not(:disabled),.fc-btn--start:hover:not(:disabled){background:var(--stone)}.fc-btn--reformat,.fc-btn--cancel,.fc-btn--quiet{background:transparent;color:var(--stone);border-color:var(--border-md)}.fc-btn--reformat{padding:6px 16px}.fc-btn--reformat:hover:not(:disabled),.fc-btn--cancel:hover:not(:disabled),.fc-btn--quiet:hover:not(:disabled){background:var(--vellum-dk);color:var(--ink)}.fc-btn--sm{padding:4px 10px;font-size:12px}.fc-manage{width:100%;max-width:960px;margin:0 auto;padding:8px 32px 48px;display:flex;flex-direction:column;gap:12px}.fc-manage__tabs{display:flex;gap:18px;border-bottom:.5px solid var(--border)}.fc-manage__tab{font:400 13px DM Sans,sans-serif;background:none;border:none;border-bottom:1.5px solid transparent;padding:8px 0;margin-bottom:-.5px;color:var(--stone);cursor:pointer}.fc-manage__tab--active{color:var(--ink);border-bottom-color:var(--accent)}.fc-browse-header{display:flex;align-items:center;gap:12px}.fc-browse-header__add{display:flex;gap:8px;margin-left:auto}.fc-filters{display:flex;gap:4px}.fc-filter-btn{font:400 12px DM Sans,sans-serif;padding:4px 12px;border:.5px solid var(--border-md);border-radius:999px;background:transparent;color:var(--stone);cursor:pointer}.fc-filter-btn:hover{background:var(--vellum-dk)}.fc-filter-btn--active,.fc-filter-btn--active:hover{background:var(--ink);color:var(--vellum);border-color:var(--ink)}.fc-search{font:400 13px DM Sans,sans-serif;padding:6px 12px;border:.5px solid var(--border-md);border-radius:6px;background:var(--vellum);color:var(--ink);width:220px}.fc-search::placeholder{color:var(--stone-lt)}.fc-type{font-size:11px;font-weight:500;padding:1px 8px;border-radius:999px;white-space:nowrap;background:var(--badge-bg)}.fc-type--new{color:var(--accent)}.fc-type--learning{color:var(--aureum-dk)}.fc-type--review{color:var(--verdigris)}.fc-table-wrap{overflow-x:auto;border:.5px solid var(--border-md);border-radius:10px;background:var(--vellum)}.fc-table{width:100%;border-collapse:collapse;font-size:13px}.fc-table th{text-align:left;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-lt);padding:10px 14px;border-bottom:.5px solid var(--border);font-weight:500}.fc-table td{padding:10px 14px;border-bottom:.5px solid var(--border);vertical-align:top}.fc-table tbody tr:last-child td{border-bottom:none}.fc-table tbody tr:hover{background:var(--vellum-dk)}.fc-table__front{font-family:EB Garamond,Georgia,serif;font-size:17px;max-width:280px}.fc-table__back{max-width:320px;color:var(--stone)}.fc-table__empty{text-align:center;color:var(--stone-lt);padding:32px 14px}.fc-table__row--clickable{cursor:pointer}.fc-table__editing td{background:var(--vellum-dk)}.fc-pagination{display:flex;align-items:center;justify-content:center;gap:12px;font-size:13px;color:var(--stone)}.fc-pagination button{font:400 12px DM Sans,sans-serif;padding:4px 10px;border:.5px solid var(--border-md);border-radius:6px;background:transparent;color:var(--stone);cursor:pointer}.fc-pagination button:disabled{opacity:.4;cursor:default}.fc-add-form{display:flex;gap:8px;align-items:center}.fc-add-form__input{flex:1;padding:8px 12px;border:.5px solid var(--border-md);border-radius:6px;font-size:14px;font-family:inherit;background:var(--vellum);color:var(--ink)}.fc-edit-input{width:100%;padding:6px 8px;border:.5px solid var(--border-md);border-radius:6px;font-size:13px;font-family:inherit;background:var(--vellum);color:var(--ink)}.fc-edit-actions{white-space:nowrap}.fc-edit-actions .fc-btn{margin-right:4px}.fc-generate-form{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:8px}.fc-generate-form__textarea,.fc-generate-form__input{width:100%;padding:8px 12px;border:.5px solid var(--border-md);border-radius:6px;font-size:14px;font-family:DM Sans,sans-serif;background:var(--vellum);color:var(--ink)}.fc-generate-form__textarea{resize:vertical}.fc-generate-success{background:var(--vellum-dk);border:.5px solid var(--verdigris);color:var(--verdigris);padding:8px 12px;border-radius:6px;font-size:13px;text-align:center}.fc-global-search{display:flex;gap:8px;align-items:center}.fc-search--wide{flex:1}.fc-global-search__spinner,.fc-global-search__count{font-size:13px;color:var(--stone-lt)}.fc-summary{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 36px;margin-top:8px}.fc-summary__stat{text-align:center}.fc-summary__value{font:400 38px/1.1 EB Garamond,Georgia,serif;color:var(--ink)}.fc-summary__label{font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt);margin-top:4px}.fc-load-error{display:flex;align-items:center;flex-wrap:wrap;gap:8px;width:100%;max-width:560px;padding:12px 16px;border:.5px solid var(--danger);border-radius:6px;color:var(--ink);font-size:13px}.fc-load-error strong{color:var(--danger)}.fc-load-error__retry{margin-left:auto;padding:4px 12px;border:.5px solid var(--danger);border-radius:6px;background:transparent;color:var(--danger);font-size:12px;cursor:pointer}@media(max-width:600px){.fc-strip{flex-wrap:wrap;padding:12px 16px;gap:8px}.fc-strip__pills{flex-wrap:nowrap;overflow-x:auto;flex:1 1 0;scrollbar-width:none}.fc-strip__pills::-webkit-scrollbar{display:none}.fc-strip__session{flex-basis:100%;margin-left:0;white-space:normal}.fc-stage{justify-content:flex-start;padding:16px 16px 24px}.fc-card__head{padding:24px 20px 20px}.fc-card__body{padding:16px 16px 20px;gap:14px}.fc-card__front--hero{font-size:72px}.fc-card__front--word{font-size:38px}.fc-card__front--phrase{font-size:24px}.fc-card__front--sentence{font-size:20px}.fc-grades{gap:6px}.fc-grade{padding:12px 4px}.fc-hint__keys{display:none}.fc-manage{padding:8px 16px 32px}.fc-browse-header{flex-wrap:wrap;gap:8px}.fc-browse-header__add{margin-left:0}.fc-filters{flex-wrap:wrap}.fc-search{width:100%}}.cp-page{min-height:100%}.cp-main{max-width:760px;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;gap:20px}.cp-main--review{max-width:820px;gap:16px}.cp-progress-row{display:flex;align-items:center;gap:12px}.cp-progress-row__label,.cp-progress-row__count{font-size:13px;color:var(--stone-lt);white-space:nowrap}.cp-progress-row__track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.cp-progress-row__fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.cp-question-card{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:26px 26px 24px}.cp-question-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cp-question-card__label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-lt)}.cp-source-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--stone)}.cp-source-tag__dot{width:5px;height:5px;border-radius:50%;background:var(--aureum)}.cp-sentence{font-family:EB Garamond,serif;font-size:27px;line-height:1.7;color:var(--ink);margin-bottom:22px}.cp-blank{display:inline-block;min-width:64px;text-align:center;padding:0 8px;margin:0 3px;border-bottom:1.5px solid var(--border-md);color:var(--stone-lt);font-family:EB Garamond,serif}.cp-blank--filled{border-bottom-color:var(--aureum);color:var(--aureum-dk)}.cp-options{display:flex;flex-direction:column;gap:9px}.cp-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:13px 16px;border-radius:8px;cursor:pointer;background:var(--vellum-dk);border:1px solid var(--border-md);transition:border-color .12s,background .12s}.cp-option--selected{border:1.5px solid var(--aureum);background:#c4a96b1f}.cp-option__word{font-family:EB Garamond,serif;font-size:22px;color:var(--ink)}.cp-option__sub{font-size:12px;color:var(--stone-lt)}.cp-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.cp-footer--review{padding-top:4px}.cp-footer__note{font-size:12px;color:var(--stone-lt);max-width:46ch}.cp-footer__actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.cp-error{font-size:13px;color:var(--danger);border-left:2px solid var(--danger);padding:6px 0 6px 14px}.cp-note{font-size:13px;color:var(--stone-lt)}.cp-score-card{display:flex;align-items:center;gap:26px;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:18px 22px}.cp-score-card__score{font-family:EB Garamond,serif;font-size:34px;line-height:1.1;color:var(--ink)}.cp-score-card__label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-lt)}.cp-score-card__divider{width:.5px;align-self:stretch;background:var(--border)}.cp-score-card__blurb{font-size:13px;line-height:1.55;color:var(--stone)}.cp-review-card{background:var(--vellum-dk);border:.5px solid var(--border);border-left:3px solid var(--verdigris);border-radius:10px;padding:20px 22px}.cp-review-card--missed{border-left-color:var(--danger)}.cp-review-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cp-review-card__source{font-size:11px;color:var(--stone-lt)}.cp-verdict{font-size:10px;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:3px 10px;border:.5px solid var(--verdigris);color:var(--verdigris);background:#2a4a3e14}.cp-verdict--incorrect{border-color:var(--danger);color:var(--danger);background:#c0392b12}.cp-review-sentence{font-family:EB Garamond,serif;font-size:22px;line-height:1.7;color:var(--ink);margin-bottom:14px}.cp-review-sentence .passage__word--cp-answer{color:var(--verdigris);box-shadow:inset 0 -1.5px 0 0 var(--verdigris)}.cp-review-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.cp-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:7px;background:var(--vellum);border:1px solid var(--border);color:var(--stone)}.cp-chip--answer{background:#2a4a3e14;border-color:var(--verdigris);color:var(--ink)}.cp-chip--yours{background:#c0392b0f;border-color:var(--danger);color:var(--ink)}.cp-chip__word{font-family:EB Garamond,serif;font-size:17px}.cp-chip__sub{font-size:11px;color:var(--stone-lt)}.cp-chip__tag{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.cp-chip__tag--answer{color:var(--verdigris)}.cp-chip__tag--yours{color:var(--danger)}.cp-explain{display:flex;flex-direction:column;gap:12px}.cp-explain__row{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:baseline}.cp-explain__label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone-lt)}.cp-explain__label--fails{color:var(--danger)}.cp-explain__label--fits{color:var(--verdigris)}.cp-explain__text{font-size:13px;line-height:1.55;color:var(--stone)}.cp-explain__text--rule{color:var(--ink)}.cp-pool-capsule{font-size:12px;color:var(--aureum-dk);background:#c4a96b14;border:.5px solid var(--aureum);border-radius:999px;padding:4px 12px;white-space:nowrap}.cp-pool-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:11px;color:var(--stone);margin-bottom:14px}.cp-pool-legend__entry{display:inline-flex;align-items:center;gap:6px}.cp-status-dot{width:7px;height:7px;border-radius:50%;background:var(--stone-lt);flex-shrink:0}.cp-status-dot--rolling_in{background:var(--aureum)}.cp-status-dot--in_rotation{background:var(--stone-lt)}.cp-status-dot--rolling_out{background:var(--verdigris)}.cp-status-dot--retired{background:var(--border-md)}.cp-status-dot--relapsed,.cp-status-dot--flagged{background:var(--danger)}.cp-pool-table{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;overflow:hidden}.cp-pool-row{display:grid;grid-template-columns:2fr 1.5fr .8fr 1.4fr .9fr 1.2fr;gap:14px;padding:14px 20px;align-items:center}.cp-pool-row+.cp-pool-row{border-top:.5px solid var(--border)}.cp-pool-row--head{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-lt)}.cp-pool-row--retired{opacity:.55}.cp-pool-word{display:flex;align-items:center;gap:10px;min-width:0}.cp-pool-word__char{font-family:EB Garamond,serif;font-size:22px;color:var(--ink)}.cp-pool-word__meta{display:flex;flex-direction:column;min-width:0}.cp-pool-word__pinyin{font-size:12px;color:var(--stone-lt)}.cp-pool-word__gloss{font-size:12px;color:var(--stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp-pool-sources{display:flex;flex-wrap:wrap;gap:5px}.cp-pool-source-tag{font-size:10px;color:var(--stone);background:var(--vellum);border:.5px solid var(--border);border-radius:4px;padding:2px 7px;white-space:nowrap}.cp-pool-days{font-size:13px;font-variant-numeric:tabular-nums;color:var(--stone)}.cp-pool-results{display:flex;gap:3px;flex-wrap:wrap}.cp-pool-results__none{font-size:12px;color:var(--stone-lt)}.cp-result-square{width:11px;height:11px;border-radius:3px}.cp-result-square--pass{background:var(--success);opacity:.85}.cp-result-square--fail{background:var(--danger);opacity:.7}.cp-pool-accuracy{font-family:EB Garamond,serif;font-size:17px;color:var(--ink)}.cp-pool-status{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.cp-status-pill{display:inline-flex;align-items:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:3px 9px;color:var(--stone);background:var(--vellum);border:.5px solid var(--border-md)}.cp-status-pill--rolling_in{color:var(--aureum-dk);background:#c4a96b1a;border-color:var(--aureum)}.cp-status-pill--rolling_out{color:var(--verdigris);background:#2a4a3e14;border-color:var(--verdigris)}.cp-status-pill--retired{color:var(--stone-lt);background:transparent;border-color:var(--border)}.cp-status-pill--relapsed,.cp-status-pill--flagged{color:var(--danger);background:#c0392b12;border-color:var(--danger)}.cp-pool-status__sub{font-size:11px;color:var(--stone-lt)}.cp-pool-footnote{font-size:11px;color:var(--stone-lt);margin-top:12px;max-width:72ch}@media(max-width:720px){.cp-main{padding:18px 16px}.cp-sentence{font-size:22px}.cp-explain__row{grid-template-columns:1fr;gap:3px}.cp-pool-row{grid-template-columns:1.6fr 1fr 1.2fr}.cp-pool-row>:nth-child(2),.cp-pool-row>:nth-child(3),.cp-pool-row>:nth-child(5){display:none}}.cp-pool-unflag{margin-top:6px;align-self:flex-start;font:inherit;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--cp-text-muted, #6b7c79);background:transparent;border:1px solid currentColor;border-radius:3px;padding:3px 8px;cursor:pointer}.cp-pool-unflag:hover:not(:disabled){color:var(--cp-accent, #16615d)}.cp-pool-unflag:disabled{opacity:.5;cursor:default}.lc-page{min-height:100%}.lc-main{max-width:790px;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;gap:20px}.lc-main--review{max-width:820px;gap:16px}.lc-note,.lc-error{font-size:14px;color:var(--stone)}.lc-error{color:var(--danger)}.lc-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--stone-lt)}.lc-label--danger{color:var(--danger)}.lc-label--said{color:var(--verdigris)}.lc-progress-row{display:flex;align-items:center;gap:12px}.lc-progress-row__label,.lc-progress-row__count{font-size:13px;color:var(--stone-lt);white-space:nowrap}.lc-progress-row__track{flex:1;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.lc-progress-row__fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.lc-clip-card{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:24px 26px;display:flex;flex-direction:column;gap:16px}.lc-clip-card__header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.lc-clip-card__labels{display:flex;align-items:center;gap:10px}.lc-clip-card__format{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-lt)}.lc-type-tag{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);background:var(--vellum);border:.5px solid var(--border-md);border-radius:4px;padding:2px 7px}.lc-source-tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--stone-lt)}.lc-source-tag__dot{width:5px;height:5px;border-radius:50%;background:var(--aureum);flex-shrink:0}.lc-player{background:var(--vellum);border:.5px solid var(--border);border-radius:8px;padding:12px 16px}.lc-ladder{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lc-ladder__chips{display:flex;gap:6px}.lc-ladder__replays{margin-left:auto;font-size:11px;color:var(--stone-lt)}.lc-rung{font-size:10px;letter-spacing:.06em;border-radius:4px;padding:3px 8px;color:var(--stone-lt);background:transparent;border:.5px solid var(--border)}.lc-rung--cleared{color:var(--verdigris);background:#2a4a3e14;border-color:var(--verdigris)}.lc-rung--current{color:var(--vellum);background:var(--ink);border-color:var(--ink)}.lc-withheld{font-size:12px;color:var(--stone);background:var(--vellum);border:.5px dashed var(--border-md);border-radius:6px;padding:10px 14px;margin:0}.lc-options{display:flex;flex-direction:column;gap:8px}.lc-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:13px 16px;border-radius:8px;cursor:pointer;background:var(--vellum-dk);border:1px solid var(--border-md);transition:border-color .15s,background .15s}.lc-option:hover{border-color:var(--stone-lt)}.lc-option--selected{background:#c4a96b1f;border:1.5px solid var(--aureum)}.lc-option__word{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:22px;color:var(--ink)}.lc-dictation{display:flex;flex-direction:column;gap:8px}.lc-dictation__input{max-width:400px;font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:22px;color:var(--ink);background:var(--vellum);border:.5px solid var(--border-md);border-radius:6px;padding:8px 12px}.lc-dictation__input:focus-visible{outline:1.5px solid var(--aureum);outline-offset:1px}.lc-dictation__hint{font-size:11px;color:var(--stone-lt);margin:0}.lc-assist-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.lc-ghost-btn{font-size:12px;color:var(--stone);background:none;border:.5px solid var(--border-md);border-radius:6px;padding:6px 12px;cursor:pointer;transition:border-color .15s}.lc-ghost-btn:hover{border-color:var(--stone-lt)}.lc-assist{font-size:11px;color:var(--stone-lt)}.lc-assist--partial{color:var(--aureum-dk)}.lc-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.lc-footer--review{flex-wrap:wrap;padding-top:8px;border-top:.5px solid var(--border)}.lc-footer__note{font-size:12px;color:var(--stone-lt);flex:1;min-width:220px}.lc-footer__actions{display:flex;gap:10px;flex-wrap:wrap}.lc-score-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.lc-score-strip__value{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:34px;color:var(--ink);line-height:1}.lc-score-strip__rule{width:.5px;align-self:stretch;min-height:28px;background:var(--border-md)}.lc-score-strip__blurb{flex:1;min-width:240px;font-size:13px;line-height:1.6;color:var(--stone);margin:0}.lc-attribution{border:.5px solid var(--border-md);border-radius:10px;padding:22px 24px;display:flex;flex-direction:column;gap:14px}.lc-attribution__title{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:22px;font-weight:400;color:var(--ink);margin:0}.lc-attribution__rows{display:flex;flex-direction:column;gap:10px}.lc-cause-row{display:grid;grid-template-columns:150px 1fr 34px;gap:12px;align-items:center}.lc-cause-row__name{font-size:12px;color:var(--stone)}.lc-cause-row__track{height:8px;background:var(--vellum);border-radius:2px;overflow:hidden}.lc-cause-row__bar{height:100%;border-radius:2px;transition:width .3s ease}.lc-cause-row__count{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:14px;color:var(--stone);text-align:right}.lc-attribution__verdict{font-size:12px;line-height:1.6;color:var(--stone);margin:0;padding-top:12px;border-top:.5px solid var(--border)}.lc-diagnosis{background:var(--vellum-dk);border:.5px solid var(--border);border-left:3px solid var(--verdigris);border-radius:10px;padding:20px 22px;display:flex;flex-direction:column;gap:14px}.lc-diagnosis--wrong{border-left-color:var(--danger)}.lc-diagnosis__header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.lc-diagnosis__num{font-size:12px;color:var(--stone-lt)}.lc-verdict{font-size:10px;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:3px 10px;color:var(--verdigris);background:#2a4a3e14;border:.5px solid var(--verdigris);white-space:nowrap}.lc-verdict--wrong{color:var(--danger);background:#c0392b12;border-color:var(--danger)}.lc-transcript{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:22px;color:var(--ink);line-height:1.6;margin:0}.lc-transcript__answer{border-bottom:1.5px solid var(--verdigris);color:var(--verdigris);padding:0 2px}.lc-transcript--wrong{color:var(--danger)}.lc-transcript--said{color:var(--verdigris)}.lc-diagnosis__dictation{display:flex;flex-direction:column;gap:10px}.lc-kv{display:flex;flex-direction:column;gap:3px}.lc-chips{display:flex;flex-wrap:wrap;gap:8px}.lc-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:7px;background:var(--vellum);border:1px solid var(--border);color:var(--stone)}.lc-chip--said{background:#2a4a3e14;border-color:var(--verdigris);color:var(--ink)}.lc-chip--yours{background:#c0392b0f;border-color:var(--danger);color:var(--ink)}.lc-chip__word{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:18px}.lc-chip__sub{font-size:12px;color:var(--stone-lt)}.lc-chip__role{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone-lt)}.lc-chip--said .lc-chip__role{color:var(--verdigris)}.lc-chip--yours .lc-chip__role{color:var(--danger)}.lc-rows{display:flex;flex-direction:column;gap:8px}.lc-row{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:start}.lc-row__body{font-size:13px;line-height:1.6;color:var(--stone);margin:0}.lc-row__body--meta{color:var(--stone-lt)}.lc-pool-updates{border:.5px solid var(--border-md);border-radius:10px;padding:22px 24px;display:flex;flex-direction:column;gap:12px}.lc-pool-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.lc-pool-row__word{font-family:var(--font-display, "EB Garamond", Georgia, serif);font-size:20px;color:var(--ink)}.lc-pool-row__note{flex:1;min-width:200px;font-size:12px;color:var(--stone)}.lc-track-chip{font-size:10px;letter-spacing:.1em;border-radius:999px;padding:2px 8px;white-space:nowrap}.lc-track-chip--gold{color:var(--aureum-dk);background:#c4a96b1a;border:.5px solid var(--aureum)}.lc-track-chip--green{color:var(--verdigris);background:#2a4a3e14;border:.5px solid var(--verdigris)}@media(max-width:720px){.lc-main{padding:16px}.lc-clip-card{padding:18px 16px}.lc-cause-row{grid-template-columns:110px 1fr 28px}.lc-row{grid-template-columns:1fr;gap:4px}.lc-footer{flex-direction:column-reverse;align-items:stretch}.lc-footer--review,.lc-footer__actions{flex-direction:column}}.pf{flex:1;display:flex;flex-direction:column;min-width:0}.pf-serif{font-family:EB Garamond,Georgia,serif}.pf-head{background:var(--vellum-dk);border-bottom:.5px solid var(--border);padding:18px 32px;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}.pf-title{font:400 38px/1.2 EB Garamond,Georgia,serif;color:var(--ink)}.pf-subtitle{font-size:15px;color:var(--stone);margin-top:3px}.pf-toggle{display:flex;gap:6px}.pf-toggle__btn{min-height:40px;padding:0 14px;border-radius:5px;cursor:pointer;font:500 13px DM Sans,sans-serif;letter-spacing:.04em;background:transparent;color:var(--stone);border:.5px solid var(--border-md)}.pf-toggle__btn--on{background:var(--ink);color:var(--vellum);border-color:var(--ink)}.pf-toggle__btn:focus-visible{outline:2px solid var(--aureum);outline-offset:2px}.pf-body{padding:24px clamp(16px,3vw,32px) 64px;display:flex;flex-direction:column;gap:36px;max-width:1280px;width:100%;transition:opacity .15s}.pf-body--stale{opacity:.5}.pf-alarm{padding:12px 16px;border:1px solid var(--danger);border-radius:8px;background:#c0392b14;color:#a0301f;font-size:14px;font-weight:500}.pf-empty{font-size:14px;color:var(--stone)}.pf-card{background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;min-width:0}.pf-label,.pf-h2{font:500 10px DM Sans,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--stone)}.pf-h2{font-size:13px;letter-spacing:.16em}.pf-question{margin-top:2px;font-size:20px;color:var(--ink)}.pf-h3{font:500 15px DM Sans,sans-serif;color:var(--ink)}.pf-sub{margin-top:2px;font-size:13px;color:var(--stone)}.pf-note{font-size:12px;color:var(--stone)}.pf-section{display:flex;flex-direction:column;gap:14px}.pf-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media(max-width:1000px){.pf-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.pf-kpi{padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:4px}.pf-kpi__value{display:flex;align-items:baseline;gap:6px}.pf-kpi__num{font-size:44px;line-height:1.1}.pf-kpi__unit{font-size:14px;color:var(--stone)}.pf-kpi__delta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--stone)}.pf-kpi__change{font-weight:500;color:var(--ink)}.pf-verdict{font:600 10px DM Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:#6355401a;color:var(--stone)}.pf-verdict--good{background:#2a4a3e1f;color:var(--verdigris)}.pf-verdict--bad{background:#c0392b1a;color:#a0301f}.pf-gapnote{margin-top:-24px;font-size:12px;color:var(--stone)}.pf-grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px}.pf-chart{padding:1.25rem 1.5rem 1rem}.pf-chart--half{max-width:640px}.pf-chart__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px}.pf-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--stone)}.pf-legend>span{display:flex;align-items:center;gap:6px}.pf-legend__line{width:16px;height:2px}.pf-legend__line--dashed{height:0;border-top:1px dashed var(--stone)}.pf-swatch{width:8px;height:8px;border-radius:2px;flex:none;display:inline-block}.pf-swatch--empty{background:var(--vellum);box-shadow:inset 0 0 0 1px var(--border-md)}.pf-plot{position:relative;margin:20px 0 0 40px}.pf-grid{position:absolute;left:0;right:0;border-top:1px dashed rgba(99,85,64,.16)}.pf-ylabel{position:absolute;left:-44px;width:36px;text-align:right;font:400 11px/14px DM Sans,sans-serif;color:var(--stone)}.pf-xaxis{position:relative;height:16px;margin:8px 0 0 40px}.pf-xlabel{position:absolute;transform:translate(-50%);white-space:nowrap;font:400 11px/14px DM Sans,sans-serif;color:var(--stone)}.pf-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.pf-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.pf-line--target{stroke:var(--stone);stroke-width:1;stroke-dasharray:4 4}.pf-bars{position:absolute;inset:0;display:flex;align-items:flex-end}.pf-bar{flex:1 1 0;border-radius:3px 3px 0 0}.pf-bar--gap{background:repeating-linear-gradient(135deg,rgba(99,85,64,.08) 0 4px,transparent 4px 8px)}.pf-stack{flex:1 1 0;height:100%;display:flex;flex-direction:column-reverse;gap:2px}.pf-maturing{position:absolute;top:0;bottom:0;right:0;background:repeating-linear-gradient(135deg,rgba(99,85,64,.1) 0 4px,transparent 4px 8px)}.pf-maturing__label{position:absolute;top:4px;right:4px;font-size:11px;color:var(--stone)}.pf-hover{position:absolute;inset:0;display:flex}.pf-hover>div{flex:1 1 0;height:100%}.pf-rule{position:absolute;top:0;bottom:0;border-left:1px solid rgba(99,85,64,.45);pointer-events:none}.pf-dot{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;box-shadow:0 0 0 2px var(--vellum-dk);pointer-events:none}.pf-tip{position:absolute;top:-6px;min-width:150px;padding:8px 10px;background:var(--vellum);color:var(--ink);border:.5px solid var(--border-md);border-radius:6px;font:400 12px/18px DM Sans,sans-serif;pointer-events:none;z-index:3;box-shadow:0 4px 14px #1e1b161a}.pf-tip__title{font-weight:500;margin-bottom:2px}.pf-tip__line{display:flex;align-items:center;gap:8px;color:var(--stone)}.pf-tip__line b{margin-left:auto;font-weight:500;color:var(--ink)}.pf-freq{padding:1.5rem;display:flex;flex-wrap:wrap;gap:40px}.pf-freq__totals{flex:1 1 260px;display:flex;flex-direction:column;gap:18px}.pf-freq__big{display:flex;align-items:baseline;gap:8px}.pf-freq__pct{font-size:56px;line-height:1.05}.pf-freq__pair{display:flex;gap:32px}.pf-freq__mid{font-size:28px;line-height:1.2}.pf-freq__missing{border-top:.5px solid var(--border-md);padding-top:14px;display:flex;flex-direction:column;gap:12px}.pf-freq__rows{display:flex;flex-direction:column;gap:4px;font-size:14px}.pf-freq__rows>div{display:flex;justify-content:space-between}.pf-freq__rows>div>span:last-child{font-weight:500;font-variant-numeric:tabular-nums}.pf-freq__bands{flex:2 1 460px;min-width:0;display:flex;flex-direction:column;gap:8px}.pf-freq__legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--stone);margin-bottom:4px}.pf-band{display:flex;align-items:center;gap:12px}.pf-band__label{width:92px;flex:none;text-align:right;font-size:12px;color:var(--stone);font-variant-numeric:tabular-nums}.pf-band__bar{flex:1 1 auto;display:flex;gap:2px;height:18px}.pf-band__bar>div:first-child{border-radius:3px 0 0 3px}.pf-band__rest{flex:1 1 auto;background:var(--vellum);box-shadow:inset 0 0 0 .5px var(--border-md);border-radius:0 3px 3px 0}.pf-band__pct{width:44px;flex:none;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}.pf-band--beyond{margin-top:8px;padding-top:12px;border-top:.5px dashed var(--border-md)}.pf-band__counts{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;font-size:14px}.pf-band__counts>span{display:flex;align-items:center;gap:6px}.pf-band__counts b{font-weight:500;font-variant-numeric:tabular-nums}.pf-split{display:flex;flex-wrap:wrap;gap:12px}.pf-split__wide{flex:2 1 520px}.pf-srcret{flex:1 1 300px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:14px}.pf-srcret__row{display:flex;flex-direction:column;gap:6px}.pf-srcret__top{display:flex;justify-content:space-between;font-size:13px}.pf-srcret__top>span:first-child{display:flex;align-items:center;gap:6px}.pf-srcret__val{font-weight:500}.pf-srcret__track{height:8px;background:var(--vellum);box-shadow:inset 0 0 0 .5px var(--border-md);border-radius:4px;position:relative}.pf-srcret__track>div{position:absolute;left:0;top:0;bottom:0;border-radius:4px}.pf-srcret__target{position:absolute;top:-3px;bottom:-3px;border-left:1px dashed var(--stone)}@media(max-width:640px){.pf-head{padding:16px}.pf-title{font-size:32px}.pf-kpi{padding:.9rem 1rem}.pf-kpi__num{font-size:34px}.pf-chart{padding:1rem 1rem .75rem}.pf-freq{padding:1rem;gap:24px}.pf-band__label{width:76px;font-size:11px}.pf-split__wide,.pf-srcret{flex-basis:100%}}.pf-cta{align-self:flex-start;display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border-radius:6px;background:var(--ink);color:var(--vellum);font-size:14px;text-decoration:none}.pf-cta:hover{color:var(--vellum);opacity:.9}.pf-head--stack{display:block}.pf-back{display:inline-flex;align-items:center;gap:6px;min-height:32px;font-size:13px;color:var(--stone);text-decoration:none}.pf-back:hover{color:var(--ink)}.pf-body--narrow{max-width:1080px;gap:16px}.pf-toggle--wrap{flex-wrap:wrap}.pf-toggle__btn--small{min-height:36px;padding:0 12px;display:flex;align-items:center;gap:8px}.pf-toggle__count{font-weight:400;opacity:.8}.ul-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:13px;color:var(--stone)}.ul-bar__right{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.ul-added{color:var(--verdigris);font-weight:500}.ul-deck{display:flex;align-items:center;gap:8px}.ul-deck select{min-height:32px;padding:0 8px;border:.5px solid var(--border-md);border-radius:6px;background:var(--vellum);font:inherit;color:var(--ink)}.ul-table{overflow-x:auto}.ul-table__inner{min-width:620px}.ul-row{display:grid;grid-template-columns:64px 110px minmax(180px,1fr) 110px 140px;gap:12px;align-items:center;min-height:60px;padding:8px 20px;border-bottom:.5px solid var(--border)}.ul-row--head{min-height:0;padding:12px 20px;border-bottom-color:var(--border-md);font:500 10px DM Sans,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--stone)}.ul-row--added{background:var(--vellum)}.ul-num{text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.ul-row--head .ul-num{font-size:10px}.ul-rank{font-size:13px;color:var(--stone)}.ul-word{display:flex;flex-direction:column}.ul-hanzi{font:400 22px/1.2 EB Garamond,"Noto Serif SC",Georgia,serif;letter-spacing:.05em}.ul-pinyin{font-size:12px;font-weight:500;color:var(--verdigris)}.ul-meaning{font-size:14px;display:flex;flex-direction:column;gap:2px}.ul-error{font-size:12px;color:#a0301f}.ul-action{display:flex;justify-content:flex-end}.ul-add{min-height:40px;padding:0 14px;border-radius:6px;cursor:pointer;font:400 13px DM Sans,sans-serif;background:var(--ink);color:var(--vellum);border:.5px solid var(--ink)}.ul-add:disabled{cursor:default;opacity:.7}.ul-add--done,.ul-add--done:disabled{opacity:1;background:#2a4a3e1f;color:var(--verdigris);border-color:#2a4a3e66}.ul-none{padding:32px 20px;text-align:center}@media(max-width:640px){.ul-table__inner{min-width:0}.ul-row--head{display:none}.ul-row{grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"rank word action" ". meaning meaning" ". seen seen";gap:4px 10px;padding:12px 14px}.ul-rank{grid-area:rank;align-self:start;padding-top:4px}.ul-word{grid-area:word}.ul-meaning{grid-area:meaning;font-size:13px}.ul-action{grid-area:action;align-self:start}.ul-seen{grid-area:seen;text-align:left;font-size:12px;color:var(--stone)}.ul-seen:before{content:"In my reading "}}.pf-body--tail{padding-top:0}.tw-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}.tw-split{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.tw-table{flex:999 1 540px;overflow-x:auto;max-height:760px;overflow-y:auto}.tw-table__inner{min-width:640px}.tw-row{display:grid;grid-template-columns:100px minmax(160px,1fr) 64px 80px 72px 72px 64px;gap:12px;align-items:center;width:100%;min-height:56px;padding:8px 20px;border:0;border-bottom:.5px solid var(--border);background:transparent;text-align:left;cursor:pointer;font:inherit;color:var(--ink)}.tw-row--head{cursor:default;min-height:0;padding:12px 20px;border-bottom-color:var(--border-md);font:500 10px DM Sans,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--stone);position:sticky;top:0;background:var(--vellum-dk);z-index:1}.tw-row--head .ul-num{font-size:10px}.tw-row--on{background:var(--vellum);box-shadow:inset 2px 0 0 var(--accent)}.tw-meaning{font-size:14px}.tw-dim{font-size:13px;color:var(--stone)}.tw-face{color:var(--stone);font-weight:400}.tw-panel{flex:1 1 360px;min-width:0;padding:1.5rem;display:flex;flex-direction:column;gap:18px}.tw-title{display:flex;align-items:flex-end;gap:16px}.tw-big{font:400 60px/1 EB Garamond,"Noto Serif SC",Georgia,serif;letter-spacing:.05em}.tw-big--long{font-size:28px;line-height:1.3}.tw-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:20px}.tw-title__side{display:flex;flex-direction:column;padding-bottom:4px;min-width:0}.tw-title__pinyin{font-size:16px;font-weight:500;color:var(--verdigris)}.tw-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tw-stat{background:var(--vellum);border:.5px solid var(--border-md);border-radius:8px;padding:8px 10px}.tw-stat__value{font-size:22px;line-height:1.3}.tw-hist{display:flex;flex-direction:column;gap:8px}.tw-hist__head{display:flex;justify-content:space-between;font-size:12px;color:var(--stone)}.tw-hist__key{display:flex;gap:10px}.tw-hist__key span{display:flex;align-items:center;gap:4px}.tw-hist__key i{width:10px;height:10px;border-radius:2px}.tw-hist__row{display:flex;gap:4px}.tw-hist__row>div{flex:1 1 0;height:20px;border-radius:3px}.tw-pass{background:var(--verdigris)}.tw-fail{background:var(--vellum);box-shadow:inset 0 0 0 2px var(--danger)}.tw-saved{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:#2a4a3e1a;color:var(--verdigris);border:.5px solid rgba(42,74,62,.3);border-radius:8px;font-size:13px}.tw-why{display:flex;flex-direction:column;gap:4px}.tw-why p{font-size:14px;margin-bottom:6px}.tw-block{display:flex;flex-direction:column;gap:8px}.tw-faces{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tw-face-box{background:var(--vellum);border:.5px solid var(--border-md);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;min-height:96px;min-width:0}.tw-faces--proposed .tw-face-box{border:1px dashed var(--aureum)}.tw-face-label{font-size:10px;letter-spacing:.12em;color:var(--stone)}.tw-front{font:400 18px/1.5 EB Garamond,"Noto Serif SC",Georgia,serif}.tw-back{font-size:13px;color:var(--stone);overflow-wrap:anywhere}.tw-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:.5px solid var(--border-md);padding-top:16px}.tw-btn{min-height:44px;padding:0 18px;border:.5px solid var(--border-md);border-radius:6px;background:transparent;color:var(--stone);font:400 14px DM Sans,sans-serif;cursor:pointer}.tw-btn--primary{border-color:var(--ink);background:var(--ink);color:var(--vellum)}.tw-btn:disabled{opacity:.5;cursor:default}.tw-link{min-height:44px;padding:0 12px;border:0;background:transparent;color:var(--stone);font:400 13px DM Sans,sans-serif;cursor:pointer}.tw-saved .tw-link{min-height:0;color:var(--verdigris);text-decoration:underline}.tw-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:52px;padding:8px 12px;border-radius:8px;border:.5px solid var(--border-md);background:transparent;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.tw-option--on{background:var(--vellum);border:1px solid var(--verdigris)}.tw-option:disabled{opacity:.5;cursor:default}.tw-option__label{font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.tw-suggested{font:600 9px DM Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:1px 5px;border-radius:4px;background:#2a4a3e1f;color:var(--verdigris)}.tw-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500}.tw-field textarea{font:400 15px/1.5 DM Sans,"Noto Serif SC",sans-serif;padding:8px 10px;border:.5px solid var(--border-md);border-radius:6px;background:var(--vellum);color:var(--ink);resize:vertical}@media(max-width:640px){.tw-table__inner{min-width:0}.tw-row--head{display:none}.tw-row{grid-template-columns:88px minmax(0,1fr) 40px;padding:8px 14px}.tw-row>*{grid-area:auto}.tw-row>:nth-child(n+4){display:none}.tw-table{max-height:420px}.tw-panel{padding:1rem}.tw-big{font-size:48px}.tw-faces{grid-template-columns:1fr}}.tw-big:not(.tw-big--long){white-space:nowrap;flex:none}.pf-bar--est{opacity:.45}.pf-line--bridge{stroke-dasharray:3 5;opacity:.6}.hoverable-passage{position:relative;font-family:EB Garamond,Georgia,serif;line-height:1.8}.passage__word{cursor:pointer;padding:0 .5px;border-radius:2px;transition:background .12s,color .12s;position:relative;display:inline-block}.passage__word:hover{background:color-mix(in srgb,var(--aureum) 18%,transparent)}.passage__word--in-deck:hover:after{content:"";position:absolute;left:2px;right:2px;bottom:-2px;height:1.5px;background:var(--aureum);opacity:.85}.passage__word--queued{background:color-mix(in srgb,var(--aureum) 28%,transparent)!important;box-shadow:inset 0 -2px 0 0 var(--aureum)}.passage__punc{color:var(--stone)}.passage__word--diff-extra{color:var(--danger);text-decoration:line-through;text-decoration-thickness:1.5px;background:color-mix(in srgb,var(--danger) 10%,transparent)}.passage__word--diff-missed{background:color-mix(in srgb,var(--aureum) 32%,transparent);box-shadow:inset 0 -2px 0 0 var(--aureum-dk)}.hovercard{position:absolute;z-index:10;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:10px;box-shadow:0 2px 12px #1e1b161a;padding:14px 16px;min-width:220px;max-width:300px;font-family:DM Sans,sans-serif;animation:hc-in .14s ease;pointer-events:auto}.hovercard:before{content:"";position:absolute;left:0;right:0;height:14px;bottom:-14px}.hovercard--below:before{bottom:auto;top:-14px}.hovercard:after{content:"";position:absolute;bottom:-6px;left:18px;width:10px;height:10px;background:var(--vellum-dk);border-right:.5px solid var(--border-md);border-bottom:.5px solid var(--border-md);transform:rotate(45deg)}.hovercard--below:after{top:-6px;bottom:auto;border-right:none;border-bottom:none;border-left:.5px solid var(--border-md);border-top:.5px solid var(--border-md)}@keyframes hc-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.hovercard--below{animation-name:hc-in-below}@keyframes hc-in-below{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.hovercard__body{display:flex;flex-direction:column;gap:6px}.hovercard__char{font-family:EB Garamond,Georgia,serif;font-size:28px;color:var(--ink);line-height:1.05;letter-spacing:-.5px}.hovercard__pinyin{font-size:14px;color:var(--verdigris);font-weight:500}.hovercard__gloss{font-size:13px;color:var(--ink);line-height:1.55;margin:2px 0 0}.hovercard__tags{display:flex;gap:8px;align-items:center;margin-top:2px;flex-wrap:wrap}.hovercard__add{font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--vellum);background:var(--ink);border:.5px solid var(--ink);border-radius:6px;padding:8px 14px;min-height:36px;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}.hovercard__add:hover{background:color-mix(in srgb,var(--ink) 88%,transparent)}.hovercard__add:active{transform:translateY(1px)}.hovercard__add--queued{color:var(--aureum-dk);background:var(--vellum);border-color:var(--aureum)}.hovercard__add--queued:hover{background:color-mix(in srgb,var(--aureum) 12%,var(--vellum))}.hovercard__loading{font-size:12px;color:var(--stone-lt);font-style:italic}.rail__tag{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--stone-lt);background:var(--vellum);border:.5px solid var(--border);border-radius:999px;padding:2px 8px}.rail__tag--in-deck{color:var(--aureum-dk);border-color:var(--aureum)}.rail__tag--due{color:var(--danger)}.rail__tag--new{color:var(--stone)}.queue-bar{position:fixed;left:16px;right:16px;bottom:16px;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:10px;padding:10px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;box-shadow:0 2px 12px #1e1b1614;z-index:20}.queue-bar__error{flex-basis:100%;margin:0;font-size:13px;line-height:1.4;color:var(--danger);white-space:pre-line}.queue-bar__label{font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-lt);white-space:nowrap}.queue-bar__chips{display:flex;gap:6px;flex:1;overflow:hidden;min-width:0}.queue-chip{display:inline-flex;align-items:center;gap:5px;background:var(--vellum);border:.5px solid var(--border-md);border-radius:999px;padding:3px 9px 3px 10px;font-family:EB Garamond,Georgia,serif;font-size:15px;color:var(--ink);white-space:nowrap}.queue-chip__remove{font-family:DM Sans,sans-serif;font-size:12px;color:var(--stone-lt);cursor:pointer;line-height:1;background:none;border:none;padding:0}.queue-chip__remove:hover{color:var(--danger)}.queue-bar__cta{font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;color:var(--vellum);background:var(--ink);border:none;border-radius:6px;padding:7px 14px;cursor:pointer;white-space:nowrap}.queue-bar__cta:disabled{background:var(--border-md);cursor:default}.passage__word--hover{background:color-mix(in srgb,var(--aureum) 22%,transparent)}.hovercard--float{position:fixed;z-index:30;pointer-events:none;width:280px;min-width:200px}.hovercard__hint{font-size:11px;color:var(--stone-lt);margin-top:2px}.hovercard__hint--on{color:var(--aureum-dk)}.hovercard--phrase{pointer-events:auto;width:300px}.hovercard__label{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--stone-lt)}.hovercard__close{background:none;border:none;padding:0 2px;cursor:pointer;font-size:16px;line-height:1;color:var(--stone-lt)}.hovercard__close:hover{color:var(--ink)}.hovercard__char--long{font-size:22px}.hovercard__context{margin:6px 0 0;padding-top:6px;border-top:.5px solid var(--border);font-family:EB Garamond,Georgia,serif;font-size:14px;color:var(--stone)}.hovercard__machine{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--aureum-dk);margin-top:2px}.queue-chip--phrase{font-style:italic;border-style:dashed}::selection{background:#c4a96b59}.hovercard__freq{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--stone)}.hovercard__dots{display:flex;gap:3px}.hovercard__dot{width:6px;height:6px;border-radius:50%;background:var(--border-md)}.hovercard__dot--on{background:var(--stone)}.word-rail{position:sticky;top:20px;display:flex;flex-direction:column;gap:14px;min-width:0}.word-rail__card{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}.word-rail__card--lookup{border-color:var(--border-md);min-height:150px;gap:6px}.word-rail__word{font-family:EB Garamond,Georgia,serif;font-size:34px;line-height:1.05;letter-spacing:-.5px;margin-top:4px}.word-rail__pinyin{font-size:15px;color:var(--verdigris);font-weight:500}.word-rail__gloss{font-size:14px;line-height:1.55}.word-rail__actions{display:flex;justify-content:flex-end;margin-top:8px}.word-rail__head{display:flex;justify-content:space-between}.word-rail__chips{display:flex;flex-wrap:wrap;gap:6px}.word-rail__chip{display:inline-flex;align-items:center;gap:6px;background:var(--vellum);border:.5px solid var(--border-md);border-radius:999px;padding:3px 9px 3px 11px;font-family:EB Garamond,Georgia,serif;font-size:17px}.word-rail__chip-x{background:none;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:12px;color:var(--stone-lt);cursor:pointer;line-height:1}.word-rail__chip-x:hover{color:var(--danger)}.word-rail__add{margin-top:4px}.word-rail__label{font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--stone-lt)}.word-rail__muted{font-size:13px;color:var(--stone-lt)}.word-rail__add{padding:7px 16px;font-size:14px;font-family:DM Sans,sans-serif;font-weight:500;color:var(--vellum);background:var(--ink);border:.5px solid var(--ink);border-radius:6px;cursor:pointer;transition:background .15s}.word-rail__add:hover:not(:disabled){background:var(--stone)}.word-rail__add:disabled{opacity:.5;cursor:default}.word-rail__error{margin:0;font-size:13px;line-height:1.4;color:var(--danger);white-space:pre-line}@media(max-width:1100px){.word-rail{position:static}}.dr-page{display:flex;flex-direction:column;min-width:0}.dr-strip{display:flex;align-items:center;gap:8px;padding:16px 32px;border-bottom:.5px solid var(--border);background:var(--vellum);font-size:12px}.dr-strip--sticky{position:sticky;top:0;z-index:5}.dr-strip__label{font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt);margin-right:6px;flex-shrink:0}.dr-strip__note{color:var(--stone-lt);min-width:0}.dr-strip__pills{display:flex;gap:6px;overflow-x:auto;flex:1 1 0;min-width:0;scrollbar-width:none}.dr-strip__pills::-webkit-scrollbar{display:none}.dr-strip__pills .dr-pill{flex-shrink:0;white-space:nowrap}.dr-strip__end{margin-left:auto;display:flex;align-items:center;gap:12px;flex-shrink:0}.dr-sweep{font-size:12px;color:var(--stone-lt)}.dr-capsule{font-size:12px;color:var(--stone);background:var(--badge-bg);border-radius:999px;padding:4px 12px;white-space:nowrap;font-variant-numeric:tabular-nums}.dr-capsule--done{color:var(--verdigris)}.dr-masthead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:-16px}.dr-masthead__text{display:flex;flex-direction:column;gap:6px;min-width:0}.dr-masthead__title{margin:0;font-family:EB Garamond,Georgia,serif;font-weight:400;font-size:38px;line-height:1.15;letter-spacing:-.3px}.dr-masthead__line{font-size:13px;color:var(--stone-lt)}.dr-masthead__end{display:flex;align-items:center;gap:12px}.dr-content{padding:28px 32px 120px;display:flex;flex-direction:column;gap:40px;max-width:1720px;width:100%}.dr-empty{font-size:15px;color:var(--stone)}.dr-label,.dr-kicker{font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--stone-lt)}.dr-lede{margin:0 0 22px;font-family:EB Garamond,Georgia,serif;font-size:18px;line-height:1.65;color:var(--stone);max-width:960px;text-wrap:pretty}.dr-frontpage{display:flex;flex-direction:column}.dr-front-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:0 36px;border-top:.5px solid var(--border-md)}.dr-front-side{display:flex;flex-direction:column;min-width:0}.dr-front-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:0 36px;border-top:.5px solid var(--border-md)}.dr-front{display:flex;flex-direction:column;gap:8px;padding:20px 0;min-width:0}.dr-front__title{margin:0;font-family:EB Garamond,Georgia,serif;font-weight:400}.dr-front__summary{margin:0;font-family:EB Garamond,Georgia,serif;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.dr-front--lead{gap:12px;padding:20px 0 24px}.dr-front--lead .dr-front__title{font-size:38px;line-height:1.3;letter-spacing:-.3px}.dr-front--lead .dr-front__summary{font-size:18px;line-height:1.75;-webkit-line-clamp:6}.dr-front--side{border-bottom:.5px solid var(--border-md)}.dr-front--side .dr-front__title{font-size:22px;line-height:1.4}.dr-front--side .dr-front__summary,.dr-front--row .dr-front__summary{font-size:17px;line-height:1.7;-webkit-line-clamp:4}.dr-front--row .dr-front__title{font-size:20px;line-height:1.4}.dr-front--row .dr-meta{margin-top:auto}.dr-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--stone-lt)}.dr-status--read{color:var(--verdigris)}.dr-read{margin-left:auto;background:none;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:13px;color:var(--stone);cursor:pointer;transition:color .15s}.dr-read:hover{color:var(--ink)}.dr-front--lead .dr-read{font-size:14px}.dr-read--primary{padding:7px 16px;font-size:14px;color:var(--vellum);background:var(--ink);border-radius:6px;transition:background .15s}.dr-read--primary:hover{color:var(--vellum);background:var(--stone)}.dr-more{background:none;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:12px;color:var(--stone-lt);cursor:pointer}.dr-more:hover{color:var(--ink)}.dr-todays-read{background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:20px 24px;display:flex;flex-direction:column;gap:10px;margin-top:8px}.dr-todays-read__label{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--stone-lt)}.dr-todays-read__rule{display:inline-block;width:2px;height:14px;background:var(--aureum)}.dr-todays-read__title{margin:0;font-family:EB Garamond,Georgia,serif;font-weight:400;font-size:22px;line-height:1.4}.dr-todays-read__summary{margin:0;font-family:EB Garamond,Georgia,serif;font-size:17px;line-height:1.75}.dr-sections{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,620px),1fr));gap:40px 56px;align-items:start}.dr-section{display:flex;flex-direction:column}.dr-section__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:10px;border-bottom:.5px solid var(--border-md)}.dr-section__names{display:flex;align-items:baseline;gap:12px}.dr-section__en{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-lt)}.dr-section__zh{font-family:EB Garamond,Georgia,serif;font-size:30px;line-height:1.2;color:var(--ink)}.dr-section__count{font-size:12px;color:var(--stone-lt)}.dr-section__note{margin:12px 0 0;font-size:13px;line-height:1.6;color:var(--stone);font-style:italic;max-width:780px}.dr-row{display:grid;grid-template-columns:14px minmax(0,1fr);column-gap:14px;padding:16px 0;border-bottom:.5px solid var(--border)}.dr-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--stone-lt);margin-top:11px}.dr-dot--read{background:var(--verdigris);border-color:var(--verdigris)}.dr-row__body{display:flex;flex-direction:column;gap:6px;min-width:0}.dr-row__title{font-family:EB Garamond,Georgia,serif;font-size:20px;line-height:1.45}.dr-row__summary{font-family:EB Garamond,Georgia,serif;font-size:17px;line-height:1.75;color:var(--ink)}.dr-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dr-also{padding:14px 0 0 28px;display:flex;flex-direction:column;gap:4px}.dr-also__text{font-size:13px;line-height:1.6;color:var(--stone)}.dr-footer{border-top:.5px solid var(--border);padding-top:16px;display:flex;flex-direction:column;gap:10px;max-width:860px}.dr-notes-toggle{align-self:flex-start;background:none;border:none;padding:0;font-family:DM Sans,sans-serif;cursor:pointer}.dr-notes{margin:0;font-size:13px;line-height:1.65;color:var(--stone)}.dr-pull{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.dr-pull__input{flex:1;min-width:240px;padding:10px 14px;font-size:14px;font-family:DM Sans,sans-serif;color:var(--ink);background:var(--vellum);border:.5px solid var(--border-md);border-radius:6px}.dr-pull__input:focus{outline:none;border-color:var(--accent)}.dr-button{padding:8px 18px;font-size:14px;font-family:DM Sans,sans-serif;color:var(--stone);background:none;border:.5px solid var(--border-md);border-radius:6px;cursor:pointer;transition:background .15s}.dr-button:hover:not(:disabled){background:var(--vellum-dk)}.dr-button:disabled{opacity:.5;cursor:default}.dr-settings{padding:24px 32px 48px;display:flex;flex-direction:column;gap:18px;max-width:860px;width:100%}.dr-settings__card{display:flex;flex-direction:column;gap:16px}.dr-settings__label{font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--stone-lt)}.dr-settings__row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:15px}.dr-settings__chips{display:flex;gap:6px;flex-wrap:wrap}.dr-settings__hint,.dr-settings__note{font-size:12px;color:var(--stone-lt);margin:0}.dr-pill--big{padding:5px 14px;font-size:13px}.dr-pill--big.dr-pill--on{padding:4px 13px}.dr-pill:disabled{cursor:default}.dr-pill:disabled:not(.dr-pill--on){opacity:.6}.dr-settings__sources{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));column-gap:24px}.dr-source{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-top:.5px solid var(--border)}.dr-source__text{min-width:0}.dr-source__name{font-size:14px}.dr-source__name--off{color:var(--stone-lt)}.dr-source__warn{font-size:11px;color:var(--danger)}.dr-toggle{width:32px;height:18px;border-radius:999px;border:none;background:var(--border-md);position:relative;cursor:pointer;padding:0;flex-shrink:0}.dr-toggle--on{background:var(--aureum)}.dr-toggle:disabled{cursor:default;opacity:.7}.dr-toggle__knob{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:var(--vellum);transition:left .15s}.dr-toggle--on .dr-toggle__knob{left:17px}@media(max-width:520px){.dr-settings{padding:18px 16px 40px}}.dr-archive{padding:24px 32px 48px;display:flex;flex-direction:column;gap:24px;max-width:1480px;width:100%}.dr-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px}.dr-stat{padding:18px 22px;border-right:.5px solid var(--border)}.dr-stat:last-child{border-right:none}.dr-stat__value{font-family:EB Garamond,Georgia,serif;font-size:38px;line-height:1;font-variant-numeric:oldstyle-nums}.dr-stat__label{font-size:10px;font-weight:500;letter-spacing:.14em;color:var(--stone-lt);margin-top:8px}.dr-stat__sub{font-size:12px;color:var(--stone);margin-top:4px}.dr-density{display:flex;flex-direction:column;gap:14px}.dr-density__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.dr-density__title{font-size:10px;font-weight:500;letter-spacing:.16em;color:var(--stone-lt)}.dr-density__note{font-size:12px;color:var(--stone)}.dr-density__bars,.dr-density__labels{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px}.dr-density__bars{align-items:end;height:130px}.dr-density__col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%;min-height:0}.dr-density__value{font-size:11px;color:var(--stone)}.dr-density__bar{width:100%;max-width:28px;background:var(--border-md);border-radius:3px 3px 0 0}.dr-density__bar--now{background:var(--accent)}.dr-density__labels span{font-size:10px;color:var(--stone-lt);text-align:center}@media(max-width:520px){.dr-density__bars,.dr-density__labels{gap:3px}.dr-density__labels span,.dr-density__value{font-size:8.5px;letter-spacing:-.02em}}.dr-archive__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px;align-items:start}.dr-card{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:12px;padding:20px 22px}.dr-cal__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;gap:8px}.dr-cal__month{font-family:EB Garamond,Georgia,serif;font-size:24px}.dr-cal__nav{display:flex;align-items:baseline;gap:10px;font-size:12px;color:var(--stone-lt)}.dr-cal__step{background:none;border:none;font-size:16px;color:var(--stone);cursor:pointer;padding:0 4px}.dr-cal__step:disabled{opacity:.35;cursor:default}.dr-cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.dr-cal__wd{font-size:10px;letter-spacing:.12em;color:var(--stone-lt);text-align:center;padding-bottom:4px}.dr-cal__cell{aspect-ratio:1;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:transparent;border:.5px solid var(--border);border-radius:6px;cursor:pointer;font-family:DM Sans,sans-serif;padding:0;transition:border-color .15s}.dr-cal__cell--blank{border:none;cursor:default}.dr-cal__cell--today{border-color:var(--accent)}.dr-cal__cell--selected{background:var(--vellum);border:1.5px solid var(--aureum)}.dr-cal__cell:disabled{opacity:.4;cursor:default}.dr-cal__day{font-family:EB Garamond,Georgia,serif;font-size:17px;color:var(--ink)}.dr-cal__sub{font-size:10px;color:var(--stone-lt)}.dr-cal__sub--opened{color:var(--verdigris)}.dr-day__head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:10px;border-bottom:.5px solid var(--border-md)}.dr-day__title{font-family:EB Garamond,Georgia,serif;font-size:24px}.dr-day__summary{font-size:12px;color:var(--stone-lt)}.dr-filters{display:flex;gap:6px;padding:12px 0 2px}.dr-pill{display:inline-flex;align-items:baseline;gap:6px;padding:4px 12px;font-size:12px;font-family:DM Sans,sans-serif;border-radius:999px;cursor:pointer;background:transparent;color:var(--stone);border:.5px solid var(--border-md);transition:background .15s}.dr-pill:hover:not(:disabled):not(.dr-pill--on){background:var(--vellum-dk)}.dr-pill--on{background:var(--aureum);color:var(--vellum);border:1.5px solid var(--aureum);padding:3px 11px}.dr-pill__sub{font-size:11px;color:var(--stone-lt)}.dr-group{padding-top:16px}.dr-group__head{display:flex;justify-content:space-between;gap:10px;font-size:10px;font-weight:500;letter-spacing:.14em;color:var(--stone-lt);padding-bottom:6px;border-bottom:.5px solid var(--border-md)}.dr-day-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:9px 0;border:none;border-bottom:.5px solid var(--border);background:none;width:100%;text-align:left;cursor:pointer;font-family:DM Sans,sans-serif}.dr-day-row .dr-dot{width:7px;height:7px;margin-top:0}.dr-day-row__title,.dr-day-row__meta{display:block}.dr-day-row__title{font-family:EB Garamond,Georgia,serif;font-size:17px;line-height:1.4;color:var(--stone)}.dr-day-row--opened .dr-day-row__title{color:var(--ink)}.dr-day-row__meta{font-size:11px;color:var(--stone-lt);margin-top:1px}.dr-day-row__status{font-size:12px;color:var(--verdigris);white-space:nowrap}@media(max-width:1100px){.dr-front-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){.dr-content,.dr-archive{padding-left:16px;padding-right:16px}.dr-front--lead .dr-front__title{font-size:30px}}@media(max-width:600px){.dr-strip{flex-wrap:wrap;padding:12px 16px}.dr-strip__note{flex-basis:100%}.dr-strip__label+.dr-strip__pills{order:2;flex-basis:100%}.dr-strip--sticky .dr-strip__end{order:1}.dr-strip__end{flex-wrap:wrap;flex-shrink:1}.dr-content{padding-top:20px;gap:32px}.dr-masthead__title{font-size:30px}.dr-section__zh{font-size:22px}.dr-row__title{font-size:18px}.dr-pull__input{min-width:0;flex-basis:100%}}.dr-sweep-slot{padding:16px 32px 0;max-width:1720px;display:flex;flex-direction:column;gap:10px}.dr-sweep-banner{background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;gap:8px;max-width:820px}.dr-sweep-banner--failed{border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.dr-sweep-banner__head{display:flex;justify-content:space-between;align-items:baseline}.dr-sweep-banner__pct{font-size:12px;color:var(--stone);font-variant-numeric:tabular-nums}.dr-sweep-banner__headline{display:flex;align-items:center;gap:10px;font-family:EB Garamond,Georgia,serif;font-size:20px;line-height:1.35}.dr-sweep-banner__pulse{width:8px;height:8px;border-radius:50%;background:var(--aureum);flex-shrink:0;animation:dr-pulse 1.6s ease-in-out infinite}@keyframes dr-pulse{0%,to{opacity:1}50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.dr-sweep-banner__pulse{animation:none}}.dr-sweep-banner__bar{height:4px;background:var(--border);border-radius:999px;overflow:hidden}.dr-sweep-banner__bar>span{display:block;height:100%;background:var(--aureum);transition:width .4s ease}.dr-sweep-banner__detail{font-size:13px;color:var(--stone);font-variant-numeric:tabular-nums}.dr-sweep-banner--failed .dr-sweep-banner__detail{color:var(--danger)}.dr-sweep-banner__note{font-size:12px;color:var(--stone-lt)}.dr-error{font-size:13px;color:var(--danger)}.dr-button--small{padding:4px 12px;font-size:13px}@media(max-width:768px){.dr-sweep-slot{padding-left:16px;padding-right:16px}}.rd-switch{display:flex;gap:8px;padding:14px 32px 0;background:var(--vellum)}@media(max-width:1100px){.rd-switch{padding:12px 16px 0}}.nr-reader-page{flex:1;display:flex;flex-direction:column;min-width:0}.nr-reader{flex:1;display:grid;grid-template-columns:240px minmax(0,1fr) 260px;width:100%;box-sizing:border-box}.nr-button{padding:7px 16px;font-size:13px;font-family:DM Sans,sans-serif;color:var(--stone);background:none;border:.5px solid var(--border-md);border-radius:6px;cursor:pointer;transition:background .15s}.nr-button:hover:not(:disabled){background:var(--vellum-dk)}.nr-button:disabled{opacity:.5;cursor:default}.nr-button--primary{padding:8px 18px;color:var(--vellum);background:var(--ink);border-color:var(--ink)}.nr-button--primary:hover:not(:disabled){background:var(--stone)}.nr-label{font-size:10px;font-weight:500;letter-spacing:.14em;color:var(--stone-lt)}.nr-muted{font-size:13px;color:var(--stone-lt)}.nr-pad{padding:32px 48px}.nr-error{font-size:13px;color:var(--danger)}.nr-notice{margin:0;font-size:13px;line-height:1.6;color:var(--stone);background:var(--vellum-dk);border:.5px solid var(--border);border-radius:8px;padding:10px 14px}.nr-timer{font-variant-numeric:tabular-nums}.nr-paper{position:sticky;top:0;align-self:start;max-height:100vh;overflow-y:auto;box-sizing:border-box;padding:24px 0;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin}.nr-paper__front{align-self:flex-start;margin:0 20px 12px;padding:0;background:none;border:none;font:400 13px DM Sans,sans-serif;color:var(--stone);cursor:pointer;transition:color .15s}.nr-paper__front:hover{color:var(--ink)}.nr-paper__label,.nr-paper__section{font-size:10px;font-weight:500;letter-spacing:.14em;color:var(--stone-lt);padding:0 20px 8px}.nr-paper__section{font-size:11px;padding:12px 20px 4px}.nr-paper__toggle{display:none}.nr-paper__list{display:flex;flex-direction:column}.nr-paper__row{display:flex;flex-direction:column;gap:3px;width:100%;padding:10px 20px 10px 18px;text-align:left;background:none;border:none;border-left:2px solid transparent;cursor:pointer;transition:background .15s}.nr-paper__row:hover{background:var(--vellum-dk)}.nr-paper__row--current{background:var(--vellum-dk);border-left-color:var(--accent);cursor:default}.nr-paper__title{font:400 15px/1.4 EB Garamond,Georgia,serif;color:var(--stone)}.nr-paper__row--current .nr-paper__title{color:var(--ink)}.nr-paper__meta{font:400 11px DM Sans,sans-serif;color:var(--stone-lt)}.nr-paper__meta--read{color:var(--verdigris)}.nr-article{min-width:0;padding:32px max(48px,calc((100% - 840px)/2)) 64px;border-left:.5px solid var(--border);border-right:.5px solid var(--border);display:flex;flex-direction:column;gap:16px}.nr-article__badge{align-self:flex-start;font-size:11px;color:var(--stone);background:var(--badge-bg);border-radius:999px;padding:3px 10px}.nr-article__title{margin:0;font-family:EB Garamond,Georgia,serif;font-weight:400;font-size:30px;line-height:1.3;letter-spacing:-.2px}.nr-article__audio{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nr-audio{width:100%;max-width:480px}.nr-article__body{font-family:EB Garamond,Georgia,serif;font-size:20px;line-height:1.9;display:flex;flex-direction:column;gap:14px}.nr-article__body p{margin:0}.nr-article .passage__word--hover{box-shadow:inset 0 -1.5px 0 var(--accent)}.nr-article__source{font-size:12px;color:var(--stone-lt);font-style:italic}.nr-article__source a{color:var(--stone)}.nr-article__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:12px;border-top:.5px solid var(--border)}.nr-article__place{font-size:12px;color:var(--stone-lt)}.nr-rail{position:sticky;top:0;align-self:start;max-height:100vh;overflow-y:auto;box-sizing:border-box;padding:24px 20px;min-width:0}.nr-rail .word-rail{position:static;gap:20px}.nr-rail .word-rail__word{font-size:30px;letter-spacing:0}.nr-rail .word-rail__pinyin{font:400 17px EB Garamond,Georgia,serif;color:var(--stone)}.nr-rail .word-rail__gloss{font-size:13px;line-height:1.5}.nr-rail .word-rail__card:not(.word-rail__card--lookup){background:none;border:none;border-radius:0;padding:0}.nr-check{margin-top:12px;padding-top:24px;border-top:.5px solid var(--border);display:flex;flex-direction:column;gap:20px}.nr-check__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.nr-check__optional{font-size:12px;color:var(--stone-lt)}.nr-check__q{display:flex;flex-direction:column;gap:8px}.nr-check__question{margin:0;font-family:EB Garamond,Georgia,serif;font-size:20px;line-height:1.5}.nr-check__answer{width:100%;box-sizing:border-box;padding:12px 14px;font-size:17px;font-family:EB Garamond,Georgia,serif;line-height:1.6;color:var(--ink);background:var(--vellum);border:.5px solid var(--border-md);border-radius:6px;resize:vertical}.nr-check__answer:focus{outline:none;border-color:var(--accent)}.nr-check__submit{display:flex;justify-content:flex-end;align-items:center;gap:14px}.nr-check__done{font-size:13px;color:var(--stone-lt);font-style:italic}@media(max-width:1100px){.nr-reader{grid-template-columns:minmax(0,1fr)}.nr-paper,.nr-rail{position:static;max-height:none;overflow:visible}.nr-paper{padding:14px 32px;border-bottom:.5px solid var(--border)}.nr-paper__front{margin:0 0 8px}.nr-paper__label{display:none}.nr-paper__toggle{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;padding:6px 0;background:none;border:none;font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt);cursor:pointer}.nr-paper__toggle span:last-child{letter-spacing:0;font-size:12px;font-weight:400;color:var(--stone)}.nr-paper:not(.nr-paper--open) .nr-paper__list{display:none}.nr-paper__list{margin:4px -32px 0}.nr-paper__section{padding-left:32px;padding-right:32px}.nr-paper__row{padding-left:30px;padding-right:32px}.nr-article{padding:28px 32px 40px;border:none}.nr-rail{padding:24px 32px 48px;border-top:.5px solid var(--border)}}@media(max-width:600px){.nr-paper{padding:12px 16px}.nr-paper__list{margin:4px -16px 0}.nr-paper__section{padding-left:16px;padding-right:16px}.nr-paper__row{padding-left:14px;padding-right:16px}.nr-article,.nr-pad{padding:20px 16px 32px}.nr-article__title{font-size:26px}.nr-rail{padding:20px 16px 40px}}@media(max-width:600px){body:has(.queue-bar) .nr-reader-page{padding-bottom:120px}}.es-content{max-width:920px}.es-today{display:flex;flex-direction:column;gap:8px;text-align:left;font:inherit;color:inherit;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;padding:22px 26px;cursor:pointer;transition:border-color .15s}.es-today:hover{border-color:var(--stone-lt)}.es-today__title{font-family:EB Garamond,Georgia,serif;font-size:30px;line-height:1.3;color:var(--ink)}.es-today__byline{font-size:13px;color:var(--stone)}.es-today__blurb{font-family:EB Garamond,Georgia,serif;font-size:17px;line-height:1.6;color:var(--ink)}.es-today__meta{font-size:12px;color:var(--stone-lt)}.es-group{display:flex;flex-direction:column}.es-list{list-style:none;margin:0;padding:0}.es-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;width:100%;padding:14px 0;text-align:left;font:inherit;color:inherit;background:none;border:none;border-bottom:.5px solid var(--border);cursor:pointer}.es-row:hover .es-row__title{color:var(--stone)}.es-row__main{display:flex;flex-direction:column;gap:3px;min-width:0}.es-row__title{font-family:EB Garamond,Georgia,serif;font-size:21px;line-height:1.35;color:var(--ink);transition:color .15s}.es-row__byline{font-size:12px;color:var(--stone)}.es-row__blurb{font-size:13px;line-height:1.5;color:var(--stone-lt)}.es-row__status{flex-shrink:0;font-size:12px;color:var(--stone-lt);white-space:nowrap}.es-row--read .es-row__title{color:var(--stone-lt)}.es-row--read .es-row__status{color:var(--verdigris)}.es-row--today .es-row__status{color:var(--aureum-dk);font-weight:500}.es-link{padding:0;background:none;border:none;font:inherit;color:var(--stone);text-decoration:underline;cursor:pointer}.es-foot__actions{display:flex;gap:8px;flex-wrap:wrap}.es-paste{display:flex;flex-direction:column;gap:10px}.es-paste__box{width:100%;box-sizing:border-box;padding:12px 14px;font:16px/1.7 EB Garamond,Georgia,serif;color:var(--ink);background:var(--vellum);border:.5px solid var(--border-md);border-radius:8px;resize:vertical}.es-paste__box:focus{outline:none;border-color:var(--stone-lt)}.es-paste__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}@media(max-width:600px){.es-today{padding:18px}.es-today__title{font-size:25px}.es-row__title{font-size:19px}}.watch-page{flex:1;display:flex;flex-direction:column;min-height:0}.watch-label{font-family:DM Sans,sans-serif;font-weight:500;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-lt)}.watch-muted{font-size:12px;color:var(--stone-lt)}.watch-muted a{color:var(--stone-lt);text-decoration:underline}.watch-strip-head{display:flex;align-items:baseline;gap:12px;padding:16px 32px;border-bottom:.5px solid var(--border);font-size:12px}.watch-strip-head__label{font:500 10px DM Sans,sans-serif;letter-spacing:.14em;color:var(--stone-lt);flex-shrink:0}.watch-strip-head__sources{color:var(--stone);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-strip-head__chip{margin-left:auto;color:var(--stone-lt);white-space:nowrap}.watch-list{width:100%;max-width:844px;margin:0 auto;box-sizing:border-box;padding:28px 32px 40px;display:flex;flex-direction:column;gap:16px}.watch-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.watch-rows__grid{display:flex;flex-direction:column;gap:10px}.watch-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:14px;background:var(--vellum-dk);border:.5px solid var(--border-md);border-radius:12px;cursor:pointer;transition:border-color .15s}.watch-row:hover,.watch-row:focus-visible{border-color:var(--accent);outline:none}.watch-row__thumb{position:relative;width:168px;aspect-ratio:16 / 9;flex-shrink:0;background:var(--vellum);border:.5px solid var(--border);border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center}.watch-row__thumb img{width:100%;height:100%;object-fit:cover}.watch-row__thumb-name{font-family:EB Garamond,Georgia,serif;font-size:17px;color:var(--stone)}.watch-row__duration{position:absolute;right:6px;bottom:6px;font-size:10px;color:var(--stone);background:var(--vellum-dk);border-radius:4px;padding:1px 5px;font-variant-numeric:tabular-nums}.watch-row__body{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:6px}.watch-row__title.hoverable-passage{font-size:22px;line-height:1.35;color:var(--ink)}.watch-row__progress{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.watch-row__status{font-size:12px;color:var(--stone)}.watch-row__cta{font-size:13px;border-radius:6px;padding:8px 16px;border:.5px solid var(--border-md);color:var(--stone);white-space:nowrap;transition:background .15s}.watch-row:hover .watch-row__cta:not(.watch-row__cta--primary){background:var(--vellum)}.watch-row__cta--primary{background:var(--ink);color:var(--vellum);border-color:var(--ink)}.watch-row:hover .watch-row__cta--primary{background:var(--stone);border-color:var(--stone)}.watch-bar{width:260px;max-width:100%;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.watch-bar__fill{height:100%;background:var(--accent);transition:width .3s}.watch-bar__fill--done{background:var(--verdigris)}.watch-strip{display:flex;align-items:center;gap:20px;padding:14px 18px;border:.5px solid var(--border);border-radius:10px;flex-wrap:wrap}.watch-strip__num{font-family:EB Garamond,Georgia,serif;font-size:30px;line-height:1;color:var(--ink);margin-bottom:4px}.watch-strip__rule{width:.5px;height:28px;background:var(--border-md)}.watch-strip__hint{flex:1 1 220px;min-width:0}.watch-strip__link{margin-left:auto;font-size:13px;color:var(--stone);text-decoration:none;white-space:nowrap}.watch-strip__link:hover{color:var(--ink)}.watch-player-layout{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:stretch}.watch-player-view{width:100%;max-width:844px;box-sizing:border-box;min-width:0;padding:28px 32px 40px;display:flex;flex-direction:column;gap:14px}.watch-back{align-self:flex-start;background:none;border:none;padding:0;cursor:pointer;font:500 10px DM Sans,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--stone-lt)}.watch-back:hover{color:var(--ink)}.watch-player video,.watch-player__frame{display:block;width:100%;aspect-ratio:16 / 9;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px;overflow:hidden;box-sizing:border-box}.watch-player__frame iframe{display:block;width:100%;height:100%;border:0}.watch-player--audio{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px}.watch-player__cover{width:64px;height:64px;flex-shrink:0;border-radius:8px;object-fit:cover}.watch-player__cover--blank{display:flex;align-items:center;justify-content:center;background:var(--vellum);border:.5px solid var(--border);box-sizing:border-box;font-size:22px;color:var(--stone-lt)}.watch-player__audio-note{font-size:13px;color:var(--stone-lt)}.watch-player__part{font-size:11px;color:var(--stone-lt);margin-top:6px}.watch-controls{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--vellum);border:.5px solid var(--border);border-radius:6px}.watch-controls__play{width:32px;height:32px;flex-shrink:0;border-radius:50%;border:none;padding:0;background:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.watch-controls__play:hover{background:var(--stone)}.watch-controls__play span{width:0;height:0;margin-left:3px;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent var(--vellum)}.watch-controls__play--playing span{width:9px;height:11px;margin-left:0;box-sizing:border-box;border-width:0 2.5px;border-color:var(--vellum)}.watch-controls__skip,.watch-controls__rate{flex-shrink:0;background:none;border:.5px solid transparent;border-radius:6px;padding:4px 6px;font:400 12px DM Sans,sans-serif;color:var(--stone);cursor:pointer;white-space:nowrap;transition:background .15s}.watch-controls__skip:hover,.watch-controls__rate:hover{background:var(--vellum-dk)}.watch-controls__track{position:relative;flex:1;min-width:60px;height:24px;display:flex;align-items:center}.watch-controls__rail{width:100%;height:3px;background:var(--border-md);border-radius:2px;overflow:hidden}.watch-controls__fill{height:100%;background:var(--accent);border-radius:2px}.watch-controls__range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.watch-controls__range:disabled{cursor:default}.watch-controls__track:has(.watch-controls__range:focus-visible) .watch-controls__rail{outline:1.5px solid var(--accent);outline-offset:3px}.watch-controls__time{flex-shrink:0;font-size:12px;color:var(--stone-lt);font-variant-numeric:tabular-nums;white-space:nowrap}.watch-player-view__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-top:4px}.watch-player-view__heading{min-width:0;display:flex;flex-direction:column;gap:2px}.watch-player-view__title.hoverable-passage{font-size:30px;line-height:1.3;color:var(--ink)}.watch-player-view__meta{font-size:13px;color:var(--stone-lt)}.watch-player-view__meta a{color:var(--stone-lt);text-decoration:underline}.watch-player-view__status{font-size:12px;color:var(--stone);margin-top:4px}.watch-next{flex-shrink:0;padding:8px 18px;font:400 13px DM Sans,sans-serif;color:var(--stone);background:transparent;border:.5px solid var(--border-md);border-radius:6px;white-space:nowrap;cursor:pointer;transition:background .15s}.watch-next:hover{background:var(--vellum-dk)}.watch-aside{border-left:.5px solid var(--border);padding:28px 20px;display:flex;flex-direction:column;gap:24px;min-width:0}.watch-queue{display:flex;flex-direction:column;gap:8px}.watch-queue__item{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:8px;text-align:left;cursor:pointer;transition:border-color .15s}.watch-queue__item:hover{border-color:var(--accent)}.watch-queue__title{font:400 16px/1.4 EB Garamond,Georgia,serif;color:var(--ink)}.watch-queue__meta{font:400 11px DM Sans,sans-serif;color:var(--stone-lt)}.watch-aside .word-rail{position:static;gap:8px}.watch-aside .word-rail__card{border-radius:8px;padding:12px 14px}.watch-aside .word-rail__label{letter-spacing:.14em}.watch-transcript{background:var(--vellum-dk);border:.5px solid var(--border);border-radius:10px}.watch-transcript__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;padding:12px 18px;border-bottom:.5px solid var(--border)}.watch-transcript__hint{font-size:12px;color:var(--stone-lt)}.watch-transcript__scroll{position:relative;max-height:440px;overflow-y:auto;padding:10px 8px 14px}.watch-transcript__text.hoverable-passage{font-size:22px;line-height:1.75;letter-spacing:.02em;color:var(--stone)}.watch-line{position:relative;margin:0;padding:8px 12px;border-radius:8px;transition:background .15s}.watch-line--timed{padding-left:60px}.watch-line--active{background:var(--vellum);color:var(--ink)}.watch-line__time{position:absolute;left:12px;top:14px;background:none;border:none;padding:0;cursor:pointer;font-family:DM Sans,sans-serif;font-size:11px;color:var(--stone-lt);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;text-align:left}.watch-line__time:hover{color:var(--ink)}.watch-capture__form{display:flex;gap:10px;padding:14px 18px 0}.watch-capture__input{flex:1;min-width:0;font-size:20px;padding:8px 12px;border:.5px solid var(--border-md);border-radius:8px;background:var(--vellum);color:var(--ink);outline:none}.watch-capture__input:focus{border-color:var(--ink)}.watch-capture__add{flex-shrink:0;padding:8px 14px;border:none;border-radius:8px;background:var(--ink);color:var(--vellum);font-size:13px;cursor:pointer}.watch-capture__add:disabled{opacity:.4;cursor:default}.watch-capture__note{margin:8px 18px 0;font-size:13px;color:var(--stone)}.watch-capture__dict{padding:4px 18px 18px}.watch-capture__dict .dict-lookup{margin-top:12px;padding:0;border:none;background:transparent}@media(max-width:600px){.watch-capture__form{flex-direction:column}.watch-capture__add{min-height:44px}}.watch-transcript__empty{margin:0;padding:18px;font-size:14px;color:var(--stone);display:flex;flex-direction:column;gap:12px;align-items:flex-start}.watch-transcript__empty p{margin:0}.watch-transcript__error{color:var(--danger);font-size:13px}@media(max-width:1100px){.watch-player-layout{grid-template-columns:minmax(0,1fr);align-items:start}.watch-player-view{max-width:none}.watch-aside{border-left:none;border-top:.5px solid var(--border);padding:24px 32px 40px}}.watch-record-head{display:flex;flex-direction:column;gap:4px;margin-bottom:4px}.watch-record-head__title{margin:0;font:400 30px/1.3 EB Garamond,Georgia,serif;color:var(--ink)}.watch-record-head__sub{margin:0;font-size:13px;color:var(--stone-lt)}.watch-record-day{display:flex;flex-direction:column;margin-bottom:12px}.watch-record-day__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:8px;border-bottom:.5px solid var(--border)}.watch-record-day__date{margin:0;font-family:EB Garamond,Georgia,serif;font-weight:400;font-size:22px;color:var(--ink)}.watch-record-day__today{color:var(--stone-lt)}.watch-record-row{display:grid;grid-template-columns:2fr 1.3fr;gap:16px;padding:12px 0;border-bottom:.5px solid var(--border)}.watch-record-row__title{display:block;margin-top:2px;font-family:EB Garamond,Georgia,serif;font-size:18px;line-height:1.35;color:var(--ink);text-decoration:none}.watch-record-row__title:hover{text-decoration:underline}.watch-record-row__title--unseen{color:var(--stone-lt)}.watch-record-row__right{display:flex;flex-direction:column;gap:6px;min-width:0}.watch-record-chips{display:flex;flex-wrap:wrap;gap:6px}.watch-record-chip{font-family:EB Garamond,Georgia,serif;font-size:15px;background:var(--vellum-dk);border:.5px solid var(--border);border-radius:999px;padding:2px 9px;color:var(--ink)}@media(max-width:600px){.watch-strip-head{padding:12px 16px;flex-wrap:wrap;gap:4px 10px}.watch-list{padding:16px 16px 32px;gap:12px}.watch-row{gap:12px;padding:12px}.watch-row__thumb{width:100%}.watch-row__body{flex-basis:100%}.watch-row__title.hoverable-passage{font-size:20px}.watch-row__cta{flex:1;text-align:center;padding:11px 16px}.watch-strip{gap:12px 16px}.watch-strip__rule{display:none}.watch-strip__link{margin-left:0}.watch-player-view{padding:12px 16px 24px;gap:12px}.watch-player--video,.watch-player--youtube{margin:0 -16px}.watch-player video,.watch-player__frame{border-radius:0;border-left:none;border-right:none}.watch-player__part{padding:0 16px}.watch-controls{flex-wrap:wrap;gap:6px 8px;padding:8px 10px}.watch-controls__track{order:-1;flex:1 1 100%;height:32px}.watch-controls__play{width:44px;height:44px}.watch-controls__skip,.watch-controls__rate{min-height:44px;padding:0 12px;font-size:14px;border-color:var(--border)}.watch-controls__time{margin-left:auto}.watch-player-view__head{flex-direction:column;gap:10px}.watch-player-view__title.hoverable-passage{font-size:24px}.watch-next{min-height:44px;align-self:stretch}.watch-transcript__head{padding:10px 14px}.watch-transcript__text.hoverable-passage{font-size:20px}.watch-line{padding:6px 8px}.watch-line--timed{padding-left:50px}.watch-line__time{left:8px;top:11px}.watch-aside{padding:20px 16px 32px}.watch-queue__item{padding:12px}.watch-record-row{grid-template-columns:1fr;gap:8px}}@media(max-width:600px){.content-topbar{padding:12px 16px}.content-topbar__title{font-size:22px}.content-topbar__sub{font-size:13px}.content-area,.login-topbar{padding:14px 16px}.login-body{padding:32px 20px}.login-greeting{font-size:28px}.login-sub{font-size:14px;margin-bottom:28px}.pw-input{font-size:16px;padding:11px 40px 11px 14px;border-radius:10px;letter-spacing:3px}.pw-toggle,.login-error{font-size:13px}.login-submit{font-size:15px;padding:12px;border-radius:10px}.login-back{font-size:12px}.welcome-avatar{width:28px;height:28px;font-size:13px}.welcome-name{font-size:18px}.welcome-label{font-size:13px}.login-step-label{font-size:11px}.login-subject-card{padding:12px 16px;gap:12px}.login-subject-icon{font-size:24px}.login-subject-name,.login-subject-arrow{font-size:16px}.catalog-grid{grid-template-columns:1fr;gap:10px}.catalog-card{padding:16px}.catalog-card__name{font-size:20px}.catalog-card__native{font-size:14px}.catalog-card__stat-value{font-size:18px}.catalog-card__stat-label{font-size:11px}.catalog-card__icon{width:32px;height:32px;font-size:22px}.catalog-card__badge{font-size:10px}.catalog-card__continue,.catalog-card__start{font-size:14px}.progress-row{gap:10px;margin-bottom:14px}.progress-row__label,.progress-row__count{font-size:12px}.activities-grid{grid-template-columns:1fr;gap:8px}.activity-card{padding:12px 14px;border-radius:12px}.activity-card__dot{width:7px;height:7px}.activity-card__name{font-size:14px}.activity-card__meta{font-size:12px}.activity-card__regen{font-size:18px}.perf-strip{padding:12px 14px;gap:14px;flex-wrap:wrap}.perf-strip__value{font-size:20px}.perf-strip__label{font-size:10px}.perf-strip__action{font-size:13px;padding:6px 12px}.activity-topbar{padding:12px 16px}.activity-topbar__title{font-size:20px}.activity-topbar__meta{font-size:13px}.activity-topbar__timer{font-size:14px}.activity-topbar__progress{font-size:12px;padding:2px 8px}.activity-content{padding:14px 16px;gap:12px}.activity-card-section{padding:14px;border-radius:12px}.activity-card-label{font-size:10px;letter-spacing:1.2px;margin-bottom:10px}.activity-nav-footer{padding:12px 16px;border-top:.5px solid var(--border);background:var(--vellum);position:sticky;bottom:0;padding-bottom:max(12px,env(safe-area-inset-bottom))}.btn-secondary{font-size:14px;padding:10px 16px;border-radius:8px;min-height:44px}.btn-primary-new{font-size:14px;padding:10px 18px;border-radius:8px;min-height:44px}.activity-notice{padding:12px 14px;border-radius:10px;margin-bottom:14px}.activity-notice__label{font-size:10px;letter-spacing:1.2px}.activity-notice__body{font-size:13px}.activity-error{font-size:13px;padding-left:10px}.activity-error__detail{font-size:11px}.activity-nav-footer__note{font-size:11px;margin-right:0;margin-bottom:8px}.choices{gap:6px}.choice-btn{font-size:14px;padding:8px 12px;min-height:44px}.choices-label{font-size:11px}.passage-text{font-size:18px;line-height:1.9}.passage-blank{font-size:14px;min-width:20px}.translation-prompt{font-size:22px}.translation-area{font-size:16px;min-height:80px;padding:10px 12px;border-radius:8px}.reading-article-title{font-size:22px}.reading-article-badge{font-size:11px;padding:2px 8px}.reading-article-body{font-size:17px;line-height:1.8}.word-bank{gap:6px}.word-tile{padding:6px 10px;font-size:16px;min-height:40px}.drop-zone{min-height:44px;padding:8px 12px;font-size:14px}.placed-tile{padding:4px 10px;font-size:16px}.audio-player-wrap{padding:10px 12px;gap:10px;flex-wrap:wrap}.audio-play-btn{width:40px;height:40px}.audio-play-icon{border-top-width:8px;border-bottom-width:8px;border-left-width:13px}.audio-scrubber{order:3;flex-basis:100%;padding:12px 0 10px}.audio-scrub-thumb{width:14px;height:14px}.audio-time{font-size:12px}.audio-speed-controls{margin-left:auto}.audio-speed-btn{width:32px;height:32px;font-size:14px}.audio-speed-label{font-size:13px}.carousel-dots{display:flex;justify-content:center;gap:6px;padding:8px 0}.carousel-dot{width:6px;height:6px;border-radius:50%;background:var(--border-md)}.carousel-dot--active{background:var(--accent);width:16px;border-radius:3px}}.carousel-dots{display:none}
